diff --git a/aws-cloudformation-schema/aws-apigateway-account.json b/aws-cloudformation-schema/aws-apigateway-account.json index 2ffc2f3fe0..9b75667282 100644 --- a/aws-cloudformation-schema/aws-apigateway-account.json +++ b/aws-cloudformation-schema/aws-apigateway-account.json @@ -1,6 +1,6 @@ { "typeName" : "AWS::ApiGateway::Account", - "description" : "Resource Type definition for AWS::ApiGateway::Account", + "description" : "The ``AWS::ApiGateway::Account`` resource specifies the IAM role that Amazon API Gateway uses to write API logs to Amazon CloudWatch Logs. To avoid overwriting other roles, you should only have one ``AWS::ApiGateway::Account`` resource per region per account.", "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-apigateway", "additionalProperties" : false, "properties" : { @@ -9,7 +9,7 @@ "type" : "string" }, "CloudWatchRoleArn" : { - "description" : "The Amazon Resource Name (ARN) of an IAM role that has write access to CloudWatch Logs in your account.", + "description" : "The ARN of an Amazon CloudWatch role for the current Account.", "type" : "string" } }, diff --git a/aws-cloudformation-schema/aws-apigateway-authorizer.json b/aws-cloudformation-schema/aws-apigateway-authorizer.json index c76211611a..63e99719c0 100644 --- a/aws-cloudformation-schema/aws-apigateway-authorizer.json +++ b/aws-cloudformation-schema/aws-apigateway-authorizer.json @@ -1,10 +1,10 @@ { "typeName" : "AWS::ApiGateway::Authorizer", - "description" : "Represents an authorization layer for methods. If enabled on a method, API Gateway will activate the authorizer when a client calls the method.", + "description" : "The ``AWS::ApiGateway::Authorizer`` resource creates an authorization layer that API Gateway activates for methods that have authorization enabled. API Gateway activates the authorizer when a client calls those methods.", "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-apigateway.git", "properties" : { "RestApiId" : { - "description" : "The identifier of the API.", + "description" : "The string identifier of the associated RestApi.", "type" : "string" }, "AuthorizerId" : { @@ -15,23 +15,23 @@ "type" : "string" }, "AuthorizerCredentials" : { - "description" : "Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer.", + "description" : "Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. To specify an IAM role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To use resource-based permissions on the Lambda function, specify null.", "type" : "string" }, "AuthorizerResultTtlInSeconds" : { - "description" : "The TTL in seconds of cached authorizer results.", + "description" : "The TTL in seconds of cached authorizer results. If it equals 0, authorization caching is disabled. If it is greater than 0, API Gateway will cache authorizer responses. If this field is not set, the default value is 300. The maximum value is 3600, or 1 hour.", "type" : "integer" }, "AuthorizerUri" : { - "description" : "Specifies the authorizer's Uniform Resource Identifier (URI).", + "description" : "Specifies the authorizer's Uniform Resource Identifier (URI). For ``TOKEN`` or ``REQUEST`` authorizers, this must be a well-formed Lambda function URI, for example, ``arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:{account_id}:function:{lambda_function_name}/invocations``. In general, the URI has this form ``arn:aws:apigateway:{region}:lambda:path/{service_api}``, where ``{region}`` is the same as the region hosting the Lambda function, ``path`` indicates that the remaining substring in the URI should be treated as the path to the resource, including the initial ``/``. For Lambda functions, this is usually of the form ``/2015-03-31/functions/[FunctionARN]/invocations``.", "type" : "string" }, "IdentitySource" : { - "description" : "The identity source for which authorization is requested.", + "description" : "The identity source for which authorization is requested. For a ``TOKEN`` or ``COGNITO_USER_POOLS`` authorizer, this is required and specifies the request header mapping expression for the custom header holding the authorization token submitted by the client. For example, if the token header name is ``Auth``, the header mapping expression is ``method.request.header.Auth``. For the ``REQUEST`` authorizer, this is required when authorization caching is enabled. The value is a comma-separated string of one or more mapping expressions of the specified request parameters. For example, if an ``Auth`` header, a ``Name`` query string parameter are defined as identity sources, this value is ``method.request.header.Auth, method.request.querystring.Name``. These parameters will be used to derive the authorization caching key and to perform runtime validation of the ``REQUEST`` authorizer by verifying all of the identity-related request parameters are present, not null and non-empty. Only when this is true does the authorizer invoke the authorizer Lambda function, otherwise, it returns a 401 Unauthorized response without calling the Lambda function. The valid value is a string of comma-separated mapping expressions of the specified request parameters. When the authorization caching is not enabled, this property is optional.", "type" : "string" }, "IdentityValidationExpression" : { - "description" : "A validation expression for the incoming identity token.", + "description" : "A validation expression for the incoming identity token. For ``TOKEN`` authorizers, this value is a regular expression. For ``COGNITO_USER_POOLS`` authorizers, API Gateway will match the ``aud`` field of the incoming token from the client against the specified regular expression. It will invoke the authorizer's Lambda function when there is a match. Otherwise, it will return a 401 Unauthorized response without calling the Lambda function. The validation expression does not apply to the ``REQUEST`` authorizer.", "type" : "string" }, "Name" : { @@ -39,7 +39,7 @@ "type" : "string" }, "ProviderARNs" : { - "description" : "A list of the Amazon Cognito user pool ARNs for the COGNITO_USER_POOLS authorizer.", + "description" : "A list of the Amazon Cognito user pool ARNs for the ``COGNITO_USER_POOLS`` authorizer. Each element is of this format: ``arn:aws:cognito-idp:{region}:{account_id}:userpool/{user_pool_id}``. For a ``TOKEN`` or ``REQUEST`` authorizer, this is not defined.", "type" : "array", "uniqueItems" : true, "items" : { @@ -48,7 +48,7 @@ "insertionOrder" : false }, "Type" : { - "description" : "The authorizer type.", + "description" : "The authorizer type. Valid values are ``TOKEN`` for a Lambda function using a single authorization token submitted in a custom header, ``REQUEST`` for a Lambda function using incoming request parameters, and ``COGNITO_USER_POOLS`` for using an Amazon Cognito user pool.", "type" : "string" } }, diff --git a/aws-cloudformation-schema/aws-apigateway-deployment.json b/aws-cloudformation-schema/aws-apigateway-deployment.json index cf9481ead8..c0ae0ada4b 100644 --- a/aws-cloudformation-schema/aws-apigateway-deployment.json +++ b/aws-cloudformation-schema/aws-apigateway-deployment.json @@ -1,6 +1,6 @@ { "typeName" : "AWS::ApiGateway::Deployment", - "description" : "Resource Type definition for AWS::ApiGateway::Deployment", + "description" : "The ``AWS::ApiGateway::Deployment`` resource deploys an API Gateway ``RestApi`` resource to a stage so that clients can call the API over the internet. The stage acts as an environment.", "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-apigateway", "additionalProperties" : false, "properties" : { @@ -10,23 +10,23 @@ }, "DeploymentCanarySettings" : { "$ref" : "#/definitions/DeploymentCanarySettings", - "description" : "Specifies settings for the canary deployment." + "description" : "The input configuration for a canary deployment." }, "Description" : { "type" : "string", - "description" : "A description of the purpose of the API Gateway deployment." + "description" : "The description for the Deployment resource to create." }, "RestApiId" : { "type" : "string", - "description" : "The ID of the RestApi resource to deploy. " + "description" : "The string identifier of the associated RestApi." }, "StageDescription" : { "$ref" : "#/definitions/StageDescription", - "description" : "Configures the stage that API Gateway creates with this deployment." + "description" : "The description of the Stage resource for the Deployment resource to create. To specify a stage description, you must also provide a stage name." }, "StageName" : { "type" : "string", - "description" : "A name for the stage that API Gateway creates with this deployment. Use only alphanumeric characters." + "description" : "The name of the Stage resource for the Deployment resource to create." } }, "definitions" : { @@ -39,23 +39,23 @@ "$ref" : "#/definitions/AccessLogSetting" }, "CacheClusterEnabled" : { - "description" : "Indicates whether cache clustering is enabled for the stage.", + "description" : "Specifies whether a cache cluster is enabled for the stage.", "type" : "boolean" }, "CacheClusterSize" : { - "description" : "The size of the stage's cache cluster.", + "description" : "The size of the stage's cache cluster. For more information, see [cacheClusterSize](https://docs.aws.amazon.com/apigateway/latest/api/API_CreateStage.html#apigw-CreateStage-request-cacheClusterSize) in the *API Gateway API Reference*.", "type" : "string" }, "CacheDataEncrypted" : { - "description" : "The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. ", + "description" : "Indicates whether the cached responses are encrypted.", "type" : "boolean" }, "CacheTtlInSeconds" : { - "description" : "The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. ", + "description" : "The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses.", "type" : "integer" }, "CachingEnabled" : { - "description" : "Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses.", + "description" : "Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses. For more information, see [Enable API Gateway Caching in a Stage to Enhance API Performance](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html) in the *API Gateway Developer Guide*.", "type" : "boolean" }, "CanarySetting" : { @@ -63,11 +63,11 @@ "$ref" : "#/definitions/CanarySetting" }, "ClientCertificateId" : { - "description" : "The identifier of the client certificate that API Gateway uses to call your integration endpoints in the stage. ", + "description" : "The identifier of the client certificate that API Gateway uses to call your integration endpoints in the stage.", "type" : "string" }, "DataTraceEnabled" : { - "description" : "Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs. ", + "description" : "Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs.", "type" : "boolean" }, "Description" : { @@ -79,7 +79,7 @@ "type" : "string" }, "LoggingLevel" : { - "description" : "The logging level for this method. For valid values, see the loggingLevel property of the Stage resource in the Amazon API Gateway API Reference. ", + "description" : "The logging level for this method. For valid values, see the ``loggingLevel`` property of the [MethodSetting](https://docs.aws.amazon.com/apigateway/latest/api/API_MethodSetting.html) resource in the *Amazon API Gateway API Reference*.", "type" : "string" }, "MethodSettings" : { @@ -105,19 +105,19 @@ } }, "ThrottlingBurstLimit" : { - "description" : "The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account.", + "description" : "The target request burst rate limit. This allows more requests through for a period of time than the target rate limit. For more information, see [Manage API Request Throttling](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-request-throttling.html) in the *API Gateway Developer Guide*.", "type" : "integer" }, "ThrottlingRateLimit" : { - "description" : "The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account.", + "description" : "The target request steady-state rate limit. For more information, see [Manage API Request Throttling](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-request-throttling.html) in the *API Gateway Developer Guide*.", "type" : "number" }, "TracingEnabled" : { - "description" : "Specifies whether active tracing with X-ray is enabled for this stage.", + "description" : "Specifies whether active tracing with X-ray is enabled for this stage.\n For more information, see [Trace API Gateway API Execution with X-Ray](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-xray.html) in the *API Gateway Developer Guide*.", "type" : "boolean" }, "Variables" : { - "description" : "A map that defines the stage variables. Variable names must consist of alphanumeric characters, and the values must match the following regular expression: [A-Za-z0-9-._~:/?#&=,]+. ", + "description" : "A map that defines the stage variables. Variable names must consist of alphanumeric characters, and the values must match the following regular expression: ``[A-Za-z0-9-._~:/?#&=,]+``.", "type" : "object", "additionalProperties" : false, "patternProperties" : { @@ -126,18 +126,19 @@ } } } - } + }, + "description" : "``StageDescription`` is a property of the [AWS::ApiGateway::Deployment](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-deployment.html) resource that configures a deployment stage." }, "DeploymentCanarySettings" : { "type" : "object", "additionalProperties" : false, "properties" : { "PercentTraffic" : { - "description" : "The percentage (0-100) of traffic diverted to a canary deployment.", + "description" : "The percentage (0.0-100.0) of traffic routed to the canary deployment.", "type" : "number" }, "StageVariableOverrides" : { - "description" : "Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values. Duplicates are not allowed.", + "description" : "A stage variable overrides used for the canary release deployment. They can override existing stage variables or add new stage variables for the canary release deployment. These stage variables are represented as a string-to-string map between stage variable names and their values.", "type" : "object", "additionalProperties" : false, "patternProperties" : { @@ -147,24 +148,26 @@ } }, "UseStageCache" : { - "description" : "Whether the canary deployment uses the stage cache.", + "description" : "A Boolean flag to indicate whether the canary release deployment uses the stage cache or not.", "type" : "boolean" } - } + }, + "description" : "The ``DeploymentCanarySettings`` property type specifies settings for the canary deployment." }, "AccessLogSetting" : { "type" : "object", "additionalProperties" : false, "properties" : { "DestinationArn" : { - "description" : "The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with amazon-apigateway-. ", + "description" : "The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with ``amazon-apigateway-``.", "type" : "string" }, "Format" : { - "description" : "A single line format of the access logs of data, as specified by selected $context variables. The format must include at least $context.requestId. ", + "description" : "A single line format of the access logs of data, as specified by selected $context variables. The format must include at least ``$context.requestId``.", "type" : "string" } - } + }, + "description" : "The ``AccessLogSetting`` property type specifies settings for logging access in this stage.\n ``AccessLogSetting`` is a property of the [StageDescription](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html) property type." }, "CanarySetting" : { "type" : "object", @@ -175,7 +178,7 @@ "type" : "number" }, "StageVariableOverrides" : { - "description" : "Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values. ", + "description" : "Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values.", "type" : "object", "additionalProperties" : false, "patternProperties" : { @@ -185,10 +188,11 @@ } }, "UseStageCache" : { - "description" : "Whether the canary deployment uses the stage cache or not.", + "description" : "A Boolean flag to indicate whether the canary deployment uses the stage cache or not.", "type" : "boolean" } - } + }, + "description" : "The ``CanarySetting`` property type specifies settings for the canary deployment in this stage.\n ``CanarySetting`` is a property of the [StageDescription](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html) property type." }, "Tag" : { "type" : "object", @@ -210,19 +214,19 @@ "additionalProperties" : false, "properties" : { "CacheDataEncrypted" : { - "description" : "Indicates whether the cached responses are encrypted", + "description" : "Specifies whether the cached responses are encrypted.", "type" : "boolean" }, "CacheTtlInSeconds" : { - "description" : "The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. ", + "description" : "Specifies the time to live (TTL), in seconds, for cached responses. The higher the TTL, the longer the response will be cached.", "type" : "integer" }, "CachingEnabled" : { - "description" : "Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses.", + "description" : "Specifies whether responses should be cached and returned for requests. A cache cluster must be enabled on the stage for responses to be cached.", "type" : "boolean" }, "DataTraceEnabled" : { - "description" : "Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs. ", + "description" : "Specifies whether data trace logging is enabled for this method, which affects the log entries pushed to Amazon CloudWatch Logs. This can be useful to troubleshoot APIs, but can result in logging sensitive data. We recommend that you don't enable this option for production APIs.", "type" : "boolean" }, "HttpMethod" : { @@ -230,26 +234,27 @@ "type" : "string" }, "LoggingLevel" : { - "description" : "The logging level for this method. For valid values, see the loggingLevel property of the Stage resource in the Amazon API Gateway API Reference. ", + "description" : "Specifies the logging level for this method, which affects the log entries pushed to Amazon CloudWatch Logs. Valid values are ``OFF``, ``ERROR``, and ``INFO``. Choose ``ERROR`` to write only error-level entries to CloudWatch Logs, or choose ``INFO`` to include all ``ERROR`` events as well as extra informational events.", "type" : "string" }, "MetricsEnabled" : { - "description" : "Indicates whether Amazon CloudWatch metrics are enabled for methods in the stage.", + "description" : "Specifies whether Amazon CloudWatch metrics are enabled for this method.", "type" : "boolean" }, "ResourcePath" : { - "description" : "The resource path for this method. Forward slashes (/) are encoded as ~1 and the initial slash must include a forward slash. ", + "description" : "The resource path for this method. Forward slashes (``/``) are encoded as ``~1`` and the initial slash must include a forward slash. For example, the path value ``/resource/subresource`` must be encoded as ``/~1resource~1subresource``. To specify the root path, use only a slash (``/``).", "type" : "string" }, "ThrottlingBurstLimit" : { - "description" : "The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account.", + "description" : "Specifies the throttling burst limit.", "type" : "integer" }, "ThrottlingRateLimit" : { - "description" : "The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account.", + "description" : "Specifies the throttling rate limit.", "type" : "number" } - } + }, + "description" : "The ``MethodSetting`` property type configures settings for all methods in a stage.\n The ``MethodSettings`` property of the [Amazon API Gateway Deployment StageDescription](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html) property type contains a list of ``MethodSetting`` property types." } }, "taggable" : true, diff --git a/aws-cloudformation-schema/aws-apigateway-documentationpart.json b/aws-cloudformation-schema/aws-apigateway-documentationpart.json index 940feb9666..9da352f4f4 100644 --- a/aws-cloudformation-schema/aws-apigateway-documentationpart.json +++ b/aws-cloudformation-schema/aws-apigateway-documentationpart.json @@ -1,6 +1,6 @@ { "typeName" : "AWS::ApiGateway::DocumentationPart", - "description" : "Resource Type definition for AWS::ApiGateway::DocumentationPart", + "description" : "The ``AWS::ApiGateway::DocumentationPart`` resource creates a documentation part for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*.", "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-apigateway", "additionalProperties" : false, "properties" : { @@ -9,15 +9,15 @@ "type" : "string" }, "Location" : { - "description" : "The location of the API entity that the documentation applies to.", + "description" : "The location of the targeted API entity of the to-be-created documentation part.", "$ref" : "#/definitions/Location" }, "Properties" : { - "description" : "The documentation content map of the targeted API entity.", + "description" : "The new documentation content map of the targeted API entity. Enclosed key-value pairs are API-specific, but only OpenAPI-compliant key-value pairs can be exported and, hence, published.", "type" : "string" }, "RestApiId" : { - "description" : "Identifier of the targeted API entity", + "description" : "The string identifier of the associated RestApi.", "type" : "string" } }, @@ -27,27 +27,28 @@ "additionalProperties" : false, "properties" : { "Method" : { - "description" : "The HTTP verb of a method.", + "description" : "The HTTP verb of a method. It is a valid field for the API entity types of ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``*`` for any method. When an applicable child entity inherits the content of an entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``method`` attribute must match that of the parent entity exactly.", "type" : "string" }, "Name" : { - "description" : "The name of the targeted API entity.", + "description" : "The name of the targeted API entity. It is a valid and required field for the API entity types of ``AUTHORIZER``, ``MODEL``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY`` and ``RESPONSE_HEADER``. It is an invalid field for any other entity type.", "type" : "string" }, "Path" : { - "description" : "The URL path of the target.", + "description" : "The URL path of the target. It is a valid field for the API entity types of ``RESOURCE``, ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``/`` for the root resource. When an applicable child entity inherits the content of another entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``path`` attribute must match that of the parent entity as a prefix.", "type" : "string" }, "StatusCode" : { - "description" : "The HTTP status code of a response.", + "description" : "The HTTP status code of a response. It is a valid field for the API entity types of ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``*`` for any status code. When an applicable child entity inherits the content of an entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``statusCode`` attribute must match that of the parent entity exactly.", "type" : "string" }, "Type" : { - "description" : "The type of API entity that the documentation content applies to.", + "description" : "The type of API entity to which the documentation content applies. Valid values are ``API``, ``AUTHORIZER``, ``MODEL``, ``RESOURCE``, ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. Content inheritance does not apply to any entity of the ``API``, ``AUTHORIZER``, ``METHOD``, ``MODEL``, ``REQUEST_BODY``, or ``RESOURCE`` type.", "type" : "string", "enum" : [ "API", "AUTHORIZER", "MODEL", "RESOURCE", "METHOD", "PATH_PARAMETER", "QUERY_PARAMETER", "REQUEST_HEADER", "REQUEST_BODY", "RESPONSE", "RESPONSE_HEADER", "RESPONSE_BODY" ] } - } + }, + "description" : "The ``Location`` property specifies the location of the Amazon API Gateway API entity that the documentation applies to. ``Location`` is a property of the [AWS::ApiGateway::DocumentationPart](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationpart.html) resource.\n For more information about each property, including constraints and valid values, see [DocumentationPart](https://docs.aws.amazon.com/apigateway/latest/api/API_DocumentationPartLocation.html) in the *Amazon API Gateway REST API Reference*." } }, "required" : [ "Location", "Properties", "RestApiId" ], diff --git a/aws-cloudformation-schema/aws-apigateway-documentationversion.json b/aws-cloudformation-schema/aws-apigateway-documentationversion.json index 0f20898527..5e04395a51 100644 --- a/aws-cloudformation-schema/aws-apigateway-documentationversion.json +++ b/aws-cloudformation-schema/aws-apigateway-documentationversion.json @@ -1,20 +1,20 @@ { "typeName" : "AWS::ApiGateway::DocumentationVersion", - "description" : "A snapshot of the documentation of an API.", + "description" : "The ``AWS::ApiGateway::DocumentationVersion`` resource creates a snapshot of the documentation for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*.", "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-apigateway", "definitions" : { }, "properties" : { "Description" : { - "description" : "The description of the API documentation snapshot.", + "description" : "A description about the new documentation snapshot.", "type" : "string" }, "DocumentationVersion" : { - "description" : "The version identifier of the API documentation snapshot.", + "description" : "The version identifier of the to-be-updated documentation version.", "type" : "string", "minLength" : 1 }, "RestApiId" : { - "description" : "The identifier of the API.", + "description" : "The string identifier of the associated RestApi.", "type" : "string", "minLength" : 1 } diff --git a/aws-cloudformation-schema/aws-apigateway-method.json b/aws-cloudformation-schema/aws-apigateway-method.json index b01c7d2f3f..ff752f3625 100644 --- a/aws-cloudformation-schema/aws-apigateway-method.json +++ b/aws-cloudformation-schema/aws-apigateway-method.json @@ -1,6 +1,6 @@ { "typeName" : "AWS::ApiGateway::Method", - "description" : "Resource Type definition for AWS::ApiGateway::Method", + "description" : "The ``AWS::ApiGateway::Method`` resource creates API Gateway methods that define the parameters and body that clients must send in their requests.", "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-apigateway.git", "definitions" : { "Integration" : { @@ -8,7 +8,7 @@ "additionalProperties" : false, "properties" : { "CacheKeyParameters" : { - "description" : "A list of request parameters whose values API Gateway caches.", + "description" : "A list of request parameters whose values API Gateway caches. To be valid values for ``cacheKeyParameters``, these parameters must also be specified for Method ``requestParameters``.", "type" : "array", "uniqueItems" : true, "items" : { @@ -16,33 +16,33 @@ } }, "CacheNamespace" : { - "description" : "An API-specific tag group of related cached parameters.", + "description" : "Specifies a group of related cached parameters. By default, API Gateway uses the resource ID as the ``cacheNamespace``. You can specify the same ``cacheNamespace`` across resources to return the same cached data for requests to different resources.", "type" : "string" }, "ConnectionId" : { - "description" : "The ID of the VpcLink used for the integration when connectionType=VPC_LINK, otherwise undefined.", + "description" : "The ID of the VpcLink used for the integration when ``connectionType=VPC_LINK`` and undefined, otherwise.", "type" : "string" }, "ConnectionType" : { - "description" : "The type of the network connection to the integration endpoint.", + "description" : "The type of the network connection to the integration endpoint. The valid value is ``INTERNET`` for connections through the public routable internet or ``VPC_LINK`` for private connections between API Gateway and a network load balancer in a VPC. The default value is ``INTERNET``.", "type" : "string", "enum" : [ "INTERNET", "VPC_LINK" ] }, "ContentHandling" : { - "description" : "Specifies how to handle request payload content type conversions.", + "description" : "Specifies how to handle request payload content type conversions. Supported values are ``CONVERT_TO_BINARY`` and ``CONVERT_TO_TEXT``, with the following behaviors:\n If this property is not defined, the request payload will be passed through from the method request to integration request without modification, provided that the ``passthroughBehavior`` is configured to support payload pass-through.", "type" : "string", "enum" : [ "CONVERT_TO_BINARY", "CONVERT_TO_TEXT" ] }, "Credentials" : { - "description" : "The credentials that are required for the integration.", + "description" : "Specifies the credentials required for the integration, if any. For AWS integrations, three options are available. To specify an IAM Role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To require that the caller's identity be passed through from the request, specify the string ``arn:aws:iam::\\*:user/\\*``. To use resource-based permissions on supported AWS services, specify null.", "type" : "string" }, "IntegrationHttpMethod" : { - "description" : "The integration's HTTP method type.", + "description" : "Specifies the integration's HTTP method type. For the Type property, if you specify ``MOCK``, this property is optional. For Lambda integrations, you must set the integration method to ``POST``. For all other types, you must specify this property.", "type" : "string" }, "IntegrationResponses" : { - "description" : "The response that API Gateway provides after a method's backend completes processing a request.", + "description" : "Specifies the integration's responses.", "type" : "array", "uniqueItems" : true, "items" : { @@ -50,12 +50,12 @@ } }, "PassthroughBehavior" : { - "description" : "Indicates when API Gateway passes requests to the targeted backend.", + "description" : "Specifies how the method request body of an unmapped content type will be passed through the integration request to the back end without transformation. A content type is unmapped if no mapping template is defined in the integration or the content type does not match any of the mapped content types, as specified in ``requestTemplates``. The valid value is one of the following: ``WHEN_NO_MATCH``: passes the method request body through the integration request to the back end without transformation when the method request content type does not match any content type associated with the mapping templates defined in the integration request. ``WHEN_NO_TEMPLATES``: passes the method request body through the integration request to the back end without transformation when no mapping template is defined in the integration request. If a template is defined when this option is selected, the method request of an unmapped content-type will be rejected with an HTTP 415 Unsupported Media Type response. ``NEVER``: rejects the method request with an HTTP 415 Unsupported Media Type response when either the method request content type does not match any content type associated with the mapping templates defined in the integration request or no mapping template is defined in the integration request.", "type" : "string", "enum" : [ "WHEN_NO_MATCH", "WHEN_NO_TEMPLATES", "NEVER" ] }, "RequestParameters" : { - "description" : "The request parameters that API Gateway sends with the backend request.", + "description" : "A key-value map specifying request parameters that are passed from the method request to the back end. The key is an integration request parameter name and the associated value is a method request parameter value or static value that must be enclosed within single quotes and pre-encoded as required by the back end. The method request parameter value must match the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and ``name`` must be a valid and unique method request parameter name.", "type" : "object", "additionalProperties" : false, "patternProperties" : { @@ -65,7 +65,7 @@ } }, "RequestTemplates" : { - "description" : "A map of Apache Velocity templates that are applied on the request payload.", + "description" : "Represents a map of Velocity templates that are applied on the request payload based on the value of the Content-Type header sent by the client. The content type value is the key in this map, and the template (as a String) is the value.", "type" : "object", "additionalProperties" : false, "patternProperties" : { @@ -75,29 +75,30 @@ } }, "TimeoutInMillis" : { - "description" : "Custom timeout between 50 and 29,000 milliseconds.", + "description" : "Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds or 29 seconds.", "type" : "integer", "minimum" : 50, "maximum" : 29000 }, "Type" : { - "description" : "The type of backend that your method is running.", + "description" : "Specifies an API method integration type. The valid value is one of the following:\n For the HTTP and HTTP proxy integrations, each integration can specify a protocol (``http/https``), port and path. Standard 80 and 443 ports are supported as well as custom ports above 1024. An HTTP or HTTP proxy integration with a ``connectionType`` of ``VPC_LINK`` is referred to as a private integration and uses a VpcLink to connect API Gateway to a network load balancer of a VPC.", "type" : "string", "enum" : [ "AWS", "AWS_PROXY", "HTTP", "HTTP_PROXY", "MOCK" ] }, "Uri" : { - "description" : "The Uniform Resource Identifier (URI) for the integration.", + "description" : "Specifies Uniform Resource Identifier (URI) of the integration endpoint.\n For ``HTTP`` or ``HTTP_PROXY`` integrations, the URI must be a fully formed, encoded HTTP(S) URL according to the RFC-3986 specification for standard integrations. If ``connectionType`` is ``VPC_LINK`` specify the Network Load Balancer DNS name. For ``AWS`` or ``AWS_PROXY`` integrations, the URI is of the form ``arn:aws:apigateway:{region}:{subdomain.service|service}:path|action/{service_api}``. Here, {Region} is the API Gateway region (e.g., us-east-1); {service} is the name of the integrated AWS service (e.g., s3); and {subdomain} is a designated subdomain supported by certain AWS service for fast host-name lookup. action can be used for an AWS service action-based API, using an Action={name}&{p1}={v1}&p2={v2}... query string. The ensuing {service_api} refers to a supported action {name} plus any required input parameters. Alternatively, path can be used for an AWS service path-based API. The ensuing service_api refers to the path to an AWS service resource, including the region of the integrated AWS service, if applicable. For example, for integration with the S3 API of GetObject, the uri can be either ``arn:aws:apigateway:us-west-2:s3:action/GetObject&Bucket={bucket}&Key={key}`` or ``arn:aws:apigateway:us-west-2:s3:path/{bucket}/{key}``", "type" : "string" } }, - "required" : [ "Type" ] + "required" : [ "Type" ], + "description" : "``Integration`` is a property of the [AWS::ApiGateway::Method](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html) resource that specifies information about the target backend that a method calls." }, "MethodResponse" : { "type" : "object", "additionalProperties" : false, "properties" : { "ResponseModels" : { - "description" : "The resources used for the response's content type. Specify response models as key-value pairs (string-to-string maps), with a content type as the key and a Model resource name as the value.", + "description" : "Specifies the Model resources used for the response's content-type. Response models are represented as a key/value map, with a content-type as the key and a Model name as the value.", "type" : "object", "additionalProperties" : false, "patternProperties" : { @@ -107,33 +108,34 @@ } }, "ResponseParameters" : { - "description" : "Response parameters that API Gateway sends to the client that called a method. Specify response parameters as key-value pairs (string-to-Boolean maps), with a destination as the key and a Boolean as the value.", + "description" : "A key-value map specifying required or optional response parameters that API Gateway can send back to the caller. A key defines a method response header and the value specifies whether the associated method response header is required or not. The expression of the key must match the pattern ``method.response.header.{name}``, where ``name`` is a valid and unique header name. API Gateway passes certain integration response data to the method response headers specified here according to the mapping you prescribe in the API's IntegrationResponse. The integration response data that can be mapped include an integration response header expressed in ``integration.response.header.{name}``, a static value enclosed within a pair of single quotes (e.g., ``'application/json'``), or a JSON expression from the back-end response payload in the form of ``integration.response.body.{JSON-expression}``, where ``JSON-expression`` is a valid JSON expression without the ``$`` prefix.)", "type" : "object", "additionalProperties" : false, "patternProperties" : { "[a-zA-Z0-9]+" : { - "type" : "boolean" + "type" : [ "boolean", "string" ] } } }, "StatusCode" : { - "description" : "The method response's status code, which you map to an IntegrationResponse.", + "description" : "The method response's status code.", "type" : "string" } }, - "required" : [ "StatusCode" ] + "required" : [ "StatusCode" ], + "description" : "Represents a method response of a given HTTP status code returned to the client. The method response is passed from the back end through the associated integration response that can be transformed using a mapping template." }, "IntegrationResponse" : { "type" : "object", "additionalProperties" : false, "properties" : { "ContentHandling" : { - "description" : "Specifies how to handle request payload content type conversions.", + "description" : "Specifies how to handle response payload content type conversions. Supported values are ``CONVERT_TO_BINARY`` and ``CONVERT_TO_TEXT``, with the following behaviors:\n If this property is not defined, the response payload will be passed through from the integration response to the method response without modification.", "type" : "string", "enum" : [ "CONVERT_TO_BINARY", "CONVERT_TO_TEXT" ] }, "ResponseParameters" : { - "description" : "The response parameters from the backend response that API Gateway sends to the method response.", + "description" : "A key-value map specifying response parameters that are passed to the method response from the back end. The key is a method response header parameter name and the mapped value is an integration response header value, a static value enclosed within a pair of single quotes, or a JSON expression from the integration response body. The mapping key must match the pattern of ``method.response.header.{name}``, where ``name`` is a valid and unique header name. The mapped non-static value must match the pattern of ``integration.response.header.{name}`` or ``integration.response.body.{JSON-expression}``, where ``name`` is a valid and unique response header name and ``JSON-expression`` is a valid JSON expression without the ``$`` prefix.", "type" : "object", "additionalProperties" : false, "patternProperties" : { @@ -143,7 +145,7 @@ } }, "ResponseTemplates" : { - "description" : "The templates that are used to transform the integration response body. Specify templates as key-value pairs (string-to-string mappings), with a content type as the key and a template as the value.", + "description" : "Specifies the templates used to transform the integration response body. Response templates are represented as a key/value map, with a content-type as the key and a template as the value.", "type" : "object", "additionalProperties" : false, "patternProperties" : { @@ -153,48 +155,49 @@ } }, "SelectionPattern" : { - "description" : "A regular expression that specifies which error strings or status codes from the backend map to the integration response.", + "description" : "Specifies the regular expression (regex) pattern used to choose an integration response based on the response from the back end. For example, if the success response returns nothing and the error response returns some string, you could use the ``.+`` regex to match error response. However, make sure that the error response does not contain any newline (``\\n``) character in such cases. If the back end is an LAMlong function, the LAMlong function error header is matched. For all other HTTP and AWS back ends, the HTTP status code is matched.", "type" : "string" }, "StatusCode" : { - "description" : "The status code that API Gateway uses to map the integration response to a MethodResponse status code.", + "description" : "Specifies the status code that is used to map the integration response to an existing MethodResponse.", "type" : "string" } }, - "required" : [ "StatusCode" ] + "required" : [ "StatusCode" ], + "description" : "``IntegrationResponse`` is a property of the [Amazon API Gateway Method Integration](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html) property type that specifies the response that API Gateway sends after a method's backend finishes processing a request." } }, "properties" : { "ApiKeyRequired" : { - "description" : "Indicates whether the method requires clients to submit a valid API key.", + "description" : "A boolean flag specifying whether a valid ApiKey is required to invoke this method.", "type" : "boolean" }, "AuthorizationScopes" : { - "description" : "A list of authorization scopes configured on the method.", + "description" : "A list of authorization scopes configured on the method. The scopes are used with a ``COGNITO_USER_POOLS`` authorizer to authorize the method invocation. The authorization works by matching the method scopes against the scopes parsed from the access token in the incoming request. The method invocation is authorized if any method scopes matches a claimed scope in the access token. Otherwise, the invocation is not authorized. When the method scope is configured, the client must provide an access token instead of an identity token for authorization purposes.", "type" : "array", "items" : { "type" : "string" } }, "AuthorizationType" : { - "description" : "The method's authorization type.", + "description" : "The method's authorization type. This parameter is required. For valid values, see [Method](https://docs.aws.amazon.com/apigateway/latest/api/API_Method.html) in the *API Gateway API Reference*.\n If you specify the ``AuthorizerId`` property, specify ``CUSTOM`` or ``COGNITO_USER_POOLS`` for this property.", "type" : "string", "enum" : [ "NONE", "AWS_IAM", "CUSTOM", "COGNITO_USER_POOLS" ] }, "AuthorizerId" : { - "description" : "The identifier of the authorizer to use on this method.", + "description" : "The identifier of an authorizer to use on this method. The method's authorization type must be ``CUSTOM`` or ``COGNITO_USER_POOLS``.", "type" : "string" }, "HttpMethod" : { - "description" : "The backend system that the method calls when it receives a request.", + "description" : "The method's HTTP verb.", "type" : "string" }, "Integration" : { - "description" : "The backend system that the method calls when it receives a request.", + "description" : "Represents an ``HTTP``, ``HTTP_PROXY``, ``AWS``, ``AWS_PROXY``, or Mock integration.", "$ref" : "#/definitions/Integration" }, "MethodResponses" : { - "description" : "The responses that can be sent to the client who calls the method.", + "description" : "Gets a method response associated with a given HTTP status code.", "type" : "array", "uniqueItems" : true, "items" : { @@ -202,11 +205,11 @@ } }, "OperationName" : { - "description" : "A friendly operation name for the method.", + "description" : "A human-friendly operation identifier for the method. For example, you can assign the ``operationName`` of ``ListPets`` for the ``GET /pets`` method in the ``PetStore`` example.", "type" : "string" }, "RequestModels" : { - "description" : "The resources that are used for the request's content type. Specify request models as key-value pairs (string-to-string mapping), with a content type as the key and a Model resource name as the value.", + "description" : "A key-value map specifying data schemas, represented by Model resources, (as the mapped value) of the request payloads of given content types (as the mapping key).", "type" : "object", "additionalProperties" : false, "patternProperties" : { @@ -216,25 +219,25 @@ } }, "RequestParameters" : { - "description" : "The request parameters that API Gateway accepts. Specify request parameters as key-value pairs (string-to-Boolean mapping), with a source as the key and a Boolean as the value.", + "description" : "A key-value map defining required or optional method request parameters that can be accepted by API Gateway. A key is a method request parameter name matching the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and ``name`` is a valid and unique parameter name. The value associated with the key is a Boolean flag indicating whether the parameter is required (``true``) or optional (``false``). The method request parameter names defined here are available in Integration to be mapped to integration request parameters or templates.", "type" : "object", "additionalProperties" : false, "patternProperties" : { "[a-zA-Z0-9]+" : { - "type" : "boolean" + "type" : [ "boolean", "string" ] } } }, "RequestValidatorId" : { - "description" : "The ID of the associated request validator.", + "description" : "The identifier of a RequestValidator for request validation.", "type" : "string" }, "ResourceId" : { - "description" : "The ID of an API Gateway resource.", + "description" : "The Resource identifier for the MethodResponse resource.", "type" : "string" }, "RestApiId" : { - "description" : "The ID of the RestApi resource in which API Gateway creates the method.", + "description" : "The string identifier of the associated RestApi.", "type" : "string" } }, diff --git a/aws-cloudformation-schema/aws-apigateway-model.json b/aws-cloudformation-schema/aws-apigateway-model.json index 53118f2c32..1fa49ed9ca 100644 --- a/aws-cloudformation-schema/aws-apigateway-model.json +++ b/aws-cloudformation-schema/aws-apigateway-model.json @@ -1,27 +1,27 @@ { "typeName" : "AWS::ApiGateway::Model", - "description" : "Resource Type definition for AWS::ApiGateway::Model", + "description" : "The ``AWS::ApiGateway::Model`` resource defines the structure of a request or response payload for an API method.", "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-apigateway", "additionalProperties" : false, "properties" : { "ContentType" : { "type" : "string", - "description" : "The content type for the model." + "description" : "The content-type for the model." }, "Description" : { "type" : "string", - "description" : "A description that identifies this model." + "description" : "The description of the model." }, "Name" : { "type" : "string", - "description" : "A name for the model. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the model name." + "description" : "A name for the model. If you don't specify a name, CFN generates a unique physical ID and uses that ID for the model name. For more information, see [Name Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html).\n If you specify a name, you cannot perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name." }, "RestApiId" : { "type" : "string", - "description" : "The ID of a REST API with which to associate this model." + "description" : "The string identifier of the associated RestApi." }, "Schema" : { - "description" : "The schema to use to transform data to one or more output formats. Specify null ({}) if you don't want to specify a schema.", + "description" : "The schema for the model. For ``application/json`` models, this should be JSON schema draft 4 model. Do not include \"\\*/\" characters in the description of any properties because such \"\\*/\" characters may be interpreted as the closing marker for comments in some languages, such as Java or JavaScript, causing the installation of your API's SDK generated by API Gateway to fail.", "type" : [ "object", "string" ] } }, diff --git a/aws-cloudformation-schema/aws-apigateway-resource.json b/aws-cloudformation-schema/aws-apigateway-resource.json index 716f1b25a7..79866d0ef2 100644 --- a/aws-cloudformation-schema/aws-apigateway-resource.json +++ b/aws-cloudformation-schema/aws-apigateway-resource.json @@ -1,6 +1,6 @@ { "typeName" : "AWS::ApiGateway::Resource", - "description" : "Resource Type definition for AWS::ApiGateway::Resource", + "description" : "The ``AWS::ApiGateway::Resource`` resource creates a resource in an API.", "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-apigateway", "additionalProperties" : false, "properties" : { @@ -9,7 +9,7 @@ "type" : "string" }, "RestApiId" : { - "description" : "The ID of the RestApi resource in which you want to create this resource..", + "description" : "The string identifier of the associated RestApi.", "type" : "string" }, "ParentId" : { diff --git a/aws-cloudformation-schema/aws-apigateway-restapi.json b/aws-cloudformation-schema/aws-apigateway-restapi.json index 821a069b7e..cfd1b46a3b 100644 --- a/aws-cloudformation-schema/aws-apigateway-restapi.json +++ b/aws-cloudformation-schema/aws-apigateway-restapi.json @@ -1,6 +1,6 @@ { "typeName" : "AWS::ApiGateway::RestApi", - "description" : "Resource Type definition for AWS::ApiGateway::RestApi.", + "description" : "The ``AWS::ApiGateway::RestApi`` resource creates a REST API. For more information, see [restapi:create](https://docs.aws.amazon.com/apigateway/latest/api/API_CreateRestApi.html) in the *Amazon API Gateway REST API Reference*.\n On January 1, 2016, the Swagger Specification was donated to the [OpenAPI initiative](https://docs.aws.amazon.com/https://www.openapis.org/), becoming the foundation of the OpenAPI Specification.", "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", "additionalProperties" : false, "definitions" : { @@ -13,16 +13,19 @@ "uniqueItems" : true, "items" : { "type" : "string" - } + }, + "description" : "A list of endpoint types of an API (RestApi) or its custom domain name (DomainName). For an edge-optimized API and its custom domain name, the endpoint type is ``\"EDGE\"``. For a regional API and its custom domain name, the endpoint type is ``REGIONAL``. For a private API, the endpoint type is ``PRIVATE``." }, "VpcEndpointIds" : { "type" : "array", "uniqueItems" : true, "items" : { "type" : "string" - } + }, + "description" : "A list of VpcEndpointIds of an API (RestApi) against which to create Route53 ALIASes. It is only supported for ``PRIVATE`` endpoint type." } - } + }, + "description" : "The ``EndpointConfiguration`` property type specifies the endpoint types of a REST API.\n ``EndpointConfiguration`` is a property of the [AWS::ApiGateway::RestApi](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html) resource." }, "Tag" : { "type" : "object", @@ -42,18 +45,23 @@ "additionalProperties" : false, "properties" : { "Bucket" : { - "type" : "string" + "type" : "string", + "description" : "The name of the S3 bucket where the OpenAPI file is stored." }, "ETag" : { - "type" : "string" + "type" : "string", + "description" : "The Amazon S3 ETag (a file checksum) of the OpenAPI file. If you don't specify a value, API Gateway skips ETag validation of your OpenAPI file." }, "Version" : { - "type" : "string" + "type" : "string", + "description" : "For versioning-enabled buckets, a specific version of the OpenAPI file." }, "Key" : { - "type" : "string" + "type" : "string", + "description" : "The file name of the OpenAPI file (Amazon S3 object name)." } - } + }, + "description" : "``S3Location`` is a property of the [AWS::ApiGateway::RestApi](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html) resource that specifies the Amazon S3 location of a OpenAPI (formerly Swagger) file that defines a set of RESTful APIs in JSON or YAML.\n On January 1, 2016, the Swagger Specification was donated to the [OpenAPI initiative](https://docs.aws.amazon.com/https://www.openapis.org/), becoming the foundation of the OpenAPI Specification." } }, "properties" : { @@ -64,47 +72,60 @@ "type" : "string" }, "ApiKeySourceType" : { - "type" : "string" + "type" : "string", + "description" : "The source of the API key for metering requests according to a usage plan. Valid values are: ``HEADER`` to read the API key from the ``X-API-Key`` header of a request. ``AUTHORIZER`` to read the API key from the ``UsageIdentifierKey`` from a custom authorizer." }, "BinaryMediaTypes" : { "type" : "array", "uniqueItems" : true, "items" : { "type" : "string" - } + }, + "description" : "The list of binary media types supported by the RestApi. By default, the RestApi supports only UTF-8-encoded text payloads." }, "Body" : { - "type" : [ "object", "string" ] + "type" : [ "object", "string" ], + "description" : "An OpenAPI specification that defines a set of RESTful APIs in JSON format. For YAML templates, you can also provide the specification in YAML format." }, "BodyS3Location" : { - "$ref" : "#/definitions/S3Location" + "$ref" : "#/definitions/S3Location", + "description" : "The Amazon Simple Storage Service (Amazon S3) location that points to an OpenAPI file, which defines a set of RESTful APIs in JSON or YAML format." }, "CloneFrom" : { - "type" : "string" + "type" : "string", + "description" : "The ID of the RestApi that you want to clone from." }, "EndpointConfiguration" : { - "$ref" : "#/definitions/EndpointConfiguration" + "$ref" : "#/definitions/EndpointConfiguration", + "description" : "A list of the endpoint types of the API. Use this property when creating an API. When importing an existing API, specify the endpoint configuration types using the ``Parameters`` property." }, "Description" : { - "type" : "string" + "type" : "string", + "description" : "The description of the RestApi." }, "DisableExecuteApiEndpoint" : { - "type" : "boolean" + "type" : "boolean", + "description" : "Specifies whether clients can invoke your API by using the default ``execute-api`` endpoint. By default, clients can invoke your API with the default ``https://{api_id}.execute-api.{region}.amazonaws.com`` endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint" }, "FailOnWarnings" : { - "type" : "boolean" + "type" : "boolean", + "description" : "A query parameter to indicate whether to rollback the API update (``true``) or not (``false``) when a warning is encountered. The default value is ``false``." }, "Name" : { - "type" : "string" + "type" : "string", + "description" : "The name of the RestApi. A name is required if the REST API is not based on an OpenAPI specification." }, "MinimumCompressionSize" : { - "type" : "integer" + "type" : "integer", + "description" : "A nullable integer that is used to enable compression (with non-negative between 0 and 10485760 (10M) bytes, inclusive) or disable compression (with a null value) on an API. When compression is enabled, compression or decompression is not applied on the payload if the payload size is smaller than this value. Setting it to zero allows compression for any payload size." }, "Mode" : { - "type" : "string" + "type" : "string", + "description" : "This property applies only when you use OpenAPI to define your REST API. The ``Mode`` determines how API Gateway handles resource updates.\n Valid values are ``overwrite`` or ``merge``. \n For ``overwrite``, the new API definition replaces the existing one. The existing API identifier remains unchanged.\n For ``merge``, the new API definition is merged with the existing API.\n If you don't specify this property, a default value is chosen. For REST APIs created before March 29, 2021, the default is ``overwrite``. For REST APIs created after March 29, 2021, the new API definition takes precedence, but any container types such as endpoint configurations and binary media types are merged with the existing API. \n Use the default mode to define top-level ``RestApi`` properties in addition to using OpenAPI. Generally, it's preferred to use API Gateway's OpenAPI extensions to model these properties." }, "Policy" : { - "type" : [ "object", "string" ] + "type" : [ "object", "string" ], + "description" : "A policy document that contains the permissions for the ``RestApi`` resource. To set the ARN for the policy, use the ``!Join`` intrinsic function with ``\"\"`` as delimiter and values of ``\"execute-api:/\"`` and ``\"*\"``." }, "Parameters" : { "type" : [ "object", "string" ], @@ -113,14 +134,16 @@ "[a-zA-Z0-9]+" : { "type" : "string" } - } + }, + "description" : "Custom header parameters as part of the request. For example, to exclude DocumentationParts from an imported API, set ``ignore=documentation`` as a ``parameters`` value, as in the AWS CLI command of ``aws apigateway import-rest-api --parameters ignore=documentation --body 'file:///path/to/imported-api-body.json'``." }, "Tags" : { "type" : "array", "uniqueItems" : false, "items" : { "$ref" : "#/definitions/Tag" - } + }, + "description" : "The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with ``aws:``. The tag value can be up to 256 characters." } }, "tagging" : { diff --git a/aws-cloudformation-schema/aws-apigateway-stage.json b/aws-cloudformation-schema/aws-apigateway-stage.json index 26d347ba40..b263668ac2 100644 --- a/aws-cloudformation-schema/aws-apigateway-stage.json +++ b/aws-cloudformation-schema/aws-apigateway-stage.json @@ -1,43 +1,43 @@ { "typeName" : "AWS::ApiGateway::Stage", - "description" : "Resource Type definition for AWS::ApiGateway::Stage", + "description" : "The ``AWS::ApiGateway::Stage`` resource creates a stage for a deployment.", "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-apigateway", "additionalProperties" : false, "properties" : { "AccessLogSetting" : { - "description" : "Specifies settings for logging access in this stage.", + "description" : "Access log settings, including the access log format and access log destination ARN.", "$ref" : "#/definitions/AccessLogSetting" }, "CacheClusterEnabled" : { - "description" : "Indicates whether cache clustering is enabled for the stage.", + "description" : "Specifies whether a cache cluster is enabled for the stage.", "type" : "boolean" }, "CacheClusterSize" : { - "description" : "The stage's cache cluster size.", + "description" : "The stage's cache capacity in GB. For more information about choosing a cache size, see [Enabling API caching to enhance responsiveness](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html).", "type" : "string" }, "CanarySetting" : { - "description" : "Specifies settings for the canary deployment in this stage.", + "description" : "Settings for the canary deployment in this stage.", "$ref" : "#/definitions/CanarySetting" }, "ClientCertificateId" : { - "description" : "The ID of the client certificate that API Gateway uses to call your integration endpoints in the stage. ", + "description" : "The identifier of a client certificate for an API stage.", "type" : "string" }, "DeploymentId" : { - "description" : "The ID of the deployment that the stage is associated with. This parameter is required to create a stage. ", + "description" : "The identifier of the Deployment that the stage points to.", "type" : "string" }, "Description" : { - "description" : "A description of the stage.", + "description" : "The stage's description.", "type" : "string" }, "DocumentationVersion" : { - "description" : "The version ID of the API documentation snapshot.", + "description" : "The version of the associated API documentation.", "type" : "string" }, "MethodSettings" : { - "description" : "Settings for all methods in the stage.", + "description" : "A map that defines the method settings for a Stage resource. Keys (designated as ``/{method_setting_key`` below) are method paths defined as ``{resource_path}/{http_method}`` for an individual method override, or ``/\\*/\\*`` for overriding all methods in the stage.", "type" : "array", "uniqueItems" : true, "insertionOrder" : false, @@ -46,15 +46,15 @@ } }, "RestApiId" : { - "description" : "The ID of the RestApi resource that you're deploying with this stage.", + "description" : "The string identifier of the associated RestApi.", "type" : "string" }, "StageName" : { - "description" : "The name of the stage, which API Gateway uses as the first path segment in the invoked Uniform Resource Identifier (URI).", + "description" : "The name of the stage is the first path segment in the Uniform Resource Identifier (URI) of a call to API Gateway. Stage names can only contain alphanumeric characters, hyphens, and underscores. Maximum length is 128 characters.", "type" : "string" }, "Tags" : { - "description" : "An array of arbitrary tags (key-value pairs) to associate with the stage.", + "description" : "The collection of tags. Each tag element is associated with a given resource.", "type" : "array", "uniqueItems" : false, "insertionOrder" : false, @@ -63,11 +63,11 @@ } }, "TracingEnabled" : { - "description" : "Specifies whether active X-Ray tracing is enabled for this stage.", + "description" : "Specifies whether active tracing with X-ray is enabled for the Stage.", "type" : "boolean" }, "Variables" : { - "description" : "A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value.", + "description" : "A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value. Variable names are limited to alphanumeric characters. Values must match the following regular expression: ``[A-Za-z0-9-._~:/?#&=,]+``.", "type" : "object", "additionalProperties" : false, "patternProperties" : { @@ -79,16 +79,16 @@ }, "definitions" : { "CanarySetting" : { - "description" : "Specifies settings for the canary deployment in this stage.", + "description" : "Configuration settings of a canary deployment.", "type" : "object", "additionalProperties" : false, "properties" : { "DeploymentId" : { - "description" : "The identifier of the deployment that the stage points to.", + "description" : "The ID of the canary deployment.", "type" : "string" }, "PercentTraffic" : { - "description" : "The percentage (0-100) of traffic diverted to a canary deployment.", + "description" : "The percent (0-100) of traffic diverted to a canary deployment.", "type" : "number", "minimum" : 0, "maximum" : 100 @@ -104,70 +104,70 @@ } }, "UseStageCache" : { - "description" : "Whether the canary deployment uses the stage cache or not.", + "description" : "A Boolean flag to indicate whether the canary deployment uses the stage cache or not.", "type" : "boolean" } } }, "AccessLogSetting" : { - "description" : "Specifies settings for logging access in this stage.", + "description" : "The ``AccessLogSetting`` property type specifies settings for logging access in this stage.\n ``AccessLogSetting`` is a property of the [AWS::ApiGateway::Stage](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html) resource.", "type" : "object", "additionalProperties" : false, "properties" : { "DestinationArn" : { - "description" : "The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with amazon-apigateway-. This parameter is required to enable access logging.", + "description" : "The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with ``amazon-apigateway-``. This parameter is required to enable access logging.", "type" : "string" }, "Format" : { - "description" : "A single line format of the access logs of data, as specified by selected $context variables (https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html#context-variable-reference). The format must include at least $context.requestId. This parameter is required to enable access logging.", + "description" : "A single line format of the access logs of data, as specified by selected [$context variables](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html#context-variable-reference). The format must include at least ``$context.requestId``. This parameter is required to enable access logging.", "type" : "string" } } }, "MethodSetting" : { - "description" : "Configures settings for all methods in a stage.", + "description" : "The ``MethodSetting`` property type configures settings for all methods in a stage.\n The ``MethodSettings`` property of the ``AWS::ApiGateway::Stage`` resource contains a list of ``MethodSetting`` property types.", "type" : "object", "additionalProperties" : false, "properties" : { "CacheDataEncrypted" : { - "description" : "Indicates whether the cached responses are encrypted.", + "description" : "Specifies whether the cached responses are encrypted.", "type" : "boolean" }, "CacheTtlInSeconds" : { - "description" : "The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses.", + "description" : "Specifies the time to live (TTL), in seconds, for cached responses. The higher the TTL, the longer the response will be cached.", "type" : "integer" }, "CachingEnabled" : { - "description" : "Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses.", + "description" : "Specifies whether responses should be cached and returned for requests. A cache cluster must be enabled on the stage for responses to be cached.", "type" : "boolean" }, "DataTraceEnabled" : { - "description" : "Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs.", + "description" : "Specifies whether data trace logging is enabled for this method, which affects the log entries pushed to Amazon CloudWatch Logs. This can be useful to troubleshoot APIs, but can result in logging sensitive data. We recommend that you don't enable this option for production APIs.", "type" : "boolean" }, "HttpMethod" : { - "description" : "The HTTP method. You can use an asterisk (*) as a wildcard to apply method settings to multiple methods.", + "description" : "The HTTP method. To apply settings to multiple resources and methods, specify an asterisk (``*``) for the ``HttpMethod`` and ``/*`` for the ``ResourcePath``. This parameter is required when you specify a ``MethodSetting``.", "type" : "string" }, "LoggingLevel" : { - "description" : "The logging level for this method. For valid values, see the loggingLevel property of the Stage (https://docs.aws.amazon.com/apigateway/api-reference/resource/stage/#loggingLevel) resource in the Amazon API Gateway API Reference.", + "description" : "Specifies the logging level for this method, which affects the log entries pushed to Amazon CloudWatch Logs. Valid values are ``OFF``, ``ERROR``, and ``INFO``. Choose ``ERROR`` to write only error-level entries to CloudWatch Logs, or choose ``INFO`` to include all ``ERROR`` events as well as extra informational events.", "type" : "string" }, "MetricsEnabled" : { - "description" : "Indicates whether Amazon CloudWatch metrics are enabled for methods in the stage.", + "description" : "Specifies whether Amazon CloudWatch metrics are enabled for this method.", "type" : "boolean" }, "ResourcePath" : { - "description" : "The resource path for this method. Forward slashes (/) are encoded as ~1 and the initial slash must include a forward slash. For example, the path value /resource/subresource must be encoded as /~1resource~1subresource. To specify the root path, use only a slash (/). You can use an asterisk (*) as a wildcard to apply method settings to multiple methods.", + "description" : "The resource path for this method. Forward slashes (``/``) are encoded as ``~1`` and the initial slash must include a forward slash. For example, the path value ``/resource/subresource`` must be encoded as ``/~1resource~1subresource``. To specify the root path, use only a slash (``/``). To apply settings to multiple resources and methods, specify an asterisk (``*``) for the ``HttpMethod`` and ``/*`` for the ``ResourcePath``. This parameter is required when you specify a ``MethodSetting``.", "type" : "string" }, "ThrottlingBurstLimit" : { - "description" : "The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account.", + "description" : "Specifies the throttling burst limit.", "type" : "integer", "minimum" : 0 }, "ThrottlingRateLimit" : { - "description" : "The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account.", + "description" : "Specifies the throttling rate limit.", "type" : "number", "minimum" : 0 } diff --git a/aws-cloudformation-schema/aws-apigateway-usageplankey.json b/aws-cloudformation-schema/aws-apigateway-usageplankey.json index 0f7cf75f5a..4a346c0249 100644 --- a/aws-cloudformation-schema/aws-apigateway-usageplankey.json +++ b/aws-cloudformation-schema/aws-apigateway-usageplankey.json @@ -1,20 +1,20 @@ { "typeName" : "AWS::ApiGateway::UsagePlanKey", - "description" : "Resource Type definition for AWS::ApiGateway::UsagePlanKey", + "description" : "The ``AWS::ApiGateway::UsagePlanKey`` resource associates an API key with a usage plan. This association determines which users the usage plan is applied to.", "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-apigateway", "additionalProperties" : false, "properties" : { "KeyId" : { - "description" : "The ID of the usage plan key.", + "description" : "The Id of the UsagePlanKey resource.", "type" : "string" }, "KeyType" : { - "description" : "The type of usage plan key. Currently, the only valid key type is API_KEY.", + "description" : "The type of a UsagePlanKey resource for a plan customer.", "type" : "string", "enum" : [ "API_KEY" ] }, "UsagePlanId" : { - "description" : "The ID of the usage plan.", + "description" : "The Id of the UsagePlan resource representing the usage plan containing the UsagePlanKey resource representing a plan customer.", "type" : "string" }, "Id" : { @@ -35,7 +35,7 @@ "permissions" : [ "apigateway:GET" ] }, "delete" : { - "permissions" : [ "apigateway:DELETE" ] + "permissions" : [ "apigateway:DELETE", "apigateway:GET" ] }, "list" : { "handlerSchema" : { diff --git a/aws-cloudformation-schema/aws-appconfig-application.json b/aws-cloudformation-schema/aws-appconfig-application.json index 6982b7d7fe..b93c735fae 100644 --- a/aws-cloudformation-schema/aws-appconfig-application.json +++ b/aws-cloudformation-schema/aws-appconfig-application.json @@ -1,40 +1,79 @@ { "typeName" : "AWS::AppConfig::Application", "description" : "Resource Type definition for AWS::AppConfig::Application", - "additionalProperties" : false, + "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-appconfig.git", + "definitions" : { + "Tags" : { + "description" : "Metadata to assign to the application. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define.", + "type" : "object", + "additionalProperties" : false, + "properties" : { + "Key" : { + "type" : "string", + "description" : "The key-value string map. The valid character set is [a-zA-Z1-9+-=._:/]. The tag key can be up to 128 characters and must not start with aws:.", + "minLength" : 1, + "maxLength" : 128, + "pattern" : "^(?!aws:.)[a-zA-Z1-9+=._:/-]*$" + }, + "Value" : { + "type" : "string", + "description" : "The tag value can be up to 256 characters.", + "minLength" : 0, + "maxLength" : 256 + } + }, + "required" : [ "Key", "Value" ] + } + }, "properties" : { "Description" : { - "type" : "string" + "type" : "string", + "description" : "A description of the application." }, - "Id" : { - "type" : "string" + "ApplicationId" : { + "type" : "string", + "description" : "The application Id" }, "Tags" : { "type" : "array", - "uniqueItems" : false, + "description" : "Metadata to assign to the application. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define.", + "uniqueItems" : true, "items" : { "$ref" : "#/definitions/Tags" - } + }, + "insertionOrder" : false }, "Name" : { - "type" : "string" + "type" : "string", + "description" : "A name for the application." } }, - "definitions" : { - "Tags" : { - "type" : "object", - "additionalProperties" : false, - "properties" : { - "Value" : { - "type" : "string" - }, - "Key" : { - "type" : "string" - } - } + "additionalProperties" : false, + "required" : [ "Name" ], + "readOnlyProperties" : [ "/properties/ApplicationId" ], + "primaryIdentifier" : [ "/properties/ApplicationId" ], + "handlers" : { + "create" : { + "permissions" : [ "appconfig:CreateApplication", "appconfig:GetApplication", "appconfig:ListTagsForResource", "appconfig:TagResource" ] + }, + "read" : { + "permissions" : [ "appconfig:GetApplication", "appconfig:ListTagsForResource" ] + }, + "update" : { + "permissions" : [ "appconfig:UpdateApplication", "appconfig:TagResource", "appconfig:UntagResource" ] + }, + "delete" : { + "permissions" : [ "appconfig:GetApplication", "appconfig:DeleteApplication" ] + }, + "list" : { + "permissions" : [ "appconfig:ListApplications" ] } }, - "required" : [ "Name" ], - "primaryIdentifier" : [ "/properties/Id" ], - "readOnlyProperties" : [ "/properties/Id" ] + "tagging" : { + "taggable" : true, + "tagOnCreate" : true, + "tagUpdatable" : true, + "cloudFormationSystemTags" : true, + "tagProperty" : "/properties/Tags" + } } \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-appconfig-configurationprofile.json b/aws-cloudformation-schema/aws-appconfig-configurationprofile.json index 92d9b32d0b..3d33fef5be 100644 --- a/aws-cloudformation-schema/aws-appconfig-configurationprofile.json +++ b/aws-cloudformation-schema/aws-appconfig-configurationprofile.json @@ -9,6 +9,9 @@ "Type" : { "type" : "string" }, + "KmsKeyIdentifier" : { + "type" : "string" + }, "Description" : { "type" : "string" }, diff --git a/aws-cloudformation-schema/aws-appsync-functionconfiguration.json b/aws-cloudformation-schema/aws-appsync-functionconfiguration.json index fab3022329..6f9c0a1dc5 100644 --- a/aws-cloudformation-schema/aws-appsync-functionconfiguration.json +++ b/aws-cloudformation-schema/aws-appsync-functionconfiguration.json @@ -1,102 +1,156 @@ { "typeName" : "AWS::AppSync::FunctionConfiguration", - "description" : "Resource Type definition for AWS::AppSync::FunctionConfiguration", - "additionalProperties" : false, + "description" : "An example resource schema demonstrating some basic constructs and validation rules.", + "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "definitions" : { + "AppSyncRuntime" : { + "description" : "Describes a runtime used by an AWS AppSync pipeline resolver or AWS AppSync function. Specifies the name and version of the runtime to use. Note that if a runtime is specified, code must also be specified.", + "type" : "object", + "additionalProperties" : false, + "properties" : { + "Name" : { + "type" : "string", + "description" : "The name of the runtime to use. Currently, the only allowed value is APPSYNC_JS." + }, + "RuntimeVersion" : { + "type" : "string", + "description" : "The version of the runtime to use. Currently, the only allowed version is 1.0.0." + } + }, + "required" : [ "Name", "RuntimeVersion" ] + }, + "SyncConfig" : { + "description" : "Describes a Sync configuration for a resolver. Specifies which Conflict Detection strategy and Resolution strategy to use when the resolver is invoked.", + "type" : "object", + "additionalProperties" : false, + "properties" : { + "ConflictDetection" : { + "type" : "string", + "description" : "The Conflict Detection strategy to use." + }, + "ConflictHandler" : { + "type" : "string", + "description" : "The Conflict Resolution strategy to perform in the event of a conflict." + }, + "LambdaConflictHandlerConfig" : { + "$ref" : "#/definitions/LambdaConflictHandlerConfig" + } + }, + "required" : [ "ConflictDetection" ] + }, + "LambdaConflictHandlerConfig" : { + "type" : "object", + "description" : "The LambdaConflictHandlerConfig when configuring LAMBDA as the Conflict Handler.", + "additionalProperties" : false, + "properties" : { + "LambdaConflictHandlerArn" : { + "type" : "string", + "description" : "The Amazon Resource Name (ARN) for the Lambda function to use as the Conflict Handler." + } + } + } + }, "properties" : { "FunctionId" : { + "description" : "The unique identifier for the function generated by the service", "type" : "string" }, "FunctionArn" : { + "description" : "The ARN for the function generated by the service", "type" : "string" }, - "Description" : { + "ApiId" : { + "description" : "The AWS AppSync GraphQL API that you want to attach using this function.", "type" : "string" }, - "RequestMappingTemplate" : { + "Code" : { + "description" : "The resolver code that contains the request and response functions. When code is used, the runtime is required. The runtime value must be APPSYNC_JS.", "type" : "string" }, - "ResponseMappingTemplate" : { + "CodeS3Location" : { + "description" : "The Amazon S3 endpoint (where the code is located??).", "type" : "string" }, - "MaxBatchSize" : { - "type" : "integer" - }, - "SyncConfig" : { - "$ref" : "#/definitions/SyncConfig" - }, - "Code" : { + "DataSourceName" : { + "description" : "The name of data source this function will attach.", "type" : "string" }, - "Name" : { + "Description" : { + "description" : "The function description.", "type" : "string" }, - "ResponseMappingTemplateS3Location" : { + "FunctionVersion" : { + "description" : "The version of the request mapping template. Currently, only the 2018-05-29 version of the template is supported.", "type" : "string" }, - "Runtime" : { - "$ref" : "#/definitions/AppSyncRuntime" + "MaxBatchSize" : { + "description" : "The maximum number of resolver request inputs that will be sent to a single AWS Lambda function in a BatchInvoke operation.", + "type" : "integer" }, - "CodeS3Location" : { + "Name" : { + "description" : "The name of the function.", "type" : "string" }, - "DataSourceName" : { + "RequestMappingTemplate" : { + "description" : "The Function request mapping template. Functions support only the 2018-05-29 version of the request mapping template.", "type" : "string" }, - "FunctionVersion" : { + "RequestMappingTemplateS3Location" : { + "description" : "Describes a Sync configuration for a resolver. Contains information on which Conflict Detection, as well as Resolution strategy, should be performed when the resolver is invoked.", "type" : "string" }, - "Id" : { + "ResponseMappingTemplate" : { + "description" : "The Function response mapping template.", "type" : "string" }, - "RequestMappingTemplateS3Location" : { + "ResponseMappingTemplateS3Location" : { + "description" : "The location of a response mapping template in an Amazon S3 bucket. Use this if you want to provision with a template file in Amazon S3 rather than embedding it in your CloudFormation template.", "type" : "string" }, - "ApiId" : { - "type" : "string" - } - }, - "definitions" : { - "AppSyncRuntime" : { - "type" : "object", - "additionalProperties" : false, - "properties" : { - "RuntimeVersion" : { - "type" : "string" - }, - "Name" : { - "type" : "string" - } - }, - "required" : [ "RuntimeVersion", "Name" ] + "Runtime" : { + "description" : "Describes a runtime used by an AWS AppSync pipeline resolver or AWS AppSync function. Specifies the name and version of the runtime to use. Note that if a runtime is specified, code must also be specified.", + "$ref" : "#/definitions/AppSyncRuntime" }, "SyncConfig" : { - "type" : "object", - "additionalProperties" : false, - "properties" : { - "ConflictHandler" : { - "type" : "string" - }, - "ConflictDetection" : { - "type" : "string" - }, - "LambdaConflictHandlerConfig" : { - "$ref" : "#/definitions/LambdaConflictHandlerConfig" - } - }, - "required" : [ "ConflictDetection" ] - }, - "LambdaConflictHandlerConfig" : { - "type" : "object", - "additionalProperties" : false, - "properties" : { - "LambdaConflictHandlerArn" : { - "type" : "string" - } - } + "description" : "Describes a Sync configuration for a resolver. Specifies which Conflict Detection strategy and Resolution strategy to use when the resolver is invoked.", + "$ref" : "#/definitions/SyncConfig" } }, - "required" : [ "DataSourceName", "ApiId", "Name" ], + "tagging" : { + "taggable" : false, + "tagOnCreate" : false, + "tagUpdatable" : false, + "cloudFormationSystemTags" : false + }, + "additionalProperties" : false, + "required" : [ "ApiId", "DataSourceName", "Name" ], + "readOnlyProperties" : [ "/properties/FunctionArn", "/properties/FunctionId" ], + "writeOnlyProperties" : [ "/properties/CodeS3Location", "/properties/ResponseMappingTemplateS3Location", "/properties/RequestMappingTemplateS3Location" ], "createOnlyProperties" : [ "/properties/ApiId" ], - "primaryIdentifier" : [ "/properties/Id" ], - "readOnlyProperties" : [ "/properties/FunctionArn", "/properties/Id", "/properties/FunctionId" ] + "primaryIdentifier" : [ "/properties/FunctionArn" ], + "handlers" : { + "create" : { + "permissions" : [ "s3:GetObject", "appsync:CreateFunction" ] + }, + "read" : { + "permissions" : [ "appsync:GetFunction" ] + }, + "update" : { + "permissions" : [ "s3:GetObject", "appsync:UpdateFunction" ] + }, + "delete" : { + "permissions" : [ "appsync:DeleteFunction" ] + }, + "list" : { + "permissions" : [ "appsync:ListFunctions" ], + "handlerSchema" : { + "properties" : { + "ApiId" : { + "$ref" : "resource-schema.json#/properties/ApiId" + } + }, + "required" : [ "ApiId" ] + } + } + } } \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-ce-anomalymonitor.json b/aws-cloudformation-schema/aws-ce-anomalymonitor.json index 2a07f61b57..8be4b1771f 100644 --- a/aws-cloudformation-schema/aws-ce-anomalymonitor.json +++ b/aws-cloudformation-schema/aws-ce-anomalymonitor.json @@ -57,7 +57,7 @@ "type" : "string", "minLength" : 0, "maxLength" : 40, - "pattern" : "(\\d{4}-\\d{2}-\\d{2})(T\\d{2}:\\d{2}:\\d{2}Z)?" + "pattern" : "(\\d{4}-\\d{2}-\\d{2})(T\\d{2}:\\d{2}:\\d{2}Z)?|(NOT_EVALUATED_YET)" }, "LastUpdatedDate" : { "description" : "The date when the monitor was last updated.", @@ -93,7 +93,8 @@ "additionalProperties" : false, "required" : [ "MonitorName", "MonitorType" ], "createOnlyProperties" : [ "/properties/MonitorType", "/properties/MonitorDimension", "/properties/MonitorSpecification", "/properties/ResourceTags" ], - "readOnlyProperties" : [ "/properties/MonitorArn", "/properties/CreationDate", "/properties/DimensionValueCount", "/properties/LastEvaluatedDate", "/properties/LastUpdatedDate", "/properties/DimensionalValueCount" ], + "readOnlyProperties" : [ "/properties/MonitorArn", "/properties/CreationDate", "/properties/LastEvaluatedDate", "/properties/LastUpdatedDate", "/properties/DimensionalValueCount" ], + "writeOnlyProperties" : [ "/properties/ResourceTags" ], "primaryIdentifier" : [ "/properties/MonitorArn" ], "handlers" : { "create" : { diff --git a/aws-cloudformation-schema/aws-cognito-identitypool.json b/aws-cloudformation-schema/aws-cognito-identitypool.json index 3a157d7494..0b3ae9b82b 100644 --- a/aws-cloudformation-schema/aws-cognito-identitypool.json +++ b/aws-cloudformation-schema/aws-cognito-identitypool.json @@ -1,85 +1,7 @@ { "typeName" : "AWS::Cognito::IdentityPool", "description" : "Resource Type definition for AWS::Cognito::IdentityPool", - "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", "additionalProperties" : false, - "tagging" : { - "taggable" : true, - "tagOnCreate" : true, - "tagUpdatable" : true, - "cloudFormationSystemTags" : false, - "tagProperty" : "/properties/IdentityPoolTags" - }, - "definitions" : { - "PushSync" : { - "type" : "object", - "additionalProperties" : false, - "properties" : { - "ApplicationArns" : { - "type" : "array", - "uniqueItems" : false, - "insertionOrder" : false, - "items" : { - "type" : "string" - } - }, - "RoleArn" : { - "type" : "string" - } - } - }, - "CognitoIdentityProvider" : { - "type" : "object", - "additionalProperties" : false, - "properties" : { - "ServerSideTokenCheck" : { - "type" : "boolean" - }, - "ProviderName" : { - "type" : "string" - }, - "ClientId" : { - "type" : "string" - } - }, - "required" : [ "ProviderName", "ClientId" ] - }, - "CognitoStreams" : { - "type" : "object", - "additionalProperties" : false, - "properties" : { - "StreamingStatus" : { - "type" : "string" - }, - "StreamName" : { - "type" : "string" - }, - "RoleArn" : { - "type" : "string" - } - } - }, - "Tag" : { - "description" : "A key-value pair to associate with a resource.", - "type" : "object", - "properties" : { - "Key" : { - "type" : "string", - "description" : "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.", - "minLength" : 1, - "maxLength" : 128 - }, - "Value" : { - "type" : "string", - "description" : "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.", - "minLength" : 0, - "maxLength" : 256 - } - }, - "required" : [ "Key", "Value" ], - "additionalProperties" : false - } - }, "properties" : { "PushSync" : { "$ref" : "#/definitions/PushSync" @@ -87,7 +9,6 @@ "CognitoIdentityProviders" : { "type" : "array", "uniqueItems" : false, - "insertionOrder" : false, "items" : { "$ref" : "#/definitions/CognitoIdentityProvider" } @@ -119,7 +40,6 @@ "SamlProviderARNs" : { "type" : "array", "uniqueItems" : false, - "insertionOrder" : false, "items" : { "type" : "string" } @@ -127,43 +47,63 @@ "OpenIdConnectProviderARNs" : { "type" : "array", "uniqueItems" : false, - "insertionOrder" : false, "items" : { "type" : "string" } }, "AllowClassicFlow" : { "type" : "boolean" + } + }, + "definitions" : { + "PushSync" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "ApplicationArns" : { + "type" : "array", + "uniqueItems" : false, + "items" : { + "type" : "string" + } + }, + "RoleArn" : { + "type" : "string" + } + } }, - "IdentityPoolTags" : { - "description" : "An array of key-value pairs to apply to this resource.", - "type" : "array", - "uniqueItems" : true, - "insertionOrder" : false, - "items" : { - "$ref" : "#/definitions/Tag" + "CognitoIdentityProvider" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "ServerSideTokenCheck" : { + "type" : "boolean" + }, + "ProviderName" : { + "type" : "string" + }, + "ClientId" : { + "type" : "string" + } + } + }, + "CognitoStreams" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "StreamingStatus" : { + "type" : "string" + }, + "StreamName" : { + "type" : "string" + }, + "RoleArn" : { + "type" : "string" + } } } }, "required" : [ "AllowUnauthenticatedIdentities" ], "primaryIdentifier" : [ "/properties/Id" ], - "readOnlyProperties" : [ "/properties/Id", "/properties/Name" ], - "writeOnlyProperties" : [ "/properties/PushSync", "/properties/CognitoStreams", "/properties/CognitoEvents" ], - "handlers" : { - "create" : { - "permissions" : [ "cognito-identity:CreateIdentityPool", "cognito-identity:DescribeIdentityPool", "cognito-identity:TagResource", "cognito-sync:SetIdentityPoolConfiguration", "cognito-sync:SetCognitoEvents", "iam:PassRole" ] - }, - "read" : { - "permissions" : [ "cognito-identity:DescribeIdentityPool" ] - }, - "update" : { - "permissions" : [ "cognito-identity:UpdateIdentityPool", "cognito-identity:DescribeIdentityPool", "cognito-identity:TagResource", "cognito-identity:UntagResource", "cognito-sync:SetIdentityPoolConfiguration", "cognito-sync:SetCognitoEvents", "iam:PassRole" ] - }, - "delete" : { - "permissions" : [ "cognito-identity:DeleteIdentityPool", "cognito-identity:DescribeIdentityPool" ] - }, - "list" : { - "permissions" : [ "cognito-identity:ListIdentityPools" ] - } - } + "readOnlyProperties" : [ "/properties/Id", "/properties/Name" ] } \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-cognito-userpool.json b/aws-cloudformation-schema/aws-cognito-userpool.json index 254ae9d920..f18e4e3761 100644 --- a/aws-cloudformation-schema/aws-cognito-userpool.json +++ b/aws-cloudformation-schema/aws-cognito-userpool.json @@ -1,427 +1,468 @@ { "typeName" : "AWS::Cognito::UserPool", "description" : "Resource Type definition for AWS::Cognito::UserPool", - "additionalProperties" : false, - "properties" : { - "UserPoolTags" : { - "type" : "object" - }, - "Policies" : { - "$ref" : "#/definitions/Policies" - }, - "Schema" : { - "type" : "array", - "uniqueItems" : false, - "items" : { - "$ref" : "#/definitions/SchemaAttribute" - } - }, - "AdminCreateUserConfig" : { - "$ref" : "#/definitions/AdminCreateUserConfig" - }, - "UsernameConfiguration" : { - "$ref" : "#/definitions/UsernameConfiguration" - }, - "UserPoolName" : { - "type" : "string" - }, - "SmsVerificationMessage" : { - "type" : "string" - }, - "UserAttributeUpdateSettings" : { - "$ref" : "#/definitions/UserAttributeUpdateSettings" - }, - "EmailConfiguration" : { - "$ref" : "#/definitions/EmailConfiguration" - }, - "SmsConfiguration" : { - "$ref" : "#/definitions/SmsConfiguration" - }, - "EmailVerificationSubject" : { - "type" : "string" - }, - "AccountRecoverySetting" : { - "$ref" : "#/definitions/AccountRecoverySetting" - }, - "VerificationMessageTemplate" : { - "$ref" : "#/definitions/VerificationMessageTemplate" - }, - "ProviderURL" : { - "type" : "string" - }, - "MfaConfiguration" : { - "type" : "string" - }, - "DeletionProtection" : { - "type" : "string" - }, - "SmsAuthenticationMessage" : { - "type" : "string" - }, - "ProviderName" : { - "type" : "string" - }, - "UserPoolAddOns" : { - "$ref" : "#/definitions/UserPoolAddOns" - }, - "AliasAttributes" : { - "type" : "array", - "uniqueItems" : false, - "items" : { - "type" : "string" - } - }, - "EnabledMfas" : { - "type" : "array", - "uniqueItems" : false, - "items" : { - "type" : "string" - } - }, - "LambdaConfig" : { - "$ref" : "#/definitions/LambdaConfig" - }, - "Id" : { - "type" : "string" - }, - "Arn" : { - "type" : "string" - }, - "UsernameAttributes" : { - "type" : "array", - "uniqueItems" : false, - "items" : { - "type" : "string" - } - }, - "AutoVerifiedAttributes" : { - "type" : "array", - "uniqueItems" : false, - "items" : { - "type" : "string" - } - }, - "DeviceConfiguration" : { - "$ref" : "#/definitions/DeviceConfiguration" - }, - "EmailVerificationMessage" : { - "type" : "string" - } + "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "tagging" : { + "taggable" : true, + "tagOnCreate" : true, + "tagUpdatable" : true, + "cloudFormationSystemTags" : false, + "tagProperty" : "/properties/UserPoolTags" }, "definitions" : { - "Policies" : { - "type" : "object", - "additionalProperties" : false, - "properties" : { - "PasswordPolicy" : { - "$ref" : "#/definitions/PasswordPolicy" - } - } - }, - "VerificationMessageTemplate" : { + "PasswordPolicy" : { "type" : "object", - "additionalProperties" : false, "properties" : { - "EmailMessageByLink" : { - "type" : "string" + "MinimumLength" : { + "type" : "integer" }, - "EmailMessage" : { - "type" : "string" + "RequireLowercase" : { + "type" : "boolean" }, - "SmsMessage" : { - "type" : "string" + "RequireNumbers" : { + "type" : "boolean" }, - "EmailSubject" : { - "type" : "string" + "RequireSymbols" : { + "type" : "boolean" }, - "DefaultEmailOption" : { - "type" : "string" + "RequireUppercase" : { + "type" : "boolean" }, - "EmailSubjectByLink" : { - "type" : "string" + "TemporaryPasswordValidityDays" : { + "type" : "integer" } - } + }, + "additionalProperties" : false }, - "NumberAttributeConstraints" : { + "Policies" : { "type" : "object", - "additionalProperties" : false, "properties" : { - "MinValue" : { - "type" : "string" - }, - "MaxValue" : { - "type" : "string" + "PasswordPolicy" : { + "$ref" : "#/definitions/PasswordPolicy" } - } + }, + "additionalProperties" : false }, "InviteMessageTemplate" : { "type" : "object", - "additionalProperties" : false, "properties" : { - "EmailSubject" : { + "EmailMessage" : { "type" : "string" }, - "EmailMessage" : { + "EmailSubject" : { "type" : "string" }, "SMSMessage" : { "type" : "string" } - } + }, + "additionalProperties" : false }, - "AdminCreateUserConfig" : { + "RecoveryOption" : { "type" : "object", - "additionalProperties" : false, "properties" : { - "InviteMessageTemplate" : { - "$ref" : "#/definitions/InviteMessageTemplate" + "Name" : { + "type" : "string" }, - "UnusedAccountValidityDays" : { + "Priority" : { "type" : "integer" - }, - "AllowAdminCreateUserOnly" : { - "type" : "boolean" - } - } - }, - "UsernameConfiguration" : { - "type" : "object", - "additionalProperties" : false, - "properties" : { - "CaseSensitive" : { - "type" : "boolean" } - } + }, + "additionalProperties" : false }, - "UserPoolAddOns" : { + "AccountRecoverySetting" : { "type" : "object", - "additionalProperties" : false, "properties" : { - "AdvancedSecurityMode" : { - "type" : "string" + "RecoveryMechanisms" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/RecoveryOption" + } } - } + }, + "additionalProperties" : false }, - "RecoveryOption" : { + "AdminCreateUserConfig" : { "type" : "object", - "additionalProperties" : false, "properties" : { - "Priority" : { - "type" : "integer" + "AllowAdminCreateUserOnly" : { + "type" : "boolean" }, - "Name" : { - "type" : "string" - } - } - }, - "StringAttributeConstraints" : { - "type" : "object", - "additionalProperties" : false, - "properties" : { - "MaxLength" : { - "type" : "string" + "InviteMessageTemplate" : { + "$ref" : "#/definitions/InviteMessageTemplate" }, - "MinLength" : { - "type" : "string" - } - } - }, - "UserAttributeUpdateSettings" : { - "type" : "object", - "additionalProperties" : false, - "properties" : { - "AttributesRequireVerificationBeforeUpdate" : { - "type" : "array", - "uniqueItems" : false, - "items" : { - "type" : "string" - } + "UnusedAccountValidityDays" : { + "type" : "integer" } }, - "required" : [ "AttributesRequireVerificationBeforeUpdate" ] + "additionalProperties" : false }, - "CustomSMSSender" : { + "DeviceConfiguration" : { "type" : "object", - "additionalProperties" : false, "properties" : { - "LambdaArn" : { - "type" : "string" + "ChallengeRequiredOnNewDevice" : { + "type" : "boolean" }, - "LambdaVersion" : { - "type" : "string" + "DeviceOnlyRememberedOnUserPrompt" : { + "type" : "boolean" } - } + }, + "additionalProperties" : false }, "EmailConfiguration" : { "type" : "object", - "additionalProperties" : false, "properties" : { "ReplyToEmailAddress" : { "type" : "string" }, - "ConfigurationSet" : { + "SourceArn" : { "type" : "string" }, - "EmailSendingAccount" : { + "From" : { "type" : "string" }, - "From" : { + "ConfigurationSet" : { "type" : "string" }, - "SourceArn" : { + "EmailSendingAccount" : { "type" : "string" } - } + }, + "additionalProperties" : false }, - "SmsConfiguration" : { + "CustomEmailSender" : { "type" : "object", - "additionalProperties" : false, "properties" : { - "SnsCallerArn" : { - "type" : "string" - }, - "SnsRegion" : { + "LambdaVersion" : { "type" : "string" }, - "ExternalId" : { + "LambdaArn" : { "type" : "string" } - } + }, + "additionalProperties" : false }, - "PasswordPolicy" : { + "CustomSMSSender" : { "type" : "object", - "additionalProperties" : false, "properties" : { - "RequireNumbers" : { - "type" : "boolean" - }, - "MinimumLength" : { - "type" : "integer" - }, - "TemporaryPasswordValidityDays" : { - "type" : "integer" - }, - "RequireUppercase" : { - "type" : "boolean" - }, - "RequireLowercase" : { - "type" : "boolean" + "LambdaVersion" : { + "type" : "string" }, - "RequireSymbols" : { - "type" : "boolean" + "LambdaArn" : { + "type" : "string" } - } + }, + "additionalProperties" : false }, "LambdaConfig" : { "type" : "object", - "additionalProperties" : false, "properties" : { "CreateAuthChallenge" : { "type" : "string" }, - "PreSignUp" : { - "type" : "string" - }, - "KMSKeyID" : { + "CustomMessage" : { "type" : "string" }, - "UserMigration" : { + "DefineAuthChallenge" : { "type" : "string" }, "PostAuthentication" : { "type" : "string" }, - "VerifyAuthChallengeResponse" : { + "PostConfirmation" : { "type" : "string" }, "PreAuthentication" : { "type" : "string" }, - "DefineAuthChallenge" : { + "PreSignUp" : { + "type" : "string" + }, + "VerifyAuthChallengeResponse" : { + "type" : "string" + }, + "UserMigration" : { "type" : "string" }, "PreTokenGeneration" : { "type" : "string" }, + "CustomEmailSender" : { + "$ref" : "#/definitions/CustomEmailSender" + }, "CustomSMSSender" : { "$ref" : "#/definitions/CustomSMSSender" }, - "PostConfirmation" : { + "KMSKeyID" : { + "type" : "string" + } + }, + "additionalProperties" : false + }, + "SmsConfiguration" : { + "type" : "object", + "properties" : { + "ExternalId" : { "type" : "string" }, - "CustomMessage" : { + "SnsCallerArn" : { "type" : "string" }, - "CustomEmailSender" : { - "$ref" : "#/definitions/CustomEmailSender" + "SnsRegion" : { + "type" : "string" } - } + }, + "additionalProperties" : false }, - "CustomEmailSender" : { + "StringAttributeConstraints" : { "type" : "object", - "additionalProperties" : false, "properties" : { - "LambdaArn" : { + "MaxLength" : { "type" : "string" }, - "LambdaVersion" : { + "MinLength" : { "type" : "string" } - } + }, + "additionalProperties" : false + }, + "NumberAttributeConstraints" : { + "type" : "object", + "properties" : { + "MaxValue" : { + "type" : "string" + }, + "MinValue" : { + "type" : "string" + } + }, + "additionalProperties" : false }, "SchemaAttribute" : { "type" : "object", - "additionalProperties" : false, "properties" : { + "AttributeDataType" : { + "type" : "string" + }, "DeveloperOnlyAttribute" : { "type" : "boolean" }, "Mutable" : { "type" : "boolean" }, - "AttributeDataType" : { + "Name" : { "type" : "string" }, + "NumberAttributeConstraints" : { + "$ref" : "#/definitions/NumberAttributeConstraints" + }, "StringAttributeConstraints" : { "$ref" : "#/definitions/StringAttributeConstraints" }, "Required" : { "type" : "boolean" - }, - "NumberAttributeConstraints" : { - "$ref" : "#/definitions/NumberAttributeConstraints" - }, - "Name" : { - "type" : "string" } - } + }, + "additionalProperties" : false }, - "DeviceConfiguration" : { + "UsernameConfiguration" : { "type" : "object", - "additionalProperties" : false, "properties" : { - "DeviceOnlyRememberedOnUserPrompt" : { - "type" : "boolean" - }, - "ChallengeRequiredOnNewDevice" : { + "CaseSensitive" : { "type" : "boolean" } - } + }, + "additionalProperties" : false }, - "AccountRecoverySetting" : { + "UserAttributeUpdateSettings" : { "type" : "object", - "additionalProperties" : false, "properties" : { - "RecoveryMechanisms" : { + "AttributesRequireVerificationBeforeUpdate" : { "type" : "array", - "uniqueItems" : false, "items" : { - "$ref" : "#/definitions/RecoveryOption" + "type" : "string" } } + }, + "required" : [ "AttributesRequireVerificationBeforeUpdate" ], + "additionalProperties" : false + }, + "VerificationMessageTemplate" : { + "type" : "object", + "properties" : { + "DefaultEmailOption" : { + "type" : "string" + }, + "EmailMessage" : { + "type" : "string" + }, + "EmailMessageByLink" : { + "type" : "string" + }, + "EmailSubject" : { + "type" : "string" + }, + "EmailSubjectByLink" : { + "type" : "string" + }, + "SmsMessage" : { + "type" : "string" + } + }, + "additionalProperties" : false + }, + "UserPoolAddOns" : { + "type" : "object", + "properties" : { + "AdvancedSecurityMode" : { + "type" : "string" + } + }, + "additionalProperties" : false + } + }, + "properties" : { + "UserPoolName" : { + "type" : "string", + "minLength" : 1, + "maxLength" : 128 + }, + "Policies" : { + "$ref" : "#/definitions/Policies" + }, + "AccountRecoverySetting" : { + "$ref" : "#/definitions/AccountRecoverySetting" + }, + "AdminCreateUserConfig" : { + "$ref" : "#/definitions/AdminCreateUserConfig" + }, + "AliasAttributes" : { + "type" : "array", + "items" : { + "type" : "string" + } + }, + "UsernameAttributes" : { + "type" : "array", + "items" : { + "type" : "string" + } + }, + "AutoVerifiedAttributes" : { + "type" : "array", + "items" : { + "type" : "string" + } + }, + "DeviceConfiguration" : { + "$ref" : "#/definitions/DeviceConfiguration" + }, + "EmailConfiguration" : { + "$ref" : "#/definitions/EmailConfiguration" + }, + "EmailVerificationMessage" : { + "type" : "string", + "minLength" : 6, + "maxLength" : 20000 + }, + "EmailVerificationSubject" : { + "type" : "string", + "minLength" : 1, + "maxLength" : 140 + }, + "DeletionProtection" : { + "type" : "string" + }, + "LambdaConfig" : { + "$ref" : "#/definitions/LambdaConfig" + }, + "MfaConfiguration" : { + "type" : "string" + }, + "EnabledMfas" : { + "type" : "array", + "items" : { + "type" : "string" } + }, + "SmsAuthenticationMessage" : { + "type" : "string", + "minLength" : 6, + "maxLength" : 140 + }, + "SmsConfiguration" : { + "$ref" : "#/definitions/SmsConfiguration" + }, + "SmsVerificationMessage" : { + "type" : "string", + "minLength" : 6, + "maxLength" : 140 + }, + "Schema" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/SchemaAttribute" + } + }, + "UsernameConfiguration" : { + "$ref" : "#/definitions/UsernameConfiguration" + }, + "UserAttributeUpdateSettings" : { + "$ref" : "#/definitions/UserAttributeUpdateSettings" + }, + "UserPoolTags" : { + "type" : "object", + "patternProperties" : { + "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$" : { + "type" : "string" + } + }, + "additionalProperties" : false + }, + "VerificationMessageTemplate" : { + "$ref" : "#/definitions/VerificationMessageTemplate" + }, + "UserPoolAddOns" : { + "$ref" : "#/definitions/UserPoolAddOns" + }, + "ProviderName" : { + "type" : "string" + }, + "ProviderURL" : { + "type" : "string" + }, + "Arn" : { + "type" : "string" + }, + "UserPoolId" : { + "type" : "string" } }, - "primaryIdentifier" : [ "/properties/Id" ], - "readOnlyProperties" : [ "/properties/Id", "/properties/Arn", "/properties/ProviderName", "/properties/ProviderURL" ] + "additionalProperties" : false, + "primaryIdentifier" : [ "/properties/UserPoolId" ], + "readOnlyProperties" : [ "/properties/ProviderName", "/properties/UserPoolId", "/properties/ProviderURL", "/properties/Arn" ], + "writeOnlyProperties" : [ "/properties/EnabledMfas" ], + "propertyTransform" : { + "/properties/Schema/*/Name" : "'custom:' & '' & Name" + }, + "handlers" : { + "create" : { + "permissions" : [ "cognito-idp:CreateUserPool", "iam:PassRole", "cognito-idp:SetUserPoolMfaConfig", "cognito-idp:DescribeUserPool", "kms:CreateGrant", "iam:CreateServiceLinkedRole" ], + "timeoutInMinutes" : 2 + }, + "read" : { + "permissions" : [ "cognito-idp:DescribeUserPool" ] + }, + "update" : { + "permissions" : [ "cognito-idp:UpdateUserPool", "cognito-idp:ListTagsForResource", "cognito-idp:UntagResource", "cognito-idp:TagResource", "cognito-idp:SetUserPoolMfaConfig", "cognito-idp:AddCustomAttributes", "cognito-idp:DescribeUserPool", "iam:PassRole" ], + "timeoutInMinutes" : 2 + }, + "delete" : { + "permissions" : [ "cognito-idp:DeleteUserPool" ], + "timeoutInMinutes" : 2 + }, + "list" : { + "permissions" : [ "cognito-idp:ListUserPools" ] + } + } } \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-cognito-userpoolgroup.json b/aws-cloudformation-schema/aws-cognito-userpoolgroup.json index 1263f55108..56b6f1b89d 100644 --- a/aws-cloudformation-schema/aws-cognito-userpoolgroup.json +++ b/aws-cloudformation-schema/aws-cognito-userpoolgroup.json @@ -1,29 +1,62 @@ { "typeName" : "AWS::Cognito::UserPoolGroup", "description" : "Resource Type definition for AWS::Cognito::UserPoolGroup", - "additionalProperties" : false, + "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", "properties" : { - "GroupName" : { - "type" : "string" - }, "Description" : { - "type" : "string" + "type" : "string", + "maxLength" : 2048 }, - "UserPoolId" : { - "type" : "string" - }, - "Id" : { + "GroupName" : { "type" : "string" }, "Precedence" : { - "type" : "number" + "type" : "integer", + "minimum" : 0 }, "RoleArn" : { "type" : "string" + }, + "UserPoolId" : { + "type" : "string" } }, + "tagging" : { + "taggable" : false, + "tagOnCreate" : false, + "tagUpdatable" : false, + "cloudFormationSystemTags" : false + }, + "additionalProperties" : false, "required" : [ "UserPoolId" ], - "createOnlyProperties" : [ "/properties/GroupName", "/properties/UserPoolId" ], - "primaryIdentifier" : [ "/properties/Id" ], - "readOnlyProperties" : [ "/properties/Id" ] + "createOnlyProperties" : [ "/properties/UserPoolId", "/properties/GroupName" ], + "primaryIdentifier" : [ "/properties/UserPoolId", "/properties/GroupName" ], + "handlers" : { + "create" : { + "permissions" : [ "cognito-idp:CreateGroup", "iam:PassRole", "iam:PutRolePolicy", "cognito-idp:GetGroup" ], + "timeoutInMinutes" : 5 + }, + "read" : { + "permissions" : [ "cognito-idp:GetGroup" ] + }, + "update" : { + "permissions" : [ "cognito-idp:UpdateGroup", "iam:PassRole", "iam:PutRolePolicy" ], + "timeoutInMinutes" : 5 + }, + "delete" : { + "permissions" : [ "cognito-idp:DeleteGroup", "cognito-idp:GetGroup", "iam:PutRolePolicy" ], + "timeoutInMinutes" : 5 + }, + "list" : { + "handlerSchema" : { + "properties" : { + "UserPoolId" : { + "$ref" : "resource-schema.json#/properties/UserPoolId" + } + }, + "required" : [ "UserPoolId" ] + }, + "permissions" : [ "cognito-idp:ListGroups" ] + } + } } \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-connect-contactflowmodule.json b/aws-cloudformation-schema/aws-connect-contactflowmodule.json index 0519f499f0..842d053edc 100644 --- a/aws-cloudformation-schema/aws-connect-contactflowmodule.json +++ b/aws-cloudformation-schema/aws-connect-contactflowmodule.json @@ -61,12 +61,12 @@ "State" : { "type" : "string", "description" : "The state of the contact flow module.", - "enum" : [ "ACTIVE", "ARCHIVED" ] + "maxLength" : 500 }, "Status" : { "type" : "string", "description" : "The status of the contact flow module.", - "enum" : [ "PUBLISHED", "SAVED" ] + "maxLength" : 500 }, "Tags" : { "description" : "One or more tags.", @@ -80,6 +80,13 @@ } }, "required" : [ "InstanceArn", "Name", "Content" ], + "tagging" : { + "taggable" : true, + "tagOnCreate" : true, + "tagUpdatable" : true, + "cloudFormationSystemTags" : true, + "tagProperty" : "/properties/Tags" + }, "handlers" : { "create" : { "permissions" : [ "connect:CreateContactFlowModule", "connect:TagResource" ] @@ -92,6 +99,17 @@ }, "update" : { "permissions" : [ "connect:UpdateContactFlowModuleMetadata", "connect:UpdateContactFlowModuleContent", "connect:TagResource", "connect:UntagResource" ] + }, + "list" : { + "handlerSchema" : { + "properties" : { + "InstanceArn" : { + "$ref" : "resource-schema.json#/properties/InstanceArn" + } + }, + "required" : [ "InstanceArn" ] + }, + "permissions" : [ "connect:ListContactFlowModules" ] } }, "additionalProperties" : false, diff --git a/aws-cloudformation-schema/aws-customerprofiles-domain.json b/aws-cloudformation-schema/aws-customerprofiles-domain.json index d102114ba7..073f15a4fa 100644 --- a/aws-cloudformation-schema/aws-customerprofiles-domain.json +++ b/aws-cloudformation-schema/aws-customerprofiles-domain.json @@ -20,6 +20,286 @@ }, "additionalProperties" : false, "required" : [ "Key", "Value" ] + }, + "DomainStats" : { + "type" : "object", + "description" : "Usage-specific statistics about the domain.", + "properties" : { + "MeteringProfileCount" : { + "description" : "The number of profiles that you are currently paying for in the domain. If you have more than 100 objects associated with a single profile, that profile counts as two profiles. If you have more than 200 objects, that profile counts as three, and so on.", + "type" : "number" + }, + "ObjectCount" : { + "description" : "The total number of objects in domain.", + "type" : "number" + }, + "ProfileCount" : { + "description" : "The total number of profiles currently in the domain.", + "type" : "number" + }, + "TotalSize" : { + "description" : "The total size, in bytes, of all objects in the domain.", + "type" : "number" + } + }, + "additionalProperties" : false + }, + "S3ExportingConfig" : { + "type" : "object", + "description" : "The S3 location where Identity Resolution Jobs write result files.", + "properties" : { + "S3BucketName" : { + "description" : "The name of the S3 bucket where Identity Resolution Jobs write result files.", + "type" : "string", + "minLength" : 3, + "maxLength" : 63, + "pattern" : "^[a-z0-9.-]+$" + }, + "S3KeyName" : { + "description" : "The S3 key name of the location where Identity Resolution Jobs write result files.", + "type" : "string", + "minLength" : 1, + "maxLength" : 800, + "pattern" : ".*" + } + }, + "required" : [ "S3BucketName" ], + "additionalProperties" : false + }, + "ExportingConfig" : { + "type" : "object", + "description" : "Configuration information for exporting Identity Resolution results, for example, to an S3 bucket.", + "properties" : { + "S3Exporting" : { + "$ref" : "#/definitions/S3ExportingConfig" + } + }, + "additionalProperties" : false + }, + "JobSchedule" : { + "type" : "object", + "description" : "The day and time when do you want to start the Identity Resolution Job every week.", + "properties" : { + "DayOfTheWeek" : { + "description" : "The day when the Identity Resolution Job should run every week.", + "type" : "string", + "enum" : [ "SUNDAY", "MONDAY", "TUESDAY", "WEDNESDAY", "THURSDAY", "FRIDAY", "SATURDAY" ] + }, + "Time" : { + "description" : "The time when the Identity Resolution Job should run every week.", + "type" : "string", + "minLength" : 3, + "maxLength" : 5, + "pattern" : "^([0-9]|0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$" + } + }, + "required" : [ "DayOfTheWeek", "Time" ], + "additionalProperties" : false + }, + "ConflictResolution" : { + "type" : "object", + "description" : "How the auto-merging process should resolve conflicts between different profiles. For example, if Profile A and Profile B have the same FirstName and LastName (and that is the matching criteria), which EmailAddress should be used? ", + "properties" : { + "ConflictResolvingModel" : { + "description" : "How the auto-merging process should resolve conflicts between different profiles.", + "type" : "string", + "enum" : [ "RECENCY", "SOURCE" ] + }, + "SourceName" : { + "description" : "The ObjectType name that is used to resolve profile merging conflicts when choosing SOURCE as the ConflictResolvingModel.", + "type" : "string", + "minLength" : 1, + "maxLength" : 255 + } + }, + "required" : [ "ConflictResolvingModel" ], + "additionalProperties" : false + }, + "MatchingAttributes" : { + "type" : "array", + "minItems" : 1, + "maxItems" : 20, + "items" : { + "type" : "string", + "minLength" : 1, + "maxLength" : 255 + } + }, + "Consolidation" : { + "description" : "A list of matching attributes that represent matching criteria. If two profiles meet at least one of the requirements in the matching attributes list, they will be merged.", + "type" : "object", + "properties" : { + "MatchingAttributesList" : { + "description" : "A list of matching criteria.", + "type" : "array", + "minItems" : 1, + "maxItems" : 10, + "items" : { + "$ref" : "#/definitions/MatchingAttributes" + } + } + }, + "required" : [ "MatchingAttributesList" ], + "additionalProperties" : false + }, + "AutoMerging" : { + "type" : "object", + "description" : "Configuration information about the auto-merging process.", + "properties" : { + "Enabled" : { + "description" : "The flag that enables the auto-merging of duplicate profiles.", + "type" : "boolean" + }, + "ConflictResolution" : { + "$ref" : "#/definitions/ConflictResolution" + }, + "Consolidation" : { + "$ref" : "#/definitions/Consolidation" + }, + "MinAllowedConfidenceScoreForMerging" : { + "description" : "A number between 0 and 1 that represents the minimum confidence score required for profiles within a matching group to be merged during the auto-merge process. A higher score means higher similarity required to merge profiles.", + "type" : "number", + "minimum" : 0.0, + "maximum" : 1.0 + } + }, + "required" : [ "Enabled" ], + "additionalProperties" : false + }, + "MatchingRuleAttributeList" : { + "description" : "A single rule level of the MatchRules. Configures how the rule-based matching process should match profiles.", + "type" : "array", + "minItems" : 1, + "maxItems" : 15, + "items" : { + "type" : "string", + "minLength" : 1, + "maxLength" : 255 + } + }, + "MatchingRule" : { + "description" : "Specifies how does the rule-based matching process should match profiles.", + "type" : "object", + "properties" : { + "Rule" : { + "$ref" : "#/definitions/MatchingRuleAttributeList" + } + }, + "required" : [ "Rule" ], + "additionalProperties" : false + }, + "AttributeTypesSelector" : { + "description" : "Configures information about the AttributeTypesSelector where the rule-based identity resolution uses to match profiles.", + "type" : "object", + "properties" : { + "AttributeMatchingModel" : { + "description" : "Configures the AttributeMatchingModel, you can either choose ONE_TO_ONE or MANY_TO_MANY.", + "type" : "string", + "enum" : [ "ONE_TO_ONE", "MANY_TO_MANY" ] + }, + "Address" : { + "description" : "The Address type. You can choose from Address, BusinessAddress, MaillingAddress, and ShippingAddress. You only can use the Address type in the MatchingRule. For example, if you want to match profile based on BusinessAddress.City or MaillingAddress.City, you need to choose the BusinessAddress and the MaillingAddress to represent the Address type and specify the Address.City on the matching rule.", + "type" : "array", + "minItems" : 1, + "maxItems" : 4, + "items" : { + "type" : "string", + "minLength" : 1, + "maxLength" : 255 + } + }, + "EmailAddress" : { + "description" : "The Email type. You can choose from EmailAddress, BusinessEmailAddress and PersonalEmailAddress. You only can use the EmailAddress type in the MatchingRule. For example, if you want to match profile based on PersonalEmailAddress or BusinessEmailAddress, you need to choose the PersonalEmailAddress and the BusinessEmailAddress to represent the EmailAddress type and only specify the EmailAddress on the matching rule.", + "type" : "array", + "minItems" : 1, + "maxItems" : 3, + "items" : { + "type" : "string", + "minLength" : 1, + "maxLength" : 255 + } + }, + "PhoneNumber" : { + "description" : "The PhoneNumber type. You can choose from PhoneNumber, HomePhoneNumber, and MobilePhoneNumber. You only can use the PhoneNumber type in the MatchingRule. For example, if you want to match a profile based on Phone or HomePhone, you need to choose the Phone and the HomePhone to represent the PhoneNumber type and only specify the PhoneNumber on the matching rule.", + "type" : "array", + "minItems" : 1, + "maxItems" : 4, + "items" : { + "type" : "string", + "minLength" : 1, + "maxLength" : 255 + } + } + }, + "required" : [ "AttributeMatchingModel" ], + "additionalProperties" : false + }, + "Matching" : { + "description" : "The process of matching duplicate profiles. If Matching = true, Amazon Connect Customer Profiles starts a weekly batch process called Identity Resolution Job. If you do not specify a date and time for Identity Resolution Job to run, by default it runs every Saturday at 12AM UTC to detect duplicate profiles in your domains. After the Identity Resolution Job completes, use the GetMatches API to return and review the results. Or, if you have configured ExportingConfig in the MatchingRequest, you can download the results from S3.", + "type" : "object", + "properties" : { + "Enabled" : { + "description" : "The flag that enables the matching process of duplicate profiles.", + "type" : "boolean" + }, + "AutoMerging" : { + "$ref" : "#/definitions/AutoMerging" + }, + "ExportingConfig" : { + "$ref" : "#/definitions/ExportingConfig" + }, + "JobSchedule" : { + "$ref" : "#/definitions/JobSchedule" + } + }, + "required" : [ "Enabled" ], + "additionalProperties" : false + }, + "RuleBasedMatching" : { + "description" : "The process of matching duplicate profiles using the Rule-Based matching. If RuleBasedMatching = true, Amazon Connect Customer Profiles will start to match and merge your profiles according to your configuration in the RuleBasedMatchingRequest. You can use the ListRuleBasedMatches and GetSimilarProfiles API to return and review the results. Also, if you have configured ExportingConfig in the RuleBasedMatchingRequest, you can download the results from S3.", + "type" : "object", + "properties" : { + "Enabled" : { + "description" : "The flag that enables the rule-based matching process of duplicate profiles.", + "type" : "boolean" + }, + "AttributeTypesSelector" : { + "$ref" : "#/definitions/AttributeTypesSelector" + }, + "ConflictResolution" : { + "$ref" : "#/definitions/ConflictResolution" + }, + "ExportingConfig" : { + "$ref" : "#/definitions/ExportingConfig" + }, + "MatchingRules" : { + "description" : "Configures how the rule-based matching process should match profiles. You can have up to 15 MatchingRule in the MatchingRules.", + "type" : "array", + "minItems" : 1, + "maxItems" : 15, + "items" : { + "$ref" : "#/definitions/MatchingRule" + } + }, + "MaxAllowedRuleLevelForMatching" : { + "description" : "Indicates the maximum allowed rule level for matching.", + "type" : "integer", + "minimum" : 1, + "maximum" : 15 + }, + "MaxAllowedRuleLevelForMerging" : { + "description" : "Indicates the maximum allowed rule level for merging.", + "type" : "integer", + "minimum" : 1, + "maximum" : 15 + }, + "Status" : { + "type" : "string", + "enum" : [ "PENDING", "IN_PROGRESS", "ACTIVE" ] + } + }, + "required" : [ "Enabled" ], + "additionalProperties" : false } }, "properties" : { @@ -48,6 +328,15 @@ "minimum" : 1, "maximum" : 1098 }, + "Matching" : { + "$ref" : "#/definitions/Matching" + }, + "RuleBasedMatching" : { + "$ref" : "#/definitions/RuleBasedMatching" + }, + "Stats" : { + "$ref" : "#/definitions/DomainStats" + }, "Tags" : { "description" : "The tags (keys and values) associated with the domain", "type" : "array", @@ -75,7 +364,7 @@ "cloudFormationSystemTags" : true, "tagProperty" : "/properties/Tags" }, - "readOnlyProperties" : [ "/properties/LastUpdatedAt", "/properties/CreatedAt" ], + "readOnlyProperties" : [ "/properties/LastUpdatedAt", "/properties/CreatedAt", "/properties/RuleBasedMatching/Status", "/properties/Stats" ], "createOnlyProperties" : [ "/properties/DomainName" ], "primaryIdentifier" : [ "/properties/DomainName" ], "handlers" : { diff --git a/aws-cloudformation-schema/aws-datasync-agent.json b/aws-cloudformation-schema/aws-datasync-agent.json index 8f7281326e..1eb022c7ee 100644 --- a/aws-cloudformation-schema/aws-datasync-agent.json +++ b/aws-cloudformation-schema/aws-datasync-agent.json @@ -102,7 +102,7 @@ "writeOnlyProperties" : [ "/properties/ActivationKey" ], "handlers" : { "create" : { - "permissions" : [ "datasync:CreateAgent", "datasync:TagResource", "ec2:DescribeNetworkInterfaces", "ec2:DescribeSecurityGroups", "ec2:DescribeSubnets", "ec2:DescribeVpcEndpoints" ] + "permissions" : [ "datasync:CreateAgent", "datasync:TagResource", "datasync:DescribeAgent", "datasync:ListTagsForResource", "ec2:DescribeNetworkInterfaces", "ec2:DescribeSecurityGroups", "ec2:DescribeSubnets", "ec2:DescribeVpcEndpoints" ] }, "read" : { "permissions" : [ "datasync:DescribeAgent", "datasync:ListTagsForResource" ] diff --git a/aws-cloudformation-schema/aws-ec2-subnet.json b/aws-cloudformation-schema/aws-ec2-subnet.json index 9cbf7485dd..3cf4f9c81a 100644 --- a/aws-cloudformation-schema/aws-ec2-subnet.json +++ b/aws-cloudformation-schema/aws-ec2-subnet.json @@ -1,24 +1,65 @@ { + "tagging" : { + "taggable" : true, + "tagOnCreate" : true, + "tagUpdatable" : true, + "tagProperty" : "/properties/Tags", + "cloudFormationSystemTags" : true + }, "typeName" : "AWS::EC2::Subnet", + "readOnlyProperties" : [ "/properties/NetworkAclAssociationId", "/properties/SubnetId", "/properties/Ipv6CidrBlocks" ], "description" : "Resource Type definition for AWS::EC2::Subnet", + "createOnlyProperties" : [ "/properties/VpcId", "/properties/AvailabilityZone", "/properties/AvailabilityZoneId", "/properties/CidrBlock", "/properties/OutpostArn", "/properties/Ipv6Native" ], + "primaryIdentifier" : [ "/properties/SubnetId" ], + "required" : [ "VpcId" ], + "conditionalCreateOnlyProperties" : [ "/properties/Ipv6CidrBlock" ], + "handlers" : { + "read" : { + "permissions" : [ "ec2:DescribeSubnets", "ec2:DescribeNetworkAcls" ] + }, + "create" : { + "permissions" : [ "ec2:DescribeSubnets", "ec2:CreateSubnet", "ec2:CreateTags", "ec2:ModifySubnetAttribute" ] + }, + "update" : { + "permissions" : [ "ec2:DescribeSubnets", "ec2:ModifySubnetAttribute", "ec2:CreateTags", "ec2:DeleteTags", "ec2:AssociateSubnetCidrBlock", "ec2:DisassociateSubnetCidrBlock" ] + }, + "list" : { + "permissions" : [ "ec2:DescribeSubnets", "ec2:DescribeNetworkAcls" ] + }, + "delete" : { + "permissions" : [ "ec2:DescribeSubnets", "ec2:DeleteSubnet" ] + } + }, "additionalProperties" : false, + "definitions" : { + "Tag" : { + "additionalProperties" : false, + "type" : "object", + "properties" : { + "Value" : { + "type" : "string" + }, + "Key" : { + "type" : "string" + } + }, + "required" : [ "Value", "Key" ] + } + }, "properties" : { - "AssignIpv6AddressOnCreation" : { + "MapPublicIpOnLaunch" : { "type" : "boolean" }, - "VpcId" : { - "type" : "string" - }, - "MapPublicIpOnLaunch" : { + "EnableDns64" : { "type" : "boolean" }, - "NetworkAclAssociationId" : { + "AvailabilityZoneId" : { "type" : "string" }, - "AvailabilityZone" : { + "OutpostArn" : { "type" : "string" }, - "AvailabilityZoneId" : { + "AvailabilityZone" : { "type" : "string" }, "CidrBlock" : { @@ -27,90 +68,57 @@ "SubnetId" : { "type" : "string" }, - "Ipv6CidrBlocks" : { - "type" : "array", - "uniqueItems" : false, - "items" : { - "type" : "string" - } + "Ipv6NetmaskLength" : { + "description" : "The netmask length of the IPv6 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool", + "type" : "integer" }, - "Ipv6CidrBlock" : { - "type" : "string" + "AssignIpv6AddressOnCreation" : { + "type" : "boolean" }, - "OutpostArn" : { + "VpcId" : { "type" : "string" }, - "Ipv6Native" : { - "type" : "boolean" + "Ipv4NetmaskLength" : { + "description" : "The netmask length of the IPv4 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool", + "type" : "integer" }, - "EnableDns64" : { - "type" : "boolean" + "NetworkAclAssociationId" : { + "type" : "string" }, "PrivateDnsNameOptionsOnLaunch" : { - "type" : "object", "additionalProperties" : false, + "type" : "object", "properties" : { - "HostnameType" : { - "type" : "string" - }, "EnableResourceNameDnsARecord" : { "type" : "boolean" }, + "HostnameType" : { + "type" : "string" + }, "EnableResourceNameDnsAAAARecord" : { "type" : "boolean" } } }, - "Tags" : { - "type" : "array", + "Ipv6Native" : { + "type" : "boolean" + }, + "Ipv6CidrBlocks" : { "uniqueItems" : false, + "type" : "array", "items" : { - "$ref" : "#/definitions/Tag" + "type" : "string" } - } - }, - "tagging" : { - "taggable" : true, - "tagOnCreate" : true, - "tagUpdatable" : true, - "cloudFormationSystemTags" : true, - "tagProperty" : "/properties/Tags" - }, - "definitions" : { - "Tag" : { - "type" : "object", - "additionalProperties" : false, - "properties" : { - "Value" : { - "type" : "string" - }, - "Key" : { - "type" : "string" - } - }, - "required" : [ "Value", "Key" ] - } - }, - "required" : [ "VpcId" ], - "createOnlyProperties" : [ "/properties/VpcId", "/properties/AvailabilityZone", "/properties/AvailabilityZoneId", "/properties/CidrBlock", "/properties/OutpostArn", "/properties/Ipv6Native" ], - "conditionalCreateOnlyProperties" : [ "/properties/Ipv6CidrBlock" ], - "primaryIdentifier" : [ "/properties/SubnetId" ], - "readOnlyProperties" : [ "/properties/NetworkAclAssociationId", "/properties/SubnetId", "/properties/Ipv6CidrBlocks" ], - "handlers" : { - "create" : { - "permissions" : [ "ec2:DescribeSubnets", "ec2:CreateSubnet", "ec2:CreateTags", "ec2:ModifySubnetAttribute" ] - }, - "read" : { - "permissions" : [ "ec2:DescribeSubnets", "ec2:DescribeNetworkAcls" ] - }, - "update" : { - "permissions" : [ "ec2:DescribeSubnets", "ec2:ModifySubnetAttribute", "ec2:CreateTags", "ec2:DeleteTags", "ec2:AssociateSubnetCidrBlock", "ec2:DisassociateSubnetCidrBlock" ] }, - "delete" : { - "permissions" : [ "ec2:DescribeSubnets", "ec2:DeleteSubnet" ] + "Ipv6CidrBlock" : { + "type" : "string" }, - "list" : { - "permissions" : [ "ec2:DescribeSubnets", "ec2:DescribeNetworkAcls" ] + "Tags" : { + "uniqueItems" : false, + "type" : "array", + "items" : { + "$ref" : "#/definitions/Tag" + } } } } \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-entityresolution-idmappingworkflow.json b/aws-cloudformation-schema/aws-entityresolution-idmappingworkflow.json new file mode 100644 index 0000000000..6ad71a3e75 --- /dev/null +++ b/aws-cloudformation-schema/aws-entityresolution-idmappingworkflow.json @@ -0,0 +1,229 @@ +{ + "typeName" : "AWS::EntityResolution::IdMappingWorkflow", + "description" : "IdMappingWorkflow defined in AWS Entity Resolution service", + "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-entity-resolution.git", + "definitions" : { + "EntityName" : { + "type" : "string", + "pattern" : "^[a-zA-Z_0-9-]*$", + "minLength" : 0, + "maxLength" : 255 + }, + "Description" : { + "type" : "string", + "minLength" : 0, + "maxLength" : 255 + }, + "AttributeName" : { + "type" : "string", + "pattern" : "^[a-zA-Z_0-9- \\t]*$", + "minLength" : 0, + "maxLength" : 255 + }, + "SchemaMappingArn" : { + "description" : "The SchemaMapping arn associated with the Schema", + "type" : "string", + "pattern" : "^arn:(aws|aws-us-gov|aws-cn):entityresolution:.*:[0-9]+:(schemamapping/.*)$" + }, + "KMSArn" : { + "type" : "string", + "pattern" : "^arn:(aws|aws-us-gov|aws-cn):kms:.*:[0-9]+:.*$" + }, + "IdMappingWorkflowArn" : { + "description" : "The default IdMappingWorkflow arn", + "type" : "string", + "pattern" : "^arn:(aws|aws-us-gov|aws-cn):entityresolution:.*:[0-9]+:(idmappingworkflow/.*)$" + }, + "CreatedAt" : { + "description" : "The time of this IdMappingWorkflow got created", + "type" : "string" + }, + "UpdatedAt" : { + "description" : "The time of this IdMappingWorkflow got last updated at", + "type" : "string" + }, + "IdMappingWorkflowInputSource" : { + "type" : "object", + "properties" : { + "InputSourceARN" : { + "description" : "An Glue table ARN for the input source table", + "type" : "string", + "pattern" : "arn:(aws|aws-us-gov|aws-cn):.*:.*:[0-9]+:.*$" + }, + "SchemaArn" : { + "type" : "string", + "$ref" : "#/definitions/SchemaMappingArn" + } + }, + "required" : [ "InputSourceARN", "SchemaArn" ], + "additionalProperties" : false + }, + "IdMappingWorkflowOutputSource" : { + "type" : "object", + "properties" : { + "OutputS3Path" : { + "description" : "The S3 path to which Entity Resolution will write the output table", + "type" : "string", + "pattern" : "^s3://([^/]+)/?(.*?([^/]+)/?)$" + }, + "KMSArn" : { + "$ref" : "#/definitions/KMSArn" + } + }, + "required" : [ "OutputS3Path" ], + "additionalProperties" : false + }, + "IdMappingTechniques" : { + "type" : "object", + "properties" : { + "IdMappingType" : { + "type" : "string", + "enum" : [ "PROVIDER" ] + }, + "ProviderProperties" : { + "$ref" : "#/definitions/ProviderProperties" + } + }, + "additionalProperties" : false + }, + "ProviderProperties" : { + "type" : "object", + "properties" : { + "ProviderServiceArn" : { + "type" : "string", + "description" : "Arn of the Provider Service being used.", + "pattern" : "^arn:(aws|aws-us-gov|aws-cn):entityresolution:([A-Za-z0-9]+(-[A-Za-z0-9]+)+)::providerservice/[A-Za-z0-9]+/[A-Za-z0-9]+$" + }, + "ProviderConfiguration" : { + "type" : "object", + "additionalProperties" : false, + "patternProperties" : { + "^.+$" : { + "type" : "string" + } + }, + "description" : "Additional Provider configuration that would be required for the provider service. The Configuration must be in JSON string format" + }, + "IntermediateSourceConfiguration" : { + "$ref" : "#/definitions/IntermediateSourceConfiguration" + } + }, + "required" : [ "ProviderServiceArn" ], + "additionalProperties" : false + }, + "IntermediateSourceConfiguration" : { + "type" : "object", + "properties" : { + "IntermediateS3Path" : { + "type" : "string", + "description" : "The s3 path that would be used to stage the intermediate data being generated during workflow execution." + } + }, + "required" : [ "IntermediateS3Path" ], + "additionalProperties" : false + }, + "Tag" : { + "description" : "A key-value pair to associate with a resource", + "type" : "object", + "properties" : { + "Key" : { + "type" : "string", + "description" : "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.", + "minLength" : 1, + "maxLength" : 128 + }, + "Value" : { + "type" : "string", + "description" : "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.", + "minLength" : 0, + "maxLength" : 256 + } + }, + "required" : [ "Key", "Value" ], + "additionalProperties" : false + } + }, + "properties" : { + "WorkflowName" : { + "description" : "The name of the IdMappingWorkflow", + "$ref" : "#/definitions/EntityName" + }, + "Description" : { + "description" : "The description of the IdMappingWorkflow", + "$ref" : "#/definitions/Description" + }, + "InputSourceConfig" : { + "type" : "array", + "insertionOrder" : false, + "minItems" : 1, + "maxItems" : 20, + "items" : { + "$ref" : "#/definitions/IdMappingWorkflowInputSource" + } + }, + "OutputSourceConfig" : { + "type" : "array", + "insertionOrder" : false, + "minItems" : 1, + "maxItems" : 1, + "items" : { + "$ref" : "#/definitions/IdMappingWorkflowOutputSource" + } + }, + "IdMappingTechniques" : { + "$ref" : "#/definitions/IdMappingTechniques" + }, + "RoleArn" : { + "type" : "string", + "pattern" : "^arn:(aws|aws-us-gov|aws-cn):iam::\\d{12}:role/?[a-zA-Z_0-9+=,.@\\-_/]+$" + }, + "Tags" : { + "type" : "array", + "uniqueItems" : true, + "insertionOrder" : false, + "minItems" : 0, + "maxItems" : 200, + "items" : { + "$ref" : "#/definitions/Tag" + } + }, + "WorkflowArn" : { + "$ref" : "#/definitions/IdMappingWorkflowArn" + }, + "CreatedAt" : { + "$ref" : "#/definitions/CreatedAt" + }, + "UpdatedAt" : { + "$ref" : "#/definitions/UpdatedAt" + } + }, + "createOnlyProperties" : [ "/properties/WorkflowName" ], + "readOnlyProperties" : [ "/properties/WorkflowArn", "/properties/UpdatedAt", "/properties/CreatedAt" ], + "primaryIdentifier" : [ "/properties/WorkflowName" ], + "tagging" : { + "taggable" : true, + "tagOnCreate" : true, + "tagUpdatable" : true, + "cloudFormationSystemTags" : true, + "tagProperty" : "/properties/Tags" + }, + "handlers" : { + "create" : { + "permissions" : [ "entityresolution:CreateIdMappingWorkflow", "entityresolution:GetIdMappingWorkflow", "entityresolution:TagResource", "kms:CreateGrant", "kms:DescribeKey", "iam:PassRole" ] + }, + "update" : { + "permissions" : [ "entityresolution:GetIdMappingWorkflow", "entityresolution:UpdateIdMappingWorkflow", "entityresolution:ListTagsForResource", "entityresolution:TagResource", "entityresolution:UntagResource", "iam:PassRole", "kms:CreateGrant", "kms:DescribeKey" ] + }, + "read" : { + "permissions" : [ "entityresolution:GetIdMappingWorkflow", "entityresolution:ListTagsForResource" ] + }, + "delete" : { + "permissions" : [ "entityresolution:DeleteIdMappingWorkflow", "entityresolution:GetIdMappingWorkflow", "entityresolution:UntagResource" ] + }, + "list" : { + "permissions" : [ "entityresolution:ListIdMappingWorkflows" ] + } + }, + "required" : [ "WorkflowName", "InputSourceConfig", "OutputSourceConfig", "IdMappingTechniques", "RoleArn" ], + "additionalProperties" : false +} \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-events-rule.json b/aws-cloudformation-schema/aws-events-rule.json index e49c56e976..80df7f3eb2 100644 --- a/aws-cloudformation-schema/aws-events-rule.json +++ b/aws-cloudformation-schema/aws-events-rule.json @@ -1,82 +1,92 @@ { - "tagging" : { - "taggable" : false - }, - "handlers" : { - "read" : { - "permissions" : [ "iam:PassRole", "events:DescribeRule", "events:ListTargetsByRule" ] + "typeName" : "AWS::Events::Rule", + "description" : "Resource Type definition for AWS::Events::Rule", + "additionalProperties" : false, + "properties" : { + "EventBusName" : { + "type" : "string" }, - "create" : { - "permissions" : [ "iam:PassRole", "events:DescribeRule", "events:PutRule", "events:PutTargets" ] + "EventPattern" : { + "type" : "object" }, - "update" : { - "permissions" : [ "iam:PassRole", "events:DescribeRule", "events:PutRule", "events:RemoveTargets", "events:PutTargets" ] + "ScheduleExpression" : { + "type" : "string" }, - "list" : { - "permissions" : [ "events:ListRules" ] + "Description" : { + "type" : "string" }, - "delete" : { - "permissions" : [ "iam:PassRole", "events:DescribeRule", "events:DeleteRule", "events:RemoveTargets", "events:ListTargetsByRule" ] + "State" : { + "type" : "string" + }, + "Targets" : { + "type" : "array", + "uniqueItems" : true, + "items" : { + "$ref" : "#/definitions/Target" + } + }, + "Id" : { + "type" : "string" + }, + "Arn" : { + "type" : "string" + }, + "RoleArn" : { + "type" : "string" + }, + "Name" : { + "type" : "string" } }, - "typeName" : "AWS::Events::Rule", - "readOnlyProperties" : [ "/properties/Arn" ], - "description" : "Resource Type definition for AWS::Events::Rule", - "createOnlyProperties" : [ "/properties/Name" ], - "additionalProperties" : false, - "primaryIdentifier" : [ "/properties/Arn" ], "definitions" : { "CapacityProviderStrategyItem" : { - "additionalProperties" : false, "type" : "object", + "additionalProperties" : false, "properties" : { - "CapacityProvider" : { - "type" : "string" - }, "Base" : { "type" : "integer" }, "Weight" : { "type" : "integer" + }, + "CapacityProvider" : { + "type" : "string" } }, "required" : [ "CapacityProvider" ] }, "HttpParameters" : { - "additionalProperties" : false, "type" : "object", + "additionalProperties" : false, "properties" : { "PathParameterValues" : { - "uniqueItems" : true, - "insertionOrder" : true, "type" : "array", + "uniqueItems" : true, "items" : { "type" : "string" } }, "HeaderParameters" : { + "type" : "object", "patternProperties" : { "[a-zA-Z0-9]+" : { "type" : "string" } - }, - "additionalProperties" : false, - "type" : "object" + } }, "QueryStringParameters" : { + "type" : "object", "patternProperties" : { "[a-zA-Z0-9]+" : { "type" : "string" } - }, - "additionalProperties" : false, - "type" : "object" + } } } }, "DeadLetterConfig" : { - "additionalProperties" : false, "type" : "object", + "additionalProperties" : false, "properties" : { "Arn" : { "type" : "string" @@ -84,13 +94,12 @@ } }, "RunCommandParameters" : { - "additionalProperties" : false, "type" : "object", + "additionalProperties" : false, "properties" : { "RunCommandTargets" : { - "uniqueItems" : true, - "insertionOrder" : true, "type" : "array", + "uniqueItems" : true, "items" : { "$ref" : "#/definitions/RunCommandTarget" } @@ -99,8 +108,8 @@ "required" : [ "RunCommandTargets" ] }, "PlacementStrategy" : { - "additionalProperties" : false, "type" : "object", + "additionalProperties" : false, "properties" : { "Field" : { "type" : "string" @@ -111,27 +120,26 @@ } }, "InputTransformer" : { - "additionalProperties" : false, "type" : "object", + "additionalProperties" : false, "properties" : { + "InputTemplate" : { + "type" : "string" + }, "InputPathsMap" : { + "type" : "object", "patternProperties" : { "[a-zA-Z0-9]+" : { "type" : "string" } - }, - "additionalProperties" : false, - "type" : "object" - }, - "InputTemplate" : { - "type" : "string" + } } }, "required" : [ "InputTemplate" ] }, "KinesisParameters" : { - "additionalProperties" : false, "type" : "object", + "additionalProperties" : false, "properties" : { "PartitionKeyPath" : { "type" : "string" @@ -140,8 +148,8 @@ "required" : [ "PartitionKeyPath" ] }, "BatchRetryStrategy" : { - "additionalProperties" : false, "type" : "object", + "additionalProperties" : false, "properties" : { "Attempts" : { "type" : "integer" @@ -149,20 +157,12 @@ } }, "RedshiftDataParameters" : { - "additionalProperties" : false, "type" : "object", + "additionalProperties" : false, "properties" : { "StatementName" : { "type" : "string" }, - "Sqls" : { - "uniqueItems" : false, - "insertionOrder" : true, - "type" : "array", - "items" : { - "type" : "string" - } - }, "Database" : { "type" : "string" }, @@ -182,8 +182,8 @@ "required" : [ "Database" ] }, "Target" : { - "additionalProperties" : false, "type" : "object", + "additionalProperties" : false, "properties" : { "InputPath" : { "type" : "string" @@ -237,33 +237,31 @@ "required" : [ "Id", "Arn" ] }, "PlacementConstraint" : { - "additionalProperties" : false, "type" : "object", + "additionalProperties" : false, "properties" : { - "Type" : { + "Expression" : { "type" : "string" }, - "Expression" : { + "Type" : { "type" : "string" } } }, "AwsVpcConfiguration" : { - "additionalProperties" : false, "type" : "object", + "additionalProperties" : false, "properties" : { "SecurityGroups" : { - "uniqueItems" : true, - "insertionOrder" : true, "type" : "array", + "uniqueItems" : true, "items" : { "type" : "string" } }, "Subnets" : { - "uniqueItems" : true, - "insertionOrder" : true, "type" : "array", + "uniqueItems" : true, "items" : { "type" : "string" } @@ -275,8 +273,8 @@ "required" : [ "Subnets" ] }, "SqsParameters" : { - "additionalProperties" : false, "type" : "object", + "additionalProperties" : false, "properties" : { "MessageGroupId" : { "type" : "string" @@ -285,13 +283,12 @@ "required" : [ "MessageGroupId" ] }, "RunCommandTarget" : { - "additionalProperties" : false, "type" : "object", + "additionalProperties" : false, "properties" : { "Values" : { - "uniqueItems" : true, - "insertionOrder" : true, "type" : "array", + "uniqueItems" : true, "items" : { "type" : "string" } @@ -303,8 +300,8 @@ "required" : [ "Values", "Key" ] }, "EcsParameters" : { - "additionalProperties" : false, "type" : "object", + "additionalProperties" : false, "properties" : { "PlatformVersion" : { "type" : "string" @@ -319,9 +316,8 @@ "type" : "boolean" }, "PlacementConstraints" : { - "uniqueItems" : true, - "insertionOrder" : true, "type" : "array", + "uniqueItems" : true, "items" : { "$ref" : "#/definitions/PlacementConstraint" } @@ -333,17 +329,15 @@ "type" : "integer" }, "PlacementStrategies" : { - "uniqueItems" : true, - "insertionOrder" : true, "type" : "array", + "uniqueItems" : true, "items" : { "$ref" : "#/definitions/PlacementStrategy" } }, "CapacityProviderStrategy" : { - "uniqueItems" : true, - "insertionOrder" : true, "type" : "array", + "uniqueItems" : true, "items" : { "$ref" : "#/definitions/CapacityProviderStrategyItem" } @@ -355,9 +349,8 @@ "type" : "string" }, "TagList" : { - "uniqueItems" : true, - "insertionOrder" : true, "type" : "array", + "uniqueItems" : true, "items" : { "$ref" : "#/definitions/Tag" } @@ -372,18 +365,18 @@ "required" : [ "TaskDefinitionArn" ] }, "BatchParameters" : { - "additionalProperties" : false, "type" : "object", + "additionalProperties" : false, "properties" : { - "ArrayProperties" : { - "$ref" : "#/definitions/BatchArrayProperties" - }, "JobName" : { "type" : "string" }, "RetryStrategy" : { "$ref" : "#/definitions/BatchRetryStrategy" }, + "ArrayProperties" : { + "$ref" : "#/definitions/BatchArrayProperties" + }, "JobDefinition" : { "type" : "string" } @@ -391,8 +384,8 @@ "required" : [ "JobName", "JobDefinition" ] }, "NetworkConfiguration" : { - "additionalProperties" : false, "type" : "object", + "additionalProperties" : false, "properties" : { "AwsVpcConfiguration" : { "$ref" : "#/definitions/AwsVpcConfiguration" @@ -400,8 +393,8 @@ } }, "Tag" : { - "additionalProperties" : false, "type" : "object", + "additionalProperties" : false, "properties" : { "Value" : { "type" : "string" @@ -412,13 +405,12 @@ } }, "SageMakerPipelineParameters" : { - "additionalProperties" : false, "type" : "object", + "additionalProperties" : false, "properties" : { "PipelineParameterList" : { - "uniqueItems" : true, - "insertionOrder" : true, "type" : "array", + "uniqueItems" : true, "items" : { "$ref" : "#/definitions/SageMakerPipelineParameter" } @@ -426,20 +418,20 @@ } }, "RetryPolicy" : { - "additionalProperties" : false, "type" : "object", + "additionalProperties" : false, "properties" : { - "MaximumRetryAttempts" : { + "MaximumEventAgeInSeconds" : { "type" : "integer" }, - "MaximumEventAgeInSeconds" : { + "MaximumRetryAttempts" : { "type" : "integer" } } }, "BatchArrayProperties" : { - "additionalProperties" : false, "type" : "object", + "additionalProperties" : false, "properties" : { "Size" : { "type" : "integer" @@ -447,8 +439,8 @@ } }, "SageMakerPipelineParameter" : { - "additionalProperties" : false, "type" : "object", + "additionalProperties" : false, "properties" : { "Value" : { "type" : "string" @@ -460,49 +452,7 @@ "required" : [ "Value", "Name" ] } }, - "properties" : { - "EventBusName" : { - "description" : "The name or ARN of the event bus associated with the rule. If you omit this, the default event bus is used.", - "type" : "string" - }, - "EventPattern" : { - "description" : "The event pattern of the rule. For more information, see Events and Event Patterns in the Amazon EventBridge User Guide.", - "type" : [ "string", "object" ] - }, - "ScheduleExpression" : { - "description" : "The scheduling expression. For example, \"cron(0 20 * * ? *)\", \"rate(5 minutes)\". For more information, see Creating an Amazon EventBridge rule that runs on a schedule.", - "type" : "string" - }, - "Description" : { - "description" : "The description of the rule.", - "type" : "string" - }, - "State" : { - "description" : "The state of the rule.", - "type" : "string", - "enum" : [ "DISABLED", "ENABLED" ] - }, - "Targets" : { - "uniqueItems" : true, - "description" : "Adds the specified targets to the specified rule, or updates the targets if they are already associated with the rule.\nTargets are the resources that are invoked when a rule is triggered.", - "insertionOrder" : false, - "type" : "array", - "items" : { - "$ref" : "#/definitions/Target" - } - }, - "Arn" : { - "description" : "The ARN of the rule, such as arn:aws:events:us-east-2:123456789012:rule/example.", - "type" : "string" - }, - "RoleArn" : { - "description" : "The Amazon Resource Name (ARN) of the role that is used for target invocation.", - "type" : "string" - }, - "Name" : { - "description" : "The name of the rule.", - "type" : "string" - } - }, - "conditionalCreateOnlyProperties" : [ "/properties/EventBusName" ] + "createOnlyProperties" : [ "/properties/Name", "/properties/EventBusName" ], + "primaryIdentifier" : [ "/properties/Id" ], + "readOnlyProperties" : [ "/properties/Id", "/properties/Arn" ] } \ 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 baabfdef41..e11febf50f 100644 --- a/aws-cloudformation-schema/aws-gamelift-fleet.json +++ b/aws-cloudformation-schema/aws-gamelift-fleet.json @@ -1,102 +1,82 @@ { "$schema" : "https://schema.cloudformation.us-east-1.amazonaws.com/provider.definition.schema.v1.json", - "deprecatedProperties" : [ "/properties/LogPaths", "/properties/ServerLaunchParameters", "/properties/ServerLaunchPath" ], - "taggable" : true, "typeName" : "AWS::GameLift::Fleet", - "readOnlyProperties" : [ "/properties/FleetId" ], "description" : "The AWS::GameLift::Fleet resource creates an Amazon GameLift (GameLift) fleet to host game servers. A fleet is a set of EC2 or Anywhere instances, each of which can host multiple game sessions.", - "createOnlyProperties" : [ "/properties/BuildId", "/properties/CertificateConfiguration", "/properties/EC2InstanceType", "/properties/FleetType", "/properties/InstanceRoleARN", "/properties/LogPaths", "/properties/PeerVpcAwsAccountId", "/properties/PeerVpcId", "/properties/ScriptId", "/properties/ServerLaunchParameters", "/properties/ServerLaunchPath", "/properties/CertificateType", "/properties/ComputeType" ], - "primaryIdentifier" : [ "/properties/FleetId" ], - "required" : [ "Name" ], "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-gamelift.git", - "handlers" : { - "read" : { - "permissions" : [ "gamelift:DescribeFleetAttributes", "gamelift:DescribeFleetLocationAttributes", "gamelift:DescribeFleetCapacity", "gamelift:DescribeFleetPortSettings", "gamelift:DescribeFleetUtilization", "gamelift:DescribeRuntimeConfiguration", "gamelift:DescribeEC2InstanceLimits", "gamelift:DescribeFleetEvents" ] - }, - "create" : { - "permissions" : [ "gamelift:CreateFleet", "gamelift:DescribeFleetAttributes", "gamelift:DescribeFleetLocationAttributes" ] - }, - "update" : { - "permissions" : [ "gamelift:UpdateFleetAttributes", "gamelift:CreateFleetLocations", "gamelift:DeleteFleetLocations", "gamelift:UpdateFleetCapacity", "gamelift:UpdateFleetPortSettings", "gamelift:UpdateRuntimeConfiguration", "gamelift:DescribeFleetLocationCapacity", "gamelift:DescribeFleetPortSettings", "gamelift:DescribeFleetLocationAttributes" ] - }, - "list" : { - "permissions" : [ "gamelift:ListFleets" ] - }, - "delete" : { - "permissions" : [ "gamelift:DeleteFleet", "gamelift:DescribeFleetLocationCapacity" ] - } - }, - "additionalProperties" : false, "definitions" : { - "ServerProcess" : { - "description" : "A set of instructions for launching server processes on each instance in a fleet. Each instruction set identifies the location of the server executable, optional launch parameters, and the number of server processes with this configuration to maintain concurrently on the instance. Server process configurations make up a fleet's RuntimeConfiguration.", - "additionalProperties" : false, - "type" : "object", - "properties" : { - "ConcurrentExecutions" : { - "description" : "The number of server processes that use this configuration to run concurrently on an instance.", - "type" : "integer", - "minimum" : 1 - }, - "Parameters" : { - "minLength" : 1, - "description" : "An optional list of parameters to pass to the server executable or Realtime script on launch.", - "type" : "string", - "maxLength" : 1024 - }, - "LaunchPath" : { - "minLength" : 1, - "pattern" : "^([Cc]:\\\\game\\S+|/local/game/\\S+)", - "description" : "The location of the server executable in a custom game build or the name of the Realtime script file that contains the Init() function. Game builds and Realtime scripts are installed on instances at the root:\n\nWindows (for custom game builds only): C:\\game. Example: \"C:\\game\\MyGame\\server.exe\"\n\nLinux: /local/game. Examples: \"/local/game/MyGame/server.exe\" or \"/local/game/MyRealtimeScript.js\"", - "type" : "string", - "maxLength" : 1024 - } - }, - "required" : [ "ConcurrentExecutions", "LaunchPath" ] - }, "AnywhereConfiguration" : { "description" : "Configuration for Anywhere fleet.", - "additionalProperties" : false, "properties" : { "Cost" : { - "minLength" : 1, - "pattern" : "^\\d{1,5}(?:\\.\\d{1,5})?$", "description" : "Cost of compute can be specified on Anywhere Fleets to prioritize placement across Queue destinations based on Cost.", "type" : "string", + "pattern" : "^\\d{1,5}(?:\\.\\d{1,5})?$", + "minLength" : 1, "maxLength" : 11 } }, + "additionalProperties" : false, "required" : [ "Cost" ] }, - "ResourceCreationLimitPolicy" : { - "description" : "A policy that limits the number of game sessions a player can create on the same fleet. This optional policy gives game owners control over how players can consume available game server resources. A resource creation policy makes the following statement: \"An individual player can create a maximum number of new game sessions within a specified time period\".\n\nThe policy is evaluated when a player tries to create a new game session. For example, assume you have a policy of 10 new game sessions and a time period of 60 minutes. On receiving a CreateGameSession request, Amazon GameLift checks that the player (identified by CreatorId) has created fewer than 10 game sessions in the past 60 minutes.", + "CertificateConfiguration" : { + "description" : "Information about the use of a TLS/SSL certificate for a fleet. TLS certificate generation is enabled at the fleet level, with one certificate generated for the fleet. When this feature is enabled, the certificate can be retrieved using the GameLift Server SDK call GetInstanceCertificate. All instances in a fleet share the same certificate.", + "type" : "object", + "properties" : { + "CertificateType" : { + "type" : "string", + "enum" : [ "DISABLED", "GENERATED" ] + } + }, "additionalProperties" : false, + "required" : [ "CertificateType" ] + }, + "IpPermission" : { + "description" : "A range of IP addresses and port settings that allow inbound traffic to connect to server processes on an Amazon GameLift hosting resource. New game sessions that are started on the fleet are assigned an IP address/port number combination, which must fall into the fleet's allowed ranges. For fleets created with a custom game server, the ranges reflect the server's game session assignments. For Realtime Servers fleets, Amazon GameLift automatically opens two port ranges, one for TCP messaging and one for UDP, for use by the Realtime servers.", "type" : "object", "properties" : { - "PolicyPeriodInMinutes" : { - "description" : "The time span used in evaluating the resource creation limit policy.", + "FromPort" : { + "description" : "A starting value for a range of allowed port numbers.", "type" : "integer", - "minimum" : 0 + "minimum" : 1, + "maximum" : 60000 }, - "NewGameSessionsPerCreator" : { - "description" : "The maximum number of game sessions that an individual can create during the policy period.", + "IpRange" : { + "description" : "A range of allowed IP addresses. This value must be expressed in CIDR notation. Example: \"000.000.000.000/[subnet mask]\" or optionally the shortened version \"0.0.0.0/[subnet mask]\".", + "type" : "string", + "pattern" : "(^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(/([0-9]|[1-2][0-9]|3[0-2]))$)" + }, + "Protocol" : { + "description" : "The network communication protocol used by the fleet.", + "type" : "string", + "enum" : [ "TCP", "UDP" ] + }, + "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" : 0 + "minimum" : 1, + "maximum" : 60000 } - } + }, + "additionalProperties" : false, + "required" : [ "FromPort", "IpRange", "Protocol", "ToPort" ] + }, + "Location" : { + "type" : "string", + "minLength" : 1, + "maxLength" : 64, + "pattern" : "^[A-Za-z0-9\\-]+" }, "LocationCapacity" : { "description" : "Current resource capacity settings in a specified fleet or location. The location value might refer to a fleet's remote location or its home Region.", - "additionalProperties" : false, "type" : "object", "properties" : { - "MinSize" : { - "description" : "The minimum value allowed for the fleet's instance count for a location. When creating a new fleet, GameLift automatically sets this value to \"0\". After the fleet is active, you can change this value.", + "DesiredEC2Instances" : { + "description" : "The number of EC2 instances you want to maintain in the specified fleet location. This value must fall between the minimum and maximum size limits.", "type" : "integer", "minimum" : 0 }, - "DesiredEC2Instances" : { - "description" : "The number of EC2 instances you want to maintain in the specified fleet location. This value must fall between the minimum and maximum size limits.", + "MinSize" : { + "description" : "The minimum value allowed for the fleet's instance count for a location. When creating a new fleet, GameLift automatically sets this value to \"0\". After the fleet is active, you can change this value.", "type" : "integer", "minimum" : 0 }, @@ -106,244 +86,269 @@ "minimum" : 0 } }, + "additionalProperties" : false, "required" : [ "DesiredEC2Instances", "MinSize", "MaxSize" ] }, - "CertificateConfiguration" : { - "description" : "Information about the use of a TLS/SSL certificate for a fleet. TLS certificate generation is enabled at the fleet level, with one certificate generated for the fleet. When this feature is enabled, the certificate can be retrieved using the GameLift Server SDK call GetInstanceCertificate. All instances in a fleet share the same certificate.", - "additionalProperties" : false, + "LocationConfiguration" : { + "description" : "A remote location where a multi-location fleet can deploy EC2 instances for game hosting.", "type" : "object", "properties" : { - "CertificateType" : { - "type" : "string", - "enum" : [ "DISABLED", "GENERATED" ] + "Location" : { + "$ref" : "#/definitions/Location" + }, + "LocationCapacity" : { + "$ref" : "#/definitions/LocationCapacity" } }, - "required" : [ "CertificateType" ] - }, - "IpPermission" : { - "description" : "A range of IP addresses and port settings that allow inbound traffic to connect to server processes on an Amazon GameLift hosting resource. New game sessions that are started on the fleet are assigned an IP address/port number combination, which must fall into the fleet's allowed ranges. For fleets created with a custom game server, the ranges reflect the server's game session assignments. For Realtime Servers fleets, Amazon GameLift automatically opens two port ranges, one for TCP messaging and one for UDP, for use by the Realtime servers.", "additionalProperties" : false, + "required" : [ "Location" ] + }, + "ResourceCreationLimitPolicy" : { + "description" : "A policy that limits the number of game sessions a player can create on the same fleet. This optional policy gives game owners control over how players can consume available game server resources. A resource creation policy makes the following statement: \"An individual player can create a maximum number of new game sessions within a specified time period\".\n\nThe policy is evaluated when a player tries to create a new game session. For example, assume you have a policy of 10 new game sessions and a time period of 60 minutes. On receiving a CreateGameSession request, Amazon GameLift checks that the player (identified by CreatorId) has created fewer than 10 game sessions in the past 60 minutes.", "type" : "object", "properties" : { - "IpRange" : { - "pattern" : "(^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(/([0-9]|[1-2][0-9]|3[0-2]))$)", - "description" : "A range of allowed IP addresses. This value must be expressed in CIDR notation. Example: \"000.000.000.000/[subnet mask]\" or optionally the shortened version \"0.0.0.0/[subnet mask]\".", - "type" : "string" - }, - "FromPort" : { - "description" : "A starting value for a range of allowed port numbers.", - "maximum" : 60000, + "NewGameSessionsPerCreator" : { + "description" : "The maximum number of game sessions that an individual can create during the policy period.", "type" : "integer", - "minimum" : 1 + "minimum" : 0 }, - "ToPort" : { - "description" : "An ending value for a range of allowed port numbers. Port numbers are end-inclusive. This value must be higher than FromPort.", - "maximum" : 60000, + "PolicyPeriodInMinutes" : { + "description" : "The time span used in evaluating the resource creation limit policy.", "type" : "integer", - "minimum" : 1 - }, - "Protocol" : { - "description" : "The network communication protocol used by the fleet.", - "type" : "string", - "enum" : [ "TCP", "UDP" ] + "minimum" : 0 } }, - "required" : [ "FromPort", "IpRange", "Protocol", "ToPort" ] + "additionalProperties" : false }, "RuntimeConfiguration" : { "description" : "A collection of server process configurations that describe the processes to run on each instance in a fleet. All fleets must have a runtime configuration. Each instance in the fleet maintains server processes as specified in the runtime configuration, launching new ones as existing processes end. Each instance regularly checks for an updated runtime configuration makes adjustments as called for.\n\nThe runtime configuration enables the instances in a fleet to run multiple processes simultaneously. Potential scenarios are as follows: (1) Run multiple processes of a single game server executable to maximize usage of your hosting resources. (2) Run one or more processes of different executables, such as your game server and a metrics tracking program. (3) Run multiple processes of a single game server but with different launch parameters, for example to run one process on each instance in debug mode.\n\nAn Amazon GameLift instance is limited to 50 processes running simultaneously. A runtime configuration must specify fewer than this limit. To calculate the total number of processes specified in a runtime configuration, add the values of the ConcurrentExecutions parameter for each ServerProcess object in the runtime configuration.", - "additionalProperties" : false, "type" : "object", "properties" : { - "ServerProcesses" : { - "maxItems" : 50, - "description" : "A collection of server process configurations that describe which server processes to run on each instance in a fleet.", - "insertionOrder" : false, - "type" : "array", - "items" : { - "$ref" : "#/definitions/ServerProcess" - } + "GameSessionActivationTimeoutSeconds" : { + "description" : "The maximum amount of time (in seconds) that a game session can remain in status ACTIVATING. If the game session is not active before the timeout, activation is terminated and the game session status is changed to TERMINATED.", + "type" : "integer", + "minimum" : 1, + "maximum" : 600 }, "MaxConcurrentGameSessionActivations" : { "description" : "The maximum number of game sessions with status ACTIVATING to allow on an instance simultaneously. This setting limits the amount of instance resources that can be used for new game activations at any one time.", - "maximum" : 2147483647, "type" : "integer", - "minimum" : 1 + "minimum" : 1, + "maximum" : 2147483647 }, - "GameSessionActivationTimeoutSeconds" : { - "description" : "The maximum amount of time (in seconds) that a game session can remain in status ACTIVATING. If the game session is not active before the timeout, activation is terminated and the game session status is changed to TERMINATED.", - "maximum" : 600, - "type" : "integer", - "minimum" : 1 + "ServerProcesses" : { + "description" : "A collection of server process configurations that describe which server processes to run on each instance in a fleet.", + "type" : "array", + "maxItems" : 50, + "items" : { + "$ref" : "#/definitions/ServerProcess" + }, + "insertionOrder" : false } - } - }, - "Location" : { - "minLength" : 1, - "pattern" : "^[A-Za-z0-9\\-]+", - "type" : "string", - "maxLength" : 64 + }, + "additionalProperties" : false }, - "LocationConfiguration" : { - "description" : "A remote location where a multi-location fleet can deploy EC2 instances for game hosting.", - "additionalProperties" : false, + "ServerProcess" : { + "description" : "A set of instructions for launching server processes on each instance in a fleet. Each instruction set identifies the location of the server executable, optional launch parameters, and the number of server processes with this configuration to maintain concurrently on the instance. Server process configurations make up a fleet's RuntimeConfiguration.", "type" : "object", "properties" : { - "LocationCapacity" : { - "$ref" : "#/definitions/LocationCapacity" + "ConcurrentExecutions" : { + "description" : "The number of server processes that use this configuration to run concurrently on an instance.", + "type" : "integer", + "minimum" : 1 }, - "Location" : { - "$ref" : "#/definitions/Location" + "LaunchPath" : { + "description" : "The location of the server executable in a custom game build or the name of the Realtime script file that contains the Init() function. Game builds and Realtime scripts are installed on instances at the root:\n\nWindows (for custom game builds only): C:\\game. Example: \"C:\\game\\MyGame\\server.exe\"\n\nLinux: /local/game. Examples: \"/local/game/MyGame/server.exe\" or \"/local/game/MyRealtimeScript.js\"", + "type" : "string", + "minLength" : 1, + "maxLength" : 1024, + "pattern" : "^([Cc]:\\\\game\\S+|/local/game/\\S+)" + }, + "Parameters" : { + "description" : "An optional list of parameters to pass to the server executable or Realtime script on launch.", + "type" : "string", + "minLength" : 1, + "maxLength" : 1024 } }, - "required" : [ "Location" ] + "additionalProperties" : false, + "required" : [ "ConcurrentExecutions", "LaunchPath" ] } }, "properties" : { - "Description" : { - "minLength" : 1, - "description" : "A human-readable description of a fleet.", - "type" : "string", - "maxLength" : 1024 - }, - "PeerVpcId" : { - "minLength" : 1, - "pattern" : "^vpc-\\S+", - "description" : "A unique identifier for a VPC with resources to be accessed by your Amazon GameLift fleet. The VPC must be in the same Region as your fleet. To look up a VPC ID, use the VPC Dashboard in the AWS Management Console.", - "type" : "string", - "maxLength" : 1024 + "AnywhereConfiguration" : { + "description" : "Configuration for Anywhere fleet.", + "$ref" : "#/definitions/AnywhereConfiguration" }, - "EC2InboundPermissions" : { - "maxItems" : 50, - "description" : "A range of IP addresses and port settings that allow inbound traffic to connect to server processes on an Amazon GameLift server.", - "insertionOrder" : false, - "type" : "array", - "items" : { - "$ref" : "#/definitions/IpPermission" - } + "CertificateConfiguration" : { + "description" : "Indicates whether to generate a TLS/SSL certificate for the new fleet. TLS certificates are used for encrypting traffic between game clients and game servers running on GameLift. If this parameter is not set, certificate generation is disabled. This fleet setting cannot be changed once the fleet is created.", + "$ref" : "#/definitions/CertificateConfiguration" }, "ComputeType" : { "description" : "ComputeType to differentiate EC2 hardware managed by GameLift and Anywhere hardware managed by the customer.", "type" : "string", "enum" : [ "EC2", "ANYWHERE" ] }, - "Name" : { - "minLength" : 1, - "description" : "A descriptive label that is associated with a fleet. Fleet names do not need to be unique.", + "Description" : { + "description" : "A human-readable description of a fleet.", "type" : "string", - "maxLength" : 1024 - }, - "AnywhereConfiguration" : { - "description" : "Configuration for Anywhere fleet.", - "$ref" : "#/definitions/AnywhereConfiguration" - }, - "InstanceRoleARN" : { "minLength" : 1, - "pattern" : "^arn:aws(-.*)?:[a-z-]+:(([a-z]+-)+[0-9])?:([0-9]{12})?:[^.]+$", - "description" : "A unique identifier for an AWS IAM role that manages access to your AWS services. With an instance role ARN set, any application that runs on an instance in this fleet can assume the role, including install scripts, server processes, and daemons (background processes). Create a role or look up a role's ARN from the IAM dashboard in the AWS Management Console.", - "type" : "string" - }, - "FleetId" : { - "pattern" : "^fleet-\\S+", - "description" : "Unique fleet ID", - "type" : "string" - }, - "CertificateConfiguration" : { - "description" : "Indicates whether to generate a TLS/SSL certificate for the new fleet. TLS certificates are used for encrypting traffic between game clients and game servers running on GameLift. If this parameter is not set, certificate generation is disabled. This fleet setting cannot be changed once the fleet is created.", - "$ref" : "#/definitions/CertificateConfiguration" + "maxLength" : 1024 }, "DesiredEC2Instances" : { "description" : "[DEPRECATED] The number of EC2 instances that you want this fleet to host. When creating a new fleet, GameLift automatically sets this value to \"1\" and initiates a single instance. Once the fleet is active, update this value to trigger GameLift to add or remove instances from the fleet.", "type" : "integer", "minimum" : 0 }, - "ServerLaunchParameters" : { - "minLength" : 1, - "description" : "This parameter is no longer used but is retained for backward compatibility. Instead, specify server launch parameters in the RuntimeConfiguration parameter. A request must specify either a runtime configuration or values for both ServerLaunchParameters and ServerLaunchPath.", + "EC2InboundPermissions" : { + "description" : "A range of IP addresses and port settings that allow inbound traffic to connect to server processes on an Amazon GameLift server.", + "type" : "array", + "maxItems" : 50, + "items" : { + "$ref" : "#/definitions/IpPermission" + }, + "insertionOrder" : false + }, + "EC2InstanceType" : { + "description" : "The name of an EC2 instance type that is supported in Amazon GameLift. A fleet instance type determines the computing resources of each instance in the fleet, including CPU, memory, storage, and networking capacity. Amazon GameLift supports the following EC2 instance types. See Amazon EC2 Instance Types for detailed descriptions.", "type" : "string", - "maxLength" : 1024 + "pattern" : "^.*..*$" }, "FleetType" : { "description" : "Indicates whether to use On-Demand instances or Spot instances for this fleet. If empty, the default is ON_DEMAND. Both categories of instances use identical hardware and configurations based on the instance type selected for this fleet.", "type" : "string", "enum" : [ "ON_DEMAND", "SPOT" ] }, + "InstanceRoleARN" : { + "description" : "A unique identifier for an AWS IAM role that manages access to your AWS services. With an instance role ARN set, any application that runs on an instance in this fleet can assume the role, including install scripts, server processes, and daemons (background processes). Create a role or look up a role's ARN from the IAM dashboard in the AWS Management Console.", + "type" : "string", + "minLength" : 1, + "pattern" : "^arn:aws(-.*)?:[a-z-]+:(([a-z]+-)+[0-9])?:([0-9]{12})?:[^.]+$" + }, + "InstanceRoleCredentialsProvider" : { + "description" : "Credentials provider implementation that loads credentials from the Amazon EC2 Instance Metadata Service.", + "type" : "string", + "enum" : [ "SHARED_CREDENTIAL_FILE" ] + }, "Locations" : { + "type" : "array", "minItems" : 1, "maxItems" : 100, - "insertionOrder" : false, - "type" : "array", "items" : { "$ref" : "#/definitions/LocationConfiguration" - } - }, - "NewGameSessionProtectionPolicy" : { - "description" : "A game session protection policy to apply to all game sessions hosted on instances in this fleet. When protected, active game sessions cannot be terminated during a scale-down event. If this parameter is not set, instances in this fleet default to no protection. You can change a fleet's protection policy to affect future game sessions on the fleet. You can also set protection for individual game sessions.", - "type" : "string", - "enum" : [ "FullProtection", "NoProtection" ] + }, + "insertionOrder" : false }, - "ScriptId" : { - "pattern" : "^script-\\S+|^arn:.*:script/script-\\S+", - "description" : "A unique identifier for a Realtime script to be deployed on a new Realtime Servers fleet. The script must have been successfully uploaded to Amazon GameLift. This fleet setting cannot be changed once the fleet is created.\n\nNote: It is not currently possible to use the !Ref command to reference a script created with a CloudFormation template for the fleet property ScriptId. Instead, use Fn::GetAtt Script.Arn or Fn::GetAtt Script.Id to retrieve either of these properties as input for ScriptId. Alternatively, enter a ScriptId string manually.", - "type" : "string" + "LogPaths" : { + "description" : "This parameter is no longer used. When hosting a custom game build, specify where Amazon GameLift should store log files using the Amazon GameLift server API call ProcessReady()", + "type" : "array", + "items" : { + "type" : "string" + }, + "insertionOrder" : false }, "MaxSize" : { "description" : "[DEPRECATED] The maximum value that is allowed for the fleet's instance count. When creating a new fleet, GameLift automatically sets this value to \"1\". Once the fleet is active, you can change this value.", "type" : "integer", "minimum" : 0 }, - "RuntimeConfiguration" : { - "description" : "Instructions for launching server processes on each instance in the fleet. Server processes run either a custom game build executable or a Realtime script. The runtime configuration defines the server executables or launch script file, launch parameters, and the number of processes to run concurrently on each instance. When creating a fleet, the runtime configuration must have at least one server process configuration; otherwise the request fails with an invalid request exception.\n\nThis parameter is required unless the parameters ServerLaunchPath and ServerLaunchParameters are defined. Runtime configuration has replaced these parameters, but fleets that use them will continue to work.", - "$ref" : "#/definitions/RuntimeConfiguration" - }, - "LogPaths" : { - "description" : "This parameter is no longer used. When hosting a custom game build, specify where Amazon GameLift should store log files using the Amazon GameLift server API call ProcessReady()", - "insertionOrder" : false, + "MetricGroups" : { + "description" : "The name of an Amazon CloudWatch metric group. A metric group aggregates the metrics for all fleets in the group. Specify a string containing the metric group name. You can use an existing name or use a new name to create a new metric group. Currently, this parameter can have only one string.", "type" : "array", + "maxItems" : 1, "items" : { "type" : "string" - } - }, - "ServerLaunchPath" : { - "minLength" : 1, - "description" : "This parameter is no longer used. Instead, specify a server launch path using the RuntimeConfiguration parameter. Requests that specify a server launch path and launch parameters instead of a runtime configuration will continue to work.", - "type" : "string", - "maxLength" : 1024 + }, + "insertionOrder" : false }, "MinSize" : { "description" : "[DEPRECATED] The minimum value allowed for the fleet's instance count. When creating a new fleet, GameLift automatically sets this value to \"0\". After the fleet is active, you can change this value.", "type" : "integer", "minimum" : 0 }, - "PeerVpcAwsAccountId" : { - "minLength" : 1, - "pattern" : "^[0-9]{12}$", - "description" : "A unique identifier for the AWS account with the VPC that you want to peer your Amazon GameLift fleet with. You can find your account ID in the AWS Management Console under account settings.", + "Name" : { + "description" : "A descriptive label that is associated with a fleet. Fleet names do not need to be unique.", "type" : "string", + "minLength" : 1, "maxLength" : 1024 }, - "MetricGroups" : { - "maxItems" : 1, - "description" : "The name of an Amazon CloudWatch metric group. A metric group aggregates the metrics for all fleets in the group. Specify a string containing the metric group name. You can use an existing name or use a new name to create a new metric group. Currently, this parameter can have only one string.", - "insertionOrder" : false, - "type" : "array", - "items" : { - "type" : "string" - } + "NewGameSessionProtectionPolicy" : { + "description" : "A game session protection policy to apply to all game sessions hosted on instances in this fleet. When protected, active game sessions cannot be terminated during a scale-down event. If this parameter is not set, instances in this fleet default to no protection. You can change a fleet's protection policy to affect future game sessions on the fleet. You can also set protection for individual game sessions.", + "type" : "string", + "enum" : [ "FullProtection", "NoProtection" ] }, - "BuildId" : { - "pattern" : "^build-\\S+|^arn:.*:build/build-\\S+", - "description" : "A unique identifier for a build to be deployed on the new fleet. If you are deploying the fleet with a custom game build, you must specify this property. The build must have been successfully uploaded to Amazon GameLift and be in a READY status. This fleet setting cannot be changed once the fleet is created.", - "type" : "string" + "PeerVpcAwsAccountId" : { + "description" : "A unique identifier for the AWS account with the VPC that you want to peer your Amazon GameLift fleet with. You can find your account ID in the AWS Management Console under account settings.", + "type" : "string", + "minLength" : 1, + "maxLength" : 1024, + "pattern" : "^[0-9]{12}$" + }, + "PeerVpcId" : { + "description" : "A unique identifier for a VPC with resources to be accessed by your Amazon GameLift fleet. The VPC must be in the same Region as your fleet. To look up a VPC ID, use the VPC Dashboard in the AWS Management Console.", + "type" : "string", + "minLength" : 1, + "maxLength" : 1024, + "pattern" : "^vpc-\\S+" }, "ResourceCreationLimitPolicy" : { "description" : "A policy that limits the number of game sessions an individual player can create over a span of time for this fleet.", "$ref" : "#/definitions/ResourceCreationLimitPolicy" }, - "EC2InstanceType" : { - "pattern" : "^.*..*$", - "description" : "The name of an EC2 instance type that is supported in Amazon GameLift. A fleet instance type determines the computing resources of each instance in the fleet, including CPU, memory, storage, and networking capacity. Amazon GameLift supports the following EC2 instance types. See Amazon EC2 Instance Types for detailed descriptions.", - "type" : "string" + "FleetId" : { + "description" : "Unique fleet ID", + "type" : "string", + "pattern" : "^fleet-\\S+" + }, + "BuildId" : { + "description" : "A unique identifier for a build to be deployed on the new fleet. If you are deploying the fleet with a custom game build, you must specify this property. The build must have been successfully uploaded to Amazon GameLift and be in a READY status. This fleet setting cannot be changed once the fleet is created.", + "type" : "string", + "pattern" : "^build-\\S+|^arn:.*:build/build-\\S+" + }, + "ScriptId" : { + "description" : "A unique identifier for a Realtime script to be deployed on a new Realtime Servers fleet. The script must have been successfully uploaded to Amazon GameLift. This fleet setting cannot be changed once the fleet is created.\n\nNote: It is not currently possible to use the !Ref command to reference a script created with a CloudFormation template for the fleet property ScriptId. Instead, use Fn::GetAtt Script.Arn or Fn::GetAtt Script.Id to retrieve either of these properties as input for ScriptId. Alternatively, enter a ScriptId string manually.", + "type" : "string", + "pattern" : "^script-\\S+|^arn:.*:script/script-\\S+" + }, + "RuntimeConfiguration" : { + "description" : "Instructions for launching server processes on each instance in the fleet. Server processes run either a custom game build executable or a Realtime script. The runtime configuration defines the server executables or launch script file, launch parameters, and the number of processes to run concurrently on each instance. When creating a fleet, the runtime configuration must have at least one server process configuration; otherwise the request fails with an invalid request exception.\n\nThis parameter is required unless the parameters ServerLaunchPath and ServerLaunchParameters are defined. Runtime configuration has replaced these parameters, but fleets that use them will continue to work.", + "$ref" : "#/definitions/RuntimeConfiguration" + }, + "ServerLaunchParameters" : { + "description" : "This parameter is no longer used but is retained for backward compatibility. Instead, specify server launch parameters in the RuntimeConfiguration parameter. A request must specify either a runtime configuration or values for both ServerLaunchParameters and ServerLaunchPath.", + "type" : "string", + "minLength" : 1, + "maxLength" : 1024 + }, + "ServerLaunchPath" : { + "description" : "This parameter is no longer used. Instead, specify a server launch path using the RuntimeConfiguration parameter. Requests that specify a server launch path and launch parameters instead of a runtime configuration will continue to work.", + "type" : "string", + "minLength" : 1, + "maxLength" : 1024 } - } + }, + "required" : [ "Name" ], + "additionalProperties" : false, + "createOnlyProperties" : [ "/properties/BuildId", "/properties/CertificateConfiguration", "/properties/EC2InstanceType", "/properties/FleetType", "/properties/InstanceRoleARN", "/properties/InstanceRoleCredentialsProvider", "/properties/LogPaths", "/properties/PeerVpcAwsAccountId", "/properties/PeerVpcId", "/properties/ScriptId", "/properties/ServerLaunchParameters", "/properties/ServerLaunchPath", "/properties/CertificateType", "/properties/ComputeType" ], + "deprecatedProperties" : [ "/properties/LogPaths", "/properties/ServerLaunchParameters", "/properties/ServerLaunchPath" ], + "readOnlyProperties" : [ "/properties/FleetId" ], + "primaryIdentifier" : [ "/properties/FleetId" ], + "handlers" : { + "create" : { + "permissions" : [ "gamelift:CreateFleet", "gamelift:DescribeFleetAttributes", "gamelift:DescribeFleetLocationAttributes" ] + }, + "read" : { + "permissions" : [ "gamelift:DescribeFleetAttributes", "gamelift:DescribeFleetLocationAttributes", "gamelift:DescribeFleetCapacity", "gamelift:DescribeFleetPortSettings", "gamelift:DescribeFleetUtilization", "gamelift:DescribeRuntimeConfiguration", "gamelift:DescribeEC2InstanceLimits", "gamelift:DescribeFleetEvents" ] + }, + "update" : { + "permissions" : [ "gamelift:UpdateFleetAttributes", "gamelift:CreateFleetLocations", "gamelift:DeleteFleetLocations", "gamelift:UpdateFleetCapacity", "gamelift:UpdateFleetPortSettings", "gamelift:UpdateRuntimeConfiguration", "gamelift:DescribeFleetLocationCapacity", "gamelift:DescribeFleetPortSettings", "gamelift:DescribeFleetLocationAttributes" ] + }, + "delete" : { + "permissions" : [ "gamelift:DeleteFleet", "gamelift:DescribeFleetLocationCapacity" ] + }, + "list" : { + "permissions" : [ "gamelift:ListFleets" ] + } + }, + "taggable" : true } \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-iam-group.json b/aws-cloudformation-schema/aws-iam-group.json index eab494f917..4466d3542d 100644 --- a/aws-cloudformation-schema/aws-iam-group.json +++ b/aws-cloudformation-schema/aws-iam-group.json @@ -1,51 +1,81 @@ { "typeName" : "AWS::IAM::Group", "description" : "Resource Type definition for AWS::IAM::Group", - "additionalProperties" : false, + "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-iam.git", + "definitions" : { + "Policy" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "PolicyDocument" : { + "description" : "The policy document.", + "type" : [ "string", "object" ] + }, + "PolicyName" : { + "description" : "The friendly name (not ARN) identifying the policy.", + "type" : "string" + } + }, + "required" : [ "PolicyDocument", "PolicyName" ] + } + }, "properties" : { - "Id" : { - "type" : "string" - }, "Arn" : { + "description" : "The Arn of the group to create", "type" : "string" }, "GroupName" : { + "description" : "The name of the group to create", "type" : "string" }, "ManagedPolicyArns" : { + "description" : "A list of Amazon Resource Names (ARNs) of the IAM managed policies that you want to attach to the role. ", "type" : "array", "uniqueItems" : true, + "insertionOrder" : false, "items" : { "type" : "string" } }, "Path" : { + "description" : "The path to the group", "type" : "string" }, "Policies" : { + "description" : "Adds or updates an inline policy document that is embedded in the specified IAM group", "type" : "array", - "uniqueItems" : true, + "uniqueItems" : false, + "insertionOrder" : false, "items" : { "$ref" : "#/definitions/Policy" } } }, - "definitions" : { - "Policy" : { - "type" : "object", - "additionalProperties" : false, - "properties" : { - "PolicyDocument" : { - "type" : "object" - }, - "PolicyName" : { - "type" : "string" - } - }, - "required" : [ "PolicyDocument", "PolicyName" ] - } + "tagging" : { + "taggable" : false, + "tagOnCreate" : false, + "tagUpdatable" : false, + "cloudFormationSystemTags" : false }, - "readOnlyProperties" : [ "/properties/Arn", "/properties/Id" ], + "additionalProperties" : false, + "readOnlyProperties" : [ "/properties/Arn" ], "createOnlyProperties" : [ "/properties/GroupName" ], - "primaryIdentifier" : [ "/properties/Id" ] + "primaryIdentifier" : [ "/properties/GroupName" ], + "handlers" : { + "create" : { + "permissions" : [ "iam:CreateGroup", "iam:PutGroupPolicy", "iam:AttachGroupPolicy", "iam:GetGroupPolicy", "iam:GetGroup" ] + }, + "read" : { + "permissions" : [ "iam:GetGroup", "iam:ListGroupPolicies", "iam:GetGroupPolicy", "iam:ListAttachedGroupPolicies" ] + }, + "update" : { + "permissions" : [ "iam:GetGroup", "iam:UpdateGroup", "iam:DetachGroupPolicy", "iam:AttachGroupPolicy", "iam:DeleteGroupPolicy", "iam:PutGroupPolicy", "iam:GetGroupPolicy" ] + }, + "delete" : { + "permissions" : [ "iam:GetGroup", "iam:DeleteGroup", "iam:ListAttachedGroupPolicies", "iam:ListGroupPolicies", "iam:DetachGroupPolicy", "iam:DeleteGroupPolicy", "iam:GetGroupPolicy" ] + }, + "list" : { + "permissions" : [ "iam:ListGroups" ] + } + } } \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-iot-jobtemplate.json b/aws-cloudformation-schema/aws-iot-jobtemplate.json index f9fe87ff39..b2c0d2039e 100644 --- a/aws-cloudformation-schema/aws-iot-jobtemplate.json +++ b/aws-cloudformation-schema/aws-iot-jobtemplate.json @@ -310,8 +310,8 @@ "taggable" : true, "additionalProperties" : false, "readOnlyProperties" : [ "/properties/Arn" ], - "writeOnlyProperties" : [ "/properties/JobArn", "/properties/Tags" ], - "createOnlyProperties" : [ "/properties/JobTemplateId", "/properties/JobArn", "/properties/Description", "/properties/Document", "/properties/DocumentSource", "/properties/TimeoutConfig", "/properties/JobExecutionsRolloutConfig", "/properties/AbortConfig", "/properties/PresignedUrlConfig", "/properties/Tags" ], + "writeOnlyProperties" : [ "/properties/JobArn", "/properties/Tags", "/properties/Document", "/properties/DocumentSource", "/properties/TimeoutConfig", "/properties/JobExecutionsRolloutConfig", "/properties/AbortConfig", "/properties/PresignedUrlConfig", "/properties/DestinationPackageVersions", "/properties/JobExecutionsRetryConfig", "/properties/MaintenanceWindows" ], + "createOnlyProperties" : [ "/properties/JobTemplateId", "/properties/JobArn", "/properties/Description", "/properties/Document", "/properties/DocumentSource", "/properties/TimeoutConfig", "/properties/JobExecutionsRolloutConfig", "/properties/AbortConfig", "/properties/PresignedUrlConfig", "/properties/Tags", "/properties/DestinationPackageVersions", "/properties/JobExecutionsRetryConfig", "/properties/MaintenanceWindows" ], "primaryIdentifier" : [ "/properties/JobTemplateId" ], "handlers" : { "create" : { diff --git a/aws-cloudformation-schema/aws-iot-policy.json b/aws-cloudformation-schema/aws-iot-policy.json index 71c1298b23..4db11c482d 100644 --- a/aws-cloudformation-schema/aws-iot-policy.json +++ b/aws-cloudformation-schema/aws-iot-policy.json @@ -1,12 +1,28 @@ { "typeName" : "AWS::IoT::Policy", "description" : "Resource Type definition for AWS::IoT::Policy", + "definitions" : { + "Tag" : { + "type" : "object", + "properties" : { + "Key" : { + "type" : "string" + }, + "Value" : { + "type" : "string" + } + }, + "additionalProperties" : false, + "required" : [ "Key", "Value" ] + } + }, "additionalProperties" : false, "tagging" : { - "taggable" : false, - "tagOnCreate" : false, - "tagUpdatable" : false, - "cloudFormationSystemTags" : false + "taggable" : true, + "tagOnCreate" : true, + "tagUpdatable" : true, + "cloudFormationSystemTags" : true, + "tagProperty" : "/properties/Tags" }, "properties" : { "Id" : { @@ -22,6 +38,13 @@ }, "PolicyName" : { "type" : "string" + }, + "Tags" : { + "type" : "array", + "insertionOrder" : true, + "items" : { + "$ref" : "#/definitions/Tag" + } } }, "required" : [ "PolicyDocument" ], @@ -30,16 +53,16 @@ "primaryIdentifier" : [ "/properties/Id" ], "handlers" : { "create" : { - "permissions" : [ "iot:CreatePolicy", "iot:GetPolicy" ] + "permissions" : [ "iot:CreatePolicy", "iot:GetPolicy", "iot:TagResource", "iot:ListTagsForResource" ] }, "read" : { - "permissions" : [ "iot:GetPolicy" ] + "permissions" : [ "iot:GetPolicy", "iot:ListTagsForResource" ] }, "delete" : { "permissions" : [ "iot:DeletePolicy", "iot:GetPolicy", "iot:ListPolicyVersions", "iot:DeletePolicyVersion" ] }, "update" : { - "permissions" : [ "iot:ListPolicyVersions", "iot:CreatePolicyVersion", "iot:DeletePolicyVersion", "iot:SetDefaultPolicyVersion" ] + "permissions" : [ "iot:GetPolicy", "iot:ListPolicyVersions", "iot:CreatePolicyVersion", "iot:DeletePolicyVersion", "iot:SetDefaultPolicyVersion", "iot:TagResource", "iot:UntagResource", "iot:ListTagsForResource" ] }, "list" : { "permissions" : [ "iot:ListPolicies" ] diff --git a/aws-cloudformation-schema/aws-lambda-function.json b/aws-cloudformation-schema/aws-lambda-function.json index 4e12107a5a..b1f28abb6b 100644 --- a/aws-cloudformation-schema/aws-lambda-function.json +++ b/aws-cloudformation-schema/aws-lambda-function.json @@ -11,10 +11,10 @@ "permissions" : [ "lambda:GetFunction", "lambda:GetFunctionCodeSigningConfig" ] }, "create" : { - "permissions" : [ "lambda:CreateFunction", "lambda:GetFunction", "lambda:PutFunctionConcurrency", "iam:PassRole", "s3:GetObject", "s3:GetObjectVersion", "ec2:DescribeSecurityGroups", "ec2:DescribeSubnets", "ec2:DescribeVpcs", "elasticfilesystem:DescribeMountTargets", "kms:CreateGrant", "kms:Decrypt", "kms:Encrypt", "kms:GenerateDataKey", "lambda:GetCodeSigningConfig", "lambda:GetFunctionCodeSigningConfig", "lambda:GetLayerVersion", "lambda:GetRuntimeManagementConfig", "lambda:PutRuntimeManagementConfig", "lambda:TagResource" ] + "permissions" : [ "lambda:CreateFunction", "lambda:GetFunction", "lambda:PutFunctionConcurrency", "iam:PassRole", "s3:GetObject", "s3:GetObjectVersion", "ec2:DescribeSecurityGroups", "ec2:DescribeSubnets", "ec2:DescribeVpcs", "elasticfilesystem:DescribeMountTargets", "kms:CreateGrant", "kms:Decrypt", "kms:Encrypt", "kms:GenerateDataKey", "lambda:GetCodeSigningConfig", "lambda:GetFunctionCodeSigningConfig", "lambda:GetLayerVersion", "lambda:GetRuntimeManagementConfig", "lambda:PutRuntimeManagementConfig", "lambda:TagResource", "lambda:GetPolicy", "lambda:AddPermission", "lambda:RemovePermission", "lambda:GetResourcePolicy", "lambda:PutResourcePolicy" ] }, "update" : { - "permissions" : [ "lambda:DeleteFunctionConcurrency", "lambda:GetFunction", "lambda:PutFunctionConcurrency", "lambda:ListTags", "lambda:TagResource", "lambda:UntagResource", "lambda:UpdateFunctionConfiguration", "lambda:UpdateFunctionCode", "iam:PassRole", "s3:GetObject", "s3:GetObjectVersion", "ec2:DescribeSecurityGroups", "ec2:DescribeSubnets", "ec2:DescribeVpcs", "elasticfilesystem:DescribeMountTargets", "kms:CreateGrant", "kms:Decrypt", "kms:GenerateDataKey", "lambda:GetRuntimeManagementConfig", "lambda:PutRuntimeManagementConfig", "lambda:PutFunctionCodeSigningConfig", "lambda:DeleteFunctionCodeSigningConfig", "lambda:GetCodeSigningConfig", "lambda:GetFunctionCodeSigningConfig" ] + "permissions" : [ "lambda:DeleteFunctionConcurrency", "lambda:GetFunction", "lambda:PutFunctionConcurrency", "lambda:ListTags", "lambda:TagResource", "lambda:UntagResource", "lambda:UpdateFunctionConfiguration", "lambda:UpdateFunctionCode", "iam:PassRole", "s3:GetObject", "s3:GetObjectVersion", "ec2:DescribeSecurityGroups", "ec2:DescribeSubnets", "ec2:DescribeVpcs", "elasticfilesystem:DescribeMountTargets", "kms:CreateGrant", "kms:Decrypt", "kms:GenerateDataKey", "lambda:GetRuntimeManagementConfig", "lambda:PutRuntimeManagementConfig", "lambda:PutFunctionCodeSigningConfig", "lambda:DeleteFunctionCodeSigningConfig", "lambda:GetCodeSigningConfig", "lambda:GetFunctionCodeSigningConfig", "lambda:GetPolicy", "lambda:AddPermission", "lambda:RemovePermission", "lambda:GetResourcePolicy", "lambda:PutResourcePolicy", "lambda:DeleteResourcePolicy" ] }, "list" : { "permissions" : [ "lambda:ListFunctions" ] @@ -26,7 +26,7 @@ "typeName" : "AWS::Lambda::Function", "readOnlyProperties" : [ "/properties/SnapStartResponse", "/properties/SnapStartResponse/ApplyOn", "/properties/SnapStartResponse/OptimizationStatus", "/properties/Arn" ], "description" : "Resource Type definition for AWS::Lambda::Function in region", - "writeOnlyProperties" : [ "/properties/SnapStart", "/properties/SnapStart/ApplyOn", "/properties/Code", "/properties/Code/ImageUri", "/properties/Code/S3Bucket", "/properties/Code/S3Key", "/properties/Code/S3ObjectVersion", "/properties/Code/ZipFile" ], + "writeOnlyProperties" : [ "/properties/SnapStart", "/properties/SnapStart/ApplyOn", "/properties/Code", "/properties/Code/ImageUri", "/properties/Code/S3Bucket", "/properties/Code/S3Key", "/properties/Code/S3ObjectVersion", "/properties/Code/ZipFile", "/properties/Policy" ], "createOnlyProperties" : [ "/properties/FunctionName" ], "additionalProperties" : false, "primaryIdentifier" : [ "/properties/FunctionName" ], @@ -263,6 +263,10 @@ }, "required" : [ "Code", "Role" ], "properties" : { + "Policy" : { + "description" : "The resource policy of your function", + "type" : "object" + }, "Description" : { "description" : "A description of the function.", "type" : "string", diff --git a/aws-cloudformation-schema/aws-mediapackage-asset.json b/aws-cloudformation-schema/aws-mediapackage-asset.json index bf8f0c164e..da2652f931 100644 --- a/aws-cloudformation-schema/aws-mediapackage-asset.json +++ b/aws-cloudformation-schema/aws-mediapackage-asset.json @@ -84,13 +84,13 @@ "primaryIdentifier" : [ "/properties/Id" ], "handlers" : { "create" : { - "permissions" : [ "mediapackage-vod:CreateAsset", "mediapackage-vod:DescribeAsset", "mediapackage-vod:DescribePackagingGroup", "mediapackage-vod:TagResource", "iam:PassRole" ] + "permissions" : [ "mediapackage-vod:CreateAsset", "mediapackage-vod:DescribeAsset", "mediapackage-vod:TagResource", "iam:PassRole" ] }, "read" : { "permissions" : [ "mediapackage-vod:DescribeAsset" ] }, "delete" : { - "permissions" : [ "mediapackage-vod:DeleteAsset" ] + "permissions" : [ "mediapackage-vod:DescribeAsset", "mediapackage-vod:DeleteAsset" ] }, "list" : { "permissions" : [ "mediapackage-vod:ListAssets", "mediapackage-vod:DescribePackagingGroup" ] diff --git a/aws-cloudformation-schema/aws-msk-replicator.json b/aws-cloudformation-schema/aws-msk-replicator.json new file mode 100644 index 0000000000..66fdba4821 --- /dev/null +++ b/aws-cloudformation-schema/aws-msk-replicator.json @@ -0,0 +1,285 @@ +{ + "typeName" : "AWS::MSK::Replicator", + "description" : "Resource Type definition for AWS::MSK::Replicator", + "additionalProperties" : false, + "tagging" : { + "taggable" : true, + "tagOnCreate" : true, + "tagUpdatable" : true, + "cloudFormationSystemTags" : true, + "tagProperty" : "/properties/Tags" + }, + "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-msk-replicator.git", + "properties" : { + "ReplicatorArn" : { + "description" : "Amazon Resource Name for the created replicator.", + "type" : "string", + "pattern" : "arn:(aws|aws-us-gov|aws-cn):kafka:.*" + }, + "ReplicatorName" : { + "description" : "The name of the replicator.", + "type" : "string", + "minLength" : 1, + "maxLength" : 128, + "pattern" : "^[0-9A-Za-z][0-9A-Za-z-]{0,}$" + }, + "CurrentVersion" : { + "description" : "The current version of the MSK replicator.", + "type" : "string" + }, + "Description" : { + "description" : "A summary description of the replicator.", + "type" : "string", + "maxLength" : 1024 + }, + "KafkaClusters" : { + "description" : "Specifies a list of Kafka clusters which are targets of the replicator.", + "type" : "array", + "uniqueItems" : true, + "insertionOrder" : false, + "minItems" : 2, + "maxItems" : 2, + "items" : { + "$ref" : "#/definitions/KafkaCluster" + } + }, + "ReplicationInfoList" : { + "description" : "A list of replication configurations, where each configuration targets a given source cluster to target cluster replication flow.", + "type" : "array", + "uniqueItems" : true, + "insertionOrder" : false, + "minItems" : 1, + "maxItems" : 1, + "items" : { + "$ref" : "#/definitions/ReplicationInfo" + } + }, + "ServiceExecutionRoleArn" : { + "description" : "The Amazon Resource Name (ARN) of the IAM role used by the replicator to access external resources.", + "type" : "string", + "pattern" : "arn:(aws|aws-us-gov|aws-cn):iam:.*" + }, + "Tags" : { + "description" : "A collection of tags associated with a resource", + "type" : "array", + "uniqueItems" : true, + "insertionOrder" : false, + "items" : { + "$ref" : "#/definitions/Tag" + } + } + }, + "definitions" : { + "Tag" : { + "type" : "object", + "properties" : { + "Key" : { + "type" : "string", + "minLength" : 1, + "maxLength" : 128 + }, + "Value" : { + "type" : "string", + "maxLength" : 256 + } + }, + "required" : [ "Value", "Key" ], + "additionalProperties" : false + }, + "TopicReplication" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "TopicsToReplicate" : { + "description" : "List of regular expression patterns indicating the topics to copy.", + "type" : "array", + "uniqueItems" : true, + "insertionOrder" : false, + "minItems" : 1, + "maxItems" : 100, + "items" : { + "type" : "string", + "maxLength" : 249 + } + }, + "TopicsToExclude" : { + "description" : "List of regular expression patterns indicating the topics that should not be replicated.", + "type" : "array", + "uniqueItems" : true, + "insertionOrder" : false, + "minItems" : 1, + "maxItems" : 100, + "items" : { + "type" : "string", + "maxLength" : 249 + } + }, + "CopyTopicConfigurations" : { + "description" : "Whether to periodically configure remote topics to match their corresponding upstream topics.", + "type" : "boolean" + }, + "CopyAccessControlListsForTopics" : { + "description" : "Whether to periodically configure remote topic ACLs to match their corresponding upstream topics.", + "type" : "boolean" + }, + "DetectAndCopyNewTopics" : { + "description" : "Whether to periodically check for new topics and partitions.", + "type" : "boolean" + } + }, + "required" : [ "TopicsToReplicate" ] + }, + "ConsumerGroupReplication" : { + "description" : "Configuration relating to consumer group replication.", + "type" : "object", + "additionalProperties" : false, + "properties" : { + "ConsumerGroupsToReplicate" : { + "description" : "List of regular expression patterns indicating the consumer groups to copy.", + "type" : "array", + "uniqueItems" : true, + "insertionOrder" : false, + "minItems" : 0, + "maxItems" : 100, + "items" : { + "type" : "string", + "maxLength" : 256 + } + }, + "ConsumerGroupsToExclude" : { + "description" : "List of regular expression patterns indicating the consumer groups that should not be replicated.", + "type" : "array", + "uniqueItems" : true, + "insertionOrder" : false, + "minItems" : 1, + "maxItems" : 100, + "items" : { + "type" : "string", + "maxLength" : 256 + } + }, + "SynchroniseConsumerGroupOffsets" : { + "description" : "Whether to periodically write the translated offsets to __consumer_offsets topic in target cluster.", + "type" : "boolean" + }, + "DetectAndCopyNewConsumerGroups" : { + "description" : "Whether to periodically check for new consumer groups.", + "type" : "boolean" + } + }, + "required" : [ "ConsumerGroupsToReplicate" ] + }, + "ReplicationInfo" : { + "description" : "Specifies configuration for replication between a source and target Kafka cluster.", + "type" : "object", + "additionalProperties" : false, + "properties" : { + "SourceKafkaClusterArn" : { + "description" : "Amazon Resource Name of the source Kafka cluster.", + "type" : "string", + "pattern" : "arn:(aws|aws-us-gov|aws-cn):kafka:.*" + }, + "TargetKafkaClusterArn" : { + "description" : "Amazon Resource Name of the target Kafka cluster.", + "type" : "string", + "pattern" : "arn:(aws|aws-us-gov|aws-cn):kafka:.*" + }, + "TargetCompressionType" : { + "description" : "The type of compression to use writing records to target Kafka cluster.", + "type" : "string", + "enum" : [ "NONE", "GZIP", "SNAPPY", "LZ4", "ZSTD" ] + }, + "TopicReplication" : { + "description" : "Configuration relating to topic replication.", + "$ref" : "#/definitions/TopicReplication" + }, + "ConsumerGroupReplication" : { + "description" : "Configuration relating to consumer group replication.", + "$ref" : "#/definitions/ConsumerGroupReplication" + } + }, + "required" : [ "SourceKafkaClusterArn", "TargetKafkaClusterArn", "TopicReplication", "ConsumerGroupReplication", "TargetCompressionType" ] + }, + "AmazonMskCluster" : { + "description" : "Details of an Amazon MSK cluster.", + "type" : "object", + "additionalProperties" : false, + "properties" : { + "MskClusterArn" : { + "description" : "The ARN of an Amazon MSK cluster.", + "type" : "string", + "pattern" : "arn:(aws|aws-us-gov|aws-cn):kafka:.*" + } + }, + "required" : [ "MskClusterArn" ] + }, + "KafkaClusterClientVpcConfig" : { + "description" : "Details of an Amazon VPC which has network connectivity to the Kafka cluster.", + "type" : "object", + "additionalProperties" : false, + "properties" : { + "SecurityGroupIds" : { + "description" : "The AWS security groups to associate with the elastic network interfaces in order to specify what the replicator has access to. If a security group is not specified, the default security group associated with the VPC is used.", + "type" : "array", + "uniqueItems" : true, + "insertionOrder" : false, + "minItems" : 1, + "maxItems" : 16, + "items" : { + "type" : "string" + } + }, + "SubnetIds" : { + "description" : "The list of subnets to connect to in the virtual private cloud (VPC). AWS creates elastic network interfaces inside these subnets.", + "type" : "array", + "uniqueItems" : true, + "insertionOrder" : false, + "minItems" : 2, + "maxItems" : 3, + "items" : { + "type" : "string" + } + } + }, + "required" : [ "SubnetIds" ] + }, + "KafkaCluster" : { + "description" : "Details of a Kafka cluster for replication.", + "type" : "object", + "additionalProperties" : false, + "properties" : { + "AmazonMskCluster" : { + "description" : "Details of an Amazon MSK cluster. Exactly one of AmazonMskCluster is required.", + "$ref" : "#/definitions/AmazonMskCluster" + }, + "VpcConfig" : { + "description" : "Details of an Amazon VPC which has network connectivity to the Apache Kafka cluster.", + "$ref" : "#/definitions/KafkaClusterClientVpcConfig" + } + }, + "required" : [ "AmazonMskCluster", "VpcConfig" ] + } + }, + "required" : [ "ReplicatorName", "ReplicationInfoList", "KafkaClusters", "ServiceExecutionRoleArn" ], + "primaryIdentifier" : [ "/properties/ReplicatorArn" ], + "additionalIdentifiers" : [ [ "/properties/ReplicatorName" ] ], + "readOnlyProperties" : [ "/properties/ReplicatorArn" ], + "createOnlyProperties" : [ "/properties/ReplicatorName", "/properties/Description", "/properties/KafkaClusters", "/properties/ServiceExecutionRoleArn" ], + "handlers" : { + "create" : { + "permissions" : [ "ec2:CreateNetworkInterface", "ec2:DescribeSecurityGroups", "ec2:DescribeSubnets", "ec2:DescribeVpcs", "iam:CreateServiceLinkedRole", "iam:PassRole", "kafka:CreateReplicator", "kafka:CreateReplicatorReference", "kafka:DescribeClusterV2", "kafka:DescribeReplicator", "kafka:GetBootstrapBrokers", "kafka:ListTagsForResource", "kafka:TagResource" ] + }, + "read" : { + "permissions" : [ "kafka:DescribeReplicator", "kafka:ListTagsForResource" ] + }, + "update" : { + "permissions" : [ "kafka:DescribeReplicator", "kafka:ListTagsForResource", "kafka:TagResource", "kafka:UntagResource", "kafka:UpdateReplicationInfo" ] + }, + "delete" : { + "permissions" : [ "kafka:DeleteReplicator", "kafka:DescribeReplicator", "kafka:ListTagsForResource", "kafka:UntagResource" ] + }, + "list" : { + "permissions" : [ "kafka:ListReplicators" ] + } + } +} \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-quicksight-analysis.json b/aws-cloudformation-schema/aws-quicksight-analysis.json index 232b96b63b..67bf5d7e48 100644 --- a/aws-cloudformation-schema/aws-quicksight-analysis.json +++ b/aws-cloudformation-schema/aws-quicksight-analysis.json @@ -9308,6 +9308,20 @@ "required" : [ "ComputationId" ], "additionalProperties" : false }, + "ValidationStrategy" : { + "type" : "object", + "properties" : { + "Mode" : { + "$ref" : "#/definitions/ValidationStrategyMode" + } + }, + "required" : [ "Mode" ], + "additionalProperties" : false + }, + "ValidationStrategyMode" : { + "type" : "string", + "enum" : [ "STRICT", "LENIENT" ] + }, "ValueWhenUnsetOption" : { "type" : "string", "enum" : [ "RECOMMENDED_VALUE", "NULL" ] @@ -9910,10 +9924,13 @@ }, "ThemeArn" : { "type" : "string" + }, + "ValidationStrategy" : { + "$ref" : "#/definitions/ValidationStrategy" } }, "readOnlyProperties" : [ "/properties/Arn", "/properties/CreatedTime", "/properties/DataSetArns", "/properties/Errors", "/properties/Sheets", "/properties/LastUpdatedTime" ], - "writeOnlyProperties" : [ "/properties/Definition", "/properties/Parameters", "/properties/SourceEntity", "/properties/LastUpdatedTime", "/properties/Status", "/properties/Sheets" ], + "writeOnlyProperties" : [ "/properties/Definition", "/properties/Parameters", "/properties/SourceEntity", "/properties/LastUpdatedTime", "/properties/Status", "/properties/Sheets", "/properties/ValidationStrategy" ], "createOnlyProperties" : [ "/properties/AnalysisId", "/properties/AwsAccountId" ], "primaryIdentifier" : [ "/properties/AnalysisId", "/properties/AwsAccountId" ], "handlers" : { diff --git a/aws-cloudformation-schema/aws-quicksight-dashboard.json b/aws-cloudformation-schema/aws-quicksight-dashboard.json index 905f196e45..77ac38ae97 100644 --- a/aws-cloudformation-schema/aws-quicksight-dashboard.json +++ b/aws-cloudformation-schema/aws-quicksight-dashboard.json @@ -9499,6 +9499,20 @@ "required" : [ "ComputationId" ], "additionalProperties" : false }, + "ValidationStrategy" : { + "type" : "object", + "properties" : { + "Mode" : { + "$ref" : "#/definitions/ValidationStrategyMode" + } + }, + "required" : [ "Mode" ], + "additionalProperties" : false + }, + "ValidationStrategyMode" : { + "type" : "string", + "enum" : [ "STRICT", "LENIENT" ] + }, "ValueWhenUnsetOption" : { "type" : "string", "enum" : [ "RECOMMENDED_VALUE", "NULL" ] @@ -10101,6 +10115,9 @@ "ThemeArn" : { "type" : "string" }, + "ValidationStrategy" : { + "$ref" : "#/definitions/ValidationStrategy" + }, "Version" : { "$ref" : "#/definitions/DashboardVersion" }, @@ -10112,7 +10129,7 @@ }, "required" : [ "AwsAccountId", "DashboardId", "Name" ], "readOnlyProperties" : [ "/properties/DashboardError", "/properties/Arn", "/properties/CreatedTime", "/properties/LastPublishedTime", "/properties/LastUpdatedTime", "/properties/Version" ], - "writeOnlyProperties" : [ "/properties/DashboardPublishOptions", "/properties/Definition", "/properties/Parameters", "/properties/SourceEntity", "/properties/ThemeArn", "/properties/VersionDescription", "/properties/CreatedTime", "/properties/LastUpdatedTime" ], + "writeOnlyProperties" : [ "/properties/DashboardPublishOptions", "/properties/Definition", "/properties/Parameters", "/properties/SourceEntity", "/properties/ThemeArn", "/properties/VersionDescription", "/properties/CreatedTime", "/properties/LastUpdatedTime", "/properties/ValidationStrategy" ], "createOnlyProperties" : [ "/properties/AwsAccountId", "/properties/DashboardId" ], "primaryIdentifier" : [ "/properties/AwsAccountId", "/properties/DashboardId" ], "handlers" : { diff --git a/aws-cloudformation-schema/aws-quicksight-template.json b/aws-cloudformation-schema/aws-quicksight-template.json index fec0d3387a..9b7d843238 100644 --- a/aws-cloudformation-schema/aws-quicksight-template.json +++ b/aws-cloudformation-schema/aws-quicksight-template.json @@ -9324,6 +9324,20 @@ "required" : [ "ComputationId" ], "additionalProperties" : false }, + "ValidationStrategy" : { + "type" : "object", + "properties" : { + "Mode" : { + "$ref" : "#/definitions/ValidationStrategyMode" + } + }, + "required" : [ "Mode" ], + "additionalProperties" : false + }, + "ValidationStrategyMode" : { + "type" : "string", + "enum" : [ "STRICT", "LENIENT" ] + }, "ValueWhenUnsetOption" : { "type" : "string", "enum" : [ "RECOMMENDED_VALUE", "NULL" ] @@ -9895,6 +9909,9 @@ "minLength" : 1, "pattern" : "[\\w\\-]+" }, + "ValidationStrategy" : { + "$ref" : "#/definitions/ValidationStrategy" + }, "Version" : { "$ref" : "#/definitions/TemplateVersion" }, @@ -9905,7 +9922,7 @@ } }, "readOnlyProperties" : [ "/properties/TemplateError", "/properties/Arn", "/properties/CreatedTime", "/properties/LastUpdatedTime", "/properties/Version" ], - "writeOnlyProperties" : [ "/properties/Definition", "/properties/VersionDescription", "/properties/SourceEntity", "/properties/CreatedTime", "/properties/Version", "/properties/LastUpdatedTime" ], + "writeOnlyProperties" : [ "/properties/Definition", "/properties/VersionDescription", "/properties/SourceEntity", "/properties/CreatedTime", "/properties/Version", "/properties/LastUpdatedTime", "/properties/ValidationStrategy" ], "createOnlyProperties" : [ "/properties/AwsAccountId", "/properties/TemplateId" ], "primaryIdentifier" : [ "/properties/AwsAccountId", "/properties/TemplateId" ], "handlers" : { diff --git a/aws-cloudformation-schema/aws-route53resolver-firewallrulegroup.json b/aws-cloudformation-schema/aws-route53resolver-firewallrulegroup.json index 9e33650b0e..79e37e6453 100644 --- a/aws-cloudformation-schema/aws-route53resolver-firewallrulegroup.json +++ b/aws-cloudformation-schema/aws-route53resolver-firewallrulegroup.json @@ -149,25 +149,32 @@ } } }, + "tagging" : { + "taggable" : true, + "tagOnCreate" : true, + "tagUpdatable" : true, + "cloudFormationSystemTags" : false, + "tagProperty" : "/properties/Tags" + }, "createOnlyProperties" : [ "/properties/Name" ], "readOnlyProperties" : [ "/properties/Id", "/properties/Arn", "/properties/RuleCount", "/properties/Status", "/properties/StatusMessage", "/properties/OwnerId", "/properties/ShareStatus", "/properties/CreatorRequestId", "/properties/CreationTime", "/properties/ModificationTime" ], "primaryIdentifier" : [ "/properties/Id" ], "additionalProperties" : false, "handlers" : { "create" : { - "permissions" : [ "route53resolver:CreateFirewallRuleGroup", "route53resolver:CreateFirewallRule", "route53resolver:TagResource" ] + "permissions" : [ "route53resolver:*", "ec2:*", "logs:*", "iam:*", "lambda:*", "s3:*" ] }, "read" : { - "permissions" : [ "route53resolver:GetFirewallRuleGroup", "route53resolver:ListFirewallRules", "route53resolver:ListTagsForResource" ] + "permissions" : [ "route53resolver:*", "ec2:*", "logs:*", "iam:*", "lambda:*", "s3:*" ] }, "list" : { - "permissions" : [ "route53resolver:ListFirewallRules", "route53resolver:GetFirewallRuleGroup", "route53resolver:TagResource" ] + "permissions" : [ "route53resolver:*", "ec2:*", "logs:*", "iam:*", "lambda:*", "s3:*" ] }, "delete" : { - "permissions" : [ "route53resolver:DeleteFirewallRuleGroup", "route53resolver:DeleteFirewallRule", "route53resolver:UntagResource" ] + "permissions" : [ "route53resolver:*", "ec2:*", "logs:*", "iam:*", "lambda:*", "s3:*" ] }, "update" : { - "permissions" : [ "route53resolver:CreateFirewallRule", "route53resolver:DeleteFirewallRule", "route53resolver:UpdateFirewallRule", "route53resolver:TagResource", "route53resolver:UntagResource" ] + "permissions" : [ "route53resolver:*", "ec2:*", "logs:*", "iam:*", "lambda:*", "s3:*" ] } } } \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-route53resolver-firewallrulegroupassociation.json b/aws-cloudformation-schema/aws-route53resolver-firewallrulegroupassociation.json index 2455d3dde9..c833965026 100644 --- a/aws-cloudformation-schema/aws-route53resolver-firewallrulegroupassociation.json +++ b/aws-cloudformation-schema/aws-route53resolver-firewallrulegroupassociation.json @@ -107,6 +107,13 @@ } } }, + "tagging" : { + "taggable" : true, + "tagOnCreate" : true, + "tagUpdatable" : true, + "cloudFormationSystemTags" : false, + "tagProperty" : "/properties/Tags" + }, "required" : [ "FirewallRuleGroupId", "VpcId", "Priority" ], "primaryIdentifier" : [ "/properties/Id" ], "createOnlyProperties" : [ "/properties/FirewallRuleGroupId", "/properties/VpcId" ], @@ -114,19 +121,19 @@ "additionalProperties" : false, "handlers" : { "create" : { - "permissions" : [ "route53resolver:AssociateFirewallRuleGroup", "route53resolver:TagResource" ] + "permissions" : [ "route53resolver:*", "ec2:*", "logs:*", "iam:*", "lambda:*", "s3:*" ] }, "read" : { - "permissions" : [ "route53resolver:GetFirewallRuleGroupAssociation", "route53resolver:ListTagsForResource" ] + "permissions" : [ "route53resolver:*", "ec2:*", "logs:*", "iam:*", "lambda:*", "s3:*" ] }, "list" : { - "permissions" : [ "route53resolver:ListFirewallRuleGroupAssocations", "route53resolver:GetFirewallRuleGroupAssociation", "route53resolver:ListTagsForResource" ] + "permissions" : [ "route53resolver:*", "ec2:*", "logs:*", "iam:*", "lambda:*", "s3:*" ] }, "delete" : { - "permissions" : [ "route53resolver:DisassociateFirewallRuleGroup", "route53resolver:UntagResource" ] + "permissions" : [ "route53resolver:*", "ec2:*", "logs:*", "iam:*", "lambda:*", "s3:*" ] }, "update" : { - "permissions" : [ "route53resolver:UpdateFirewallRuleGroupAssociation", "route53resolver:TagResource", "route53resolver:UntagResource" ] + "permissions" : [ "route53resolver:*", "ec2:*", "logs:*", "iam:*", "lambda:*", "s3:*" ] } } } \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-s3-bucket.json b/aws-cloudformation-schema/aws-s3-bucket.json index f32d2a6649..206cd2f3ee 100644 --- a/aws-cloudformation-schema/aws-s3-bucket.json +++ b/aws-cloudformation-schema/aws-s3-bucket.json @@ -3,266 +3,290 @@ "description" : "Resource Type definition for AWS::S3::Bucket", "additionalProperties" : false, "properties" : { - "AccelerateConfiguration" : { - "$ref" : "#/definitions/AccelerateConfiguration", - "description" : "Configuration for the transfer acceleration state." - }, - "AccessControl" : { - "description" : "A canned access control list (ACL) that grants predefined permissions to the bucket.", - "enum" : [ "AuthenticatedRead", "AwsExecRead", "BucketOwnerFullControl", "BucketOwnerRead", "LogDeliveryWrite", "Private", "PublicRead", "PublicReadWrite" ], - "type" : "string" - }, - "AnalyticsConfigurations" : { - "description" : "The configuration and any analyses for the analytics filter of an Amazon S3 bucket.", - "items" : { - "$ref" : "#/definitions/AnalyticsConfiguration" - }, + "InventoryConfigurations" : { "type" : "array", "uniqueItems" : true, - "insertionOrder" : true + "items" : { + "$ref" : "#/definitions/InventoryConfiguration" + } }, - "BucketEncryption" : { - "$ref" : "#/definitions/BucketEncryption" + "WebsiteConfiguration" : { + "$ref" : "#/definitions/WebsiteConfiguration" }, - "BucketName" : { - "description" : "A name for the bucket. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name.", - "maxLength" : 63, - "minLength" : 3, - "pattern" : "^[a-z0-9][a-z0-9//.//-]*[a-z0-9]$", + "DualStackDomainName" : { "type" : "string" }, - "CorsConfiguration" : { - "$ref" : "#/definitions/CorsConfiguration", - "description" : "Rules that define cross-origin resource sharing of objects in this bucket." + "AccessControl" : { + "type" : "string" }, - "IntelligentTieringConfigurations" : { - "description" : "Specifies the S3 Intelligent-Tiering configuration for an Amazon S3 bucket.", - "items" : { - "$ref" : "#/definitions/IntelligentTieringConfiguration" - }, + "AnalyticsConfigurations" : { "type" : "array", "uniqueItems" : true, - "insertionOrder" : true - }, - "InventoryConfigurations" : { - "description" : "The inventory configuration for an Amazon S3 bucket.", "items" : { - "$ref" : "#/definitions/InventoryConfiguration" - }, - "type" : "array", - "uniqueItems" : true, - "insertionOrder" : true + "$ref" : "#/definitions/AnalyticsConfiguration" + } }, - "LifecycleConfiguration" : { - "$ref" : "#/definitions/LifecycleConfiguration", - "description" : "Rules that define how Amazon S3 manages objects during their lifetime." + "AccelerateConfiguration" : { + "$ref" : "#/definitions/AccelerateConfiguration" }, - "LoggingConfiguration" : { - "$ref" : "#/definitions/LoggingConfiguration", - "description" : "Settings that define where logs are stored." + "PublicAccessBlockConfiguration" : { + "$ref" : "#/definitions/PublicAccessBlockConfiguration" }, - "MetricsConfigurations" : { - "description" : "Settings that define a metrics configuration for the CloudWatch request metrics from the bucket.", - "items" : { - "$ref" : "#/definitions/MetricsConfiguration" - }, - "type" : "array", - "uniqueItems" : true, - "insertionOrder" : true + "BucketName" : { + "type" : "string" }, - "NotificationConfiguration" : { - "$ref" : "#/definitions/NotificationConfiguration", - "description" : "Configuration that defines how Amazon S3 handles bucket notifications." + "RegionalDomainName" : { + "type" : "string" + }, + "OwnershipControls" : { + "$ref" : "#/definitions/OwnershipControls" }, "ObjectLockConfiguration" : { - "$ref" : "#/definitions/ObjectLockConfiguration", - "description" : "Places an Object Lock configuration on the specified bucket." + "$ref" : "#/definitions/ObjectLockConfiguration" }, "ObjectLockEnabled" : { - "description" : "Indicates whether this bucket has an Object Lock configuration enabled.", "type" : "boolean" }, - "OwnershipControls" : { - "description" : "Specifies the container element for object ownership rules.", - "$ref" : "#/definitions/OwnershipControls" - }, - "PublicAccessBlockConfiguration" : { - "$ref" : "#/definitions/PublicAccessBlockConfiguration" + "LoggingConfiguration" : { + "$ref" : "#/definitions/LoggingConfiguration" }, "ReplicationConfiguration" : { - "$ref" : "#/definitions/ReplicationConfiguration", - "description" : "Configuration for replicating objects in an S3 bucket." + "$ref" : "#/definitions/ReplicationConfiguration" }, "Tags" : { - "description" : "An arbitrary set of tags (key-value pairs) for this S3 bucket.", - "insertionOrder" : false, + "type" : "array", + "uniqueItems" : false, "items" : { "$ref" : "#/definitions/Tag" - }, - "type" : "array" + } + }, + "DomainName" : { + "type" : "string" + }, + "BucketEncryption" : { + "$ref" : "#/definitions/BucketEncryption" + }, + "WebsiteURL" : { + "type" : "string" + }, + "NotificationConfiguration" : { + "$ref" : "#/definitions/NotificationConfiguration" + }, + "LifecycleConfiguration" : { + "$ref" : "#/definitions/LifecycleConfiguration" }, "VersioningConfiguration" : { "$ref" : "#/definitions/VersioningConfiguration" }, - "WebsiteConfiguration" : { - "$ref" : "#/definitions/WebsiteConfiguration" - }, - "Arn" : { - "$ref" : "#/definitions/Arn", - "description" : "The Amazon Resource Name (ARN) of the specified bucket.", - "examples" : [ "arn:aws:s3:::mybucket" ] + "MetricsConfigurations" : { + "type" : "array", + "uniqueItems" : true, + "items" : { + "$ref" : "#/definitions/MetricsConfiguration" + } }, - "DomainName" : { - "description" : "The IPv4 DNS name of the specified bucket.", - "examples" : [ "mystack-mybucket-kdwwxmddtr2g.s3.amazonaws.com" ], - "type" : "string" + "IntelligentTieringConfigurations" : { + "type" : "array", + "uniqueItems" : true, + "items" : { + "$ref" : "#/definitions/IntelligentTieringConfiguration" + } }, - "DualStackDomainName" : { - "description" : "The IPv6 DNS name of the specified bucket. For more information about dual-stack endpoints, see [Using Amazon S3 Dual-Stack Endpoints](https://docs.aws.amazon.com/AmazonS3/latest/dev/dual-stack-endpoints.html).", - "examples" : [ "mystack-mybucket-kdwwxmddtr2g.s3.dualstack.us-east-2.amazonaws.com" ], - "type" : "string" + "CorsConfiguration" : { + "$ref" : "#/definitions/CorsConfiguration" }, - "RegionalDomainName" : { - "description" : "Returns the regional domain name of the specified bucket.", - "examples" : [ "mystack-mybucket-kdwwxmddtr2g.s3.us-east-2.amazonaws.com" ], + "Id" : { "type" : "string" }, - "WebsiteURL" : { - "description" : "The Amazon S3 website endpoint for the specified bucket.", - "examples" : [ "Example (IPv4): http://mystack-mybucket-kdwwxmddtr2g.s3-website-us-east-2.amazonaws.com/", "Example (IPv6): http://mystack-mybucket-kdwwxmddtr2g.s3.dualstack.us-east-2.amazonaws.com/" ], - "format" : "uri", + "Arn" : { "type" : "string" } }, "definitions" : { - "TagFilter" : { - "description" : "Tags to use to identify a subset of objects for an Amazon S3 bucket.", + "DefaultRetention" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "Years" : { + "type" : "integer" + }, + "Days" : { + "type" : "integer" + }, + "Mode" : { + "type" : "string" + } + } + }, + "SourceSelectionCriteria" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "ReplicaModifications" : { + "$ref" : "#/definitions/ReplicaModifications" + }, + "SseKmsEncryptedObjects" : { + "$ref" : "#/definitions/SseKmsEncryptedObjects" + } + } + }, + "ReplicationTimeValue" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "Minutes" : { + "type" : "integer" + } + }, + "required" : [ "Minutes" ] + }, + "FilterRule" : { "type" : "object", "additionalProperties" : false, "properties" : { "Value" : { "type" : "string" }, - "Key" : { + "Name" : { "type" : "string" } }, - "required" : [ "Value", "Key" ] + "required" : [ "Value", "Name" ] }, - "Destination" : { - "description" : "Specifies information about where to publish analysis or configuration results for an Amazon S3 bucket and S3 Replication Time Control (S3 RTC).", + "ReplicationRule" : { "type" : "object", "additionalProperties" : false, "properties" : { - "BucketArn" : { - "description" : "The Amazon Resource Name (ARN) of the bucket to which data is exported.", + "Status" : { "type" : "string" }, - "BucketAccountId" : { - "description" : "The account ID that owns the destination S3 bucket. ", - "type" : "string" + "Destination" : { + "$ref" : "#/definitions/ReplicationDestination" }, - "Format" : { - "description" : "Specifies the file format used when exporting data to Amazon S3.", - "type" : "string", - "enum" : [ "CSV", "ORC", "Parquet" ] + "Filter" : { + "$ref" : "#/definitions/ReplicationRuleFilter" + }, + "Priority" : { + "type" : "integer" + }, + "SourceSelectionCriteria" : { + "$ref" : "#/definitions/SourceSelectionCriteria" + }, + "Id" : { + "type" : "string" }, "Prefix" : { - "description" : "The prefix to use when exporting data. The prefix is prepended to all results.", "type" : "string" + }, + "DeleteMarkerReplication" : { + "$ref" : "#/definitions/DeleteMarkerReplication" } }, - "required" : [ "BucketArn", "Format" ] + "required" : [ "Status", "Destination" ] }, "AccelerateConfiguration" : { "type" : "object", "additionalProperties" : false, "properties" : { "AccelerationStatus" : { - "description" : "Configures the transfer acceleration state for an Amazon S3 bucket.", - "type" : "string", - "enum" : [ "Enabled", "Suspended" ] + "type" : "string" } }, "required" : [ "AccelerationStatus" ] }, - "AnalyticsConfiguration" : { - "description" : "Specifies the configuration and any analyses for the analytics filter of an Amazon S3 bucket.", + "Metrics" : { "type" : "object", "additionalProperties" : false, "properties" : { - "TagFilters" : { + "Status" : { + "type" : "string" + }, + "EventThreshold" : { + "$ref" : "#/definitions/ReplicationTimeValue" + } + }, + "required" : [ "Status" ] + }, + "RoutingRuleCondition" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "KeyPrefixEquals" : { + "type" : "string" + }, + "HttpErrorCodeReturnedEquals" : { + "type" : "string" + } + } + }, + "OwnershipControls" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "Rules" : { "type" : "array", "uniqueItems" : true, - "insertionOrder" : true, "items" : { - "$ref" : "#/definitions/TagFilter" + "$ref" : "#/definitions/OwnershipControlsRule" } + } + }, + "required" : [ "Rules" ] + }, + "RoutingRule" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "RedirectRule" : { + "$ref" : "#/definitions/RedirectRule" }, - "StorageClassAnalysis" : { - "$ref" : "#/definitions/StorageClassAnalysis" - }, - "Id" : { - "description" : "The ID that identifies the analytics configuration.", - "type" : "string" - }, - "Prefix" : { - "description" : "The prefix that an object must have to be included in the analytics results.", - "type" : "string" + "RoutingRuleCondition" : { + "$ref" : "#/definitions/RoutingRuleCondition" } }, - "required" : [ "StorageClassAnalysis", "Id" ] + "required" : [ "RedirectRule" ] }, - "StorageClassAnalysis" : { - "description" : "Specifies data related to access patterns to be collected and made available to analyze the tradeoffs between different storage classes for an Amazon S3 bucket.", + "DeleteMarkerReplication" : { "type" : "object", "additionalProperties" : false, "properties" : { - "DataExport" : { - "$ref" : "#/definitions/DataExport" + "Status" : { + "type" : "string" } } }, - "DataExport" : { - "description" : "Specifies how data related to the storage class analysis for an Amazon S3 bucket should be exported.", + "NotificationFilter" : { "type" : "object", "additionalProperties" : false, "properties" : { - "Destination" : { - "$ref" : "#/definitions/Destination" - }, - "OutputSchemaVersion" : { - "description" : "The version of the output schema to use when exporting data.", - "type" : "string", - "const" : "V_1" + "S3Key" : { + "$ref" : "#/definitions/S3KeyFilter" } }, - "required" : [ "Destination", "OutputSchemaVersion" ] + "required" : [ "S3Key" ] }, - "BucketEncryption" : { - "description" : "Specifies default encryption for a bucket using server-side encryption with either Amazon S3-managed keys (SSE-S3) or AWS KMS-managed keys (SSE-KMS).", + "ReplicationConfiguration" : { "type" : "object", "additionalProperties" : false, "properties" : { - "ServerSideEncryptionConfiguration" : { - "description" : "Specifies the default server-side-encryption configuration.", + "Role" : { + "type" : "string" + }, + "Rules" : { "type" : "array", "uniqueItems" : true, - "insertionOrder" : true, "items" : { - "$ref" : "#/definitions/ServerSideEncryptionRule" + "$ref" : "#/definitions/ReplicationRule" } } }, - "required" : [ "ServerSideEncryptionConfiguration" ] + "required" : [ "Role", "Rules" ] }, "ServerSideEncryptionRule" : { - "description" : "Specifies the default server-side encryption configuration.", "type" : "object", "additionalProperties" : false, "properties" : { "BucketKeyEnabled" : { - "description" : "Specifies whether Amazon S3 should use an S3 Bucket Key with server-side encryption using KMS (SSE-KMS) for new objects in the bucket. Existing objects are not affected. Setting the BucketKeyEnabled element to true causes Amazon S3 to use an S3 Bucket Key. By default, S3 Bucket Key is not enabled.", "type" : "boolean" }, "ServerSideEncryptionByDefault" : { @@ -270,239 +294,145 @@ } } }, - "ServerSideEncryptionByDefault" : { - "description" : "Specifies the default server-side encryption to apply to new objects in the bucket. If a PUT Object request doesn't specify any server-side encryption, this default encryption will be applied.", + "ReplicationDestination" : { "type" : "object", + "additionalProperties" : false, "properties" : { - "KMSMasterKeyID" : { - "description" : "\"KMSMasterKeyID\" can only be used when you set the value of SSEAlgorithm as aws:kms or aws:kms:dsse.", + "AccessControlTranslation" : { + "$ref" : "#/definitions/AccessControlTranslation" + }, + "Account" : { "type" : "string" }, - "SSEAlgorithm" : { - "type" : "string", - "enum" : [ "aws:kms", "AES256", "aws:kms:dsse" ] + "Metrics" : { + "$ref" : "#/definitions/Metrics" + }, + "Bucket" : { + "type" : "string" + }, + "EncryptionConfiguration" : { + "$ref" : "#/definitions/EncryptionConfiguration" + }, + "StorageClass" : { + "type" : "string" + }, + "ReplicationTime" : { + "$ref" : "#/definitions/ReplicationTime" } }, + "required" : [ "Bucket" ] + }, + "OwnershipControlsRule" : { + "type" : "object", "additionalProperties" : false, - "required" : [ "SSEAlgorithm" ] + "properties" : { + "ObjectOwnership" : { + "type" : "string" + } + } }, - "CorsConfiguration" : { + "EventBridgeConfiguration" : { "type" : "object", "additionalProperties" : false, "properties" : { - "CorsRules" : { - "type" : "array", - "uniqueItems" : true, - "insertionOrder" : true, - "items" : { - "$ref" : "#/definitions/CorsRule", - "maxLength" : 100 - } + "EventBridgeEnabled" : { + "type" : "boolean" } - }, - "required" : [ "CorsRules" ] + } }, "CorsRule" : { "type" : "object", - "description" : "A set of origins and methods (cross-origin access that you want to allow). You can add up to 100 rules to the configuration.", "additionalProperties" : false, "properties" : { - "AllowedHeaders" : { - "description" : "Headers that are specified in the Access-Control-Request-Headers header.", + "ExposedHeaders" : { "type" : "array", "uniqueItems" : true, - "insertionOrder" : true, "items" : { "type" : "string" } }, "AllowedMethods" : { - "description" : "An HTTP method that you allow the origin to execute.", "type" : "array", "uniqueItems" : true, - "insertionOrder" : true, "items" : { - "type" : "string", - "enum" : [ "GET", "PUT", "HEAD", "POST", "DELETE" ] + "type" : "string" } }, "AllowedOrigins" : { - "description" : "One or more origins you want customers to be able to access the bucket from.", "type" : "array", "uniqueItems" : true, - "insertionOrder" : true, "items" : { "type" : "string" } }, - "ExposedHeaders" : { - "description" : "One or more headers in the response that you want customers to be able to access from their applications (for example, from a JavaScript XMLHttpRequest object).", + "AllowedHeaders" : { "type" : "array", "uniqueItems" : true, - "insertionOrder" : true, "items" : { "type" : "string" } }, - "Id" : { - "description" : "A unique identifier for this rule.", - "type" : "string", - "maxLength" : 255 - }, "MaxAge" : { - "description" : "The time in seconds that your browser is to cache the preflight response for the specified resource.", - "type" : "integer", - "minimum" : 0 + "type" : "integer" + }, + "Id" : { + "type" : "string" } }, "required" : [ "AllowedMethods", "AllowedOrigins" ] }, - "IntelligentTieringConfiguration" : { + "AccessControlTranslation" : { "type" : "object", "additionalProperties" : false, "properties" : { - "Id" : { - "description" : "The ID used to identify the S3 Intelligent-Tiering configuration.", - "type" : "string" - }, - "Prefix" : { - "description" : "An object key name prefix that identifies the subset of objects to which the rule applies.", + "Owner" : { "type" : "string" - }, - "Status" : { - "description" : "Specifies the status of the configuration.", - "type" : "string", - "enum" : [ "Disabled", "Enabled" ] - }, - "TagFilters" : { - "description" : "A container for a key-value pair.", - "type" : "array", - "uniqueItems" : true, - "insertionOrder" : true, - "items" : { - "$ref" : "#/definitions/TagFilter" - } - }, - "Tierings" : { - "description" : "Specifies a list of S3 Intelligent-Tiering storage class tiers in the configuration. At least one tier must be defined in the list. At most, you can specify two tiers in the list, one for each available AccessTier: ARCHIVE_ACCESS and DEEP_ARCHIVE_ACCESS.", - "type" : "array", - "uniqueItems" : true, - "insertionOrder" : true, - "items" : { - "$ref" : "#/definitions/Tiering" - } } }, - "required" : [ "Id", "Status", "Tierings" ] + "required" : [ "Owner" ] }, - "Tiering" : { + "ObjectLockRule" : { "type" : "object", "additionalProperties" : false, "properties" : { - "AccessTier" : { - "description" : "S3 Intelligent-Tiering access tier. See Storage class for automatically optimizing frequently and infrequently accessed objects for a list of access tiers in the S3 Intelligent-Tiering storage class.", - "type" : "string", - "enum" : [ "ARCHIVE_ACCESS", "DEEP_ARCHIVE_ACCESS" ] - }, - "Days" : { - "description" : "The number of consecutive days of no access after which an object will be eligible to be transitioned to the corresponding tier. The minimum number of days specified for Archive Access tier must be at least 90 days and Deep Archive Access tier must be at least 180 days. The maximum can be up to 2 years (730 days).", - "type" : "integer" + "DefaultRetention" : { + "$ref" : "#/definitions/DefaultRetention" } - }, - "required" : [ "AccessTier", "Days" ] + } }, - "InventoryConfiguration" : { + "Rule" : { "type" : "object", "additionalProperties" : false, "properties" : { - "Destination" : { - "$ref" : "#/definitions/Destination" + "Status" : { + "type" : "string" }, - "Enabled" : { - "description" : "Specifies whether the inventory is enabled or disabled.", + "ExpiredObjectDeleteMarker" : { "type" : "boolean" }, - "Id" : { - "description" : "The ID used to identify the inventory configuration.", - "type" : "string" - }, - "IncludedObjectVersions" : { - "description" : "Object versions to include in the inventory list.", - "type" : "string", - "enum" : [ "All", "Current" ] + "NoncurrentVersionExpirationInDays" : { + "type" : "integer" }, - "OptionalFields" : { - "description" : "Contains the optional fields that are included in the inventory results.", + "Transitions" : { "type" : "array", "uniqueItems" : true, - "insertionOrder" : true, "items" : { - "type" : "string", - "enum" : [ "Size", "LastModifiedDate", "StorageClass", "ETag", "IsMultipartUploaded", "ReplicationStatus", "EncryptionStatus", "ObjectLockRetainUntilDate", "ObjectLockMode", "ObjectLockLegalHoldStatus", "IntelligentTieringAccessTier", "BucketKeyStatus" ] + "$ref" : "#/definitions/Transition" } }, - "Prefix" : { - "description" : "The prefix that is prepended to all inventory results.", - "type" : "string" + "ObjectSizeGreaterThan" : { + "type" : "integer" }, - "ScheduleFrequency" : { - "description" : "Specifies the schedule for generating inventory results.", - "type" : "string", - "enum" : [ "Daily", "Weekly" ] - } - }, - "required" : [ "Destination", "Enabled", "Id", "IncludedObjectVersions", "ScheduleFrequency" ] - }, - "LifecycleConfiguration" : { - "type" : "object", - "additionalProperties" : false, - "properties" : { - "Rules" : { - "description" : "A lifecycle rule for individual objects in an Amazon S3 bucket.", + "TagFilters" : { "type" : "array", "uniqueItems" : true, - "insertionOrder" : true, "items" : { - "$ref" : "#/definitions/Rule" + "$ref" : "#/definitions/TagFilter" } - } - }, - "required" : [ "Rules" ] - }, - "Rule" : { - "type" : "object", - "description" : "You must specify at least one of the following properties: AbortIncompleteMultipartUpload, ExpirationDate, ExpirationInDays, NoncurrentVersionExpirationInDays, NoncurrentVersionTransition, NoncurrentVersionTransitions, Transition, or Transitions.", - "additionalProperties" : false, - "properties" : { - "AbortIncompleteMultipartUpload" : { - "$ref" : "#/definitions/AbortIncompleteMultipartUpload" - }, - "ExpirationDate" : { - "$ref" : "#/definitions/iso8601UTC" - }, - "ExpirationInDays" : { - "type" : "integer" - }, - "ExpiredObjectDeleteMarker" : { - "type" : "boolean" - }, - "Id" : { - "type" : "string", - "maxLength" : 255 - }, - "NoncurrentVersionExpirationInDays" : { - "type" : "integer" - }, - "NoncurrentVersionExpiration" : { - "$ref" : "#/definitions/NoncurrentVersionExpiration" - }, - "NoncurrentVersionTransition" : { - "$ref" : "#/definitions/NoncurrentVersionTransition" }, "NoncurrentVersionTransitions" : { "type" : "array", "uniqueItems" : true, - "insertionOrder" : true, "items" : { "$ref" : "#/definitions/NoncurrentVersionTransition" } @@ -510,547 +440,334 @@ "Prefix" : { "type" : "string" }, - "Status" : { - "type" : "string", - "enum" : [ "Enabled", "Disabled" ] + "ObjectSizeLessThan" : { + "type" : "integer" }, - "TagFilters" : { - "type" : "array", - "uniqueItems" : true, - "insertionOrder" : true, - "items" : { - "$ref" : "#/definitions/TagFilter" - } + "NoncurrentVersionTransition" : { + "$ref" : "#/definitions/NoncurrentVersionTransition" }, - "ObjectSizeGreaterThan" : { - "type" : "string", - "maxLength" : 20, - "pattern" : "[0-9]+" + "ExpirationDate" : { + "type" : "string" }, - "ObjectSizeLessThan" : { - "type" : "string", - "maxLength" : 20, - "pattern" : "[0-9]+" + "NoncurrentVersionExpiration" : { + "$ref" : "#/definitions/NoncurrentVersionExpiration" + }, + "ExpirationInDays" : { + "type" : "integer" }, "Transition" : { "$ref" : "#/definitions/Transition" }, - "Transitions" : { - "type" : "array", - "uniqueItems" : true, - "insertionOrder" : true, - "items" : { - "$ref" : "#/definitions/Transition" - } + "Id" : { + "type" : "string" + }, + "AbortIncompleteMultipartUpload" : { + "$ref" : "#/definitions/AbortIncompleteMultipartUpload" } }, "required" : [ "Status" ] }, - "AbortIncompleteMultipartUpload" : { - "description" : "Specifies the days since the initiation of an incomplete multipart upload that Amazon S3 will wait before permanently removing all parts of the upload.", + "S3KeyFilter" : { "type" : "object", "additionalProperties" : false, "properties" : { - "DaysAfterInitiation" : { - "description" : "Specifies the number of days after which Amazon S3 aborts an incomplete multipart upload.", - "type" : "integer", - "minimum" : 0 + "Rules" : { + "type" : "array", + "uniqueItems" : true, + "items" : { + "$ref" : "#/definitions/FilterRule" + } } }, - "required" : [ "DaysAfterInitiation" ] - }, - "iso8601UTC" : { - "description" : "The date value in ISO 8601 format. The timezone is always UTC. (YYYY-MM-DDThh:mm:ssZ)", - "type" : "string", - "pattern" : "^([0-2]\\d{3})-(0[0-9]|1[0-2])-([0-2]\\d|3[01])T([01]\\d|2[0-4]):([0-5]\\d):([0-6]\\d)((\\.\\d{3})?)Z$" + "required" : [ "Rules" ] }, - "NoncurrentVersionExpiration" : { + "AnalyticsConfiguration" : { "type" : "object", - "description" : "Container for the expiration rule that describes when noncurrent objects are expired. If your bucket is versioning-enabled (or versioning is suspended), you can set this action to request that Amazon S3 expire noncurrent object versions at a specific period in the object's lifetime", "additionalProperties" : false, "properties" : { - "NoncurrentDays" : { - "description" : "Specified the number of days an object is noncurrent before Amazon S3 can perform the associated action", - "type" : "integer" + "TagFilters" : { + "type" : "array", + "uniqueItems" : true, + "items" : { + "$ref" : "#/definitions/TagFilter" + } }, - "NewerNoncurrentVersions" : { - "description" : "Specified the number of newer noncurrent and current versions that must exists before performing the associated action", - "type" : "integer" + "StorageClassAnalysis" : { + "$ref" : "#/definitions/StorageClassAnalysis" + }, + "Id" : { + "type" : "string" + }, + "Prefix" : { + "type" : "string" } }, - "required" : [ "NoncurrentDays" ] + "required" : [ "StorageClassAnalysis", "Id" ] }, - "NoncurrentVersionTransition" : { + "Destination" : { "type" : "object", - "description" : "Container for the transition rule that describes when noncurrent objects transition to the STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER_IR, GLACIER, or DEEP_ARCHIVE storage class. If your bucket is versioning-enabled (or versioning is suspended), you can set this action to request that Amazon S3 transition noncurrent object versions to the STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER_IR, GLACIER, or DEEP_ARCHIVE storage class at a specific period in the object's lifetime.", "additionalProperties" : false, "properties" : { - "StorageClass" : { - "description" : "The class of storage used to store the object.", - "type" : "string", - "enum" : [ "DEEP_ARCHIVE", "GLACIER", "Glacier", "GLACIER_IR", "INTELLIGENT_TIERING", "ONEZONE_IA", "STANDARD_IA" ] + "BucketArn" : { + "type" : "string" }, - "TransitionInDays" : { - "description" : "Specifies the number of days an object is noncurrent before Amazon S3 can perform the associated action.", - "type" : "integer" + "BucketAccountId" : { + "type" : "string" }, - "NewerNoncurrentVersions" : { - "description" : "Specified the number of newer noncurrent and current versions that must exists before performing the associated action", - "type" : "integer" + "Format" : { + "type" : "string" + }, + "Prefix" : { + "type" : "string" } }, - "required" : [ "StorageClass", "TransitionInDays" ] + "required" : [ "BucketArn", "Format" ] }, - "Transition" : { + "RedirectAllRequestsTo" : { "type" : "object", + "additionalProperties" : false, "properties" : { - "StorageClass" : { - "type" : "string", - "enum" : [ "DEEP_ARCHIVE", "GLACIER", "Glacier", "GLACIER_IR", "INTELLIGENT_TIERING", "ONEZONE_IA", "STANDARD_IA" ] - }, - "TransitionDate" : { - "$ref" : "#/definitions/iso8601UTC" + "Protocol" : { + "type" : "string" }, - "TransitionInDays" : { - "type" : "integer" + "HostName" : { + "type" : "string" } }, - "additionalProperties" : false, - "description" : "You must specify at least one of \"TransitionDate\" and \"TransitionInDays\"", - "required" : [ "StorageClass" ] + "required" : [ "HostName" ] }, - "LoggingConfiguration" : { + "TagFilter" : { "type" : "object", + "additionalProperties" : false, "properties" : { - "DestinationBucketName" : { - "type" : "string", - "description" : "The name of an Amazon S3 bucket where Amazon S3 store server access log files. You can store log files in any bucket that you own. By default, logs are stored in the bucket where the LoggingConfiguration property is defined." + "Value" : { + "type" : "string" }, - "LogFilePrefix" : { + "Key" : { "type" : "string" } }, - "additionalProperties" : false + "required" : [ "Value", "Key" ] }, - "MetricsConfiguration" : { + "WebsiteConfiguration" : { "type" : "object", "additionalProperties" : false, "properties" : { - "AccessPointArn" : { - "type" : "string" - }, - "Id" : { - "type" : "string" - }, - "Prefix" : { - "type" : "string" - }, - "TagFilters" : { + "RoutingRules" : { "type" : "array", "uniqueItems" : true, - "insertionOrder" : true, "items" : { - "$ref" : "#/definitions/TagFilter" + "$ref" : "#/definitions/RoutingRule" } - } - }, - "required" : [ "Id" ] - }, - "NotificationConfiguration" : { - "description" : "Describes the notification configuration for an Amazon S3 bucket.", - "type" : "object", - "additionalProperties" : false, - "properties" : { - "EventBridgeConfiguration" : { - "$ref" : "#/definitions/EventBridgeConfiguration" }, - "LambdaConfigurations" : { - "type" : "array", - "uniqueItems" : true, - "insertionOrder" : true, - "items" : { - "$ref" : "#/definitions/LambdaConfiguration" - } + "IndexDocument" : { + "type" : "string" }, - "QueueConfigurations" : { - "type" : "array", - "uniqueItems" : true, - "insertionOrder" : true, - "items" : { - "$ref" : "#/definitions/QueueConfiguration" - } + "RedirectAllRequestsTo" : { + "$ref" : "#/definitions/RedirectAllRequestsTo" }, - "TopicConfigurations" : { - "type" : "array", - "uniqueItems" : true, - "insertionOrder" : true, - "items" : { - "$ref" : "#/definitions/TopicConfiguration" - } + "ErrorDocument" : { + "type" : "string" } } }, - "EventBridgeConfiguration" : { - "type" : "object", - "description" : "Describes the Amazon EventBridge notification configuration for an Amazon S3 bucket.", - "additionalProperties" : false, - "properties" : { - "EventBridgeEnabled" : { - "description" : "Specifies whether to send notifications to Amazon EventBridge when events occur in an Amazon S3 bucket.", - "type" : "boolean", - "default" : "true" - } - }, - "required" : [ "EventBridgeEnabled" ] - }, - "LambdaConfiguration" : { + "TopicConfiguration" : { "type" : "object", - "description" : "Describes the AWS Lambda functions to invoke and the events for which to invoke them.", "additionalProperties" : false, "properties" : { "Event" : { - "description" : "The Amazon S3 bucket event for which to invoke the AWS Lambda function.", "type" : "string" }, - "Filter" : { - "description" : "The filtering rules that determine which objects invoke the AWS Lambda function.", - "$ref" : "#/definitions/NotificationFilter" - }, - "Function" : { - "description" : "The Amazon Resource Name (ARN) of the AWS Lambda function that Amazon S3 invokes when the specified event type occurs.", - "type" : "string" - } - }, - "required" : [ "Function", "Event" ] - }, - "QueueConfiguration" : { - "type" : "object", - "description" : "The Amazon Simple Queue Service queues to publish messages to and the events for which to publish messages.", - "additionalProperties" : false, - "properties" : { - "Event" : { - "description" : "The Amazon S3 bucket event about which you want to publish messages to Amazon SQS.", + "Topic" : { "type" : "string" }, "Filter" : { - "description" : "The filtering rules that determine which objects trigger notifications.", "$ref" : "#/definitions/NotificationFilter" - }, - "Queue" : { - "description" : "The Amazon Resource Name (ARN) of the Amazon SQS queue to which Amazon S3 publishes a message when it detects events of the specified type.", - "type" : "string" } }, - "required" : [ "Event", "Queue" ] + "required" : [ "Event", "Topic" ] }, - "TopicConfiguration" : { + "IntelligentTieringConfiguration" : { "type" : "object", - "description" : "The topic to which notifications are sent and the events for which notifications are generated.", "additionalProperties" : false, "properties" : { - "Event" : { - "description" : "The Amazon S3 bucket event about which to send notifications.", + "Status" : { "type" : "string" }, - "Filter" : { - "description" : "The filtering rules that determine for which objects to send notifications.", - "$ref" : "#/definitions/NotificationFilter" + "TagFilters" : { + "type" : "array", + "uniqueItems" : true, + "items" : { + "$ref" : "#/definitions/TagFilter" + } }, - "Topic" : { - "description" : "The Amazon Resource Name (ARN) of the Amazon SNS topic to which Amazon S3 publishes a message when it detects events of the specified type.", - "type" : "string" - } - }, - "required" : [ "Event", "Topic" ] - }, - "NotificationFilter" : { - "type" : "object", - "description" : "Specifies object key name filtering rules.", - "additionalProperties" : false, - "properties" : { - "S3Key" : { - "$ref" : "#/definitions/S3KeyFilter" - } - }, - "required" : [ "S3Key" ] - }, - "S3KeyFilter" : { - "type" : "object", - "description" : "A container for object key name prefix and suffix filtering rules.", - "additionalProperties" : false, - "properties" : { - "Rules" : { + "Tierings" : { "type" : "array", "uniqueItems" : true, - "insertionOrder" : true, "items" : { - "$ref" : "#/definitions/FilterRule" + "$ref" : "#/definitions/Tiering" } - } - }, - "required" : [ "Rules" ] - }, - "FilterRule" : { - "type" : "object", - "description" : "Specifies the Amazon S3 object key name to filter on and whether to filter on the suffix or prefix of the key name.", - "additionalProperties" : false, - "properties" : { - "Name" : { - "type" : "string", - "maxLength" : 1024 }, - "Value" : { + "Id" : { + "type" : "string" + }, + "Prefix" : { "type" : "string" } }, - "required" : [ "Value", "Name" ] + "required" : [ "Status", "Tierings", "Id" ] }, - "ObjectLockConfiguration" : { + "PublicAccessBlockConfiguration" : { "type" : "object", "additionalProperties" : false, "properties" : { - "ObjectLockEnabled" : { - "type" : "string", - "const" : "Enabled" + "RestrictPublicBuckets" : { + "type" : "boolean" }, - "Rule" : { - "$ref" : "#/definitions/ObjectLockRule" - } - } - }, - "ObjectLockRule" : { - "type" : "object", - "description" : "The Object Lock rule in place for the specified object.", - "additionalProperties" : false, - "properties" : { - "DefaultRetention" : { - "$ref" : "#/definitions/DefaultRetention" + "IgnorePublicAcls" : { + "type" : "boolean" + }, + "BlockPublicPolicy" : { + "type" : "boolean" + }, + "BlockPublicAcls" : { + "type" : "boolean" } } }, - "DefaultRetention" : { + "NoncurrentVersionTransition" : { "type" : "object", - "description" : "The default retention period that you want to apply to new objects placed in the specified bucket.", "additionalProperties" : false, "properties" : { - "Years" : { + "TransitionInDays" : { "type" : "integer" }, - "Days" : { - "type" : "integer" + "StorageClass" : { + "type" : "string" }, - "Mode" : { - "type" : "string", - "enum" : [ "COMPLIANCE", "GOVERNANCE" ] - } - } - }, - "OwnershipControls" : { - "type" : "object", - "additionalProperties" : false, - "properties" : { - "Rules" : { - "type" : "array", - "uniqueItems" : true, - "insertionOrder" : true, - "items" : { - "$ref" : "#/definitions/OwnershipControlsRule" - } + "NewerNoncurrentVersions" : { + "type" : "integer" } }, - "required" : [ "Rules" ] + "required" : [ "StorageClass", "TransitionInDays" ] }, - "OwnershipControlsRule" : { + "StorageClassAnalysis" : { "type" : "object", "additionalProperties" : false, "properties" : { - "ObjectOwnership" : { - "description" : "Specifies an object ownership rule.", - "type" : "string", - "enum" : [ "ObjectWriter", "BucketOwnerPreferred", "BucketOwnerEnforced" ] + "DataExport" : { + "$ref" : "#/definitions/DataExport" } } }, - "PublicAccessBlockConfiguration" : { - "description" : "Configuration that defines how Amazon S3 handles public access.", + "ServerSideEncryptionByDefault" : { "type" : "object", "additionalProperties" : false, "properties" : { - "BlockPublicAcls" : { - "type" : "boolean", - "description" : "Specifies whether Amazon S3 should block public access control lists (ACLs) for this bucket and objects in this bucket. Setting this element to TRUE causes the following behavior:\n- PUT Bucket acl and PUT Object acl calls fail if the specified ACL is public.\n - PUT Object calls fail if the request includes a public ACL.\nEnabling this setting doesn't affect existing policies or ACLs." - }, - "BlockPublicPolicy" : { - "type" : "boolean", - "description" : "Specifies whether Amazon S3 should block public bucket policies for this bucket. Setting this element to TRUE causes Amazon S3 to reject calls to PUT Bucket policy if the specified bucket policy allows public access.\nEnabling this setting doesn't affect existing bucket policies." - }, - "IgnorePublicAcls" : { - "type" : "boolean", - "description" : "Specifies whether Amazon S3 should ignore public ACLs for this bucket and objects in this bucket. Setting this element to TRUE causes Amazon S3 to ignore all public ACLs on this bucket and objects in this bucket.\nEnabling this setting doesn't affect the persistence of any existing ACLs and doesn't prevent new public ACLs from being set." + "SSEAlgorithm" : { + "type" : "string" }, - "RestrictPublicBuckets" : { - "type" : "boolean", - "description" : "Specifies whether Amazon S3 should restrict public bucket policies for this bucket. Setting this element to TRUE restricts access to this bucket to only AWS services and authorized users within this account if the bucket has a public policy.\nEnabling this setting doesn't affect previously stored bucket policies, except that public and cross-account access within any public bucket policy, including non-public delegation to specific accounts, is blocked." + "KMSMasterKeyID" : { + "type" : "string" } - } + }, + "required" : [ "SSEAlgorithm" ] }, - "ReplicationConfiguration" : { + "MetricsConfiguration" : { "type" : "object", - "description" : "A container for replication rules. You can add up to 1,000 rules. The maximum size of a replication configuration is 2 MB.", "additionalProperties" : false, "properties" : { - "Role" : { - "description" : "The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that Amazon S3 assumes when replicating objects.", - "type" : "string" - }, - "Rules" : { - "description" : "A container for one or more replication rules.", + "TagFilters" : { "type" : "array", "uniqueItems" : true, - "insertionOrder" : true, "items" : { - "$ref" : "#/definitions/ReplicationRule", - "maxLength" : 1000, - "minLength" : 1 + "$ref" : "#/definitions/TagFilter" } - } - }, - "required" : [ "Role", "Rules" ] - }, - "ReplicationRule" : { - "type" : "object", - "description" : "Specifies which Amazon S3 objects to replicate and where to store the replicas.", - "additionalProperties" : false, - "properties" : { - "DeleteMarkerReplication" : { - "$ref" : "#/definitions/DeleteMarkerReplication" - }, - "Destination" : { - "$ref" : "#/definitions/ReplicationDestination" - }, - "Filter" : { - "$ref" : "#/definitions/ReplicationRuleFilter" }, "Id" : { - "description" : "A unique identifier for the rule.", - "type" : "string", - "maxLength" : 255 + "type" : "string" }, "Prefix" : { - "description" : "An object key name prefix that identifies the object or objects to which the rule applies.", - "type" : "string", - "maxLength" : 1024 - }, - "Priority" : { - "type" : "integer" - }, - "SourceSelectionCriteria" : { - "$ref" : "#/definitions/SourceSelectionCriteria" + "type" : "string" }, - "Status" : { - "description" : "Specifies whether the rule is enabled.", - "type" : "string", - "enum" : [ "Disabled", "Enabled" ] + "AccessPointArn" : { + "type" : "string" } }, - "required" : [ "Destination", "Status" ] + "required" : [ "Id" ] }, - "DeleteMarkerReplication" : { + "ObjectLockConfiguration" : { "type" : "object", "additionalProperties" : false, "properties" : { - "Status" : { - "type" : "string", - "enum" : [ "Disabled", "Enabled" ] + "ObjectLockEnabled" : { + "type" : "string" + }, + "Rule" : { + "$ref" : "#/definitions/ObjectLockRule" } } }, - "ReplicationDestination" : { + "LoggingConfiguration" : { "type" : "object", - "description" : "Specifies which Amazon S3 bucket to store replicated objects in and their storage class.", "additionalProperties" : false, "properties" : { - "AccessControlTranslation" : { - "$ref" : "#/definitions/AccessControlTranslation" - }, - "Account" : { + "DestinationBucketName" : { "type" : "string" }, - "Bucket" : { + "LogFilePrefix" : { "type" : "string" - }, - "EncryptionConfiguration" : { - "$ref" : "#/definitions/EncryptionConfiguration" - }, - "Metrics" : { - "$ref" : "#/definitions/Metrics" - }, - "ReplicationTime" : { - "$ref" : "#/definitions/ReplicationTime" - }, - "StorageClass" : { - "description" : "The storage class to use when replicating objects, such as S3 Standard or reduced redundancy.", - "type" : "string", - "enum" : [ "DEEP_ARCHIVE", "GLACIER", "GLACIER_IR", "INTELLIGENT_TIERING", "ONEZONE_IA", "REDUCED_REDUNDANCY", "STANDARD", "STANDARD_IA" ] } - }, - "required" : [ "Bucket" ] - }, - "AccessControlTranslation" : { - "type" : "object", - "description" : "Specify this only in a cross-account scenario (where source and destination bucket owners are not the same), and you want to change replica ownership to the AWS account that owns the destination bucket. If this is not specified in the replication configuration, the replicas are owned by same AWS account that owns the source object.", - "additionalProperties" : false, - "properties" : { - "Owner" : { - "type" : "string", - "const" : "Destination" - } - }, - "required" : [ "Owner" ] + } }, - "EncryptionConfiguration" : { + "LambdaConfiguration" : { "type" : "object", - "description" : "Specifies encryption-related information for an Amazon S3 bucket that is a destination for replicated objects.", "additionalProperties" : false, "properties" : { - "ReplicaKmsKeyID" : { - "description" : "Specifies the ID (Key ARN or Alias ARN) of the customer managed customer master key (CMK) stored in AWS Key Management Service (KMS) for the destination bucket.", + "Function" : { "type" : "string" + }, + "Event" : { + "type" : "string" + }, + "Filter" : { + "$ref" : "#/definitions/NotificationFilter" } }, - "required" : [ "ReplicaKmsKeyID" ] + "required" : [ "Function", "Event" ] }, - "Metrics" : { + "Tiering" : { "type" : "object", "additionalProperties" : false, "properties" : { - "EventThreshold" : { - "$ref" : "#/definitions/ReplicationTimeValue" + "AccessTier" : { + "type" : "string" }, - "Status" : { - "type" : "string", - "enum" : [ "Disabled", "Enabled" ] + "Days" : { + "type" : "integer" } }, - "required" : [ "Status" ] + "required" : [ "AccessTier", "Days" ] }, - "ReplicationTimeValue" : { + "DataExport" : { "type" : "object", "additionalProperties" : false, "properties" : { - "Minutes" : { - "type" : "integer" + "Destination" : { + "$ref" : "#/definitions/Destination" + }, + "OutputSchemaVersion" : { + "type" : "string" } }, - "required" : [ "Minutes" ] + "required" : [ "Destination", "OutputSchemaVersion" ] }, "ReplicationTime" : { "type" : "object", "additionalProperties" : false, "properties" : { "Status" : { - "type" : "string", - "enum" : [ "Disabled", "Enabled" ] + "type" : "string" }, "Time" : { "$ref" : "#/definitions/ReplicationTimeValue" @@ -1062,236 +779,268 @@ "type" : "object", "additionalProperties" : false, "properties" : { - "And" : { - "$ref" : "#/definitions/ReplicationRuleAndOperator" - }, "Prefix" : { "type" : "string" }, + "And" : { + "$ref" : "#/definitions/ReplicationRuleAndOperator" + }, "TagFilter" : { "$ref" : "#/definitions/TagFilter" } } }, - "ReplicationRuleAndOperator" : { + "RedirectRule" : { "type" : "object", "additionalProperties" : false, "properties" : { - "Prefix" : { + "ReplaceKeyWith" : { "type" : "string" }, - "TagFilters" : { + "HttpRedirectCode" : { + "type" : "string" + }, + "Protocol" : { + "type" : "string" + }, + "HostName" : { + "type" : "string" + }, + "ReplaceKeyPrefixWith" : { + "type" : "string" + } + } + }, + "EncryptionConfiguration" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "ReplicaKmsKeyID" : { + "type" : "string" + } + }, + "required" : [ "ReplicaKmsKeyID" ] + }, + "BucketEncryption" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "ServerSideEncryptionConfiguration" : { "type" : "array", "uniqueItems" : true, - "insertionOrder" : true, "items" : { - "$ref" : "#/definitions/TagFilter" + "$ref" : "#/definitions/ServerSideEncryptionRule" } } - } + }, + "required" : [ "ServerSideEncryptionConfiguration" ] }, - "SourceSelectionCriteria" : { - "description" : "A container that describes additional filters for identifying the source objects that you want to replicate.", + "NotificationConfiguration" : { "type" : "object", "additionalProperties" : false, "properties" : { - "ReplicaModifications" : { - "description" : "A filter that you can specify for selection for modifications on replicas.", - "$ref" : "#/definitions/ReplicaModifications" + "QueueConfigurations" : { + "type" : "array", + "uniqueItems" : true, + "items" : { + "$ref" : "#/definitions/QueueConfiguration" + } }, - "SseKmsEncryptedObjects" : { - "description" : "A container for filter information for the selection of Amazon S3 objects encrypted with AWS KMS.", - "$ref" : "#/definitions/SseKmsEncryptedObjects" + "LambdaConfigurations" : { + "type" : "array", + "uniqueItems" : true, + "items" : { + "$ref" : "#/definitions/LambdaConfiguration" + } + }, + "EventBridgeConfiguration" : { + "$ref" : "#/definitions/EventBridgeConfiguration" + }, + "TopicConfigurations" : { + "type" : "array", + "uniqueItems" : true, + "items" : { + "$ref" : "#/definitions/TopicConfiguration" + } } } }, - "ReplicaModifications" : { + "LifecycleConfiguration" : { "type" : "object", "additionalProperties" : false, "properties" : { - "Status" : { - "description" : "Specifies whether Amazon S3 replicates modifications on replicas.", - "type" : "string", - "enum" : [ "Enabled", "Disabled" ] + "Rules" : { + "type" : "array", + "uniqueItems" : true, + "items" : { + "$ref" : "#/definitions/Rule" + } } }, - "required" : [ "Status" ] + "required" : [ "Rules" ] }, - "SseKmsEncryptedObjects" : { + "InventoryConfiguration" : { "type" : "object", - "description" : "A container for filter information for the selection of S3 objects encrypted with AWS KMS.", "additionalProperties" : false, "properties" : { - "Status" : { - "description" : "Specifies whether Amazon S3 replicates objects created with server-side encryption using a customer master key (CMK) stored in AWS Key Management Service.", - "type" : "string", - "enum" : [ "Disabled", "Enabled" ] + "Destination" : { + "$ref" : "#/definitions/Destination" + }, + "OptionalFields" : { + "type" : "array", + "uniqueItems" : true, + "items" : { + "type" : "string" + } + }, + "IncludedObjectVersions" : { + "type" : "string" + }, + "Enabled" : { + "type" : "boolean" + }, + "Id" : { + "type" : "string" + }, + "Prefix" : { + "type" : "string" + }, + "ScheduleFrequency" : { + "type" : "string" } }, - "required" : [ "Status" ] + "required" : [ "Destination", "IncludedObjectVersions", "Enabled", "Id", "ScheduleFrequency" ] }, - "Tag" : { + "ReplicationRuleAndOperator" : { "type" : "object", "additionalProperties" : false, "properties" : { - "Key" : { - "type" : "string", - "minLength" : 1, - "maxLength" : 128 + "TagFilters" : { + "type" : "array", + "uniqueItems" : true, + "items" : { + "$ref" : "#/definitions/TagFilter" + } }, - "Value" : { - "type" : "string", - "minLength" : 1, - "maxLength" : 256 + "Prefix" : { + "type" : "string" } - }, - "required" : [ "Value", "Key" ] + } }, "VersioningConfiguration" : { - "description" : "Describes the versioning state of an Amazon S3 bucket.", "type" : "object", "additionalProperties" : false, "properties" : { "Status" : { - "description" : "The versioning state of the bucket.", - "type" : "string", - "default" : "Suspended", - "enum" : [ "Enabled", "Suspended" ] + "type" : "string" } }, "required" : [ "Status" ] }, - "WebsiteConfiguration" : { + "CorsConfiguration" : { "type" : "object", - "description" : "Specifies website configuration parameters for an Amazon S3 bucket.", "additionalProperties" : false, "properties" : { - "ErrorDocument" : { - "description" : "The name of the error document for the website.", - "type" : "string" - }, - "IndexDocument" : { - "description" : "The name of the index document for the website.", - "type" : "string" - }, - "RoutingRules" : { + "CorsRules" : { "type" : "array", - "insertionOrder" : true, + "uniqueItems" : true, "items" : { - "$ref" : "#/definitions/RoutingRule" + "$ref" : "#/definitions/CorsRule" } - }, - "RedirectAllRequestsTo" : { - "$ref" : "#/definitions/RedirectAllRequestsTo" } - } + }, + "required" : [ "CorsRules" ] }, - "RoutingRule" : { - "description" : "Specifies the redirect behavior and when a redirect is applied.", + "ReplicaModifications" : { "type" : "object", "additionalProperties" : false, "properties" : { - "RedirectRule" : { - "description" : "Container for redirect information. You can redirect requests to another host, to another page, or with another protocol. In the event of an error, you can specify a different error code to return.", - "$ref" : "#/definitions/RedirectRule" + "Status" : { + "type" : "string" + } + }, + "required" : [ "Status" ] + }, + "NoncurrentVersionExpiration" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "NoncurrentDays" : { + "type" : "integer" }, - "RoutingRuleCondition" : { - "$ref" : "#/definitions/RoutingRuleCondition" + "NewerNoncurrentVersions" : { + "type" : "integer" } }, - "required" : [ "RedirectRule" ] + "required" : [ "NoncurrentDays" ] }, - "RedirectRule" : { + "QueueConfiguration" : { "type" : "object", - "description" : "Specifies how requests are redirected. In the event of an error, you can specify a different error code to return.", "additionalProperties" : false, "properties" : { - "HostName" : { - "description" : "The host name to use in the redirect request.", + "Event" : { "type" : "string" }, - "HttpRedirectCode" : { - "description" : "The HTTP redirect code to use on the response. Not required if one of the siblings is present.", - "type" : "string" + "Filter" : { + "$ref" : "#/definitions/NotificationFilter" }, - "Protocol" : { - "description" : "Protocol to use when redirecting requests. The default is the protocol that is used in the original request.", - "enum" : [ "http", "https" ], + "Queue" : { "type" : "string" - }, - "ReplaceKeyPrefixWith" : { - "description" : "The object key prefix to use in the redirect request.", + } + }, + "required" : [ "Event", "Queue" ] + }, + "Transition" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "TransitionDate" : { "type" : "string" }, - "ReplaceKeyWith" : { - "description" : "The specific object key to use in the redirect request.d", + "TransitionInDays" : { + "type" : "integer" + }, + "StorageClass" : { "type" : "string" } - } + }, + "required" : [ "StorageClass" ] }, - "RoutingRuleCondition" : { - "description" : "A container for describing a condition that must be met for the specified redirect to apply.You must specify at least one of HttpErrorCodeReturnedEquals and KeyPrefixEquals", + "SseKmsEncryptedObjects" : { "type" : "object", "additionalProperties" : false, "properties" : { - "KeyPrefixEquals" : { - "description" : "The object key name prefix when the redirect is applied.", - "type" : "string" - }, - "HttpErrorCodeReturnedEquals" : { - "description" : "The HTTP error code when the redirect is applied. ", + "Status" : { "type" : "string" } - } + }, + "required" : [ "Status" ] }, - "RedirectAllRequestsTo" : { - "description" : "Specifies the redirect behavior of all requests to a website endpoint of an Amazon S3 bucket.", + "Tag" : { "type" : "object", "additionalProperties" : false, "properties" : { - "HostName" : { - "description" : "Name of the host where requests are redirected.", + "Value" : { "type" : "string" }, - "Protocol" : { - "description" : "Protocol to use when redirecting requests. The default is the protocol that is used in the original request.", - "type" : "string", - "enum" : [ "http", "https" ] + "Key" : { + "type" : "string" } }, - "required" : [ "HostName" ] + "required" : [ "Value", "Key" ] }, - "Arn" : { - "description" : "the Amazon Resource Name (ARN) of the specified bucket.", - "type" : "string" + "AbortIncompleteMultipartUpload" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "DaysAfterInitiation" : { + "type" : "integer" + } + }, + "required" : [ "DaysAfterInitiation" ] } }, - "tagging" : { - "taggable" : true, - "tagOnCreate" : true, - "tagUpdatable" : true, - "cloudFormationSystemTags" : true, - "tagProperty" : "/properties/Tags" - }, - "createOnlyProperties" : [ "/properties/BucketName", "/properties/ObjectLockEnabled" ], - "primaryIdentifier" : [ "/properties/BucketName" ], - "readOnlyProperties" : [ "/properties/Arn", "/properties/DomainName", "/properties/DualStackDomainName", "/properties/RegionalDomainName", "/properties/WebsiteURL" ], - "writeOnlyProperties" : [ "/properties/AccessControl", "/properties/LifecycleConfiguration/Rules/*/NoncurrentVersionExpirationInDays", "/properties/LifecycleConfiguration/Rules/*/NoncurrentVersionTransition", "/properties/LifecycleConfiguration/Rules/*/Transition", "/properties/ReplicationConfiguration/Rules/*/Prefix" ], - "handlers" : { - "create" : { - "permissions" : [ "s3:CreateBucket", "s3:PutBucketTagging", "s3:PutAnalyticsConfiguration", "s3:PutEncryptionConfiguration", "s3:PutBucketCORS", "s3:PutInventoryConfiguration", "s3:PutLifecycleConfiguration", "s3:PutMetricsConfiguration", "s3:PutBucketNotification", "s3:PutBucketReplication", "s3:PutBucketWebsite", "s3:PutAccelerateConfiguration", "s3:PutBucketPublicAccessBlock", "s3:PutReplicationConfiguration", "s3:PutObjectAcl", "s3:PutBucketObjectLockConfiguration", "s3:GetBucketAcl", "s3:ListBucket", "iam:PassRole", "s3:DeleteObject", "s3:PutBucketLogging", "s3:PutBucketVersioning", "s3:PutObjectLockConfiguration", "s3:PutBucketOwnershipControls", "s3:PutIntelligentTieringConfiguration" ] - }, - "read" : { - "permissions" : [ "s3:GetAccelerateConfiguration", "s3:GetLifecycleConfiguration", "s3:GetBucketPublicAccessBlock", "s3:GetAnalyticsConfiguration", "s3:GetBucketCORS", "s3:GetEncryptionConfiguration", "s3:GetInventoryConfiguration", "s3:GetBucketLogging", "s3:GetMetricsConfiguration", "s3:GetBucketNotification", "s3:GetBucketVersioning", "s3:GetReplicationConfiguration", "S3:GetBucketWebsite", "s3:GetBucketPublicAccessBlock", "s3:GetBucketObjectLockConfiguration", "s3:GetBucketTagging", "s3:GetBucketOwnershipControls", "s3:GetIntelligentTieringConfiguration", "s3:ListBucket" ] - }, - "update" : { - "permissions" : [ "s3:PutBucketAcl", "s3:PutBucketTagging", "s3:PutAnalyticsConfiguration", "s3:PutEncryptionConfiguration", "s3:PutBucketCORS", "s3:PutInventoryConfiguration", "s3:PutLifecycleConfiguration", "s3:PutMetricsConfiguration", "s3:PutBucketNotification", "s3:PutBucketReplication", "s3:PutBucketWebsite", "s3:PutAccelerateConfiguration", "s3:PutBucketPublicAccessBlock", "s3:PutReplicationConfiguration", "s3:PutBucketOwnershipControls", "s3:PutIntelligentTieringConfiguration", "s3:DeleteBucketWebsite", "s3:PutBucketLogging", "s3:PutBucketVersioning", "s3:PutObjectLockConfiguration", "s3:PutBucketObjectLockConfiguration", "s3:DeleteBucketAnalyticsConfiguration", "s3:DeleteBucketCors", "s3:DeleteBucketMetricsConfiguration", "s3:DeleteBucketEncryption", "s3:DeleteBucketLifecycle", "s3:DeleteBucketReplication", "iam:PassRole", "s3:ListBucket" ] - }, - "delete" : { - "permissions" : [ "s3:DeleteBucket", "s3:ListBucket" ] - }, - "list" : { - "permissions" : [ "s3:ListAllMyBuckets" ] - } - } + "createOnlyProperties" : [ "/properties/ObjectLockEnabled", "/properties/BucketName" ], + "primaryIdentifier" : [ "/properties/Id" ], + "readOnlyProperties" : [ "/properties/RegionalDomainName", "/properties/Id", "/properties/WebsiteURL", "/properties/Arn", "/properties/DomainName", "/properties/DualStackDomainName" ] } \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-sagemaker-dataqualityjobdefinition.json b/aws-cloudformation-schema/aws-sagemaker-dataqualityjobdefinition.json index 43e1c7d1c2..fd55384668 100644 --- a/aws-cloudformation-schema/aws-sagemaker-dataqualityjobdefinition.json +++ b/aws-cloudformation-schema/aws-sagemaker-dataqualityjobdefinition.json @@ -195,6 +195,11 @@ "type" : "string", "description" : "Whether the Pipe or File is used as the input mode for transfering data for the monitoring job. Pipe mode is recommended for large datasets. File mode is useful for small files that fit in memory. Defaults to File.", "enum" : [ "Pipe", "File" ] + }, + "ExcludeFeaturesAttribute" : { + "type" : "string", + "description" : "Indexes or names of the features to be excluded from analysis", + "maxLength" : 100 } }, "required" : [ "EndpointName", "LocalPath" ] @@ -228,6 +233,11 @@ "type" : "string", "description" : "Whether the Pipe or File is used as the input mode for transfering data for the monitoring job. Pipe mode is recommended for large datasets. File mode is useful for small files that fit in memory. Defaults to File.", "enum" : [ "Pipe", "File" ] + }, + "ExcludeFeaturesAttribute" : { + "type" : "string", + "description" : "Indexes or names of the features to be excluded from analysis", + "maxLength" : 100 } }, "required" : [ "DataCapturedDestinationS3Uri", "DatasetFormat", "LocalPath" ] diff --git a/aws-cloudformation-schema/aws-sagemaker-monitoringschedule.json b/aws-cloudformation-schema/aws-sagemaker-monitoringschedule.json index c50f41288a..09f0e3dfb5 100644 --- a/aws-cloudformation-schema/aws-sagemaker-monitoringschedule.json +++ b/aws-cloudformation-schema/aws-sagemaker-monitoringschedule.json @@ -264,6 +264,11 @@ "type" : "string", "description" : "Whether the Pipe or File is used as the input mode for transfering data for the monitoring job. Pipe mode is recommended for large datasets. File mode is useful for small files that fit in memory. Defaults to File.", "enum" : [ "Pipe", "File" ] + }, + "ExcludeFeaturesAttribute" : { + "type" : "string", + "description" : "Indexes or names of the features to be excluded from analysis", + "maxLength" : 100 } }, "required" : [ "EndpointName", "LocalPath" ] @@ -297,6 +302,11 @@ "type" : "string", "description" : "Whether the Pipe or File is used as the input mode for transfering data for the monitoring job. Pipe mode is recommended for large datasets. File mode is useful for small files that fit in memory. Defaults to File.", "enum" : [ "Pipe", "File" ] + }, + "ExcludeFeaturesAttribute" : { + "type" : "string", + "description" : "Indexes or names of the features to be excluded from analysis", + "maxLength" : 100 } }, "required" : [ "DataCapturedDestinationS3Uri", "DatasetFormat", "LocalPath" ] @@ -469,14 +479,29 @@ "description" : "Configuration details about the monitoring schedule.", "properties" : { "ScheduleExpression" : { - "description" : "A cron expression that describes details about the monitoring schedule.", + "description" : "A cron expression or 'NOW' that describes details about the monitoring schedule.", "type" : "string", "minLength" : 1, "maxLength" : 256 + }, + "DataAnalysisStartTime" : { + "description" : "Data Analysis start time, e.g. -PT1H", + "$ref" : "#/definitions/DataAnalysisTimeString" + }, + "DataAnalysisEndTime" : { + "description" : "Data Analysis end time, e.g. PT0H", + "$ref" : "#/definitions/DataAnalysisTimeString" } }, "required" : [ "ScheduleExpression" ] }, + "DataAnalysisTimeString" : { + "type" : "string", + "description" : "Analysis time in ISO duration format", + "pattern" : "^.?P.*", + "minLength" : 1, + "maxLength" : 15 + }, "Tag" : { "description" : "A key-value pair to associate with a resource.", "type" : "object", diff --git a/aws-cloudformation-schema/aws-scheduler-schedulegroup.json b/aws-cloudformation-schema/aws-scheduler-schedulegroup.json index 50d32787f9..9395cd778d 100644 --- a/aws-cloudformation-schema/aws-scheduler-schedulegroup.json +++ b/aws-cloudformation-schema/aws-scheduler-schedulegroup.json @@ -71,7 +71,7 @@ "primaryIdentifier" : [ "/properties/Name" ], "handlers" : { "create" : { - "permissions" : [ "scheduler:CreateScheduleGroup", "scheduler:GetScheduleGroup", "scheduler:ListTagsForResource" ] + "permissions" : [ "scheduler:TagResource", "scheduler:CreateScheduleGroup", "scheduler:GetScheduleGroup", "scheduler:ListTagsForResource" ] }, "read" : { "permissions" : [ "scheduler:GetScheduleGroup", "scheduler:ListTagsForResource" ] diff --git a/aws-cloudformation-schema/aws-servicecatalogappregistry-attributegroupassociation.json b/aws-cloudformation-schema/aws-servicecatalogappregistry-attributegroupassociation.json index e1e9fd92d1..722f680ef9 100644 --- a/aws-cloudformation-schema/aws-servicecatalogappregistry-attributegroupassociation.json +++ b/aws-cloudformation-schema/aws-servicecatalogappregistry-attributegroupassociation.json @@ -1,7 +1,7 @@ { "typeName" : "AWS::ServiceCatalogAppRegistry::AttributeGroupAssociation", "description" : "Resource Schema for AWS::ServiceCatalogAppRegistry::AttributeGroupAssociation.", - "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-servicecatalog-appregistry.git", + "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-servicecatalog-appregistry", "documentationUrl" : "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-appregistry-attributegroupassociation.html", "properties" : { "Application" : { @@ -25,26 +25,39 @@ "AttributeGroupArn" : { "type" : "string", "pattern" : "arn:aws[-a-z]*:servicecatalog:[a-z]{2}(-gov)?-[a-z]+-\\d:\\d{12}:/attribute-groups/[a-z0-9]+" - }, - "Id" : { - "type" : "string" } }, "additionalProperties" : false, "required" : [ "Application", "AttributeGroup" ], - "readOnlyProperties" : [ "/properties/ApplicationArn", "/properties/AttributeGroupArn", "/properties/Id" ], + "readOnlyProperties" : [ "/properties/ApplicationArn", "/properties/AttributeGroupArn" ], "createOnlyProperties" : [ "/properties/Application", "/properties/AttributeGroup" ], - "primaryIdentifier" : [ "/properties/Id" ], - "taggable" : false, + "primaryIdentifier" : [ "/properties/ApplicationArn", "/properties/AttributeGroupArn" ], + "tagging" : { + "taggable" : false, + "tagOnCreate" : false, + "tagUpdatable" : false, + "cloudFormationSystemTags" : false + }, "handlers" : { "create" : { "permissions" : [ "servicecatalog:AssociateAttributeGroup" ] }, "read" : { - "permissions" : [ "servicecatalog:ListAssociatedAttributeGroups" ] + "permissions" : [ "servicecatalog:ListAttributeGroupsForApplication" ] }, "delete" : { "permissions" : [ "servicecatalog:DisassociateAttributeGroup" ] + }, + "list" : { + "permissions" : [ "servicecatalog:ListAttributeGroupsForApplication" ], + "handlerSchema" : { + "properties" : { + "ApplicationArn" : { + "$ref" : "resource-schema.json#/properties/ApplicationArn" + } + }, + "required" : [ "ApplicationArn" ] + } } } } \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-servicecatalogappregistry-resourceassociation.json b/aws-cloudformation-schema/aws-servicecatalogappregistry-resourceassociation.json index 6e8f5c6479..2447d706ee 100644 --- a/aws-cloudformation-schema/aws-servicecatalogappregistry-resourceassociation.json +++ b/aws-cloudformation-schema/aws-servicecatalogappregistry-resourceassociation.json @@ -1,7 +1,7 @@ { "typeName" : "AWS::ServiceCatalogAppRegistry::ResourceAssociation", "description" : "Resource Schema for AWS::ServiceCatalogAppRegistry::ResourceAssociation", - "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-servicecatalog-appregistry.git", + "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-servicecatalog-appregistry", "documentationUrl" : "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-appregistry-resourceassociation.html", "properties" : { "Application" : { @@ -28,17 +28,19 @@ "ResourceArn" : { "type" : "string", "pattern" : "arn:aws[-a-z]*:cloudformation:[a-z]{2}(-gov)?-[a-z]+-\\d:\\d{12}:stack/[a-zA-Z][-A-Za-z0-9]{0,127}/[0-9a-f]{8}(-[0-9a-f]{4}){3}-[0-9a-f]{12}" - }, - "Id" : { - "type" : "string" } }, "additionalProperties" : false, "required" : [ "Application", "Resource", "ResourceType" ], - "readOnlyProperties" : [ "/properties/ApplicationArn", "/properties/ResourceArn", "/properties/Id" ], + "readOnlyProperties" : [ "/properties/ApplicationArn", "/properties/ResourceArn" ], "createOnlyProperties" : [ "/properties/Application", "/properties/Resource", "/properties/ResourceType" ], - "primaryIdentifier" : [ "/properties/Id" ], - "taggable" : false, + "primaryIdentifier" : [ "/properties/ApplicationArn", "/properties/ResourceArn", "/properties/ResourceType" ], + "tagging" : { + "taggable" : false, + "tagOnCreate" : false, + "tagUpdatable" : false, + "cloudFormationSystemTags" : false + }, "handlers" : { "create" : { "permissions" : [ "servicecatalog:AssociateResource", "cloudformation:DescribeStacks" ] @@ -48,6 +50,17 @@ }, "delete" : { "permissions" : [ "servicecatalog:DisassociateResource" ] + }, + "list" : { + "permissions" : [ "servicecatalog:ListAssociatedResources" ], + "handlerSchema" : { + "properties" : { + "ApplicationArn" : { + "$ref" : "resource-schema.json#/properties/ApplicationArn" + } + }, + "required" : [ "ApplicationArn" ] + } } } } \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-sns-topic.json b/aws-cloudformation-schema/aws-sns-topic.json index 4c4f367a8e..8dba6f534e 100644 --- a/aws-cloudformation-schema/aws-sns-topic.json +++ b/aws-cloudformation-schema/aws-sns-topic.json @@ -33,6 +33,10 @@ "description" : "Enables content-based deduplication for FIFO topics. By default, ContentBasedDeduplication is set to false. If you create a FIFO topic and this attribute is false, you must specify a value for the MessageDeduplicationId parameter for the Publish action.\n\nWhen you set ContentBasedDeduplication to true, Amazon SNS uses a SHA-256 hash to generate the MessageDeduplicationId using the body of the message (but not the attributes of the message).\n\n(Optional) To override the generated value, you can specify a value for the the MessageDeduplicationId parameter for the Publish action.\n\n", "type" : "boolean" }, + "ArchivePolicy" : { + "description" : "The archive policy determines the number of days Amazon SNS retains messages. You can set a retention period from 1 to 365 days.", + "type" : "object" + }, "Tags" : { "type" : "array", "uniqueItems" : false, diff --git a/aws-cloudformation-schema/aws-sqs-queuepolicy.json b/aws-cloudformation-schema/aws-sqs-queuepolicy.json index 430f9dd7fe..89237db2a1 100644 --- a/aws-cloudformation-schema/aws-sqs-queuepolicy.json +++ b/aws-cloudformation-schema/aws-sqs-queuepolicy.json @@ -1,6 +1,6 @@ { "typeName" : "AWS::SQS::QueuePolicy", - "description" : "Resource Type definition for AWS::SQS::QueuePolicy", + "description" : "The ``AWS::SQS::QueuePolicy`` type applies a policy to SQS queues. For an example snippet, see [Declaring an policy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-iam.html#scenario-sqs-policy) in the *User Guide*.", "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-sqs.git", "additionalProperties" : false, "properties" : { @@ -10,11 +10,11 @@ }, "PolicyDocument" : { "type" : [ "object", "string" ], - "description" : "A policy document that contains the permissions for the specified Amazon SQS queues. For more information about Amazon SQS policies, see Creating Custom Policies Using the Access Policy Language in the Amazon Simple Queue Service Developer Guide." + "description" : "A policy document that contains the permissions for the specified SQS queues. For more information about SQS policies, see [Using custom policies with the access policy language](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-creating-custom-policies.html) in the *Developer Guide*." }, "Queues" : { "type" : "array", - "description" : "The URLs of the queues to which you want to add the policy. You can use the Ref function to specify an AWS::SQS::Queue resource.", + "description" : "The URLs of the queues to which you want to add the policy. You can use the ``Ref`` function to specify an ``AWS::SQS::Queue`` resource.", "uniqueItems" : false, "insertionOrder" : false, "items" : { diff --git a/provider/cmd/cf2pulumi/schema-full.json b/provider/cmd/cf2pulumi/schema-full.json index 1362bd7228..464acdd8aa 100644 --- a/provider/cmd/cf2pulumi/schema-full.json +++ b/provider/cmd/cf2pulumi/schema-full.json @@ -1803,19 +1803,21 @@ ] }, "aws-native:apigateway:DeploymentAccessLogSetting": { + "description": "The ``AccessLogSetting`` property type specifies settings for logging access in this stage.\n ``AccessLogSetting`` is a property of the [StageDescription](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html) property type.", "properties": { "destinationArn": { "type": "string", - "description": "The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with amazon-apigateway-. " + "description": "The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with ``amazon-apigateway-``." }, "format": { "type": "string", - "description": "A single line format of the access logs of data, as specified by selected $context variables. The format must include at least $context.requestId. " + "description": "A single line format of the access logs of data, as specified by selected $context variables. The format must include at least ``$context.requestId``." } }, "type": "object" }, "aws-native:apigateway:DeploymentCanarySetting": { + "description": "The ``CanarySetting`` property type specifies settings for the canary deployment in this stage.\n ``CanarySetting`` is a property of the [StageDescription](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html) property type.", "properties": { "percentTraffic": { "type": "number", @@ -1823,49 +1825,51 @@ }, "stageVariableOverrides": { "$ref": "pulumi.json#/Any", - "description": "Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values. " + "description": "Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values." }, "useStageCache": { "type": "boolean", - "description": "Whether the canary deployment uses the stage cache or not." + "description": "A Boolean flag to indicate whether the canary deployment uses the stage cache or not." } }, "type": "object" }, "aws-native:apigateway:DeploymentCanarySettings": { + "description": "The ``DeploymentCanarySettings`` property type specifies settings for the canary deployment.", "properties": { "percentTraffic": { "type": "number", - "description": "The percentage (0-100) of traffic diverted to a canary deployment." + "description": "The percentage (0.0-100.0) of traffic routed to the canary deployment." }, "stageVariableOverrides": { "$ref": "pulumi.json#/Any", - "description": "Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values. Duplicates are not allowed." + "description": "A stage variable overrides used for the canary release deployment. They can override existing stage variables or add new stage variables for the canary release deployment. These stage variables are represented as a string-to-string map between stage variable names and their values." }, "useStageCache": { "type": "boolean", - "description": "Whether the canary deployment uses the stage cache." + "description": "A Boolean flag to indicate whether the canary release deployment uses the stage cache or not." } }, "type": "object" }, "aws-native:apigateway:DeploymentMethodSetting": { + "description": "The ``MethodSetting`` property type configures settings for all methods in a stage.\n The ``MethodSettings`` property of the [Amazon API Gateway Deployment StageDescription](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html) property type contains a list of ``MethodSetting`` property types.", "properties": { "cacheDataEncrypted": { "type": "boolean", - "description": "Indicates whether the cached responses are encrypted" + "description": "Specifies whether the cached responses are encrypted." }, "cacheTtlInSeconds": { "type": "integer", - "description": "The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. " + "description": "Specifies the time to live (TTL), in seconds, for cached responses. The higher the TTL, the longer the response will be cached." }, "cachingEnabled": { "type": "boolean", - "description": "Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses." + "description": "Specifies whether responses should be cached and returned for requests. A cache cluster must be enabled on the stage for responses to be cached." }, "dataTraceEnabled": { "type": "boolean", - "description": "Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs. " + "description": "Specifies whether data trace logging is enabled for this method, which affects the log entries pushed to Amazon CloudWatch Logs. This can be useful to troubleshoot APIs, but can result in logging sensitive data. We recommend that you don't enable this option for production APIs." }, "httpMethod": { "type": "string", @@ -1873,28 +1877,29 @@ }, "loggingLevel": { "type": "string", - "description": "The logging level for this method. For valid values, see the loggingLevel property of the Stage resource in the Amazon API Gateway API Reference. " + "description": "Specifies the logging level for this method, which affects the log entries pushed to Amazon CloudWatch Logs. Valid values are ``OFF``, ``ERROR``, and ``INFO``. Choose ``ERROR`` to write only error-level entries to CloudWatch Logs, or choose ``INFO`` to include all ``ERROR`` events as well as extra informational events." }, "metricsEnabled": { "type": "boolean", - "description": "Indicates whether Amazon CloudWatch metrics are enabled for methods in the stage." + "description": "Specifies whether Amazon CloudWatch metrics are enabled for this method." }, "resourcePath": { "type": "string", - "description": "The resource path for this method. Forward slashes (/) are encoded as ~1 and the initial slash must include a forward slash. " + "description": "The resource path for this method. Forward slashes (``/``) are encoded as ``~1`` and the initial slash must include a forward slash. For example, the path value ``/resource/subresource`` must be encoded as ``/~1resource~1subresource``. To specify the root path, use only a slash (``/``)." }, "throttlingBurstLimit": { "type": "integer", - "description": "The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account." + "description": "Specifies the throttling burst limit." }, "throttlingRateLimit": { "type": "number", - "description": "The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account." + "description": "Specifies the throttling rate limit." } }, "type": "object" }, "aws-native:apigateway:DeploymentStageDescription": { + "description": "``StageDescription`` is a property of the [AWS::ApiGateway::Deployment](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-deployment.html) resource that configures a deployment stage.", "properties": { "accessLogSetting": { "$ref": "#/types/aws-native:apigateway:DeploymentAccessLogSetting", @@ -1902,23 +1907,23 @@ }, "cacheClusterEnabled": { "type": "boolean", - "description": "Indicates whether cache clustering is enabled for the stage." + "description": "Specifies whether a cache cluster is enabled for the stage." }, "cacheClusterSize": { "type": "string", - "description": "The size of the stage's cache cluster." + "description": "The size of the stage's cache cluster. For more information, see [cacheClusterSize](https://docs.aws.amazon.com/apigateway/latest/api/API_CreateStage.html#apigw-CreateStage-request-cacheClusterSize) in the *API Gateway API Reference*." }, "cacheDataEncrypted": { "type": "boolean", - "description": "The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. " + "description": "Indicates whether the cached responses are encrypted." }, "cacheTtlInSeconds": { "type": "integer", - "description": "The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. " + "description": "The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses." }, "cachingEnabled": { "type": "boolean", - "description": "Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses." + "description": "Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses. For more information, see [Enable API Gateway Caching in a Stage to Enhance API Performance](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html) in the *API Gateway Developer Guide*." }, "canarySetting": { "$ref": "#/types/aws-native:apigateway:DeploymentCanarySetting", @@ -1926,11 +1931,11 @@ }, "clientCertificateId": { "type": "string", - "description": "The identifier of the client certificate that API Gateway uses to call your integration endpoints in the stage. " + "description": "The identifier of the client certificate that API Gateway uses to call your integration endpoints in the stage." }, "dataTraceEnabled": { "type": "boolean", - "description": "Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs. " + "description": "Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs." }, "description": { "type": "string", @@ -1942,7 +1947,7 @@ }, "loggingLevel": { "type": "string", - "description": "The logging level for this method. For valid values, see the loggingLevel property of the Stage resource in the Amazon API Gateway API Reference. " + "description": "The logging level for this method. For valid values, see the ``loggingLevel`` property of the [MethodSetting](https://docs.aws.amazon.com/apigateway/latest/api/API_MethodSetting.html) resource in the *Amazon API Gateway API Reference*." }, "methodSettings": { "type": "array", @@ -1964,19 +1969,19 @@ }, "throttlingBurstLimit": { "type": "integer", - "description": "The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account." + "description": "The target request burst rate limit. This allows more requests through for a period of time than the target rate limit. For more information, see [Manage API Request Throttling](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-request-throttling.html) in the *API Gateway Developer Guide*." }, "throttlingRateLimit": { "type": "number", - "description": "The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account." + "description": "The target request steady-state rate limit. For more information, see [Manage API Request Throttling](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-request-throttling.html) in the *API Gateway Developer Guide*." }, "tracingEnabled": { "type": "boolean", - "description": "Specifies whether active tracing with X-ray is enabled for this stage." + "description": "Specifies whether active tracing with X-ray is enabled for this stage.\n For more information, see [Trace API Gateway API Execution with X-Ray](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-xray.html) in the *API Gateway Developer Guide*." }, "variables": { "$ref": "pulumi.json#/Any", - "description": "A map that defines the stage variables. Variable names must consist of alphanumeric characters, and the values must match the following regular expression: [A-Za-z0-9-._~:/?#\u0026=,]+. " + "description": "A map that defines the stage variables. Variable names must consist of alphanumeric characters, and the values must match the following regular expression: ``[A-Za-z0-9-._~:/?#\u0026=,]+``." } }, "type": "object" @@ -1999,32 +2004,33 @@ ] }, "aws-native:apigateway:DocumentationPartLocation": { + "description": "The ``Location`` property specifies the location of the Amazon API Gateway API entity that the documentation applies to. ``Location`` is a property of the [AWS::ApiGateway::DocumentationPart](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationpart.html) resource.\n For more information about each property, including constraints and valid values, see [DocumentationPart](https://docs.aws.amazon.com/apigateway/latest/api/API_DocumentationPartLocation.html) in the *Amazon API Gateway REST API Reference*.", "properties": { "method": { "type": "string", - "description": "The HTTP verb of a method." + "description": "The HTTP verb of a method. It is a valid field for the API entity types of ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``*`` for any method. When an applicable child entity inherits the content of an entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``method`` attribute must match that of the parent entity exactly." }, "name": { "type": "string", - "description": "The name of the targeted API entity." + "description": "The name of the targeted API entity. It is a valid and required field for the API entity types of ``AUTHORIZER``, ``MODEL``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY`` and ``RESPONSE_HEADER``. It is an invalid field for any other entity type." }, "path": { "type": "string", - "description": "The URL path of the target." + "description": "The URL path of the target. It is a valid field for the API entity types of ``RESOURCE``, ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``/`` for the root resource. When an applicable child entity inherits the content of another entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``path`` attribute must match that of the parent entity as a prefix." }, "statusCode": { "type": "string", - "description": "The HTTP status code of a response." + "description": "The HTTP status code of a response. It is a valid field for the API entity types of ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``*`` for any status code. When an applicable child entity inherits the content of an entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``statusCode`` attribute must match that of the parent entity exactly." }, "type": { "$ref": "#/types/aws-native:apigateway:DocumentationPartLocationType", - "description": "The type of API entity that the documentation content applies to." + "description": "The type of API entity to which the documentation content applies. Valid values are ``API``, ``AUTHORIZER``, ``MODEL``, ``RESOURCE``, ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. Content inheritance does not apply to any entity of the ``API``, ``AUTHORIZER``, ``METHOD``, ``MODEL``, ``REQUEST_BODY``, or ``RESOURCE`` type." } }, "type": "object" }, "aws-native:apigateway:DocumentationPartLocationType": { - "description": "The type of API entity that the documentation content applies to.", + "description": "The type of API entity to which the documentation content applies. Valid values are ``API``, ``AUTHORIZER``, ``MODEL``, ``RESOURCE``, ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. Content inheritance does not apply to any entity of the ``API``, ``AUTHORIZER``, ``METHOD``, ``MODEL``, ``REQUEST_BODY``, or ``RESOURCE`` type.", "type": "string", "enum": [ { @@ -2111,7 +2117,7 @@ "type": "object" }, "aws-native:apigateway:MethodAuthorizationType": { - "description": "The method's authorization type.", + "description": "The method's authorization type. This parameter is required. For valid values, see [Method](https://docs.aws.amazon.com/apigateway/latest/api/API_Method.html) in the *API Gateway API Reference*.\n If you specify the ``AuthorizerId`` property, specify ``CUSTOM`` or ``COGNITO_USER_POOLS`` for this property.", "type": "string", "enum": [ { @@ -2133,68 +2139,69 @@ ] }, "aws-native:apigateway:MethodIntegration": { + "description": "``Integration`` is a property of the [AWS::ApiGateway::Method](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html) resource that specifies information about the target backend that a method calls.", "properties": { "cacheKeyParameters": { "type": "array", "items": { "type": "string" }, - "description": "A list of request parameters whose values API Gateway caches." + "description": "A list of request parameters whose values API Gateway caches. To be valid values for ``cacheKeyParameters``, these parameters must also be specified for Method ``requestParameters``." }, "cacheNamespace": { "type": "string", - "description": "An API-specific tag group of related cached parameters." + "description": "Specifies a group of related cached parameters. By default, API Gateway uses the resource ID as the ``cacheNamespace``. You can specify the same ``cacheNamespace`` across resources to return the same cached data for requests to different resources." }, "connectionId": { "type": "string", - "description": "The ID of the VpcLink used for the integration when connectionType=VPC_LINK, otherwise undefined." + "description": "The ID of the VpcLink used for the integration when ``connectionType=VPC_LINK`` and undefined, otherwise." }, "connectionType": { "$ref": "#/types/aws-native:apigateway:MethodIntegrationConnectionType", - "description": "The type of the network connection to the integration endpoint." + "description": "The type of the network connection to the integration endpoint. The valid value is ``INTERNET`` for connections through the public routable internet or ``VPC_LINK`` for private connections between API Gateway and a network load balancer in a VPC. The default value is ``INTERNET``." }, "contentHandling": { "$ref": "#/types/aws-native:apigateway:MethodIntegrationContentHandling", - "description": "Specifies how to handle request payload content type conversions." + "description": "Specifies how to handle request payload content type conversions. Supported values are ``CONVERT_TO_BINARY`` and ``CONVERT_TO_TEXT``, with the following behaviors:\n If this property is not defined, the request payload will be passed through from the method request to integration request without modification, provided that the ``passthroughBehavior`` is configured to support payload pass-through." }, "credentials": { "type": "string", - "description": "The credentials that are required for the integration." + "description": "Specifies the credentials required for the integration, if any. For AWS integrations, three options are available. To specify an IAM Role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To require that the caller's identity be passed through from the request, specify the string ``arn:aws:iam::\\*:user/\\*``. To use resource-based permissions on supported AWS services, specify null." }, "integrationHttpMethod": { "type": "string", - "description": "The integration's HTTP method type." + "description": "Specifies the integration's HTTP method type. For the Type property, if you specify ``MOCK``, this property is optional. For Lambda integrations, you must set the integration method to ``POST``. For all other types, you must specify this property." }, "integrationResponses": { "type": "array", "items": { "$ref": "#/types/aws-native:apigateway:MethodIntegrationResponse" }, - "description": "The response that API Gateway provides after a method's backend completes processing a request." + "description": "Specifies the integration's responses." }, "passthroughBehavior": { "$ref": "#/types/aws-native:apigateway:MethodIntegrationPassthroughBehavior", - "description": "Indicates when API Gateway passes requests to the targeted backend." + "description": "Specifies how the method request body of an unmapped content type will be passed through the integration request to the back end without transformation. A content type is unmapped if no mapping template is defined in the integration or the content type does not match any of the mapped content types, as specified in ``requestTemplates``. The valid value is one of the following: ``WHEN_NO_MATCH``: passes the method request body through the integration request to the back end without transformation when the method request content type does not match any content type associated with the mapping templates defined in the integration request. ``WHEN_NO_TEMPLATES``: passes the method request body through the integration request to the back end without transformation when no mapping template is defined in the integration request. If a template is defined when this option is selected, the method request of an unmapped content-type will be rejected with an HTTP 415 Unsupported Media Type response. ``NEVER``: rejects the method request with an HTTP 415 Unsupported Media Type response when either the method request content type does not match any content type associated with the mapping templates defined in the integration request or no mapping template is defined in the integration request." }, "requestParameters": { "$ref": "pulumi.json#/Any", - "description": "The request parameters that API Gateway sends with the backend request." + "description": "A key-value map specifying request parameters that are passed from the method request to the back end. The key is an integration request parameter name and the associated value is a method request parameter value or static value that must be enclosed within single quotes and pre-encoded as required by the back end. The method request parameter value must match the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and ``name`` must be a valid and unique method request parameter name." }, "requestTemplates": { "$ref": "pulumi.json#/Any", - "description": "A map of Apache Velocity templates that are applied on the request payload." + "description": "Represents a map of Velocity templates that are applied on the request payload based on the value of the Content-Type header sent by the client. The content type value is the key in this map, and the template (as a String) is the value." }, "timeoutInMillis": { "type": "integer", - "description": "Custom timeout between 50 and 29,000 milliseconds." + "description": "Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds or 29 seconds." }, "type": { "$ref": "#/types/aws-native:apigateway:MethodIntegrationType", - "description": "The type of backend that your method is running." + "description": "Specifies an API method integration type. The valid value is one of the following:\n For the HTTP and HTTP proxy integrations, each integration can specify a protocol (``http/https``), port and path. Standard 80 and 443 ports are supported as well as custom ports above 1024. An HTTP or HTTP proxy integration with a ``connectionType`` of ``VPC_LINK`` is referred to as a private integration and uses a VpcLink to connect API Gateway to a network load balancer of a VPC." }, "uri": { "type": "string", - "description": "The Uniform Resource Identifier (URI) for the integration." + "description": "Specifies Uniform Resource Identifier (URI) of the integration endpoint.\n For ``HTTP`` or ``HTTP_PROXY`` integrations, the URI must be a fully formed, encoded HTTP(S) URL according to the RFC-3986 specification for standard integrations. If ``connectionType`` is ``VPC_LINK`` specify the Network Load Balancer DNS name. For ``AWS`` or ``AWS_PROXY`` integrations, the URI is of the form ``arn:aws:apigateway:{region}:{subdomain.service|service}:path|action/{service_api}``. Here, {Region} is the API Gateway region (e.g., us-east-1); {service} is the name of the integrated AWS service (e.g., s3); and {subdomain} is a designated subdomain supported by certain AWS service for fast host-name lookup. action can be used for an AWS service action-based API, using an Action={name}\u0026{p1}={v1}\u0026p2={v2}... query string. The ensuing {service_api} refers to a supported action {name} plus any required input parameters. Alternatively, path can be used for an AWS service path-based API. The ensuing service_api refers to the path to an AWS service resource, including the region of the integrated AWS service, if applicable. For example, for integration with the S3 API of GetObject, the uri can be either ``arn:aws:apigateway:us-west-2:s3:action/GetObject\u0026Bucket={bucket}\u0026Key={key}`` or ``arn:aws:apigateway:us-west-2:s3:path/{bucket}/{key}``" } }, "type": "object", @@ -2203,7 +2210,7 @@ ] }, "aws-native:apigateway:MethodIntegrationConnectionType": { - "description": "The type of the network connection to the integration endpoint.", + "description": "The type of the network connection to the integration endpoint. The valid value is ``INTERNET`` for connections through the public routable internet or ``VPC_LINK`` for private connections between API Gateway and a network load balancer in a VPC. The default value is ``INTERNET``.", "type": "string", "enum": [ { @@ -2217,7 +2224,7 @@ ] }, "aws-native:apigateway:MethodIntegrationContentHandling": { - "description": "Specifies how to handle request payload content type conversions.", + "description": "Specifies how to handle request payload content type conversions. Supported values are ``CONVERT_TO_BINARY`` and ``CONVERT_TO_TEXT``, with the following behaviors:\n If this property is not defined, the request payload will be passed through from the method request to integration request without modification, provided that the ``passthroughBehavior`` is configured to support payload pass-through.", "type": "string", "enum": [ { @@ -2231,7 +2238,7 @@ ] }, "aws-native:apigateway:MethodIntegrationPassthroughBehavior": { - "description": "Indicates when API Gateway passes requests to the targeted backend.", + "description": "Specifies how the method request body of an unmapped content type will be passed through the integration request to the back end without transformation. A content type is unmapped if no mapping template is defined in the integration or the content type does not match any of the mapped content types, as specified in ``requestTemplates``. The valid value is one of the following: ``WHEN_NO_MATCH``: passes the method request body through the integration request to the back end without transformation when the method request content type does not match any content type associated with the mapping templates defined in the integration request. ``WHEN_NO_TEMPLATES``: passes the method request body through the integration request to the back end without transformation when no mapping template is defined in the integration request. If a template is defined when this option is selected, the method request of an unmapped content-type will be rejected with an HTTP 415 Unsupported Media Type response. ``NEVER``: rejects the method request with an HTTP 415 Unsupported Media Type response when either the method request content type does not match any content type associated with the mapping templates defined in the integration request or no mapping template is defined in the integration request.", "type": "string", "enum": [ { @@ -2249,26 +2256,27 @@ ] }, "aws-native:apigateway:MethodIntegrationResponse": { + "description": "``IntegrationResponse`` is a property of the [Amazon API Gateway Method Integration](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html) property type that specifies the response that API Gateway sends after a method's backend finishes processing a request.", "properties": { "contentHandling": { "$ref": "#/types/aws-native:apigateway:MethodIntegrationResponseContentHandling", - "description": "Specifies how to handle request payload content type conversions." + "description": "Specifies how to handle response payload content type conversions. Supported values are ``CONVERT_TO_BINARY`` and ``CONVERT_TO_TEXT``, with the following behaviors:\n If this property is not defined, the response payload will be passed through from the integration response to the method response without modification." }, "responseParameters": { "$ref": "pulumi.json#/Any", - "description": "The response parameters from the backend response that API Gateway sends to the method response." + "description": "A key-value map specifying response parameters that are passed to the method response from the back end. The key is a method response header parameter name and the mapped value is an integration response header value, a static value enclosed within a pair of single quotes, or a JSON expression from the integration response body. The mapping key must match the pattern of ``method.response.header.{name}``, where ``name`` is a valid and unique header name. The mapped non-static value must match the pattern of ``integration.response.header.{name}`` or ``integration.response.body.{JSON-expression}``, where ``name`` is a valid and unique response header name and ``JSON-expression`` is a valid JSON expression without the ``$`` prefix." }, "responseTemplates": { "$ref": "pulumi.json#/Any", - "description": "The templates that are used to transform the integration response body. Specify templates as key-value pairs (string-to-string mappings), with a content type as the key and a template as the value." + "description": "Specifies the templates used to transform the integration response body. Response templates are represented as a key/value map, with a content-type as the key and a template as the value." }, "selectionPattern": { "type": "string", - "description": "A regular expression that specifies which error strings or status codes from the backend map to the integration response." + "description": "Specifies the regular expression (regex) pattern used to choose an integration response based on the response from the back end. For example, if the success response returns nothing and the error response returns some string, you could use the ``.+`` regex to match error response. However, make sure that the error response does not contain any newline (``\\n``) character in such cases. If the back end is an LAMlong function, the LAMlong function error header is matched. For all other HTTP and AWS back ends, the HTTP status code is matched." }, "statusCode": { "type": "string", - "description": "The status code that API Gateway uses to map the integration response to a MethodResponse status code." + "description": "Specifies the status code that is used to map the integration response to an existing MethodResponse." } }, "type": "object", @@ -2277,7 +2285,7 @@ ] }, "aws-native:apigateway:MethodIntegrationResponseContentHandling": { - "description": "Specifies how to handle request payload content type conversions.", + "description": "Specifies how to handle response payload content type conversions. Supported values are ``CONVERT_TO_BINARY`` and ``CONVERT_TO_TEXT``, with the following behaviors:\n If this property is not defined, the response payload will be passed through from the integration response to the method response without modification.", "type": "string", "enum": [ { @@ -2291,7 +2299,7 @@ ] }, "aws-native:apigateway:MethodIntegrationType": { - "description": "The type of backend that your method is running.", + "description": "Specifies an API method integration type. The valid value is one of the following:\n For the HTTP and HTTP proxy integrations, each integration can specify a protocol (``http/https``), port and path. Standard 80 and 443 ports are supported as well as custom ports above 1024. An HTTP or HTTP proxy integration with a ``connectionType`` of ``VPC_LINK`` is referred to as a private integration and uses a VpcLink to connect API Gateway to a network load balancer of a VPC.", "type": "string", "enum": [ { @@ -2317,18 +2325,19 @@ ] }, "aws-native:apigateway:MethodResponse": { + "description": "Represents a method response of a given HTTP status code returned to the client. The method response is passed from the back end through the associated integration response that can be transformed using a mapping template.", "properties": { "responseModels": { "$ref": "pulumi.json#/Any", - "description": "The resources used for the response's content type. Specify response models as key-value pairs (string-to-string maps), with a content type as the key and a Model resource name as the value." + "description": "Specifies the Model resources used for the response's content-type. Response models are represented as a key/value map, with a content-type as the key and a Model name as the value." }, "responseParameters": { "$ref": "pulumi.json#/Any", - "description": "Response parameters that API Gateway sends to the client that called a method. Specify response parameters as key-value pairs (string-to-Boolean maps), with a destination as the key and a Boolean as the value." + "description": "A key-value map specifying required or optional response parameters that API Gateway can send back to the caller. A key defines a method response header and the value specifies whether the associated method response header is required or not. The expression of the key must match the pattern ``method.response.header.{name}``, where ``name`` is a valid and unique header name. API Gateway passes certain integration response data to the method response headers specified here according to the mapping you prescribe in the API's IntegrationResponse. The integration response data that can be mapped include an integration response header expressed in ``integration.response.header.{name}``, a static value enclosed within a pair of single quotes (e.g., ``'application/json'``), or a JSON expression from the back-end response payload in the form of ``integration.response.body.{JSON-expression}``, where ``JSON-expression`` is a valid JSON expression without the ``$`` prefix.)" }, "statusCode": { "type": "string", - "description": "The method response's status code, which you map to an IntegrationResponse." + "description": "The method response's status code." } }, "type": "object", @@ -2337,35 +2346,43 @@ ] }, "aws-native:apigateway:RestApiEndpointConfiguration": { + "description": "The ``EndpointConfiguration`` property type specifies the endpoint types of a REST API.\n ``EndpointConfiguration`` is a property of the [AWS::ApiGateway::RestApi](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html) resource.", "properties": { "types": { "type": "array", "items": { "type": "string" - } + }, + "description": "A list of endpoint types of an API (RestApi) or its custom domain name (DomainName). For an edge-optimized API and its custom domain name, the endpoint type is ``\"EDGE\"``. For a regional API and its custom domain name, the endpoint type is ``REGIONAL``. For a private API, the endpoint type is ``PRIVATE``." }, "vpcEndpointIds": { "type": "array", "items": { "type": "string" - } + }, + "description": "A list of VpcEndpointIds of an API (RestApi) against which to create Route53 ALIASes. It is only supported for ``PRIVATE`` endpoint type." } }, "type": "object" }, "aws-native:apigateway:RestApiS3Location": { + "description": "``S3Location`` is a property of the [AWS::ApiGateway::RestApi](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html) resource that specifies the Amazon S3 location of a OpenAPI (formerly Swagger) file that defines a set of RESTful APIs in JSON or YAML.\n On January 1, 2016, the Swagger Specification was donated to the [OpenAPI initiative](https://docs.aws.amazon.com/https://www.openapis.org/), becoming the foundation of the OpenAPI Specification.", "properties": { "bucket": { - "type": "string" + "type": "string", + "description": "The name of the S3 bucket where the OpenAPI file is stored." }, "eTag": { - "type": "string" + "type": "string", + "description": "The Amazon S3 ETag (a file checksum) of the OpenAPI file. If you don't specify a value, API Gateway skips ETag validation of your OpenAPI file." }, "key": { - "type": "string" + "type": "string", + "description": "The file name of the OpenAPI file (Amazon S3 object name)." }, "version": { - "type": "string" + "type": "string", + "description": "For versioning-enabled buckets, a specific version of the OpenAPI file." } }, "type": "object" @@ -2386,29 +2403,29 @@ ] }, "aws-native:apigateway:StageAccessLogSetting": { - "description": "Specifies settings for logging access in this stage.", + "description": "The ``AccessLogSetting`` property type specifies settings for logging access in this stage.\n ``AccessLogSetting`` is a property of the [AWS::ApiGateway::Stage](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html) resource.", "properties": { "destinationArn": { "type": "string", - "description": "The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with amazon-apigateway-. This parameter is required to enable access logging." + "description": "The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with ``amazon-apigateway-``. This parameter is required to enable access logging." }, "format": { "type": "string", - "description": "A single line format of the access logs of data, as specified by selected $context variables (https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html#context-variable-reference). The format must include at least $context.requestId. This parameter is required to enable access logging." + "description": "A single line format of the access logs of data, as specified by selected [$context variables](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html#context-variable-reference). The format must include at least ``$context.requestId``. This parameter is required to enable access logging." } }, "type": "object" }, "aws-native:apigateway:StageCanarySetting": { - "description": "Specifies settings for the canary deployment in this stage.", + "description": "Configuration settings of a canary deployment.", "properties": { "deploymentId": { "type": "string", - "description": "The identifier of the deployment that the stage points to." + "description": "The ID of the canary deployment." }, "percentTraffic": { "type": "number", - "description": "The percentage (0-100) of traffic diverted to a canary deployment." + "description": "The percent (0-100) of traffic diverted to a canary deployment." }, "stageVariableOverrides": { "$ref": "pulumi.json#/Any", @@ -2416,53 +2433,53 @@ }, "useStageCache": { "type": "boolean", - "description": "Whether the canary deployment uses the stage cache or not." + "description": "A Boolean flag to indicate whether the canary deployment uses the stage cache or not." } }, "type": "object" }, "aws-native:apigateway:StageMethodSetting": { - "description": "Configures settings for all methods in a stage.", + "description": "The ``MethodSetting`` property type configures settings for all methods in a stage.\n The ``MethodSettings`` property of the ``AWS::ApiGateway::Stage`` resource contains a list of ``MethodSetting`` property types.", "properties": { "cacheDataEncrypted": { "type": "boolean", - "description": "Indicates whether the cached responses are encrypted." + "description": "Specifies whether the cached responses are encrypted." }, "cacheTtlInSeconds": { "type": "integer", - "description": "The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses." + "description": "Specifies the time to live (TTL), in seconds, for cached responses. The higher the TTL, the longer the response will be cached." }, "cachingEnabled": { "type": "boolean", - "description": "Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses." + "description": "Specifies whether responses should be cached and returned for requests. A cache cluster must be enabled on the stage for responses to be cached." }, "dataTraceEnabled": { "type": "boolean", - "description": "Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs." + "description": "Specifies whether data trace logging is enabled for this method, which affects the log entries pushed to Amazon CloudWatch Logs. This can be useful to troubleshoot APIs, but can result in logging sensitive data. We recommend that you don't enable this option for production APIs." }, "httpMethod": { "type": "string", - "description": "The HTTP method. You can use an asterisk (*) as a wildcard to apply method settings to multiple methods." + "description": "The HTTP method. To apply settings to multiple resources and methods, specify an asterisk (``*``) for the ``HttpMethod`` and ``/*`` for the ``ResourcePath``. This parameter is required when you specify a ``MethodSetting``." }, "loggingLevel": { "type": "string", - "description": "The logging level for this method. For valid values, see the loggingLevel property of the Stage (https://docs.aws.amazon.com/apigateway/api-reference/resource/stage/#loggingLevel) resource in the Amazon API Gateway API Reference." + "description": "Specifies the logging level for this method, which affects the log entries pushed to Amazon CloudWatch Logs. Valid values are ``OFF``, ``ERROR``, and ``INFO``. Choose ``ERROR`` to write only error-level entries to CloudWatch Logs, or choose ``INFO`` to include all ``ERROR`` events as well as extra informational events." }, "metricsEnabled": { "type": "boolean", - "description": "Indicates whether Amazon CloudWatch metrics are enabled for methods in the stage." + "description": "Specifies whether Amazon CloudWatch metrics are enabled for this method." }, "resourcePath": { "type": "string", - "description": "The resource path for this method. Forward slashes (/) are encoded as ~1 and the initial slash must include a forward slash. For example, the path value /resource/subresource must be encoded as /~1resource~1subresource. To specify the root path, use only a slash (/). You can use an asterisk (*) as a wildcard to apply method settings to multiple methods." + "description": "The resource path for this method. Forward slashes (``/``) are encoded as ``~1`` and the initial slash must include a forward slash. For example, the path value ``/resource/subresource`` must be encoded as ``/~1resource~1subresource``. To specify the root path, use only a slash (``/``). To apply settings to multiple resources and methods, specify an asterisk (``*``) for the ``HttpMethod`` and ``/*`` for the ``ResourcePath``. This parameter is required when you specify a ``MethodSetting``." }, "throttlingBurstLimit": { "type": "integer", - "description": "The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account." + "description": "Specifies the throttling burst limit." }, "throttlingRateLimit": { "type": "number", - "description": "The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account." + "description": "Specifies the throttling rate limit." } }, "type": "object" @@ -2503,7 +2520,7 @@ "type": "object" }, "aws-native:apigateway:UsagePlanKeyKeyType": { - "description": "The type of usage plan key. Currently, the only valid key type is API_KEY.", + "description": "The type of a UsagePlanKey resource for a plan customer.", "type": "string", "enum": [ { @@ -2829,15 +2846,22 @@ "type": "object" }, "aws-native:appconfig:ApplicationTags": { + "description": "Metadata to assign to the application. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define.", "properties": { "key": { - "type": "string" + "type": "string", + "description": "The key-value string map. The valid character set is [a-zA-Z1-9+-=._:/]. The tag key can be up to 128 characters and must not start with aws:." }, "value": { - "type": "string" + "type": "string", + "description": "The tag value can be up to 256 characters." } }, - "type": "object" + "type": "object", + "required": [ + "key", + "value" + ] }, "aws-native:appconfig:ConfigurationProfileTags": { "properties": { @@ -10365,12 +10389,15 @@ ] }, "aws-native:appsync:FunctionConfigurationAppSyncRuntime": { + "description": "Describes a runtime used by an AWS AppSync pipeline resolver or AWS AppSync function. Specifies the name and version of the runtime to use. Note that if a runtime is specified, code must also be specified.", "properties": { "name": { - "type": "string" + "type": "string", + "description": "The name of the runtime to use. Currently, the only allowed value is APPSYNC_JS." }, "runtimeVersion": { - "type": "string" + "type": "string", + "description": "The version of the runtime to use. Currently, the only allowed version is 1.0.0." } }, "type": "object", @@ -10380,20 +10407,25 @@ ] }, "aws-native:appsync:FunctionConfigurationLambdaConflictHandlerConfig": { + "description": "The LambdaConflictHandlerConfig when configuring LAMBDA as the Conflict Handler.", "properties": { "lambdaConflictHandlerArn": { - "type": "string" + "type": "string", + "description": "The Amazon Resource Name (ARN) for the Lambda function to use as the Conflict Handler." } }, "type": "object" }, "aws-native:appsync:FunctionConfigurationSyncConfig": { + "description": "Describes a Sync configuration for a resolver. Specifies which Conflict Detection strategy and Resolution strategy to use when the resolver is invoked.", "properties": { "conflictDetection": { - "type": "string" + "type": "string", + "description": "The Conflict Detection strategy to use." }, "conflictHandler": { - "type": "string" + "type": "string", + "description": "The Conflict Resolution strategy to perform in the event of a conflict." }, "lambdaConflictHandlerConfig": { "$ref": "#/types/aws-native:appsync:FunctionConfigurationLambdaConflictHandlerConfig" @@ -19557,11 +19589,7 @@ "type": "boolean" } }, - "type": "object", - "required": [ - "clientId", - "providerName" - ] + "type": "object" }, "aws-native:cognito:IdentityPoolCognitoStreams": { "properties": { @@ -19591,24 +19619,6 @@ }, "type": "object" }, - "aws-native:cognito:IdentityPoolTag": { - "description": "A key-value pair to associate with a resource.", - "properties": { - "key": { - "type": "string", - "description": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -." - }, - "value": { - "type": "string", - "description": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -." - } - }, - "type": "object", - "required": [ - "key", - "value" - ] - }, "aws-native:cognito:LogDeliveryConfigurationCloudWatchLogsConfiguration": { "properties": { "logGroupArn": { @@ -22594,34 +22604,6 @@ }, "type": "object" }, - "aws-native:connect:ContactFlowModuleState": { - "description": "The state of the contact flow module.", - "type": "string", - "enum": [ - { - "name": "Active", - "value": "ACTIVE" - }, - { - "name": "Archived", - "value": "ARCHIVED" - } - ] - }, - "aws-native:connect:ContactFlowModuleStatus": { - "description": "The status of the contact flow module.", - "type": "string", - "enum": [ - { - "name": "Published", - "value": "PUBLISHED" - }, - { - "name": "Saved", - "value": "SAVED" - } - ] - }, "aws-native:connect:ContactFlowModuleTag": { "description": "A key-value pair to associate with a resource.", "properties": { @@ -24781,6 +24763,321 @@ "uri" ] }, + "aws-native:customerprofiles:DomainAttributeTypesSelector": { + "description": "Configures information about the AttributeTypesSelector where the rule-based identity resolution uses to match profiles.", + "properties": { + "address": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The Address type. You can choose from Address, BusinessAddress, MaillingAddress, and ShippingAddress. You only can use the Address type in the MatchingRule. For example, if you want to match profile based on BusinessAddress.City or MaillingAddress.City, you need to choose the BusinessAddress and the MaillingAddress to represent the Address type and specify the Address.City on the matching rule." + }, + "attributeMatchingModel": { + "$ref": "#/types/aws-native:customerprofiles:DomainAttributeTypesSelectorAttributeMatchingModel", + "description": "Configures the AttributeMatchingModel, you can either choose ONE_TO_ONE or MANY_TO_MANY." + }, + "emailAddress": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The Email type. You can choose from EmailAddress, BusinessEmailAddress and PersonalEmailAddress. You only can use the EmailAddress type in the MatchingRule. For example, if you want to match profile based on PersonalEmailAddress or BusinessEmailAddress, you need to choose the PersonalEmailAddress and the BusinessEmailAddress to represent the EmailAddress type and only specify the EmailAddress on the matching rule." + }, + "phoneNumber": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The PhoneNumber type. You can choose from PhoneNumber, HomePhoneNumber, and MobilePhoneNumber. You only can use the PhoneNumber type in the MatchingRule. For example, if you want to match a profile based on Phone or HomePhone, you need to choose the Phone and the HomePhone to represent the PhoneNumber type and only specify the PhoneNumber on the matching rule." + } + }, + "type": "object", + "required": [ + "attributeMatchingModel" + ] + }, + "aws-native:customerprofiles:DomainAttributeTypesSelectorAttributeMatchingModel": { + "description": "Configures the AttributeMatchingModel, you can either choose ONE_TO_ONE or MANY_TO_MANY.", + "type": "string", + "enum": [ + { + "name": "OneToOne", + "value": "ONE_TO_ONE" + }, + { + "name": "ManyToMany", + "value": "MANY_TO_MANY" + } + ] + }, + "aws-native:customerprofiles:DomainAutoMerging": { + "description": "Configuration information about the auto-merging process.", + "properties": { + "conflictResolution": { + "$ref": "#/types/aws-native:customerprofiles:DomainConflictResolution" + }, + "consolidation": { + "$ref": "#/types/aws-native:customerprofiles:DomainConsolidation" + }, + "enabled": { + "type": "boolean", + "description": "The flag that enables the auto-merging of duplicate profiles." + }, + "minAllowedConfidenceScoreForMerging": { + "type": "number", + "description": "A number between 0 and 1 that represents the minimum confidence score required for profiles within a matching group to be merged during the auto-merge process. A higher score means higher similarity required to merge profiles." + } + }, + "type": "object", + "required": [ + "enabled" + ] + }, + "aws-native:customerprofiles:DomainConflictResolution": { + "description": "How the auto-merging process should resolve conflicts between different profiles. For example, if Profile A and Profile B have the same FirstName and LastName (and that is the matching criteria), which EmailAddress should be used? ", + "properties": { + "conflictResolvingModel": { + "$ref": "#/types/aws-native:customerprofiles:DomainConflictResolutionConflictResolvingModel", + "description": "How the auto-merging process should resolve conflicts between different profiles." + }, + "sourceName": { + "type": "string", + "description": "The ObjectType name that is used to resolve profile merging conflicts when choosing SOURCE as the ConflictResolvingModel." + } + }, + "type": "object", + "required": [ + "conflictResolvingModel" + ] + }, + "aws-native:customerprofiles:DomainConflictResolutionConflictResolvingModel": { + "description": "How the auto-merging process should resolve conflicts between different profiles.", + "type": "string", + "enum": [ + { + "name": "Recency", + "value": "RECENCY" + }, + { + "name": "Source", + "value": "SOURCE" + } + ] + }, + "aws-native:customerprofiles:DomainConsolidation": { + "description": "A list of matching attributes that represent matching criteria. If two profiles meet at least one of the requirements in the matching attributes list, they will be merged.", + "properties": { + "matchingAttributesList": { + "type": "array", + "items": { + "type": "array", + "items": { + "type": "string" + } + }, + "description": "A list of matching criteria." + } + }, + "type": "object", + "required": [ + "matchingAttributesList" + ] + }, + "aws-native:customerprofiles:DomainExportingConfig": { + "description": "Configuration information for exporting Identity Resolution results, for example, to an S3 bucket.", + "properties": { + "s3Exporting": { + "$ref": "#/types/aws-native:customerprofiles:DomainS3ExportingConfig" + } + }, + "type": "object" + }, + "aws-native:customerprofiles:DomainJobSchedule": { + "description": "The day and time when do you want to start the Identity Resolution Job every week.", + "properties": { + "dayOfTheWeek": { + "$ref": "#/types/aws-native:customerprofiles:DomainJobScheduleDayOfTheWeek", + "description": "The day when the Identity Resolution Job should run every week." + }, + "time": { + "type": "string", + "description": "The time when the Identity Resolution Job should run every week." + } + }, + "type": "object", + "required": [ + "dayOfTheWeek", + "time" + ] + }, + "aws-native:customerprofiles:DomainJobScheduleDayOfTheWeek": { + "description": "The day when the Identity Resolution Job should run every week.", + "type": "string", + "enum": [ + { + "name": "Sunday", + "value": "SUNDAY" + }, + { + "name": "Monday", + "value": "MONDAY" + }, + { + "name": "Tuesday", + "value": "TUESDAY" + }, + { + "name": "Wednesday", + "value": "WEDNESDAY" + }, + { + "name": "Thursday", + "value": "THURSDAY" + }, + { + "name": "Friday", + "value": "FRIDAY" + }, + { + "name": "Saturday", + "value": "SATURDAY" + } + ] + }, + "aws-native:customerprofiles:DomainMatching": { + "description": "The process of matching duplicate profiles. If Matching = true, Amazon Connect Customer Profiles starts a weekly batch process called Identity Resolution Job. If you do not specify a date and time for Identity Resolution Job to run, by default it runs every Saturday at 12AM UTC to detect duplicate profiles in your domains. After the Identity Resolution Job completes, use the GetMatches API to return and review the results. Or, if you have configured ExportingConfig in the MatchingRequest, you can download the results from S3.", + "properties": { + "autoMerging": { + "$ref": "#/types/aws-native:customerprofiles:DomainAutoMerging" + }, + "enabled": { + "type": "boolean", + "description": "The flag that enables the matching process of duplicate profiles." + }, + "exportingConfig": { + "$ref": "#/types/aws-native:customerprofiles:DomainExportingConfig" + }, + "jobSchedule": { + "$ref": "#/types/aws-native:customerprofiles:DomainJobSchedule" + } + }, + "type": "object", + "required": [ + "enabled" + ] + }, + "aws-native:customerprofiles:DomainMatchingRule": { + "description": "Specifies how does the rule-based matching process should match profiles.", + "properties": { + "rule": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "type": "object", + "required": [ + "rule" + ] + }, + "aws-native:customerprofiles:DomainRuleBasedMatching": { + "description": "The process of matching duplicate profiles using the Rule-Based matching. If RuleBasedMatching = true, Amazon Connect Customer Profiles will start to match and merge your profiles according to your configuration in the RuleBasedMatchingRequest. You can use the ListRuleBasedMatches and GetSimilarProfiles API to return and review the results. Also, if you have configured ExportingConfig in the RuleBasedMatchingRequest, you can download the results from S3.", + "properties": { + "attributeTypesSelector": { + "$ref": "#/types/aws-native:customerprofiles:DomainAttributeTypesSelector" + }, + "conflictResolution": { + "$ref": "#/types/aws-native:customerprofiles:DomainConflictResolution" + }, + "enabled": { + "type": "boolean", + "description": "The flag that enables the rule-based matching process of duplicate profiles." + }, + "exportingConfig": { + "$ref": "#/types/aws-native:customerprofiles:DomainExportingConfig" + }, + "matchingRules": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:customerprofiles:DomainMatchingRule" + }, + "description": "Configures how the rule-based matching process should match profiles. You can have up to 15 MatchingRule in the MatchingRules." + }, + "maxAllowedRuleLevelForMatching": { + "type": "integer", + "description": "Indicates the maximum allowed rule level for matching." + }, + "maxAllowedRuleLevelForMerging": { + "type": "integer", + "description": "Indicates the maximum allowed rule level for merging." + }, + "status": { + "$ref": "#/types/aws-native:customerprofiles:DomainRuleBasedMatchingStatus" + } + }, + "type": "object", + "required": [ + "enabled" + ] + }, + "aws-native:customerprofiles:DomainRuleBasedMatchingStatus": { + "type": "string", + "enum": [ + { + "name": "Pending", + "value": "PENDING" + }, + { + "name": "InProgress", + "value": "IN_PROGRESS" + }, + { + "name": "Active", + "value": "ACTIVE" + } + ] + }, + "aws-native:customerprofiles:DomainS3ExportingConfig": { + "description": "The S3 location where Identity Resolution Jobs write result files.", + "properties": { + "s3BucketName": { + "type": "string", + "description": "The name of the S3 bucket where Identity Resolution Jobs write result files." + }, + "s3KeyName": { + "type": "string", + "description": "The S3 key name of the location where Identity Resolution Jobs write result files." + } + }, + "type": "object", + "required": [ + "s3BucketName" + ] + }, + "aws-native:customerprofiles:DomainStats": { + "description": "Usage-specific statistics about the domain.", + "properties": { + "meteringProfileCount": { + "type": "number", + "description": "The number of profiles that you are currently paying for in the domain. If you have more than 100 objects associated with a single profile, that profile counts as two profiles. If you have more than 200 objects, that profile counts as three, and so on." + }, + "objectCount": { + "type": "number", + "description": "The total number of objects in domain." + }, + "profileCount": { + "type": "number", + "description": "The total number of profiles currently in the domain." + }, + "totalSize": { + "type": "number", + "description": "The total size, in bytes, of all objects in the domain." + } + }, + "type": "object" + }, "aws-native:customerprofiles:DomainTag": { "properties": { "key": { @@ -42012,6 +42309,106 @@ "aws-native:emrserverless:ApplicationWorkerTypeSpecificationInputMap": { "type": "object" }, + "aws-native:entityresolution:IdMappingWorkflowIdMappingTechniques": { + "properties": { + "idMappingType": { + "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowIdMappingTechniquesIdMappingType" + }, + "providerProperties": { + "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowProviderProperties" + } + }, + "type": "object" + }, + "aws-native:entityresolution:IdMappingWorkflowIdMappingTechniquesIdMappingType": { + "type": "string", + "enum": [ + { + "name": "Provider", + "value": "PROVIDER" + } + ] + }, + "aws-native:entityresolution:IdMappingWorkflowInputSource": { + "properties": { + "inputSourceArn": { + "type": "string", + "description": "An Glue table ARN for the input source table" + }, + "schemaArn": { + "type": "string" + } + }, + "type": "object", + "required": [ + "inputSourceArn", + "schemaArn" + ] + }, + "aws-native:entityresolution:IdMappingWorkflowIntermediateSourceConfiguration": { + "properties": { + "intermediateS3Path": { + "type": "string", + "description": "The s3 path that would be used to stage the intermediate data being generated during workflow execution." + } + }, + "type": "object", + "required": [ + "intermediateS3Path" + ] + }, + "aws-native:entityresolution:IdMappingWorkflowOutputSource": { + "properties": { + "kmsArn": { + "type": "string" + }, + "outputS3Path": { + "type": "string", + "description": "The S3 path to which Entity Resolution will write the output table" + } + }, + "type": "object", + "required": [ + "outputS3Path" + ] + }, + "aws-native:entityresolution:IdMappingWorkflowProviderProperties": { + "properties": { + "intermediateSourceConfiguration": { + "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowIntermediateSourceConfiguration" + }, + "providerConfiguration": { + "$ref": "pulumi.json#/Any", + "description": "Additional Provider configuration that would be required for the provider service. The Configuration must be in JSON string format" + }, + "providerServiceArn": { + "type": "string", + "description": "Arn of the Provider Service being used." + } + }, + "type": "object", + "required": [ + "providerServiceArn" + ] + }, + "aws-native:entityresolution:IdMappingWorkflowTag": { + "description": "A key-value pair to associate with a resource", + "properties": { + "key": { + "type": "string", + "description": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -." + }, + "value": { + "type": "string", + "description": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -." + } + }, + "type": "object", + "required": [ + "key", + "value" + ] + }, "aws-native:entityresolution:MatchingWorkflowInputSource": { "properties": { "applyNormalization": { @@ -42893,12 +43290,6 @@ "sql": { "type": "string" }, - "sqls": { - "type": "array", - "items": { - "type": "string" - } - }, "statementName": { "type": "string" }, @@ -42991,20 +43382,6 @@ "messageGroupId" ] }, - "aws-native:events:RuleState": { - "description": "The state of the rule.", - "type": "string", - "enum": [ - { - "name": "Disabled", - "value": "DISABLED" - }, - { - "name": "Enabled", - "value": "ENABLED" - } - ] - }, "aws-native:events:RuleTag": { "properties": { "key": { @@ -45980,6 +46357,16 @@ } ] }, + "aws-native:gamelift:FleetInstanceRoleCredentialsProvider": { + "description": "Credentials provider implementation that loads credentials from the Amazon EC2 Instance Metadata Service.", + "type": "string", + "enum": [ + { + "name": "SharedCredentialFile", + "value": "SHARED_CREDENTIAL_FILE" + } + ] + }, "aws-native:gamelift:FleetIpPermission": { "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.", "properties": { @@ -50336,10 +50723,12 @@ "aws-native:iam:GroupPolicy": { "properties": { "policyDocument": { - "$ref": "pulumi.json#/Any" + "type": "string", + "description": "The policy document." }, "policyName": { - "type": "string" + "type": "string", + "description": "The friendly name (not ARN) identifying the policy." } }, "type": "object", @@ -54382,6 +54771,21 @@ } ] }, + "aws-native:iot:PolicyTag": { + "properties": { + "key": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "type": "object", + "required": [ + "key", + "value" + ] + }, "aws-native:iot:PresignedUrlConfigProperties": { "description": "Configuration for pre-signed S3 URLs.", "properties": { @@ -78266,6 +78670,199 @@ }, "type": "object" }, + "aws-native:msk:ReplicatorAmazonMskCluster": { + "description": "Details of an Amazon MSK cluster.", + "properties": { + "mskClusterArn": { + "type": "string", + "description": "The ARN of an Amazon MSK cluster." + } + }, + "type": "object", + "required": [ + "mskClusterArn" + ] + }, + "aws-native:msk:ReplicatorConsumerGroupReplication": { + "description": "Configuration relating to consumer group replication.", + "properties": { + "consumerGroupsToExclude": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of regular expression patterns indicating the consumer groups that should not be replicated." + }, + "consumerGroupsToReplicate": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of regular expression patterns indicating the consumer groups to copy." + }, + "detectAndCopyNewConsumerGroups": { + "type": "boolean", + "description": "Whether to periodically check for new consumer groups." + }, + "synchroniseConsumerGroupOffsets": { + "type": "boolean", + "description": "Whether to periodically write the translated offsets to __consumer_offsets topic in target cluster." + } + }, + "type": "object", + "required": [ + "consumerGroupsToReplicate" + ] + }, + "aws-native:msk:ReplicatorKafkaCluster": { + "description": "Details of a Kafka cluster for replication.", + "properties": { + "amazonMskCluster": { + "$ref": "#/types/aws-native:msk:ReplicatorAmazonMskCluster", + "description": "Details of an Amazon MSK cluster. Exactly one of AmazonMskCluster is required." + }, + "vpcConfig": { + "$ref": "#/types/aws-native:msk:ReplicatorKafkaClusterClientVpcConfig", + "description": "Details of an Amazon VPC which has network connectivity to the Apache Kafka cluster." + } + }, + "type": "object", + "required": [ + "amazonMskCluster", + "vpcConfig" + ] + }, + "aws-native:msk:ReplicatorKafkaClusterClientVpcConfig": { + "description": "Details of an Amazon VPC which has network connectivity to the Kafka cluster.", + "properties": { + "securityGroupIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The AWS security groups to associate with the elastic network interfaces in order to specify what the replicator has access to. If a security group is not specified, the default security group associated with the VPC is used." + }, + "subnetIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of subnets to connect to in the virtual private cloud (VPC). AWS creates elastic network interfaces inside these subnets." + } + }, + "type": "object", + "required": [ + "subnetIds" + ] + }, + "aws-native:msk:ReplicatorReplicationInfo": { + "description": "Specifies configuration for replication between a source and target Kafka cluster.", + "properties": { + "consumerGroupReplication": { + "$ref": "#/types/aws-native:msk:ReplicatorConsumerGroupReplication", + "description": "Configuration relating to consumer group replication." + }, + "sourceKafkaClusterArn": { + "type": "string", + "description": "Amazon Resource Name of the source Kafka cluster." + }, + "targetCompressionType": { + "$ref": "#/types/aws-native:msk:ReplicatorReplicationInfoTargetCompressionType", + "description": "The type of compression to use writing records to target Kafka cluster." + }, + "targetKafkaClusterArn": { + "type": "string", + "description": "Amazon Resource Name of the target Kafka cluster." + }, + "topicReplication": { + "$ref": "#/types/aws-native:msk:ReplicatorTopicReplication", + "description": "Configuration relating to topic replication." + } + }, + "type": "object", + "required": [ + "consumerGroupReplication", + "sourceKafkaClusterArn", + "targetCompressionType", + "targetKafkaClusterArn", + "topicReplication" + ] + }, + "aws-native:msk:ReplicatorReplicationInfoTargetCompressionType": { + "description": "The type of compression to use writing records to target Kafka cluster.", + "type": "string", + "enum": [ + { + "name": "None", + "value": "NONE" + }, + { + "name": "Gzip", + "value": "GZIP" + }, + { + "name": "Snappy", + "value": "SNAPPY" + }, + { + "name": "Lz4", + "value": "LZ4" + }, + { + "name": "Zstd", + "value": "ZSTD" + } + ] + }, + "aws-native:msk:ReplicatorTag": { + "properties": { + "key": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "type": "object", + "required": [ + "key", + "value" + ] + }, + "aws-native:msk:ReplicatorTopicReplication": { + "properties": { + "copyAccessControlListsForTopics": { + "type": "boolean", + "description": "Whether to periodically configure remote topic ACLs to match their corresponding upstream topics." + }, + "copyTopicConfigurations": { + "type": "boolean", + "description": "Whether to periodically configure remote topics to match their corresponding upstream topics." + }, + "detectAndCopyNewTopics": { + "type": "boolean", + "description": "Whether to periodically check for new topics and partitions." + }, + "topicsToExclude": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of regular expression patterns indicating the topics that should not be replicated." + }, + "topicsToReplicate": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of regular expression patterns indicating the topics to copy." + } + }, + "type": "object", + "required": [ + "topicsToReplicate" + ] + }, "aws-native:msk:ServerlessClusterClientAuthentication": { "properties": { "sasl": { @@ -95539,6 +96136,30 @@ } ] }, + "aws-native:quicksight:AnalysisValidationStrategy": { + "properties": { + "mode": { + "$ref": "#/types/aws-native:quicksight:AnalysisValidationStrategyMode" + } + }, + "type": "object", + "required": [ + "mode" + ] + }, + "aws-native:quicksight:AnalysisValidationStrategyMode": { + "type": "string", + "enum": [ + { + "name": "Strict", + "value": "STRICT" + }, + { + "name": "Lenient", + "value": "LENIENT" + } + ] + }, "aws-native:quicksight:AnalysisValueWhenUnsetOption": { "type": "string", "enum": [ @@ -105869,6 +106490,30 @@ } ] }, + "aws-native:quicksight:DashboardValidationStrategy": { + "properties": { + "mode": { + "$ref": "#/types/aws-native:quicksight:DashboardValidationStrategyMode" + } + }, + "type": "object", + "required": [ + "mode" + ] + }, + "aws-native:quicksight:DashboardValidationStrategyMode": { + "type": "string", + "enum": [ + { + "name": "Strict", + "value": "STRICT" + }, + { + "name": "Lenient", + "value": "LENIENT" + } + ] + }, "aws-native:quicksight:DashboardValueWhenUnsetOption": { "type": "string", "enum": [ @@ -117567,6 +118212,30 @@ } ] }, + "aws-native:quicksight:TemplateValidationStrategy": { + "properties": { + "mode": { + "$ref": "#/types/aws-native:quicksight:TemplateValidationStrategyMode" + } + }, + "type": "object", + "required": [ + "mode" + ] + }, + "aws-native:quicksight:TemplateValidationStrategyMode": { + "type": "string", + "enum": [ + { + "name": "Strict", + "value": "STRICT" + }, + { + "name": "Lenient", + "value": "LENIENT" + } + ] + }, "aws-native:quicksight:TemplateValueWhenUnsetOption": { "type": "string", "enum": [ @@ -123719,11 +124388,9 @@ "type": "object" }, "aws-native:s3:BucketAbortIncompleteMultipartUpload": { - "description": "Specifies the days since the initiation of an incomplete multipart upload that Amazon S3 will wait before permanently removing all parts of the upload.", "properties": { "daysAfterInitiation": { - "type": "integer", - "description": "Specifies the number of days after which Amazon S3 aborts an incomplete multipart upload." + "type": "integer" } }, "type": "object", @@ -123734,8 +124401,7 @@ "aws-native:s3:BucketAccelerateConfiguration": { "properties": { "accelerationStatus": { - "$ref": "#/types/aws-native:s3:BucketAccelerateConfigurationAccelerationStatus", - "description": "Configures the transfer acceleration state for an Amazon S3 bucket." + "type": "string" } }, "type": "object", @@ -123743,60 +124409,7 @@ "accelerationStatus" ] }, - "aws-native:s3:BucketAccelerateConfigurationAccelerationStatus": { - "description": "Configures the transfer acceleration state for an Amazon S3 bucket.", - "type": "string", - "enum": [ - { - "name": "Enabled", - "value": "Enabled" - }, - { - "name": "Suspended", - "value": "Suspended" - } - ] - }, - "aws-native:s3:BucketAccessControl": { - "description": "A canned access control list (ACL) that grants predefined permissions to the bucket.", - "type": "string", - "enum": [ - { - "name": "AuthenticatedRead", - "value": "AuthenticatedRead" - }, - { - "name": "AwsExecRead", - "value": "AwsExecRead" - }, - { - "name": "BucketOwnerFullControl", - "value": "BucketOwnerFullControl" - }, - { - "name": "BucketOwnerRead", - "value": "BucketOwnerRead" - }, - { - "name": "LogDeliveryWrite", - "value": "LogDeliveryWrite" - }, - { - "name": "Private", - "value": "Private" - }, - { - "name": "PublicRead", - "value": "PublicRead" - }, - { - "name": "PublicReadWrite", - "value": "PublicReadWrite" - } - ] - }, "aws-native:s3:BucketAccessControlTranslation": { - "description": "Specify this only in a cross-account scenario (where source and destination bucket owners are not the same), and you want to change replica ownership to the AWS account that owns the destination bucket. If this is not specified in the replication configuration, the replicas are owned by same AWS account that owns the source object.", "properties": { "owner": { "type": "string" @@ -123808,15 +124421,12 @@ ] }, "aws-native:s3:BucketAnalyticsConfiguration": { - "description": "Specifies the configuration and any analyses for the analytics filter of an Amazon S3 bucket.", "properties": { "id": { - "type": "string", - "description": "The ID that identifies the analytics configuration." + "type": "string" }, "prefix": { - "type": "string", - "description": "The prefix that an object must have to be included in the analytics results." + "type": "string" }, "storageClassAnalysis": { "$ref": "#/types/aws-native:s3:BucketStorageClassAnalysis" @@ -123849,43 +124459,36 @@ ] }, "aws-native:s3:BucketCorsRule": { - "description": "A set of origins and methods (cross-origin access that you want to allow). You can add up to 100 rules to the configuration.", "properties": { "allowedHeaders": { "type": "array", "items": { "type": "string" - }, - "description": "Headers that are specified in the Access-Control-Request-Headers header." + } }, "allowedMethods": { "type": "array", "items": { - "$ref": "#/types/aws-native:s3:BucketCorsRuleAllowedMethodsItem" - }, - "description": "An HTTP method that you allow the origin to execute." + "type": "string" + } }, "allowedOrigins": { "type": "array", "items": { "type": "string" - }, - "description": "One or more origins you want customers to be able to access the bucket from." + } }, "exposedHeaders": { "type": "array", "items": { "type": "string" - }, - "description": "One or more headers in the response that you want customers to be able to access from their applications (for example, from a JavaScript XMLHttpRequest object)." + } }, "id": { - "type": "string", - "description": "A unique identifier for this rule." + "type": "string" }, "maxAge": { - "type": "integer", - "description": "The time in seconds that your browser is to cache the preflight response for the specified resource." + "type": "integer" } }, "type": "object", @@ -123894,40 +124497,13 @@ "allowedOrigins" ] }, - "aws-native:s3:BucketCorsRuleAllowedMethodsItem": { - "type": "string", - "enum": [ - { - "name": "Get", - "value": "GET" - }, - { - "name": "Put", - "value": "PUT" - }, - { - "name": "Head", - "value": "HEAD" - }, - { - "name": "Post", - "value": "POST" - }, - { - "name": "Delete", - "value": "DELETE" - } - ] - }, "aws-native:s3:BucketDataExport": { - "description": "Specifies how data related to the storage class analysis for an Amazon S3 bucket should be exported.", "properties": { "destination": { "$ref": "#/types/aws-native:s3:BucketDestination" }, "outputSchemaVersion": { - "type": "string", - "description": "The version of the output schema to use when exporting data." + "type": "string" } }, "type": "object", @@ -123937,13 +124513,12 @@ ] }, "aws-native:s3:BucketDefaultRetention": { - "description": "The default retention period that you want to apply to new objects placed in the specified bucket.", "properties": { "days": { "type": "integer" }, "mode": { - "$ref": "#/types/aws-native:s3:BucketDefaultRetentionMode" + "type": "string" }, "years": { "type": "integer" @@ -123951,58 +124526,27 @@ }, "type": "object" }, - "aws-native:s3:BucketDefaultRetentionMode": { - "type": "string", - "enum": [ - { - "name": "Compliance", - "value": "COMPLIANCE" - }, - { - "name": "Governance", - "value": "GOVERNANCE" - } - ] - }, "aws-native:s3:BucketDeleteMarkerReplication": { "properties": { "status": { - "$ref": "#/types/aws-native:s3:BucketDeleteMarkerReplicationStatus" + "type": "string" } }, "type": "object" }, - "aws-native:s3:BucketDeleteMarkerReplicationStatus": { - "type": "string", - "enum": [ - { - "name": "Disabled", - "value": "Disabled" - }, - { - "name": "Enabled", - "value": "Enabled" - } - ] - }, "aws-native:s3:BucketDestination": { - "description": "Specifies information about where to publish analysis or configuration results for an Amazon S3 bucket and S3 Replication Time Control (S3 RTC).", "properties": { "bucketAccountId": { - "type": "string", - "description": "The account ID that owns the destination S3 bucket. " + "type": "string" }, "bucketArn": { - "type": "string", - "description": "The Amazon Resource Name (ARN) of the bucket to which data is exported." + "type": "string" }, "format": { - "$ref": "#/types/aws-native:s3:BucketDestinationFormat", - "description": "Specifies the file format used when exporting data to Amazon S3." + "type": "string" }, "prefix": { - "type": "string", - "description": "The prefix to use when exporting data. The prefix is prepended to all results." + "type": "string" } }, "type": "object", @@ -124011,33 +124555,13 @@ "format" ] }, - "aws-native:s3:BucketDestinationFormat": { - "description": "Specifies the file format used when exporting data to Amazon S3.", - "type": "string", - "enum": [ - { - "name": "Csv", - "value": "CSV" - }, - { - "name": "Orc", - "value": "ORC" - }, - { - "name": "Parquet", - "value": "Parquet" - } - ] - }, "aws-native:s3:BucketEncryption": { - "description": "Specifies default encryption for a bucket using server-side encryption with either Amazon S3-managed keys (SSE-S3) or AWS KMS-managed keys (SSE-KMS).", "properties": { "serverSideEncryptionConfiguration": { "type": "array", "items": { "$ref": "#/types/aws-native:s3:BucketServerSideEncryptionRule" - }, - "description": "Specifies the default server-side-encryption configuration." + } } }, "type": "object", @@ -124046,11 +124570,9 @@ ] }, "aws-native:s3:BucketEncryptionConfiguration": { - "description": "Specifies encryption-related information for an Amazon S3 bucket that is a destination for replicated objects.", "properties": { "replicaKmsKeyId": { - "type": "string", - "description": "Specifies the ID (Key ARN or Alias ARN) of the customer managed customer master key (CMK) stored in AWS Key Management Service (KMS) for the destination bucket." + "type": "string" } }, "type": "object", @@ -124059,20 +124581,14 @@ ] }, "aws-native:s3:BucketEventBridgeConfiguration": { - "description": "Describes the Amazon EventBridge notification configuration for an Amazon S3 bucket.", "properties": { "eventBridgeEnabled": { - "type": "boolean", - "description": "Specifies whether to send notifications to Amazon EventBridge when events occur in an Amazon S3 bucket." + "type": "boolean" } }, - "type": "object", - "required": [ - "eventBridgeEnabled" - ] + "type": "object" }, "aws-native:s3:BucketFilterRule": { - "description": "Specifies the Amazon S3 object key name to filter on and whether to filter on the suffix or prefix of the key name.", "properties": { "name": { "type": "string" @@ -124090,30 +124606,25 @@ "aws-native:s3:BucketIntelligentTieringConfiguration": { "properties": { "id": { - "type": "string", - "description": "The ID used to identify the S3 Intelligent-Tiering configuration." + "type": "string" }, "prefix": { - "type": "string", - "description": "An object key name prefix that identifies the subset of objects to which the rule applies." + "type": "string" }, "status": { - "$ref": "#/types/aws-native:s3:BucketIntelligentTieringConfigurationStatus", - "description": "Specifies the status of the configuration." + "type": "string" }, "tagFilters": { "type": "array", "items": { "$ref": "#/types/aws-native:s3:BucketTagFilter" - }, - "description": "A container for a key-value pair." + } }, "tierings": { "type": "array", "items": { "$ref": "#/types/aws-native:s3:BucketTiering" - }, - "description": "Specifies a list of S3 Intelligent-Tiering storage class tiers in the configuration. At least one tier must be defined in the list. At most, you can specify two tiers in the list, one for each available AccessTier: ARCHIVE_ACCESS and DEEP_ARCHIVE_ACCESS." + } } }, "type": "object", @@ -124123,51 +124634,31 @@ "tierings" ] }, - "aws-native:s3:BucketIntelligentTieringConfigurationStatus": { - "description": "Specifies the status of the configuration.", - "type": "string", - "enum": [ - { - "name": "Disabled", - "value": "Disabled" - }, - { - "name": "Enabled", - "value": "Enabled" - } - ] - }, "aws-native:s3:BucketInventoryConfiguration": { "properties": { "destination": { "$ref": "#/types/aws-native:s3:BucketDestination" }, "enabled": { - "type": "boolean", - "description": "Specifies whether the inventory is enabled or disabled." + "type": "boolean" }, "id": { - "type": "string", - "description": "The ID used to identify the inventory configuration." + "type": "string" }, "includedObjectVersions": { - "$ref": "#/types/aws-native:s3:BucketInventoryConfigurationIncludedObjectVersions", - "description": "Object versions to include in the inventory list." + "type": "string" }, "optionalFields": { "type": "array", "items": { - "$ref": "#/types/aws-native:s3:BucketInventoryConfigurationOptionalFieldsItem" - }, - "description": "Contains the optional fields that are included in the inventory results." + "type": "string" + } }, "prefix": { - "type": "string", - "description": "The prefix that is prepended to all inventory results." + "type": "string" }, "scheduleFrequency": { - "$ref": "#/types/aws-native:s3:BucketInventoryConfigurationScheduleFrequency", - "description": "Specifies the schedule for generating inventory results." + "type": "string" } }, "type": "object", @@ -124179,101 +124670,16 @@ "scheduleFrequency" ] }, - "aws-native:s3:BucketInventoryConfigurationIncludedObjectVersions": { - "description": "Object versions to include in the inventory list.", - "type": "string", - "enum": [ - { - "name": "All", - "value": "All" - }, - { - "name": "Current", - "value": "Current" - } - ] - }, - "aws-native:s3:BucketInventoryConfigurationOptionalFieldsItem": { - "type": "string", - "enum": [ - { - "name": "Size", - "value": "Size" - }, - { - "name": "LastModifiedDate", - "value": "LastModifiedDate" - }, - { - "name": "StorageClass", - "value": "StorageClass" - }, - { - "name": "ETag", - "value": "ETag" - }, - { - "name": "IsMultipartUploaded", - "value": "IsMultipartUploaded" - }, - { - "name": "ReplicationStatus", - "value": "ReplicationStatus" - }, - { - "name": "EncryptionStatus", - "value": "EncryptionStatus" - }, - { - "name": "ObjectLockRetainUntilDate", - "value": "ObjectLockRetainUntilDate" - }, - { - "name": "ObjectLockMode", - "value": "ObjectLockMode" - }, - { - "name": "ObjectLockLegalHoldStatus", - "value": "ObjectLockLegalHoldStatus" - }, - { - "name": "IntelligentTieringAccessTier", - "value": "IntelligentTieringAccessTier" - }, - { - "name": "BucketKeyStatus", - "value": "BucketKeyStatus" - } - ] - }, - "aws-native:s3:BucketInventoryConfigurationScheduleFrequency": { - "description": "Specifies the schedule for generating inventory results.", - "type": "string", - "enum": [ - { - "name": "Daily", - "value": "Daily" - }, - { - "name": "Weekly", - "value": "Weekly" - } - ] - }, "aws-native:s3:BucketLambdaConfiguration": { - "description": "Describes the AWS Lambda functions to invoke and the events for which to invoke them.", "properties": { "event": { - "type": "string", - "description": "The Amazon S3 bucket event for which to invoke the AWS Lambda function." + "type": "string" }, "filter": { - "$ref": "#/types/aws-native:s3:BucketNotificationFilter", - "description": "The filtering rules that determine which objects invoke the AWS Lambda function." + "$ref": "#/types/aws-native:s3:BucketNotificationFilter" }, "function": { - "type": "string", - "description": "The Amazon Resource Name (ARN) of the AWS Lambda function that Amazon S3 invokes when the specified event type occurs." + "type": "string" } }, "type": "object", @@ -124288,8 +124694,7 @@ "type": "array", "items": { "$ref": "#/types/aws-native:s3:BucketRule" - }, - "description": "A lifecycle rule for individual objects in an Amazon S3 bucket." + } } }, "type": "object", @@ -124300,8 +124705,7 @@ "aws-native:s3:BucketLoggingConfiguration": { "properties": { "destinationBucketName": { - "type": "string", - "description": "The name of an Amazon S3 bucket where Amazon S3 store server access log files. You can store log files in any bucket that you own. By default, logs are stored in the bucket where the LoggingConfiguration property is defined." + "type": "string" }, "logFilePrefix": { "type": "string" @@ -124315,7 +124719,7 @@ "$ref": "#/types/aws-native:s3:BucketReplicationTimeValue" }, "status": { - "$ref": "#/types/aws-native:s3:BucketMetricsStatus" + "type": "string" } }, "type": "object", @@ -124346,29 +124750,13 @@ "id" ] }, - "aws-native:s3:BucketMetricsStatus": { - "type": "string", - "enum": [ - { - "name": "Disabled", - "value": "Disabled" - }, - { - "name": "Enabled", - "value": "Enabled" - } - ] - }, "aws-native:s3:BucketNoncurrentVersionExpiration": { - "description": "Container for the expiration rule that describes when noncurrent objects are expired. If your bucket is versioning-enabled (or versioning is suspended), you can set this action to request that Amazon S3 expire noncurrent object versions at a specific period in the object's lifetime", "properties": { "newerNoncurrentVersions": { - "type": "integer", - "description": "Specified the number of newer noncurrent and current versions that must exists before performing the associated action" + "type": "integer" }, "noncurrentDays": { - "type": "integer", - "description": "Specified the number of days an object is noncurrent before Amazon S3 can perform the associated action" + "type": "integer" } }, "type": "object", @@ -124377,19 +124765,15 @@ ] }, "aws-native:s3:BucketNoncurrentVersionTransition": { - "description": "Container for the transition rule that describes when noncurrent objects transition to the STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER_IR, GLACIER, or DEEP_ARCHIVE storage class. If your bucket is versioning-enabled (or versioning is suspended), you can set this action to request that Amazon S3 transition noncurrent object versions to the STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER_IR, GLACIER, or DEEP_ARCHIVE storage class at a specific period in the object's lifetime.", "properties": { "newerNoncurrentVersions": { - "type": "integer", - "description": "Specified the number of newer noncurrent and current versions that must exists before performing the associated action" + "type": "integer" }, "storageClass": { - "$ref": "#/types/aws-native:s3:BucketNoncurrentVersionTransitionStorageClass", - "description": "The class of storage used to store the object." + "type": "string" }, "transitionInDays": { - "type": "integer", - "description": "Specifies the number of days an object is noncurrent before Amazon S3 can perform the associated action." + "type": "integer" } }, "type": "object", @@ -124398,38 +124782,7 @@ "transitionInDays" ] }, - "aws-native:s3:BucketNoncurrentVersionTransitionStorageClass": { - "description": "The class of storage used to store the object.", - "type": "string", - "enum": [ - { - "name": "DeepArchive", - "value": "DEEP_ARCHIVE" - }, - { - "name": "Glacier", - "value": "GLACIER" - }, - { - "name": "GlacierIr", - "value": "GLACIER_IR" - }, - { - "name": "IntelligentTiering", - "value": "INTELLIGENT_TIERING" - }, - { - "name": "OnezoneIa", - "value": "ONEZONE_IA" - }, - { - "name": "StandardIa", - "value": "STANDARD_IA" - } - ] - }, "aws-native:s3:BucketNotificationConfiguration": { - "description": "Describes the notification configuration for an Amazon S3 bucket.", "properties": { "eventBridgeConfiguration": { "$ref": "#/types/aws-native:s3:BucketEventBridgeConfiguration" @@ -124456,7 +124809,6 @@ "type": "object" }, "aws-native:s3:BucketNotificationFilter": { - "description": "Specifies object key name filtering rules.", "properties": { "s3Key": { "$ref": "#/types/aws-native:s3:BucketS3KeyFilter" @@ -124479,7 +124831,6 @@ "type": "object" }, "aws-native:s3:BucketObjectLockRule": { - "description": "The Object Lock rule in place for the specified object.", "properties": { "defaultRetention": { "$ref": "#/types/aws-native:s3:BucketDefaultRetention" @@ -124504,66 +124855,38 @@ "aws-native:s3:BucketOwnershipControlsRule": { "properties": { "objectOwnership": { - "$ref": "#/types/aws-native:s3:BucketOwnershipControlsRuleObjectOwnership", - "description": "Specifies an object ownership rule." + "type": "string" } }, "type": "object" }, - "aws-native:s3:BucketOwnershipControlsRuleObjectOwnership": { - "description": "Specifies an object ownership rule.", - "type": "string", - "enum": [ - { - "name": "ObjectWriter", - "value": "ObjectWriter" - }, - { - "name": "BucketOwnerPreferred", - "value": "BucketOwnerPreferred" - }, - { - "name": "BucketOwnerEnforced", - "value": "BucketOwnerEnforced" - } - ] - }, "aws-native:s3:BucketPublicAccessBlockConfiguration": { - "description": "Configuration that defines how Amazon S3 handles public access.", "properties": { "blockPublicAcls": { - "type": "boolean", - "description": "Specifies whether Amazon S3 should block public access control lists (ACLs) for this bucket and objects in this bucket. Setting this element to TRUE causes the following behavior:\n- PUT Bucket acl and PUT Object acl calls fail if the specified ACL is public.\n - PUT Object calls fail if the request includes a public ACL.\nEnabling this setting doesn't affect existing policies or ACLs." + "type": "boolean" }, "blockPublicPolicy": { - "type": "boolean", - "description": "Specifies whether Amazon S3 should block public bucket policies for this bucket. Setting this element to TRUE causes Amazon S3 to reject calls to PUT Bucket policy if the specified bucket policy allows public access.\nEnabling this setting doesn't affect existing bucket policies." + "type": "boolean" }, "ignorePublicAcls": { - "type": "boolean", - "description": "Specifies whether Amazon S3 should ignore public ACLs for this bucket and objects in this bucket. Setting this element to TRUE causes Amazon S3 to ignore all public ACLs on this bucket and objects in this bucket.\nEnabling this setting doesn't affect the persistence of any existing ACLs and doesn't prevent new public ACLs from being set." + "type": "boolean" }, "restrictPublicBuckets": { - "type": "boolean", - "description": "Specifies whether Amazon S3 should restrict public bucket policies for this bucket. Setting this element to TRUE restricts access to this bucket to only AWS services and authorized users within this account if the bucket has a public policy.\nEnabling this setting doesn't affect previously stored bucket policies, except that public and cross-account access within any public bucket policy, including non-public delegation to specific accounts, is blocked." + "type": "boolean" } }, "type": "object" }, "aws-native:s3:BucketQueueConfiguration": { - "description": "The Amazon Simple Queue Service queues to publish messages to and the events for which to publish messages.", "properties": { "event": { - "type": "string", - "description": "The Amazon S3 bucket event about which you want to publish messages to Amazon SQS." + "type": "string" }, "filter": { - "$ref": "#/types/aws-native:s3:BucketNotificationFilter", - "description": "The filtering rules that determine which objects trigger notifications." + "$ref": "#/types/aws-native:s3:BucketNotificationFilter" }, "queue": { - "type": "string", - "description": "The Amazon Resource Name (ARN) of the Amazon SQS queue to which Amazon S3 publishes a message when it detects events of the specified type." + "type": "string" } }, "type": "object", @@ -124573,15 +124896,12 @@ ] }, "aws-native:s3:BucketRedirectAllRequestsTo": { - "description": "Specifies the redirect behavior of all requests to a website endpoint of an Amazon S3 bucket.", "properties": { "hostName": { - "type": "string", - "description": "Name of the host where requests are redirected." + "type": "string" }, "protocol": { - "$ref": "#/types/aws-native:s3:BucketRedirectAllRequestsToProtocol", - "description": "Protocol to use when redirecting requests. The default is the protocol that is used in the original request." + "type": "string" } }, "type": "object", @@ -124589,65 +124909,30 @@ "hostName" ] }, - "aws-native:s3:BucketRedirectAllRequestsToProtocol": { - "description": "Protocol to use when redirecting requests. The default is the protocol that is used in the original request.", - "type": "string", - "enum": [ - { - "name": "Http", - "value": "http" - }, - { - "name": "Https", - "value": "https" - } - ] - }, "aws-native:s3:BucketRedirectRule": { - "description": "Specifies how requests are redirected. In the event of an error, you can specify a different error code to return.", "properties": { "hostName": { - "type": "string", - "description": "The host name to use in the redirect request." + "type": "string" }, "httpRedirectCode": { - "type": "string", - "description": "The HTTP redirect code to use on the response. Not required if one of the siblings is present." + "type": "string" }, "protocol": { - "$ref": "#/types/aws-native:s3:BucketRedirectRuleProtocol", - "description": "Protocol to use when redirecting requests. The default is the protocol that is used in the original request." + "type": "string" }, "replaceKeyPrefixWith": { - "type": "string", - "description": "The object key prefix to use in the redirect request." + "type": "string" }, "replaceKeyWith": { - "type": "string", - "description": "The specific object key to use in the redirect request.d" + "type": "string" } }, "type": "object" }, - "aws-native:s3:BucketRedirectRuleProtocol": { - "description": "Protocol to use when redirecting requests. The default is the protocol that is used in the original request.", - "type": "string", - "enum": [ - { - "name": "Http", - "value": "http" - }, - { - "name": "Https", - "value": "https" - } - ] - }, "aws-native:s3:BucketReplicaModifications": { "properties": { "status": { - "$ref": "#/types/aws-native:s3:BucketReplicaModificationsStatus", - "description": "Specifies whether Amazon S3 replicates modifications on replicas." + "type": "string" } }, "type": "object", @@ -124655,33 +124940,16 @@ "status" ] }, - "aws-native:s3:BucketReplicaModificationsStatus": { - "description": "Specifies whether Amazon S3 replicates modifications on replicas.", - "type": "string", - "enum": [ - { - "name": "Enabled", - "value": "Enabled" - }, - { - "name": "Disabled", - "value": "Disabled" - } - ] - }, "aws-native:s3:BucketReplicationConfiguration": { - "description": "A container for replication rules. You can add up to 1,000 rules. The maximum size of a replication configuration is 2 MB.", "properties": { "role": { - "type": "string", - "description": "The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that Amazon S3 assumes when replicating objects." + "type": "string" }, "rules": { "type": "array", "items": { "$ref": "#/types/aws-native:s3:BucketReplicationRule" - }, - "description": "A container for one or more replication rules." + } } }, "type": "object", @@ -124691,7 +124959,6 @@ ] }, "aws-native:s3:BucketReplicationDestination": { - "description": "Specifies which Amazon S3 bucket to store replicated objects in and their storage class.", "properties": { "accessControlTranslation": { "$ref": "#/types/aws-native:s3:BucketAccessControlTranslation" @@ -124712,8 +124979,7 @@ "$ref": "#/types/aws-native:s3:BucketReplicationTime" }, "storageClass": { - "$ref": "#/types/aws-native:s3:BucketReplicationDestinationStorageClass", - "description": "The storage class to use when replicating objects, such as S3 Standard or reduced redundancy." + "type": "string" } }, "type": "object", @@ -124721,46 +124987,7 @@ "bucket" ] }, - "aws-native:s3:BucketReplicationDestinationStorageClass": { - "description": "The storage class to use when replicating objects, such as S3 Standard or reduced redundancy.", - "type": "string", - "enum": [ - { - "name": "DeepArchive", - "value": "DEEP_ARCHIVE" - }, - { - "name": "Glacier", - "value": "GLACIER" - }, - { - "name": "GlacierIr", - "value": "GLACIER_IR" - }, - { - "name": "IntelligentTiering", - "value": "INTELLIGENT_TIERING" - }, - { - "name": "OnezoneIa", - "value": "ONEZONE_IA" - }, - { - "name": "ReducedRedundancy", - "value": "REDUCED_REDUNDANCY" - }, - { - "name": "Standard", - "value": "STANDARD" - }, - { - "name": "StandardIa", - "value": "STANDARD_IA" - } - ] - }, "aws-native:s3:BucketReplicationRule": { - "description": "Specifies which Amazon S3 objects to replicate and where to store the replicas.", "properties": { "deleteMarkerReplication": { "$ref": "#/types/aws-native:s3:BucketDeleteMarkerReplication" @@ -124772,12 +124999,10 @@ "$ref": "#/types/aws-native:s3:BucketReplicationRuleFilter" }, "id": { - "type": "string", - "description": "A unique identifier for the rule." + "type": "string" }, "prefix": { - "type": "string", - "description": "An object key name prefix that identifies the object or objects to which the rule applies." + "type": "string" }, "priority": { "type": "integer" @@ -124786,8 +125011,7 @@ "$ref": "#/types/aws-native:s3:BucketSourceSelectionCriteria" }, "status": { - "$ref": "#/types/aws-native:s3:BucketReplicationRuleStatus", - "description": "Specifies whether the rule is enabled." + "type": "string" } }, "type": "object", @@ -124824,24 +125048,10 @@ }, "type": "object" }, - "aws-native:s3:BucketReplicationRuleStatus": { - "description": "Specifies whether the rule is enabled.", - "type": "string", - "enum": [ - { - "name": "Disabled", - "value": "Disabled" - }, - { - "name": "Enabled", - "value": "Enabled" - } - ] - }, "aws-native:s3:BucketReplicationTime": { "properties": { "status": { - "$ref": "#/types/aws-native:s3:BucketReplicationTimeStatus" + "type": "string" }, "time": { "$ref": "#/types/aws-native:s3:BucketReplicationTimeValue" @@ -124853,19 +125063,6 @@ "time" ] }, - "aws-native:s3:BucketReplicationTimeStatus": { - "type": "string", - "enum": [ - { - "name": "Disabled", - "value": "Disabled" - }, - { - "name": "Enabled", - "value": "Enabled" - } - ] - }, "aws-native:s3:BucketReplicationTimeValue": { "properties": { "minutes": { @@ -124878,11 +125075,9 @@ ] }, "aws-native:s3:BucketRoutingRule": { - "description": "Specifies the redirect behavior and when a redirect is applied.", "properties": { "redirectRule": { - "$ref": "#/types/aws-native:s3:BucketRedirectRule", - "description": "Container for redirect information. You can redirect requests to another host, to another page, or with another protocol. In the event of an error, you can specify a different error code to return." + "$ref": "#/types/aws-native:s3:BucketRedirectRule" }, "routingRuleCondition": { "$ref": "#/types/aws-native:s3:BucketRoutingRuleCondition" @@ -124894,21 +125089,17 @@ ] }, "aws-native:s3:BucketRoutingRuleCondition": { - "description": "A container for describing a condition that must be met for the specified redirect to apply.You must specify at least one of HttpErrorCodeReturnedEquals and KeyPrefixEquals", "properties": { "httpErrorCodeReturnedEquals": { - "type": "string", - "description": "The HTTP error code when the redirect is applied. " + "type": "string" }, "keyPrefixEquals": { - "type": "string", - "description": "The object key name prefix when the redirect is applied." + "type": "string" } }, "type": "object" }, "aws-native:s3:BucketRule": { - "description": "You must specify at least one of the following properties: AbortIncompleteMultipartUpload, ExpirationDate, ExpirationInDays, NoncurrentVersionExpirationInDays, NoncurrentVersionTransition, NoncurrentVersionTransitions, Transition, or Transitions.", "properties": { "abortIncompleteMultipartUpload": { "$ref": "#/types/aws-native:s3:BucketAbortIncompleteMultipartUpload" @@ -124941,16 +125132,16 @@ } }, "objectSizeGreaterThan": { - "type": "string" + "type": "integer" }, "objectSizeLessThan": { - "type": "string" + "type": "integer" }, "prefix": { "type": "string" }, "status": { - "$ref": "#/types/aws-native:s3:BucketRuleStatus" + "type": "string" }, "tagFilters": { "type": "array", @@ -124973,21 +125164,7 @@ "status" ] }, - "aws-native:s3:BucketRuleStatus": { - "type": "string", - "enum": [ - { - "name": "Enabled", - "value": "Enabled" - }, - { - "name": "Disabled", - "value": "Disabled" - } - ] - }, "aws-native:s3:BucketS3KeyFilter": { - "description": "A container for object key name prefix and suffix filtering rules.", "properties": { "rules": { "type": "array", @@ -125002,14 +125179,12 @@ ] }, "aws-native:s3:BucketServerSideEncryptionByDefault": { - "description": "Specifies the default server-side encryption to apply to new objects in the bucket. If a PUT Object request doesn't specify any server-side encryption, this default encryption will be applied.", "properties": { "kmsMasterKeyId": { - "type": "string", - "description": "\"KMSMasterKeyID\" can only be used when you set the value of SSEAlgorithm as aws:kms or aws:kms:dsse." + "type": "string" }, "sseAlgorithm": { - "$ref": "#/types/aws-native:s3:BucketServerSideEncryptionByDefaultSseAlgorithm" + "type": "string" } }, "type": "object", @@ -125017,29 +125192,10 @@ "sseAlgorithm" ] }, - "aws-native:s3:BucketServerSideEncryptionByDefaultSseAlgorithm": { - "type": "string", - "enum": [ - { - "name": "Awskms", - "value": "aws:kms" - }, - { - "name": "Aes256", - "value": "AES256" - }, - { - "name": "Awskmsdsse", - "value": "aws:kms:dsse" - } - ] - }, "aws-native:s3:BucketServerSideEncryptionRule": { - "description": "Specifies the default server-side encryption configuration.", "properties": { "bucketKeyEnabled": { - "type": "boolean", - "description": "Specifies whether Amazon S3 should use an S3 Bucket Key with server-side encryption using KMS (SSE-KMS) for new objects in the bucket. Existing objects are not affected. Setting the BucketKeyEnabled element to true causes Amazon S3 to use an S3 Bucket Key. By default, S3 Bucket Key is not enabled." + "type": "boolean" }, "serverSideEncryptionByDefault": { "$ref": "#/types/aws-native:s3:BucketServerSideEncryptionByDefault" @@ -125048,25 +125204,20 @@ "type": "object" }, "aws-native:s3:BucketSourceSelectionCriteria": { - "description": "A container that describes additional filters for identifying the source objects that you want to replicate.", "properties": { "replicaModifications": { - "$ref": "#/types/aws-native:s3:BucketReplicaModifications", - "description": "A filter that you can specify for selection for modifications on replicas." + "$ref": "#/types/aws-native:s3:BucketReplicaModifications" }, "sseKmsEncryptedObjects": { - "$ref": "#/types/aws-native:s3:BucketSseKmsEncryptedObjects", - "description": "A container for filter information for the selection of Amazon S3 objects encrypted with AWS KMS." + "$ref": "#/types/aws-native:s3:BucketSseKmsEncryptedObjects" } }, "type": "object" }, "aws-native:s3:BucketSseKmsEncryptedObjects": { - "description": "A container for filter information for the selection of S3 objects encrypted with AWS KMS.", "properties": { "status": { - "$ref": "#/types/aws-native:s3:BucketSseKmsEncryptedObjectsStatus", - "description": "Specifies whether Amazon S3 replicates objects created with server-side encryption using a customer master key (CMK) stored in AWS Key Management Service." + "type": "string" } }, "type": "object", @@ -125074,22 +125225,7 @@ "status" ] }, - "aws-native:s3:BucketSseKmsEncryptedObjectsStatus": { - "description": "Specifies whether Amazon S3 replicates objects created with server-side encryption using a customer master key (CMK) stored in AWS Key Management Service.", - "type": "string", - "enum": [ - { - "name": "Disabled", - "value": "Disabled" - }, - { - "name": "Enabled", - "value": "Enabled" - } - ] - }, "aws-native:s3:BucketStorageClassAnalysis": { - "description": "Specifies data related to access patterns to be collected and made available to analyze the tradeoffs between different storage classes for an Amazon S3 bucket.", "properties": { "dataExport": { "$ref": "#/types/aws-native:s3:BucketDataExport" @@ -125113,7 +125249,6 @@ ] }, "aws-native:s3:BucketTagFilter": { - "description": "Tags to use to identify a subset of objects for an Amazon S3 bucket.", "properties": { "key": { "type": "string" @@ -125131,12 +125266,10 @@ "aws-native:s3:BucketTiering": { "properties": { "accessTier": { - "$ref": "#/types/aws-native:s3:BucketTieringAccessTier", - "description": "S3 Intelligent-Tiering access tier. See Storage class for automatically optimizing frequently and infrequently accessed objects for a list of access tiers in the S3 Intelligent-Tiering storage class." + "type": "string" }, "days": { - "type": "integer", - "description": "The number of consecutive days of no access after which an object will be eligible to be transitioned to the corresponding tier. The minimum number of days specified for Archive Access tier must be at least 90 days and Deep Archive Access tier must be at least 180 days. The maximum can be up to 2 years (730 days)." + "type": "integer" } }, "type": "object", @@ -125145,34 +125278,16 @@ "days" ] }, - "aws-native:s3:BucketTieringAccessTier": { - "description": "S3 Intelligent-Tiering access tier. See Storage class for automatically optimizing frequently and infrequently accessed objects for a list of access tiers in the S3 Intelligent-Tiering storage class.", - "type": "string", - "enum": [ - { - "name": "ArchiveAccess", - "value": "ARCHIVE_ACCESS" - }, - { - "name": "DeepArchiveAccess", - "value": "DEEP_ARCHIVE_ACCESS" - } - ] - }, "aws-native:s3:BucketTopicConfiguration": { - "description": "The topic to which notifications are sent and the events for which notifications are generated.", "properties": { "event": { - "type": "string", - "description": "The Amazon S3 bucket event about which to send notifications." + "type": "string" }, "filter": { - "$ref": "#/types/aws-native:s3:BucketNotificationFilter", - "description": "The filtering rules that determine for which objects to send notifications." + "$ref": "#/types/aws-native:s3:BucketNotificationFilter" }, "topic": { - "type": "string", - "description": "The Amazon Resource Name (ARN) of the Amazon SNS topic to which Amazon S3 publishes a message when it detects events of the specified type." + "type": "string" } }, "type": "object", @@ -125182,10 +125297,9 @@ ] }, "aws-native:s3:BucketTransition": { - "description": "You must specify at least one of \"TransitionDate\" and \"TransitionInDays\"", "properties": { "storageClass": { - "$ref": "#/types/aws-native:s3:BucketTransitionStorageClass" + "type": "string" }, "transitionDate": { "type": "string" @@ -125199,41 +125313,10 @@ "storageClass" ] }, - "aws-native:s3:BucketTransitionStorageClass": { - "type": "string", - "enum": [ - { - "name": "DeepArchive", - "value": "DEEP_ARCHIVE" - }, - { - "name": "Glacier", - "value": "GLACIER" - }, - { - "name": "GlacierIr", - "value": "GLACIER_IR" - }, - { - "name": "IntelligentTiering", - "value": "INTELLIGENT_TIERING" - }, - { - "name": "OnezoneIa", - "value": "ONEZONE_IA" - }, - { - "name": "StandardIa", - "value": "STANDARD_IA" - } - ] - }, "aws-native:s3:BucketVersioningConfiguration": { - "description": "Describes the versioning state of an Amazon S3 bucket.", "properties": { "status": { - "$ref": "#/types/aws-native:s3:BucketVersioningConfigurationStatus", - "description": "The versioning state of the bucket." + "type": "string" } }, "type": "object", @@ -125241,30 +125324,13 @@ "status" ] }, - "aws-native:s3:BucketVersioningConfigurationStatus": { - "description": "The versioning state of the bucket.", - "type": "string", - "enum": [ - { - "name": "Enabled", - "value": "Enabled" - }, - { - "name": "Suspended", - "value": "Suspended" - } - ] - }, "aws-native:s3:BucketWebsiteConfiguration": { - "description": "Specifies website configuration parameters for an Amazon S3 bucket.", "properties": { "errorDocument": { - "type": "string", - "description": "The name of the error document for the website." + "type": "string" }, "indexDocument": { - "type": "string", - "description": "The name of the index document for the website." + "type": "string" }, "redirectAllRequestsTo": { "$ref": "#/types/aws-native:s3:BucketRedirectAllRequestsTo" @@ -126413,6 +126479,10 @@ "datasetFormat": { "$ref": "#/types/aws-native:sagemaker:DataQualityJobDefinitionDatasetFormat" }, + "excludeFeaturesAttribute": { + "type": "string", + "description": "Indexes or names of the features to be excluded from analysis" + }, "localPath": { "type": "string", "description": "Path to the filesystem where the endpoint data is available to the container." @@ -126595,6 +126665,10 @@ "endpointName": { "type": "string" }, + "excludeFeaturesAttribute": { + "type": "string", + "description": "Indexes or names of the features to be excluded from analysis" + }, "localPath": { "type": "string", "description": "Path to the filesystem where the endpoint data is available to the container." @@ -131524,6 +131598,10 @@ "datasetFormat": { "$ref": "#/types/aws-native:sagemaker:MonitoringScheduleDatasetFormat" }, + "excludeFeaturesAttribute": { + "type": "string", + "description": "Indexes or names of the features to be excluded from analysis" + }, "localPath": { "type": "string", "description": "Path to the filesystem where the endpoint data is available to the container." @@ -131659,6 +131737,10 @@ "endpointName": { "type": "string" }, + "excludeFeaturesAttribute": { + "type": "string", + "description": "Indexes or names of the features to be excluded from analysis" + }, "localPath": { "type": "string", "description": "Path to the filesystem where the endpoint data is available to the container." @@ -132007,9 +132089,17 @@ "aws-native:sagemaker:MonitoringScheduleScheduleConfig": { "description": "Configuration details about the monitoring schedule.", "properties": { + "dataAnalysisEndTime": { + "type": "string", + "description": "Data Analysis end time, e.g. PT0H" + }, + "dataAnalysisStartTime": { + "type": "string", + "description": "Data Analysis start time, e.g. -PT1H" + }, "scheduleExpression": { "type": "string", - "description": "A cron expression that describes details about the monitoring schedule." + "description": "A cron expression or 'NOW' that describes details about the monitoring schedule." } }, "type": "object", @@ -145531,18 +145621,18 @@ ] }, "aws-native:apigateway:Account": { - "description": "Resource Type definition for AWS::ApiGateway::Account", + "description": "The ``AWS::ApiGateway::Account`` resource specifies the IAM role that Amazon API Gateway uses to write API logs to Amazon CloudWatch Logs. To avoid overwriting other roles, you should only have one ``AWS::ApiGateway::Account`` resource per region per account.", "properties": { "cloudWatchRoleArn": { "type": "string", - "description": "The Amazon Resource Name (ARN) of an IAM role that has write access to CloudWatch Logs in your account." + "description": "The ARN of an Amazon CloudWatch role for the current Account." } }, "type": "object", "inputProperties": { "cloudWatchRoleArn": { "type": "string", - "description": "The Amazon Resource Name (ARN) of an IAM role that has write access to CloudWatch Logs in your account." + "description": "The ARN of an Amazon CloudWatch role for the current Account." } } }, @@ -145641,7 +145731,7 @@ } }, "aws-native:apigateway:Authorizer": { - "description": "Represents an authorization layer for methods. If enabled on a method, API Gateway will activate the authorizer when a client calls the method.", + "description": "The ``AWS::ApiGateway::Authorizer`` resource creates an authorization layer that API Gateway activates for methods that have authorization enabled. API Gateway activates the authorizer when a client calls those methods.", "properties": { "authType": { "type": "string", @@ -145649,26 +145739,26 @@ }, "authorizerCredentials": { "type": "string", - "description": "Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer." + "description": "Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. To specify an IAM role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To use resource-based permissions on the Lambda function, specify null." }, "authorizerId": { "type": "string" }, "authorizerResultTtlInSeconds": { "type": "integer", - "description": "The TTL in seconds of cached authorizer results." + "description": "The TTL in seconds of cached authorizer results. If it equals 0, authorization caching is disabled. If it is greater than 0, API Gateway will cache authorizer responses. If this field is not set, the default value is 300. The maximum value is 3600, or 1 hour." }, "authorizerUri": { "type": "string", - "description": "Specifies the authorizer's Uniform Resource Identifier (URI)." + "description": "Specifies the authorizer's Uniform Resource Identifier (URI). For ``TOKEN`` or ``REQUEST`` authorizers, this must be a well-formed Lambda function URI, for example, ``arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:{account_id}:function:{lambda_function_name}/invocations``. In general, the URI has this form ``arn:aws:apigateway:{region}:lambda:path/{service_api}``, where ``{region}`` is the same as the region hosting the Lambda function, ``path`` indicates that the remaining substring in the URI should be treated as the path to the resource, including the initial ``/``. For Lambda functions, this is usually of the form ``/2015-03-31/functions/[FunctionARN]/invocations``." }, "identitySource": { "type": "string", - "description": "The identity source for which authorization is requested." + "description": "The identity source for which authorization is requested. For a ``TOKEN`` or ``COGNITO_USER_POOLS`` authorizer, this is required and specifies the request header mapping expression for the custom header holding the authorization token submitted by the client. For example, if the token header name is ``Auth``, the header mapping expression is ``method.request.header.Auth``. For the ``REQUEST`` authorizer, this is required when authorization caching is enabled. The value is a comma-separated string of one or more mapping expressions of the specified request parameters. For example, if an ``Auth`` header, a ``Name`` query string parameter are defined as identity sources, this value is ``method.request.header.Auth, method.request.querystring.Name``. These parameters will be used to derive the authorization caching key and to perform runtime validation of the ``REQUEST`` authorizer by verifying all of the identity-related request parameters are present, not null and non-empty. Only when this is true does the authorizer invoke the authorizer Lambda function, otherwise, it returns a 401 Unauthorized response without calling the Lambda function. The valid value is a string of comma-separated mapping expressions of the specified request parameters. When the authorization caching is not enabled, this property is optional." }, "identityValidationExpression": { "type": "string", - "description": "A validation expression for the incoming identity token." + "description": "A validation expression for the incoming identity token. For ``TOKEN`` authorizers, this value is a regular expression. For ``COGNITO_USER_POOLS`` authorizers, API Gateway will match the ``aud`` field of the incoming token from the client against the specified regular expression. It will invoke the authorizer's Lambda function when there is a match. Otherwise, it will return a 401 Unauthorized response without calling the Lambda function. The validation expression does not apply to the ``REQUEST`` authorizer." }, "name": { "type": "string", @@ -145679,16 +145769,16 @@ "items": { "type": "string" }, - "description": "A list of the Amazon Cognito user pool ARNs for the COGNITO_USER_POOLS authorizer." + "description": "A list of the Amazon Cognito user pool ARNs for the ``COGNITO_USER_POOLS`` authorizer. Each element is of this format: ``arn:aws:cognito-idp:{region}:{account_id}:userpool/{user_pool_id}``. For a ``TOKEN`` or ``REQUEST`` authorizer, this is not defined." }, "restApiId": { "type": "string", - "description": "The identifier of the API.", + "description": "The string identifier of the associated RestApi.", "replaceOnChanges": true }, "type": { "type": "string", - "description": "The authorizer type." + "description": "The authorizer type. Valid values are ``TOKEN`` for a Lambda function using a single authorization token submitted in a custom header, ``REQUEST`` for a Lambda function using incoming request parameters, and ``COGNITO_USER_POOLS`` for using an Amazon Cognito user pool." } }, "type": "object", @@ -145705,23 +145795,23 @@ }, "authorizerCredentials": { "type": "string", - "description": "Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer." + "description": "Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. To specify an IAM role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To use resource-based permissions on the Lambda function, specify null." }, "authorizerResultTtlInSeconds": { "type": "integer", - "description": "The TTL in seconds of cached authorizer results." + "description": "The TTL in seconds of cached authorizer results. If it equals 0, authorization caching is disabled. If it is greater than 0, API Gateway will cache authorizer responses. If this field is not set, the default value is 300. The maximum value is 3600, or 1 hour." }, "authorizerUri": { "type": "string", - "description": "Specifies the authorizer's Uniform Resource Identifier (URI)." + "description": "Specifies the authorizer's Uniform Resource Identifier (URI). For ``TOKEN`` or ``REQUEST`` authorizers, this must be a well-formed Lambda function URI, for example, ``arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:{account_id}:function:{lambda_function_name}/invocations``. In general, the URI has this form ``arn:aws:apigateway:{region}:lambda:path/{service_api}``, where ``{region}`` is the same as the region hosting the Lambda function, ``path`` indicates that the remaining substring in the URI should be treated as the path to the resource, including the initial ``/``. For Lambda functions, this is usually of the form ``/2015-03-31/functions/[FunctionARN]/invocations``." }, "identitySource": { "type": "string", - "description": "The identity source for which authorization is requested." + "description": "The identity source for which authorization is requested. For a ``TOKEN`` or ``COGNITO_USER_POOLS`` authorizer, this is required and specifies the request header mapping expression for the custom header holding the authorization token submitted by the client. For example, if the token header name is ``Auth``, the header mapping expression is ``method.request.header.Auth``. For the ``REQUEST`` authorizer, this is required when authorization caching is enabled. The value is a comma-separated string of one or more mapping expressions of the specified request parameters. For example, if an ``Auth`` header, a ``Name`` query string parameter are defined as identity sources, this value is ``method.request.header.Auth, method.request.querystring.Name``. These parameters will be used to derive the authorization caching key and to perform runtime validation of the ``REQUEST`` authorizer by verifying all of the identity-related request parameters are present, not null and non-empty. Only when this is true does the authorizer invoke the authorizer Lambda function, otherwise, it returns a 401 Unauthorized response without calling the Lambda function. The valid value is a string of comma-separated mapping expressions of the specified request parameters. When the authorization caching is not enabled, this property is optional." }, "identityValidationExpression": { "type": "string", - "description": "A validation expression for the incoming identity token." + "description": "A validation expression for the incoming identity token. For ``TOKEN`` authorizers, this value is a regular expression. For ``COGNITO_USER_POOLS`` authorizers, API Gateway will match the ``aud`` field of the incoming token from the client against the specified regular expression. It will invoke the authorizer's Lambda function when there is a match. Otherwise, it will return a 401 Unauthorized response without calling the Lambda function. The validation expression does not apply to the ``REQUEST`` authorizer." }, "name": { "type": "string", @@ -145732,15 +145822,15 @@ "items": { "type": "string" }, - "description": "A list of the Amazon Cognito user pool ARNs for the COGNITO_USER_POOLS authorizer." + "description": "A list of the Amazon Cognito user pool ARNs for the ``COGNITO_USER_POOLS`` authorizer. Each element is of this format: ``arn:aws:cognito-idp:{region}:{account_id}:userpool/{user_pool_id}``. For a ``TOKEN`` or ``REQUEST`` authorizer, this is not defined." }, "restApiId": { "type": "string", - "description": "The identifier of the API." + "description": "The string identifier of the associated RestApi." }, "type": { "type": "string", - "description": "The authorizer type." + "description": "The authorizer type. Valid values are ``TOKEN`` for a Lambda function using a single authorization token submitted in a custom header, ``REQUEST`` for a Lambda function using incoming request parameters, and ``COGNITO_USER_POOLS`` for using an Amazon Cognito user pool." } }, "requiredInputs": [ @@ -145834,11 +145924,11 @@ } }, "aws-native:apigateway:Deployment": { - "description": "Resource Type definition for AWS::ApiGateway::Deployment", + "description": "The ``AWS::ApiGateway::Deployment`` resource deploys an API Gateway ``RestApi`` resource to a stage so that clients can call the API over the internet. The stage acts as an environment.", "properties": { "deploymentCanarySettings": { "$ref": "#/types/aws-native:apigateway:DeploymentCanarySettings", - "description": "Specifies settings for the canary deployment.", + "description": "The input configuration for a canary deployment.", "replaceOnChanges": true }, "deploymentId": { @@ -145847,20 +145937,20 @@ }, "description": { "type": "string", - "description": "A description of the purpose of the API Gateway deployment." + "description": "The description for the Deployment resource to create." }, "restApiId": { "type": "string", - "description": "The ID of the RestApi resource to deploy. ", + "description": "The string identifier of the associated RestApi.", "replaceOnChanges": true }, "stageDescription": { "$ref": "#/types/aws-native:apigateway:DeploymentStageDescription", - "description": "Configures the stage that API Gateway creates with this deployment." + "description": "The description of the Stage resource for the Deployment resource to create. To specify a stage description, you must also provide a stage name." }, "stageName": { "type": "string", - "description": "A name for the stage that API Gateway creates with this deployment. Use only alphanumeric characters." + "description": "The name of the Stage resource for the Deployment resource to create." } }, "type": "object", @@ -145871,23 +145961,23 @@ "inputProperties": { "deploymentCanarySettings": { "$ref": "#/types/aws-native:apigateway:DeploymentCanarySettings", - "description": "Specifies settings for the canary deployment." + "description": "The input configuration for a canary deployment." }, "description": { "type": "string", - "description": "A description of the purpose of the API Gateway deployment." + "description": "The description for the Deployment resource to create." }, "restApiId": { "type": "string", - "description": "The ID of the RestApi resource to deploy. " + "description": "The string identifier of the associated RestApi." }, "stageDescription": { "$ref": "#/types/aws-native:apigateway:DeploymentStageDescription", - "description": "Configures the stage that API Gateway creates with this deployment." + "description": "The description of the Stage resource for the Deployment resource to create. To specify a stage description, you must also provide a stage name." }, "stageName": { "type": "string", - "description": "A name for the stage that API Gateway creates with this deployment. Use only alphanumeric characters." + "description": "The name of the Stage resource for the Deployment resource to create." } }, "requiredInputs": [ @@ -145895,7 +145985,7 @@ ] }, "aws-native:apigateway:DocumentationPart": { - "description": "Resource Type definition for AWS::ApiGateway::DocumentationPart", + "description": "The ``AWS::ApiGateway::DocumentationPart`` resource creates a documentation part for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*.", "properties": { "documentationPartId": { "type": "string", @@ -145903,16 +145993,16 @@ }, "location": { "$ref": "#/types/aws-native:apigateway:DocumentationPartLocation", - "description": "The location of the API entity that the documentation applies to.", + "description": "The location of the targeted API entity of the to-be-created documentation part.", "replaceOnChanges": true }, "properties": { "type": "string", - "description": "The documentation content map of the targeted API entity." + "description": "The new documentation content map of the targeted API entity. Enclosed key-value pairs are API-specific, but only OpenAPI-compliant key-value pairs can be exported and, hence, published." }, "restApiId": { "type": "string", - "description": "Identifier of the targeted API entity", + "description": "The string identifier of the associated RestApi.", "replaceOnChanges": true } }, @@ -145926,15 +146016,15 @@ "inputProperties": { "location": { "$ref": "#/types/aws-native:apigateway:DocumentationPartLocation", - "description": "The location of the API entity that the documentation applies to." + "description": "The location of the targeted API entity of the to-be-created documentation part." }, "properties": { "type": "string", - "description": "The documentation content map of the targeted API entity." + "description": "The new documentation content map of the targeted API entity. Enclosed key-value pairs are API-specific, but only OpenAPI-compliant key-value pairs can be exported and, hence, published." }, "restApiId": { "type": "string", - "description": "Identifier of the targeted API entity" + "description": "The string identifier of the associated RestApi." } }, "requiredInputs": [ @@ -145944,15 +146034,15 @@ ] }, "aws-native:apigateway:DocumentationVersion": { - "description": "A snapshot of the documentation of an API.", + "description": "The ``AWS::ApiGateway::DocumentationVersion`` resource creates a snapshot of the documentation for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*.", "properties": { "description": { "type": "string", - "description": "The description of the API documentation snapshot." + "description": "A description about the new documentation snapshot." }, "documentationVersion": { "type": "string", - "description": "The version identifier of the API documentation snapshot.", + "description": "The version identifier of the to-be-updated documentation version.", "language": { "csharp": { "name": "DocumentationVersionValue" @@ -145962,7 +146052,7 @@ }, "restApiId": { "type": "string", - "description": "The identifier of the API.", + "description": "The string identifier of the associated RestApi.", "replaceOnChanges": true } }, @@ -145974,11 +146064,11 @@ "inputProperties": { "description": { "type": "string", - "description": "The description of the API documentation snapshot." + "description": "A description about the new documentation snapshot." }, "documentationVersion": { "type": "string", - "description": "The version identifier of the API documentation snapshot.", + "description": "The version identifier of the to-be-updated documentation version.", "language": { "csharp": { "name": "DocumentationVersionValue" @@ -145987,7 +146077,7 @@ }, "restApiId": { "type": "string", - "description": "The identifier of the API." + "description": "The string identifier of the associated RestApi." } }, "requiredInputs": [ @@ -146136,67 +146226,67 @@ "deprecationMessage": "GatewayResponse is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible." }, "aws-native:apigateway:Method": { - "description": "Resource Type definition for AWS::ApiGateway::Method", + "description": "The ``AWS::ApiGateway::Method`` resource creates API Gateway methods that define the parameters and body that clients must send in their requests.", "properties": { "apiKeyRequired": { "type": "boolean", - "description": "Indicates whether the method requires clients to submit a valid API key." + "description": "A boolean flag specifying whether a valid ApiKey is required to invoke this method." }, "authorizationScopes": { "type": "array", "items": { "type": "string" }, - "description": "A list of authorization scopes configured on the method." + "description": "A list of authorization scopes configured on the method. The scopes are used with a ``COGNITO_USER_POOLS`` authorizer to authorize the method invocation. The authorization works by matching the method scopes against the scopes parsed from the access token in the incoming request. The method invocation is authorized if any method scopes matches a claimed scope in the access token. Otherwise, the invocation is not authorized. When the method scope is configured, the client must provide an access token instead of an identity token for authorization purposes." }, "authorizationType": { "$ref": "#/types/aws-native:apigateway:MethodAuthorizationType", - "description": "The method's authorization type." + "description": "The method's authorization type. This parameter is required. For valid values, see [Method](https://docs.aws.amazon.com/apigateway/latest/api/API_Method.html) in the *API Gateway API Reference*.\n If you specify the ``AuthorizerId`` property, specify ``CUSTOM`` or ``COGNITO_USER_POOLS`` for this property." }, "authorizerId": { "type": "string", - "description": "The identifier of the authorizer to use on this method." + "description": "The identifier of an authorizer to use on this method. The method's authorization type must be ``CUSTOM`` or ``COGNITO_USER_POOLS``." }, "httpMethod": { "type": "string", - "description": "The backend system that the method calls when it receives a request.", + "description": "The method's HTTP verb.", "replaceOnChanges": true }, "integration": { "$ref": "#/types/aws-native:apigateway:MethodIntegration", - "description": "The backend system that the method calls when it receives a request." + "description": "Represents an ``HTTP``, ``HTTP_PROXY``, ``AWS``, ``AWS_PROXY``, or Mock integration." }, "methodResponses": { "type": "array", "items": { "$ref": "#/types/aws-native:apigateway:MethodResponse" }, - "description": "The responses that can be sent to the client who calls the method." + "description": "Gets a method response associated with a given HTTP status code." }, "operationName": { "type": "string", - "description": "A friendly operation name for the method." + "description": "A human-friendly operation identifier for the method. For example, you can assign the ``operationName`` of ``ListPets`` for the ``GET /pets`` method in the ``PetStore`` example." }, "requestModels": { "$ref": "pulumi.json#/Any", - "description": "The resources that are used for the request's content type. Specify request models as key-value pairs (string-to-string mapping), with a content type as the key and a Model resource name as the value." + "description": "A key-value map specifying data schemas, represented by Model resources, (as the mapped value) of the request payloads of given content types (as the mapping key)." }, "requestParameters": { "$ref": "pulumi.json#/Any", - "description": "The request parameters that API Gateway accepts. Specify request parameters as key-value pairs (string-to-Boolean mapping), with a source as the key and a Boolean as the value." + "description": "A key-value map defining required or optional method request parameters that can be accepted by API Gateway. A key is a method request parameter name matching the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and ``name`` is a valid and unique parameter name. The value associated with the key is a Boolean flag indicating whether the parameter is required (``true``) or optional (``false``). The method request parameter names defined here are available in Integration to be mapped to integration request parameters or templates." }, "requestValidatorId": { "type": "string", - "description": "The ID of the associated request validator." + "description": "The identifier of a RequestValidator for request validation." }, "resourceId": { "type": "string", - "description": "The ID of an API Gateway resource.", + "description": "The Resource identifier for the MethodResponse resource.", "replaceOnChanges": true }, "restApiId": { "type": "string", - "description": "The ID of the RestApi resource in which API Gateway creates the method.", + "description": "The string identifier of the associated RestApi.", "replaceOnChanges": true } }, @@ -146209,61 +146299,61 @@ "inputProperties": { "apiKeyRequired": { "type": "boolean", - "description": "Indicates whether the method requires clients to submit a valid API key." + "description": "A boolean flag specifying whether a valid ApiKey is required to invoke this method." }, "authorizationScopes": { "type": "array", "items": { "type": "string" }, - "description": "A list of authorization scopes configured on the method." + "description": "A list of authorization scopes configured on the method. The scopes are used with a ``COGNITO_USER_POOLS`` authorizer to authorize the method invocation. The authorization works by matching the method scopes against the scopes parsed from the access token in the incoming request. The method invocation is authorized if any method scopes matches a claimed scope in the access token. Otherwise, the invocation is not authorized. When the method scope is configured, the client must provide an access token instead of an identity token for authorization purposes." }, "authorizationType": { "$ref": "#/types/aws-native:apigateway:MethodAuthorizationType", - "description": "The method's authorization type." + "description": "The method's authorization type. This parameter is required. For valid values, see [Method](https://docs.aws.amazon.com/apigateway/latest/api/API_Method.html) in the *API Gateway API Reference*.\n If you specify the ``AuthorizerId`` property, specify ``CUSTOM`` or ``COGNITO_USER_POOLS`` for this property." }, "authorizerId": { "type": "string", - "description": "The identifier of the authorizer to use on this method." + "description": "The identifier of an authorizer to use on this method. The method's authorization type must be ``CUSTOM`` or ``COGNITO_USER_POOLS``." }, "httpMethod": { "type": "string", - "description": "The backend system that the method calls when it receives a request." + "description": "The method's HTTP verb." }, "integration": { "$ref": "#/types/aws-native:apigateway:MethodIntegration", - "description": "The backend system that the method calls when it receives a request." + "description": "Represents an ``HTTP``, ``HTTP_PROXY``, ``AWS``, ``AWS_PROXY``, or Mock integration." }, "methodResponses": { "type": "array", "items": { "$ref": "#/types/aws-native:apigateway:MethodResponse" }, - "description": "The responses that can be sent to the client who calls the method." + "description": "Gets a method response associated with a given HTTP status code." }, "operationName": { "type": "string", - "description": "A friendly operation name for the method." + "description": "A human-friendly operation identifier for the method. For example, you can assign the ``operationName`` of ``ListPets`` for the ``GET /pets`` method in the ``PetStore`` example." }, "requestModels": { "$ref": "pulumi.json#/Any", - "description": "The resources that are used for the request's content type. Specify request models as key-value pairs (string-to-string mapping), with a content type as the key and a Model resource name as the value." + "description": "A key-value map specifying data schemas, represented by Model resources, (as the mapped value) of the request payloads of given content types (as the mapping key)." }, "requestParameters": { "$ref": "pulumi.json#/Any", - "description": "The request parameters that API Gateway accepts. Specify request parameters as key-value pairs (string-to-Boolean mapping), with a source as the key and a Boolean as the value." + "description": "A key-value map defining required or optional method request parameters that can be accepted by API Gateway. A key is a method request parameter name matching the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and ``name`` is a valid and unique parameter name. The value associated with the key is a Boolean flag indicating whether the parameter is required (``true``) or optional (``false``). The method request parameter names defined here are available in Integration to be mapped to integration request parameters or templates." }, "requestValidatorId": { "type": "string", - "description": "The ID of the associated request validator." + "description": "The identifier of a RequestValidator for request validation." }, "resourceId": { "type": "string", - "description": "The ID of an API Gateway resource." + "description": "The Resource identifier for the MethodResponse resource." }, "restApiId": { "type": "string", - "description": "The ID of the RestApi resource in which API Gateway creates the method." + "description": "The string identifier of the associated RestApi." } }, "requiredInputs": [ @@ -146273,30 +146363,30 @@ ] }, "aws-native:apigateway:Model": { - "description": "Resource Type definition for AWS::ApiGateway::Model", + "description": "The ``AWS::ApiGateway::Model`` resource defines the structure of a request or response payload for an API method.", "properties": { "contentType": { "type": "string", - "description": "The content type for the model.", + "description": "The content-type for the model.", "replaceOnChanges": true }, "description": { "type": "string", - "description": "A description that identifies this model." + "description": "The description of the model." }, "name": { "type": "string", - "description": "A name for the model. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the model name.", + "description": "A name for the model. If you don't specify a name, CFN generates a unique physical ID and uses that ID for the model name. For more information, see [Name Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html).\n If you specify a name, you cannot perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name.", "replaceOnChanges": true }, "restApiId": { "type": "string", - "description": "The ID of a REST API with which to associate this model.", + "description": "The string identifier of the associated RestApi.", "replaceOnChanges": true }, "schema": { "$ref": "pulumi.json#/Any", - "description": "The schema to use to transform data to one or more output formats. Specify null ({}) if you don't want to specify a schema." + "description": "The schema for the model. For ``application/json`` models, this should be JSON schema draft 4 model. Do not include \"\\*/\" characters in the description of any properties because such \"\\*/\" characters may be interpreted as the closing marker for comments in some languages, such as Java or JavaScript, causing the installation of your API's SDK generated by API Gateway to fail." } }, "type": "object", @@ -146306,23 +146396,23 @@ "inputProperties": { "contentType": { "type": "string", - "description": "The content type for the model." + "description": "The content-type for the model." }, "description": { "type": "string", - "description": "A description that identifies this model." + "description": "The description of the model." }, "name": { "type": "string", - "description": "A name for the model. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the model name." + "description": "A name for the model. If you don't specify a name, CFN generates a unique physical ID and uses that ID for the model name. For more information, see [Name Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html).\n If you specify a name, you cannot perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name." }, "restApiId": { "type": "string", - "description": "The ID of a REST API with which to associate this model." + "description": "The string identifier of the associated RestApi." }, "schema": { "$ref": "pulumi.json#/Any", - "description": "The schema to use to transform data to one or more output formats. Specify null ({}) if you don't want to specify a schema." + "description": "The schema for the model. For ``application/json`` models, this should be JSON schema draft 4 model. Do not include \"\\*/\" characters in the description of any properties because such \"\\*/\" characters may be interpreted as the closing marker for comments in some languages, such as Java or JavaScript, causing the installation of your API's SDK generated by API Gateway to fail." } }, "requiredInputs": [ @@ -146383,7 +146473,7 @@ ] }, "aws-native:apigateway:Resource": { - "description": "Resource Type definition for AWS::ApiGateway::Resource", + "description": "The ``AWS::ApiGateway::Resource`` resource creates a resource in an API.", "properties": { "parentId": { "type": "string", @@ -146401,7 +146491,7 @@ }, "restApiId": { "type": "string", - "description": "The ID of the RestApi resource in which you want to create this resource..", + "description": "The string identifier of the associated RestApi.", "replaceOnChanges": true } }, @@ -146423,7 +146513,7 @@ }, "restApiId": { "type": "string", - "description": "The ID of the RestApi resource in which you want to create this resource.." + "description": "The string identifier of the associated RestApi." } }, "requiredInputs": [ @@ -146433,52 +146523,66 @@ ] }, "aws-native:apigateway:RestApi": { - "description": "Resource Type definition for AWS::ApiGateway::RestApi.", + "description": "The ``AWS::ApiGateway::RestApi`` resource creates a REST API. For more information, see [restapi:create](https://docs.aws.amazon.com/apigateway/latest/api/API_CreateRestApi.html) in the *Amazon API Gateway REST API Reference*.\n On January 1, 2016, the Swagger Specification was donated to the [OpenAPI initiative](https://docs.aws.amazon.com/https://www.openapis.org/), becoming the foundation of the OpenAPI Specification.", "properties": { "apiKeySourceType": { - "type": "string" + "type": "string", + "description": "The source of the API key for metering requests according to a usage plan. Valid values are: ``HEADER`` to read the API key from the ``X-API-Key`` header of a request. ``AUTHORIZER`` to read the API key from the ``UsageIdentifierKey`` from a custom authorizer." }, "binaryMediaTypes": { "type": "array", "items": { "type": "string" - } + }, + "description": "The list of binary media types supported by the RestApi. By default, the RestApi supports only UTF-8-encoded text payloads." }, "body": { - "$ref": "pulumi.json#/Any" + "$ref": "pulumi.json#/Any", + "description": "An OpenAPI specification that defines a set of RESTful APIs in JSON format. For YAML templates, you can also provide the specification in YAML format." }, "bodyS3Location": { - "$ref": "#/types/aws-native:apigateway:RestApiS3Location" + "$ref": "#/types/aws-native:apigateway:RestApiS3Location", + "description": "The Amazon Simple Storage Service (Amazon S3) location that points to an OpenAPI file, which defines a set of RESTful APIs in JSON or YAML format." }, "cloneFrom": { - "type": "string" + "type": "string", + "description": "The ID of the RestApi that you want to clone from." }, "description": { - "type": "string" + "type": "string", + "description": "The description of the RestApi." }, "disableExecuteApiEndpoint": { - "type": "boolean" + "type": "boolean", + "description": "Specifies whether clients can invoke your API by using the default ``execute-api`` endpoint. By default, clients can invoke your API with the default ``https://{api_id}.execute-api.{region}.amazonaws.com`` endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint" }, "endpointConfiguration": { - "$ref": "#/types/aws-native:apigateway:RestApiEndpointConfiguration" + "$ref": "#/types/aws-native:apigateway:RestApiEndpointConfiguration", + "description": "A list of the endpoint types of the API. Use this property when creating an API. When importing an existing API, specify the endpoint configuration types using the ``Parameters`` property." }, "failOnWarnings": { - "type": "boolean" + "type": "boolean", + "description": "A query parameter to indicate whether to rollback the API update (``true``) or not (``false``) when a warning is encountered. The default value is ``false``." }, "minimumCompressionSize": { - "type": "integer" + "type": "integer", + "description": "A nullable integer that is used to enable compression (with non-negative between 0 and 10485760 (10M) bytes, inclusive) or disable compression (with a null value) on an API. When compression is enabled, compression or decompression is not applied on the payload if the payload size is smaller than this value. Setting it to zero allows compression for any payload size." }, "mode": { - "type": "string" + "type": "string", + "description": "This property applies only when you use OpenAPI to define your REST API. The ``Mode`` determines how API Gateway handles resource updates.\n Valid values are ``overwrite`` or ``merge``. \n For ``overwrite``, the new API definition replaces the existing one. The existing API identifier remains unchanged.\n For ``merge``, the new API definition is merged with the existing API.\n If you don't specify this property, a default value is chosen. For REST APIs created before March 29, 2021, the default is ``overwrite``. For REST APIs created after March 29, 2021, the new API definition takes precedence, but any container types such as endpoint configurations and binary media types are merged with the existing API. \n Use the default mode to define top-level ``RestApi`` properties in addition to using OpenAPI. Generally, it's preferred to use API Gateway's OpenAPI extensions to model these properties." }, "name": { - "type": "string" + "type": "string", + "description": "The name of the RestApi. A name is required if the REST API is not based on an OpenAPI specification." }, "parameters": { - "$ref": "pulumi.json#/Any" + "$ref": "pulumi.json#/Any", + "description": "Custom header parameters as part of the request. For example, to exclude DocumentationParts from an imported API, set ``ignore=documentation`` as a ``parameters`` value, as in the AWS CLI command of ``aws apigateway import-rest-api --parameters ignore=documentation --body 'file:///path/to/imported-api-body.json'``." }, "policy": { - "$ref": "pulumi.json#/Any" + "$ref": "pulumi.json#/Any", + "description": "A policy document that contains the permissions for the ``RestApi`` resource. To set the ARN for the policy, use the ``!Join`` intrinsic function with ``\"\"`` as delimiter and values of ``\"execute-api:/\"`` and ``\"*\"``." }, "restApiId": { "type": "string" @@ -146490,7 +146594,8 @@ "type": "array", "items": { "$ref": "#/types/aws-native:apigateway:RestApiTag" - } + }, + "description": "The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with ``aws:``. The tag value can be up to 256 characters." } }, "type": "object", @@ -146500,108 +146605,123 @@ ], "inputProperties": { "apiKeySourceType": { - "type": "string" + "type": "string", + "description": "The source of the API key for metering requests according to a usage plan. Valid values are: ``HEADER`` to read the API key from the ``X-API-Key`` header of a request. ``AUTHORIZER`` to read the API key from the ``UsageIdentifierKey`` from a custom authorizer." }, "binaryMediaTypes": { "type": "array", "items": { "type": "string" - } + }, + "description": "The list of binary media types supported by the RestApi. By default, the RestApi supports only UTF-8-encoded text payloads." }, "body": { - "$ref": "pulumi.json#/Any" + "$ref": "pulumi.json#/Any", + "description": "An OpenAPI specification that defines a set of RESTful APIs in JSON format. For YAML templates, you can also provide the specification in YAML format." }, "bodyS3Location": { - "$ref": "#/types/aws-native:apigateway:RestApiS3Location" + "$ref": "#/types/aws-native:apigateway:RestApiS3Location", + "description": "The Amazon Simple Storage Service (Amazon S3) location that points to an OpenAPI file, which defines a set of RESTful APIs in JSON or YAML format." }, "cloneFrom": { - "type": "string" + "type": "string", + "description": "The ID of the RestApi that you want to clone from." }, "description": { - "type": "string" + "type": "string", + "description": "The description of the RestApi." }, "disableExecuteApiEndpoint": { - "type": "boolean" + "type": "boolean", + "description": "Specifies whether clients can invoke your API by using the default ``execute-api`` endpoint. By default, clients can invoke your API with the default ``https://{api_id}.execute-api.{region}.amazonaws.com`` endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint" }, "endpointConfiguration": { - "$ref": "#/types/aws-native:apigateway:RestApiEndpointConfiguration" + "$ref": "#/types/aws-native:apigateway:RestApiEndpointConfiguration", + "description": "A list of the endpoint types of the API. Use this property when creating an API. When importing an existing API, specify the endpoint configuration types using the ``Parameters`` property." }, "failOnWarnings": { - "type": "boolean" + "type": "boolean", + "description": "A query parameter to indicate whether to rollback the API update (``true``) or not (``false``) when a warning is encountered. The default value is ``false``." }, "minimumCompressionSize": { - "type": "integer" + "type": "integer", + "description": "A nullable integer that is used to enable compression (with non-negative between 0 and 10485760 (10M) bytes, inclusive) or disable compression (with a null value) on an API. When compression is enabled, compression or decompression is not applied on the payload if the payload size is smaller than this value. Setting it to zero allows compression for any payload size." }, "mode": { - "type": "string" + "type": "string", + "description": "This property applies only when you use OpenAPI to define your REST API. The ``Mode`` determines how API Gateway handles resource updates.\n Valid values are ``overwrite`` or ``merge``. \n For ``overwrite``, the new API definition replaces the existing one. The existing API identifier remains unchanged.\n For ``merge``, the new API definition is merged with the existing API.\n If you don't specify this property, a default value is chosen. For REST APIs created before March 29, 2021, the default is ``overwrite``. For REST APIs created after March 29, 2021, the new API definition takes precedence, but any container types such as endpoint configurations and binary media types are merged with the existing API. \n Use the default mode to define top-level ``RestApi`` properties in addition to using OpenAPI. Generally, it's preferred to use API Gateway's OpenAPI extensions to model these properties." }, "name": { - "type": "string" + "type": "string", + "description": "The name of the RestApi. A name is required if the REST API is not based on an OpenAPI specification." }, "parameters": { - "$ref": "pulumi.json#/Any" + "$ref": "pulumi.json#/Any", + "description": "Custom header parameters as part of the request. For example, to exclude DocumentationParts from an imported API, set ``ignore=documentation`` as a ``parameters`` value, as in the AWS CLI command of ``aws apigateway import-rest-api --parameters ignore=documentation --body 'file:///path/to/imported-api-body.json'``." }, "policy": { - "$ref": "pulumi.json#/Any" + "$ref": "pulumi.json#/Any", + "description": "A policy document that contains the permissions for the ``RestApi`` resource. To set the ARN for the policy, use the ``!Join`` intrinsic function with ``\"\"`` as delimiter and values of ``\"execute-api:/\"`` and ``\"*\"``." }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:apigateway:RestApiTag" - } + }, + "description": "The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with ``aws:``. The tag value can be up to 256 characters." } } }, "aws-native:apigateway:Stage": { - "description": "Resource Type definition for AWS::ApiGateway::Stage", + "description": "The ``AWS::ApiGateway::Stage`` resource creates a stage for a deployment.", "properties": { "accessLogSetting": { "$ref": "#/types/aws-native:apigateway:StageAccessLogSetting", - "description": "Specifies settings for logging access in this stage." + "description": "Access log settings, including the access log format and access log destination ARN." }, "cacheClusterEnabled": { "type": "boolean", - "description": "Indicates whether cache clustering is enabled for the stage." + "description": "Specifies whether a cache cluster is enabled for the stage." }, "cacheClusterSize": { "type": "string", - "description": "The stage's cache cluster size." + "description": "The stage's cache capacity in GB. For more information about choosing a cache size, see [Enabling API caching to enhance responsiveness](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html)." }, "canarySetting": { "$ref": "#/types/aws-native:apigateway:StageCanarySetting", - "description": "Specifies settings for the canary deployment in this stage." + "description": "Settings for the canary deployment in this stage." }, "clientCertificateId": { "type": "string", - "description": "The ID of the client certificate that API Gateway uses to call your integration endpoints in the stage. " + "description": "The identifier of a client certificate for an API stage." }, "deploymentId": { "type": "string", - "description": "The ID of the deployment that the stage is associated with. This parameter is required to create a stage. " + "description": "The identifier of the Deployment that the stage points to." }, "description": { "type": "string", - "description": "A description of the stage." + "description": "The stage's description." }, "documentationVersion": { "type": "string", - "description": "The version ID of the API documentation snapshot." + "description": "The version of the associated API documentation." }, "methodSettings": { "type": "array", "items": { "$ref": "#/types/aws-native:apigateway:StageMethodSetting" }, - "description": "Settings for all methods in the stage." + "description": "A map that defines the method settings for a Stage resource. Keys (designated as ``/{method_setting_key`` below) are method paths defined as ``{resource_path}/{http_method}`` for an individual method override, or ``/\\*/\\*`` for overriding all methods in the stage." }, "restApiId": { "type": "string", - "description": "The ID of the RestApi resource that you're deploying with this stage.", + "description": "The string identifier of the associated RestApi.", "replaceOnChanges": true }, "stageName": { "type": "string", - "description": "The name of the stage, which API Gateway uses as the first path segment in the invoked Uniform Resource Identifier (URI).", + "description": "The name of the stage is the first path segment in the Uniform Resource Identifier (URI) of a call to API Gateway. Stage names can only contain alphanumeric characters, hyphens, and underscores. Maximum length is 128 characters.", "replaceOnChanges": true }, "tags": { @@ -146609,15 +146729,15 @@ "items": { "$ref": "#/types/aws-native:apigateway:StageTag" }, - "description": "An array of arbitrary tags (key-value pairs) to associate with the stage." + "description": "The collection of tags. Each tag element is associated with a given resource." }, "tracingEnabled": { "type": "boolean", - "description": "Specifies whether active X-Ray tracing is enabled for this stage." + "description": "Specifies whether active tracing with X-ray is enabled for the Stage." }, "variables": { "$ref": "pulumi.json#/Any", - "description": "A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value." + "description": "A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value. Variable names are limited to alphanumeric characters. Values must match the following regular expression: ``[A-Za-z0-9-._~:/?#\u0026=,]+``." } }, "type": "object", @@ -146627,65 +146747,65 @@ "inputProperties": { "accessLogSetting": { "$ref": "#/types/aws-native:apigateway:StageAccessLogSetting", - "description": "Specifies settings for logging access in this stage." + "description": "Access log settings, including the access log format and access log destination ARN." }, "cacheClusterEnabled": { "type": "boolean", - "description": "Indicates whether cache clustering is enabled for the stage." + "description": "Specifies whether a cache cluster is enabled for the stage." }, "cacheClusterSize": { "type": "string", - "description": "The stage's cache cluster size." + "description": "The stage's cache capacity in GB. For more information about choosing a cache size, see [Enabling API caching to enhance responsiveness](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html)." }, "canarySetting": { "$ref": "#/types/aws-native:apigateway:StageCanarySetting", - "description": "Specifies settings for the canary deployment in this stage." + "description": "Settings for the canary deployment in this stage." }, "clientCertificateId": { "type": "string", - "description": "The ID of the client certificate that API Gateway uses to call your integration endpoints in the stage. " + "description": "The identifier of a client certificate for an API stage." }, "deploymentId": { "type": "string", - "description": "The ID of the deployment that the stage is associated with. This parameter is required to create a stage. " + "description": "The identifier of the Deployment that the stage points to." }, "description": { "type": "string", - "description": "A description of the stage." + "description": "The stage's description." }, "documentationVersion": { "type": "string", - "description": "The version ID of the API documentation snapshot." + "description": "The version of the associated API documentation." }, "methodSettings": { "type": "array", "items": { "$ref": "#/types/aws-native:apigateway:StageMethodSetting" }, - "description": "Settings for all methods in the stage." + "description": "A map that defines the method settings for a Stage resource. Keys (designated as ``/{method_setting_key`` below) are method paths defined as ``{resource_path}/{http_method}`` for an individual method override, or ``/\\*/\\*`` for overriding all methods in the stage." }, "restApiId": { "type": "string", - "description": "The ID of the RestApi resource that you're deploying with this stage." + "description": "The string identifier of the associated RestApi." }, "stageName": { "type": "string", - "description": "The name of the stage, which API Gateway uses as the first path segment in the invoked Uniform Resource Identifier (URI)." + "description": "The name of the stage is the first path segment in the Uniform Resource Identifier (URI) of a call to API Gateway. Stage names can only contain alphanumeric characters, hyphens, and underscores. Maximum length is 128 characters." }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:apigateway:StageTag" }, - "description": "An array of arbitrary tags (key-value pairs) to associate with the stage." + "description": "The collection of tags. Each tag element is associated with a given resource." }, "tracingEnabled": { "type": "boolean", - "description": "Specifies whether active X-Ray tracing is enabled for this stage." + "description": "Specifies whether active tracing with X-ray is enabled for the Stage." }, "variables": { "$ref": "pulumi.json#/Any", - "description": "A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value." + "description": "A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value. Variable names are limited to alphanumeric characters. Values must match the following regular expression: ``[A-Za-z0-9-._~:/?#\u0026=,]+``." } }, "requiredInputs": [ @@ -146761,21 +146881,21 @@ } }, "aws-native:apigateway:UsagePlanKey": { - "description": "Resource Type definition for AWS::ApiGateway::UsagePlanKey", + "description": "The ``AWS::ApiGateway::UsagePlanKey`` resource associates an API key with a usage plan. This association determines which users the usage plan is applied to.", "properties": { "keyId": { "type": "string", - "description": "The ID of the usage plan key.", + "description": "The Id of the UsagePlanKey resource.", "replaceOnChanges": true }, "keyType": { "$ref": "#/types/aws-native:apigateway:UsagePlanKeyKeyType", - "description": "The type of usage plan key. Currently, the only valid key type is API_KEY.", + "description": "The type of a UsagePlanKey resource for a plan customer.", "replaceOnChanges": true }, "usagePlanId": { "type": "string", - "description": "The ID of the usage plan.", + "description": "The Id of the UsagePlan resource representing the usage plan containing the UsagePlanKey resource representing a plan customer.", "replaceOnChanges": true } }, @@ -146788,15 +146908,15 @@ "inputProperties": { "keyId": { "type": "string", - "description": "The ID of the usage plan key." + "description": "The Id of the UsagePlanKey resource." }, "keyType": { "$ref": "#/types/aws-native:apigateway:UsagePlanKeyKeyType", - "description": "The type of usage plan key. Currently, the only valid key type is API_KEY." + "description": "The type of a UsagePlanKey resource for a plan customer." }, "usagePlanId": { "type": "string", - "description": "The ID of the usage plan." + "description": "The Id of the UsagePlan resource representing the usage plan containing the UsagePlanKey resource representing a plan customer." } }, "requiredInputs": [ @@ -147947,38 +148067,48 @@ "aws-native:appconfig:Application": { "description": "Resource Type definition for AWS::AppConfig::Application", "properties": { + "applicationId": { + "type": "string", + "description": "The application Id" + }, "description": { - "type": "string" + "type": "string", + "description": "A description of the application." }, "name": { - "type": "string" + "type": "string", + "description": "A name for the application." }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:appconfig:ApplicationTags" - } + }, + "description": "Metadata to assign to the application. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define." } }, "type": "object", "required": [ + "applicationId", "name" ], "inputProperties": { "description": { - "type": "string" + "type": "string", + "description": "A description of the application." }, "name": { - "type": "string" + "type": "string", + "description": "A name for the application." }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:appconfig:ApplicationTags" - } + }, + "description": "Metadata to assign to the application. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define." } - }, - "deprecationMessage": "Application is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible." + } }, "aws-native:appconfig:ConfigurationProfile": { "description": "Resource Type definition for AWS::AppConfig::ConfigurationProfile", @@ -147990,6 +148120,9 @@ "description": { "type": "string" }, + "kmsKeyIdentifier": { + "type": "string" + }, "locationUri": { "type": "string", "replaceOnChanges": true @@ -148030,6 +148163,9 @@ "description": { "type": "string" }, + "kmsKeyIdentifier": { + "type": "string" + }, "locationUri": { "type": "string" }, @@ -151420,56 +151556,72 @@ ] }, "aws-native:appsync:FunctionConfiguration": { - "description": "Resource Type definition for AWS::AppSync::FunctionConfiguration", + "description": "An example resource schema demonstrating some basic constructs and validation rules.", "properties": { "apiId": { "type": "string", + "description": "The AWS AppSync GraphQL API that you want to attach using this function.", "replaceOnChanges": true }, "code": { - "type": "string" + "type": "string", + "description": "The resolver code that contains the request and response functions. When code is used, the runtime is required. The runtime value must be APPSYNC_JS." }, "codeS3Location": { - "type": "string" + "type": "string", + "description": "The Amazon S3 endpoint (where the code is located??)." }, "dataSourceName": { - "type": "string" + "type": "string", + "description": "The name of data source this function will attach." }, "description": { - "type": "string" + "type": "string", + "description": "The function description." }, "functionArn": { - "type": "string" + "type": "string", + "description": "The ARN for the function generated by the service" }, "functionId": { - "type": "string" + "type": "string", + "description": "The unique identifier for the function generated by the service" }, "functionVersion": { - "type": "string" + "type": "string", + "description": "The version of the request mapping template. Currently, only the 2018-05-29 version of the template is supported." }, "maxBatchSize": { - "type": "integer" + "type": "integer", + "description": "The maximum number of resolver request inputs that will be sent to a single AWS Lambda function in a BatchInvoke operation." }, "name": { - "type": "string" + "type": "string", + "description": "The name of the function." }, "requestMappingTemplate": { - "type": "string" + "type": "string", + "description": "The Function request mapping template. Functions support only the 2018-05-29 version of the request mapping template." }, "requestMappingTemplateS3Location": { - "type": "string" + "type": "string", + "description": "Describes a Sync configuration for a resolver. Contains information on which Conflict Detection, as well as Resolution strategy, should be performed when the resolver is invoked." }, "responseMappingTemplate": { - "type": "string" + "type": "string", + "description": "The Function response mapping template." }, "responseMappingTemplateS3Location": { - "type": "string" + "type": "string", + "description": "The location of a response mapping template in an Amazon S3 bucket. Use this if you want to provision with a template file in Amazon S3 rather than embedding it in your CloudFormation template." }, "runtime": { - "$ref": "#/types/aws-native:appsync:FunctionConfigurationAppSyncRuntime" + "$ref": "#/types/aws-native:appsync:FunctionConfigurationAppSyncRuntime", + "description": "Describes a runtime used by an AWS AppSync pipeline resolver or AWS AppSync function. Specifies the name and version of the runtime to use. Note that if a runtime is specified, code must also be specified." }, "syncConfig": { - "$ref": "#/types/aws-native:appsync:FunctionConfigurationSyncConfig" + "$ref": "#/types/aws-native:appsync:FunctionConfigurationSyncConfig", + "description": "Describes a Sync configuration for a resolver. Specifies which Conflict Detection strategy and Resolution strategy to use when the resolver is invoked." } }, "type": "object", @@ -151482,53 +151634,66 @@ ], "inputProperties": { "apiId": { - "type": "string" + "type": "string", + "description": "The AWS AppSync GraphQL API that you want to attach using this function." }, "code": { - "type": "string" + "type": "string", + "description": "The resolver code that contains the request and response functions. When code is used, the runtime is required. The runtime value must be APPSYNC_JS." }, "codeS3Location": { - "type": "string" + "type": "string", + "description": "The Amazon S3 endpoint (where the code is located??)." }, "dataSourceName": { - "type": "string" + "type": "string", + "description": "The name of data source this function will attach." }, "description": { - "type": "string" + "type": "string", + "description": "The function description." }, "functionVersion": { - "type": "string" + "type": "string", + "description": "The version of the request mapping template. Currently, only the 2018-05-29 version of the template is supported." }, "maxBatchSize": { - "type": "integer" + "type": "integer", + "description": "The maximum number of resolver request inputs that will be sent to a single AWS Lambda function in a BatchInvoke operation." }, "name": { - "type": "string" + "type": "string", + "description": "The name of the function." }, "requestMappingTemplate": { - "type": "string" + "type": "string", + "description": "The Function request mapping template. Functions support only the 2018-05-29 version of the request mapping template." }, "requestMappingTemplateS3Location": { - "type": "string" + "type": "string", + "description": "Describes a Sync configuration for a resolver. Contains information on which Conflict Detection, as well as Resolution strategy, should be performed when the resolver is invoked." }, "responseMappingTemplate": { - "type": "string" + "type": "string", + "description": "The Function response mapping template." }, "responseMappingTemplateS3Location": { - "type": "string" + "type": "string", + "description": "The location of a response mapping template in an Amazon S3 bucket. Use this if you want to provision with a template file in Amazon S3 rather than embedding it in your CloudFormation template." }, "runtime": { - "$ref": "#/types/aws-native:appsync:FunctionConfigurationAppSyncRuntime" + "$ref": "#/types/aws-native:appsync:FunctionConfigurationAppSyncRuntime", + "description": "Describes a runtime used by an AWS AppSync pipeline resolver or AWS AppSync function. Specifies the name and version of the runtime to use. Note that if a runtime is specified, code must also be specified." }, "syncConfig": { - "$ref": "#/types/aws-native:appsync:FunctionConfigurationSyncConfig" + "$ref": "#/types/aws-native:appsync:FunctionConfigurationSyncConfig", + "description": "Describes a Sync configuration for a resolver. Specifies which Conflict Detection strategy and Resolution strategy to use when the resolver is invoked." } }, "requiredInputs": [ "apiId", "dataSourceName" - ], - "deprecationMessage": "FunctionConfiguration is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible." + ] }, "aws-native:appsync:GraphQlApi": { "description": "Resource Type definition for AWS::AppSync::GraphQLApi", @@ -159718,13 +159883,6 @@ "identityPoolName": { "type": "string" }, - "identityPoolTags": { - "type": "array", - "items": { - "$ref": "#/types/aws-native:cognito:IdentityPoolTag" - }, - "description": "An array of key-value pairs to apply to this resource." - }, "name": { "type": "string" }, @@ -159777,13 +159935,6 @@ "identityPoolName": { "type": "string" }, - "identityPoolTags": { - "type": "array", - "items": { - "$ref": "#/types/aws-native:cognito:IdentityPoolTag" - }, - "description": "An array of key-value pairs to apply to this resource." - }, "openIdConnectProviderArns": { "type": "array", "items": { @@ -159997,6 +160148,9 @@ "userPoolAddOns": { "$ref": "#/types/aws-native:cognito:UserPoolAddOns" }, + "userPoolId": { + "type": "string" + }, "userPoolName": { "type": "string" }, @@ -160020,7 +160174,8 @@ "required": [ "arn", "providerName", - "providerUrl" + "providerUrl", + "userPoolId" ], "inputProperties": { "accountRecoverySetting": { @@ -160110,8 +160265,7 @@ "verificationMessageTemplate": { "$ref": "#/types/aws-native:cognito:UserPoolVerificationMessageTemplate" } - }, - "deprecationMessage": "UserPool is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible." + } }, "aws-native:cognito:UserPoolClient": { "description": "Resource Type definition for AWS::Cognito::UserPoolClient", @@ -160370,7 +160524,7 @@ "replaceOnChanges": true }, "precedence": { - "type": "number" + "type": "integer" }, "roleArn": { "type": "string" @@ -160392,7 +160546,7 @@ "type": "string" }, "precedence": { - "type": "number" + "type": "integer" }, "roleArn": { "type": "string" @@ -160403,8 +160557,7 @@ }, "requiredInputs": [ "userPoolId" - ], - "deprecationMessage": "UserPoolGroup is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible." + ] }, "aws-native:cognito:UserPoolIdentityProvider": { "description": "Resource Type definition for AWS::Cognito::UserPoolIdentityProvider", @@ -161695,11 +161848,11 @@ "description": "The name of the contact flow module." }, "state": { - "$ref": "#/types/aws-native:connect:ContactFlowModuleState", + "type": "string", "description": "The state of the contact flow module." }, "status": { - "$ref": "#/types/aws-native:connect:ContactFlowModuleStatus", + "type": "string", "description": "The status of the contact flow module." }, "tags": { @@ -161736,7 +161889,7 @@ "description": "The name of the contact flow module." }, "state": { - "$ref": "#/types/aws-native:connect:ContactFlowModuleState", + "type": "string", "description": "The state of the contact flow module." }, "tags": { @@ -163646,6 +163799,15 @@ "type": "string", "description": "The time of this integration got last updated at" }, + "matching": { + "$ref": "#/types/aws-native:customerprofiles:DomainMatching" + }, + "ruleBasedMatching": { + "$ref": "#/types/aws-native:customerprofiles:DomainRuleBasedMatching" + }, + "stats": { + "$ref": "#/types/aws-native:customerprofiles:DomainStats" + }, "tags": { "type": "array", "items": { @@ -163658,7 +163820,8 @@ "required": [ "createdAt", "domainName", - "lastUpdatedAt" + "lastUpdatedAt", + "stats" ], "inputProperties": { "deadLetterQueueUrl": { @@ -163677,6 +163840,12 @@ "type": "string", "description": "The unique name of the domain." }, + "matching": { + "$ref": "#/types/aws-native:customerprofiles:DomainMatching" + }, + "ruleBasedMatching": { + "$ref": "#/types/aws-native:customerprofiles:DomainRuleBasedMatching" + }, "tags": { "type": "array", "items": { @@ -172719,6 +172888,10 @@ "enableDns64": { "type": "boolean" }, + "ipv4NetmaskLength": { + "type": "integer", + "description": "The netmask length of the IPv4 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool" + }, "ipv6CidrBlock": { "type": "string" }, @@ -172732,6 +172905,10 @@ "type": "boolean", "replaceOnChanges": true }, + "ipv6NetmaskLength": { + "type": "integer", + "description": "The netmask length of the IPv6 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool" + }, "mapPublicIpOnLaunch": { "type": "boolean" }, @@ -172782,12 +172959,20 @@ "enableDns64": { "type": "boolean" }, + "ipv4NetmaskLength": { + "type": "integer", + "description": "The netmask length of the IPv4 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool" + }, "ipv6CidrBlock": { "type": "string" }, "ipv6Native": { "type": "boolean" }, + "ipv6NetmaskLength": { + "type": "integer", + "description": "The netmask length of the IPv6 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool" + }, "mapPublicIpOnLaunch": { "type": "boolean" }, @@ -180315,6 +180500,105 @@ "type" ] }, + "aws-native:entityresolution:IdMappingWorkflow": { + "description": "IdMappingWorkflow defined in AWS Entity Resolution service", + "properties": { + "createdAt": { + "type": "string" + }, + "description": { + "type": "string", + "description": "The description of the IdMappingWorkflow" + }, + "idMappingTechniques": { + "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowIdMappingTechniques" + }, + "inputSourceConfig": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowInputSource" + } + }, + "outputSourceConfig": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowOutputSource" + } + }, + "roleArn": { + "type": "string" + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowTag" + } + }, + "updatedAt": { + "type": "string" + }, + "workflowArn": { + "type": "string" + }, + "workflowName": { + "type": "string", + "description": "The name of the IdMappingWorkflow", + "replaceOnChanges": true + } + }, + "type": "object", + "required": [ + "createdAt", + "idMappingTechniques", + "inputSourceConfig", + "outputSourceConfig", + "roleArn", + "updatedAt", + "workflowArn", + "workflowName" + ], + "inputProperties": { + "description": { + "type": "string", + "description": "The description of the IdMappingWorkflow" + }, + "idMappingTechniques": { + "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowIdMappingTechniques" + }, + "inputSourceConfig": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowInputSource" + } + }, + "outputSourceConfig": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowOutputSource" + } + }, + "roleArn": { + "type": "string" + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowTag" + } + }, + "workflowName": { + "type": "string", + "description": "The name of the IdMappingWorkflow" + } + }, + "requiredInputs": [ + "idMappingTechniques", + "inputSourceConfig", + "outputSourceConfig", + "roleArn", + "workflowName" + ] + }, "aws-native:entityresolution:MatchingWorkflow": { "description": "MatchingWorkflow defined in AWS Entity Resolution service", "properties": { @@ -180849,44 +181133,36 @@ "description": "Resource Type definition for AWS::Events::Rule", "properties": { "arn": { - "type": "string", - "description": "The ARN of the rule, such as arn:aws:events:us-east-2:123456789012:rule/example." + "type": "string" }, "description": { - "type": "string", - "description": "The description of the rule." + "type": "string" }, "eventBusName": { "type": "string", - "description": "The name or ARN of the event bus associated with the rule. If you omit this, the default event bus is used." + "replaceOnChanges": true }, "eventPattern": { - "type": "string", - "description": "The event pattern of the rule. For more information, see Events and Event Patterns in the Amazon EventBridge User Guide." + "$ref": "pulumi.json#/Any" }, "name": { "type": "string", - "description": "The name of the rule.", "replaceOnChanges": true }, "roleArn": { - "type": "string", - "description": "The Amazon Resource Name (ARN) of the role that is used for target invocation." + "type": "string" }, "scheduleExpression": { - "type": "string", - "description": "The scheduling expression. For example, \"cron(0 20 * * ? *)\", \"rate(5 minutes)\". For more information, see Creating an Amazon EventBridge rule that runs on a schedule." + "type": "string" }, "state": { - "$ref": "#/types/aws-native:events:RuleState", - "description": "The state of the rule." + "type": "string" }, "targets": { "type": "array", "items": { "$ref": "#/types/aws-native:events:RuleTarget" - }, - "description": "Adds the specified targets to the specified rule, or updates the targets if they are already associated with the rule.\nTargets are the resources that are invoked when a rule is triggered." + } } }, "type": "object", @@ -180895,39 +181171,31 @@ ], "inputProperties": { "description": { - "type": "string", - "description": "The description of the rule." + "type": "string" }, "eventBusName": { - "type": "string", - "description": "The name or ARN of the event bus associated with the rule. If you omit this, the default event bus is used." + "type": "string" }, "eventPattern": { - "type": "string", - "description": "The event pattern of the rule. For more information, see Events and Event Patterns in the Amazon EventBridge User Guide." + "$ref": "pulumi.json#/Any" }, "name": { - "type": "string", - "description": "The name of the rule." + "type": "string" }, "roleArn": { - "type": "string", - "description": "The Amazon Resource Name (ARN) of the role that is used for target invocation." + "type": "string" }, "scheduleExpression": { - "type": "string", - "description": "The scheduling expression. For example, \"cron(0 20 * * ? *)\", \"rate(5 minutes)\". For more information, see Creating an Amazon EventBridge rule that runs on a schedule." + "type": "string" }, "state": { - "$ref": "#/types/aws-native:events:RuleState", - "description": "The state of the rule." + "type": "string" }, "targets": { "type": "array", "items": { "$ref": "#/types/aws-native:events:RuleTarget" - }, - "description": "Adds the specified targets to the specified rule, or updates the targets if they are already associated with the rule.\nTargets are the resources that are invoked when a rule is triggered." + } } } }, @@ -183249,6 +183517,11 @@ "description": "A unique identifier for an AWS IAM role that manages access to your AWS services. With an instance role ARN set, any application that runs on an instance in this fleet can assume the role, including install scripts, server processes, and daemons (background processes). Create a role or look up a role's ARN from the IAM dashboard in the AWS Management Console.", "replaceOnChanges": true }, + "instanceRoleCredentialsProvider": { + "$ref": "#/types/aws-native:gamelift:FleetInstanceRoleCredentialsProvider", + "description": "Credentials provider implementation that loads credentials from the Amazon EC2 Instance Metadata Service.", + "replaceOnChanges": true + }, "locations": { "type": "array", "items": { @@ -183369,6 +183642,10 @@ "type": "string", "description": "A unique identifier for an AWS IAM role that manages access to your AWS services. With an instance role ARN set, any application that runs on an instance in this fleet can assume the role, including install scripts, server processes, and daemons (background processes). Create a role or look up a role's ARN from the IAM dashboard in the AWS Management Console." }, + "instanceRoleCredentialsProvider": { + "$ref": "#/types/aws-native:gamelift:FleetInstanceRoleCredentialsProvider", + "description": "Credentials provider implementation that loads credentials from the Amazon EC2 Instance Metadata Service." + }, "locations": { "type": "array", "items": { @@ -187004,26 +187281,31 @@ "description": "Resource Type definition for AWS::IAM::Group", "properties": { "arn": { - "type": "string" + "type": "string", + "description": "The Arn of the group to create" }, "groupName": { "type": "string", + "description": "The name of the group to create", "replaceOnChanges": true }, "managedPolicyArns": { "type": "array", "items": { "type": "string" - } + }, + "description": "A list of Amazon Resource Names (ARNs) of the IAM managed policies that you want to attach to the role. " }, "path": { - "type": "string" + "type": "string", + "description": "The path to the group" }, "policies": { "type": "array", "items": { "$ref": "#/types/aws-native:iam:GroupPolicy" - } + }, + "description": "Adds or updates an inline policy document that is embedded in the specified IAM group" } }, "type": "object", @@ -187032,25 +187314,28 @@ ], "inputProperties": { "groupName": { - "type": "string" + "type": "string", + "description": "The name of the group to create" }, "managedPolicyArns": { "type": "array", "items": { "type": "string" - } + }, + "description": "A list of Amazon Resource Names (ARNs) of the IAM managed policies that you want to attach to the role. " }, "path": { - "type": "string" + "type": "string", + "description": "The path to the group" }, "policies": { "type": "array", "items": { "$ref": "#/types/aws-native:iam:GroupPolicy" - } + }, + "description": "Adds or updates an inline policy document that is embedded in the specified IAM group" } - }, - "deprecationMessage": "Group is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible." + } }, "aws-native:iam:GroupPolicy": { "description": "Schema for IAM Group Policy", @@ -189940,7 +190225,8 @@ "type": "array", "items": { "type": "string" - } + }, + "replaceOnChanges": true }, "document": { "type": "string", @@ -189958,7 +190244,8 @@ "replaceOnChanges": true }, "jobExecutionsRetryConfig": { - "$ref": "#/types/aws-native:iot:JobExecutionsRetryConfigProperties" + "$ref": "#/types/aws-native:iot:JobExecutionsRetryConfigProperties", + "replaceOnChanges": true }, "jobExecutionsRolloutConfig": { "$ref": "#/types/aws-native:iot:JobExecutionsRolloutConfigProperties", @@ -189973,7 +190260,8 @@ "type": "array", "items": { "$ref": "#/types/aws-native:iot:JobTemplateMaintenanceWindow" - } + }, + "replaceOnChanges": true }, "presignedUrlConfig": { "$ref": "#/types/aws-native:iot:PresignedUrlConfigProperties", @@ -190178,6 +190466,12 @@ "policyName": { "type": "string", "replaceOnChanges": true + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:iot:PolicyTag" + } } }, "type": "object", @@ -190191,6 +190485,12 @@ }, "policyName": { "type": "string" + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:iot:PolicyTag" + } } }, "requiredInputs": [ @@ -196712,125 +197012,133 @@ "$ref": "#/types/aws-native:lambda:FunctionPackageType", "description": "PackageType." }, - "reservedConcurrentExecutions": { - "type": "integer", - "description": "The number of simultaneous executions to reserve for the function." - }, - "role": { - "type": "string", - "description": "The Amazon Resource Name (ARN) of the function's execution role." - }, - "runtime": { - "type": "string", - "description": "The identifier of the function's runtime." - }, - "runtimeManagementConfig": { - "$ref": "#/types/aws-native:lambda:FunctionRuntimeManagementConfig", - "description": "RuntimeManagementConfig" - }, - "snapStart": { - "$ref": "#/types/aws-native:lambda:FunctionSnapStart", - "description": "The SnapStart setting of your function" - }, - "snapStartResponse": { - "$ref": "#/types/aws-native:lambda:FunctionSnapStartResponse", - "description": "The SnapStart response of your function" - }, - "tags": { - "type": "array", - "items": { - "$ref": "#/types/aws-native:lambda:FunctionTag" - }, - "description": "A list of tags to apply to the function." - }, - "timeout": { - "type": "integer", - "description": "The amount of time that Lambda allows a function to run before stopping it. The default is 3 seconds. The maximum allowed value is 900 seconds." - }, - "tracingConfig": { - "$ref": "#/types/aws-native:lambda:FunctionTracingConfig", - "description": "Set Mode to Active to sample and trace a subset of incoming requests with AWS X-Ray." - }, - "vpcConfig": { - "$ref": "#/types/aws-native:lambda:FunctionVpcConfig", - "description": "For network connectivity to AWS resources in a VPC, specify a list of security groups and subnets in the VPC." - } - }, - "type": "object", - "required": [ - "arn", - "code", - "role", - "snapStartResponse" - ], - "inputProperties": { - "architectures": { - "type": "array", - "items": { - "$ref": "#/types/aws-native:lambda:FunctionArchitecturesItem" - } - }, - "code": { - "$ref": "#/types/aws-native:lambda:FunctionCode", - "description": "The code for the function." - }, - "codeSigningConfigArn": { - "type": "string", - "description": "A unique Arn for CodeSigningConfig resource" - }, - "deadLetterConfig": { - "$ref": "#/types/aws-native:lambda:FunctionDeadLetterConfig", - "description": "A dead letter queue configuration that specifies the queue or topic where Lambda sends asynchronous events when they fail processing." - }, - "description": { - "type": "string", - "description": "A description of the function." - }, - "environment": { - "$ref": "#/types/aws-native:lambda:FunctionEnvironment", - "description": "Environment variables that are accessible from function code during execution." - }, - "ephemeralStorage": { - "$ref": "#/types/aws-native:lambda:FunctionEphemeralStorage", - "description": "A function's ephemeral storage settings." - }, - "fileSystemConfigs": { - "type": "array", - "items": { - "$ref": "#/types/aws-native:lambda:FunctionFileSystemConfig" - }, - "description": "Connection settings for an Amazon EFS file system. To connect a function to a file system, a mount target must be available in every Availability Zone that your function connects to. If your template contains an AWS::EFS::MountTarget resource, you must also specify a DependsOn attribute to ensure that the mount target is created or updated before the function." - }, - "functionName": { - "type": "string", - "description": "The name of the Lambda function, up to 64 characters in length. If you don't specify a name, AWS CloudFormation generates one." - }, - "handler": { - "type": "string", - "description": "The name of the method within your code that Lambda calls to execute your function. The format includes the file name. It can also include namespaces and other qualifiers, depending on the runtime" - }, - "imageConfig": { - "$ref": "#/types/aws-native:lambda:FunctionImageConfig", - "description": "ImageConfig" - }, - "kmsKeyArn": { - "type": "string", - "description": "The ARN of the AWS Key Management Service (AWS KMS) key that's used to encrypt your function's environment variables. If it's not provided, AWS Lambda uses a default service key." - }, - "layers": { - "type": "array", - "items": { - "type": "string" - }, - "description": "A list of function layers to add to the function's execution environment. Specify each layer by its ARN, including the version." - }, - "memorySize": { - "type": "integer", - "description": "The amount of memory that your function has access to. Increasing the function's memory also increases its CPU allocation. The default value is 128 MB. The value must be a multiple of 64 MB." - }, - "packageType": { - "$ref": "#/types/aws-native:lambda:FunctionPackageType", - "description": "PackageType." + "policy": { + "$ref": "pulumi.json#/Any", + "description": "The resource policy of your function" + }, + "reservedConcurrentExecutions": { + "type": "integer", + "description": "The number of simultaneous executions to reserve for the function." + }, + "role": { + "type": "string", + "description": "The Amazon Resource Name (ARN) of the function's execution role." + }, + "runtime": { + "type": "string", + "description": "The identifier of the function's runtime." + }, + "runtimeManagementConfig": { + "$ref": "#/types/aws-native:lambda:FunctionRuntimeManagementConfig", + "description": "RuntimeManagementConfig" + }, + "snapStart": { + "$ref": "#/types/aws-native:lambda:FunctionSnapStart", + "description": "The SnapStart setting of your function" + }, + "snapStartResponse": { + "$ref": "#/types/aws-native:lambda:FunctionSnapStartResponse", + "description": "The SnapStart response of your function" + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:lambda:FunctionTag" + }, + "description": "A list of tags to apply to the function." + }, + "timeout": { + "type": "integer", + "description": "The amount of time that Lambda allows a function to run before stopping it. The default is 3 seconds. The maximum allowed value is 900 seconds." + }, + "tracingConfig": { + "$ref": "#/types/aws-native:lambda:FunctionTracingConfig", + "description": "Set Mode to Active to sample and trace a subset of incoming requests with AWS X-Ray." + }, + "vpcConfig": { + "$ref": "#/types/aws-native:lambda:FunctionVpcConfig", + "description": "For network connectivity to AWS resources in a VPC, specify a list of security groups and subnets in the VPC." + } + }, + "type": "object", + "required": [ + "arn", + "code", + "role", + "snapStartResponse" + ], + "inputProperties": { + "architectures": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:lambda:FunctionArchitecturesItem" + } + }, + "code": { + "$ref": "#/types/aws-native:lambda:FunctionCode", + "description": "The code for the function." + }, + "codeSigningConfigArn": { + "type": "string", + "description": "A unique Arn for CodeSigningConfig resource" + }, + "deadLetterConfig": { + "$ref": "#/types/aws-native:lambda:FunctionDeadLetterConfig", + "description": "A dead letter queue configuration that specifies the queue or topic where Lambda sends asynchronous events when they fail processing." + }, + "description": { + "type": "string", + "description": "A description of the function." + }, + "environment": { + "$ref": "#/types/aws-native:lambda:FunctionEnvironment", + "description": "Environment variables that are accessible from function code during execution." + }, + "ephemeralStorage": { + "$ref": "#/types/aws-native:lambda:FunctionEphemeralStorage", + "description": "A function's ephemeral storage settings." + }, + "fileSystemConfigs": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:lambda:FunctionFileSystemConfig" + }, + "description": "Connection settings for an Amazon EFS file system. To connect a function to a file system, a mount target must be available in every Availability Zone that your function connects to. If your template contains an AWS::EFS::MountTarget resource, you must also specify a DependsOn attribute to ensure that the mount target is created or updated before the function." + }, + "functionName": { + "type": "string", + "description": "The name of the Lambda function, up to 64 characters in length. If you don't specify a name, AWS CloudFormation generates one." + }, + "handler": { + "type": "string", + "description": "The name of the method within your code that Lambda calls to execute your function. The format includes the file name. It can also include namespaces and other qualifiers, depending on the runtime" + }, + "imageConfig": { + "$ref": "#/types/aws-native:lambda:FunctionImageConfig", + "description": "ImageConfig" + }, + "kmsKeyArn": { + "type": "string", + "description": "The ARN of the AWS Key Management Service (AWS KMS) key that's used to encrypt your function's environment variables. If it's not provided, AWS Lambda uses a default service key." + }, + "layers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of function layers to add to the function's execution environment. Specify each layer by its ARN, including the version." + }, + "memorySize": { + "type": "integer", + "description": "The amount of memory that your function has access to. Increasing the function's memory also increases its CPU allocation. The default value is 128 MB. The value must be a multiple of 64 MB." + }, + "packageType": { + "$ref": "#/types/aws-native:lambda:FunctionPackageType", + "description": "PackageType." + }, + "policy": { + "$ref": "pulumi.json#/Any", + "description": "The resource policy of your function" }, "reservedConcurrentExecutions": { "type": "integer", @@ -203845,6 +204153,108 @@ "serverProperties" ] }, + "aws-native:msk:Replicator": { + "description": "Resource Type definition for AWS::MSK::Replicator", + "properties": { + "currentVersion": { + "type": "string", + "description": "The current version of the MSK replicator." + }, + "description": { + "type": "string", + "description": "A summary description of the replicator.", + "replaceOnChanges": true + }, + "kafkaClusters": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:msk:ReplicatorKafkaCluster" + }, + "description": "Specifies a list of Kafka clusters which are targets of the replicator.", + "replaceOnChanges": true + }, + "replicationInfoList": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:msk:ReplicatorReplicationInfo" + }, + "description": "A list of replication configurations, where each configuration targets a given source cluster to target cluster replication flow." + }, + "replicatorArn": { + "type": "string", + "description": "Amazon Resource Name for the created replicator." + }, + "replicatorName": { + "type": "string", + "description": "The name of the replicator.", + "replaceOnChanges": true + }, + "serviceExecutionRoleArn": { + "type": "string", + "description": "The Amazon Resource Name (ARN) of the IAM role used by the replicator to access external resources.", + "replaceOnChanges": true + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:msk:ReplicatorTag" + }, + "description": "A collection of tags associated with a resource" + } + }, + "type": "object", + "required": [ + "kafkaClusters", + "replicationInfoList", + "replicatorArn", + "replicatorName", + "serviceExecutionRoleArn" + ], + "inputProperties": { + "currentVersion": { + "type": "string", + "description": "The current version of the MSK replicator." + }, + "description": { + "type": "string", + "description": "A summary description of the replicator." + }, + "kafkaClusters": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:msk:ReplicatorKafkaCluster" + }, + "description": "Specifies a list of Kafka clusters which are targets of the replicator." + }, + "replicationInfoList": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:msk:ReplicatorReplicationInfo" + }, + "description": "A list of replication configurations, where each configuration targets a given source cluster to target cluster replication flow." + }, + "replicatorName": { + "type": "string", + "description": "The name of the replicator." + }, + "serviceExecutionRoleArn": { + "type": "string", + "description": "The Amazon Resource Name (ARN) of the IAM role used by the replicator to access external resources." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:msk:ReplicatorTag" + }, + "description": "A collection of tags associated with a resource" + } + }, + "requiredInputs": [ + "kafkaClusters", + "replicationInfoList", + "serviceExecutionRoleArn" + ] + }, "aws-native:msk:ServerlessCluster": { "description": "Resource Type definition for AWS::MSK::ServerlessCluster", "properties": { @@ -211512,6 +211922,9 @@ }, "themeArn": { "type": "string" + }, + "validationStrategy": { + "$ref": "#/types/aws-native:quicksight:AnalysisValidationStrategy" } }, "type": "object", @@ -211562,6 +211975,9 @@ }, "themeArn": { "type": "string" + }, + "validationStrategy": { + "$ref": "#/types/aws-native:quicksight:AnalysisValidationStrategy" } }, "requiredInputs": [ @@ -211622,6 +212038,9 @@ "themeArn": { "type": "string" }, + "validationStrategy": { + "$ref": "#/types/aws-native:quicksight:DashboardValidationStrategy" + }, "version": { "$ref": "#/types/aws-native:quicksight:DashboardVersion" }, @@ -211677,6 +212096,9 @@ "themeArn": { "type": "string" }, + "validationStrategy": { + "$ref": "#/types/aws-native:quicksight:DashboardValidationStrategy" + }, "versionDescription": { "type": "string" } @@ -212074,6 +212496,9 @@ "type": "string", "replaceOnChanges": true }, + "validationStrategy": { + "$ref": "#/types/aws-native:quicksight:TemplateValidationStrategy" + }, "version": { "$ref": "#/types/aws-native:quicksight:TemplateVersion" }, @@ -212118,6 +212543,9 @@ "templateId": { "type": "string" }, + "validationStrategy": { + "$ref": "#/types/aws-native:quicksight:TemplateValidationStrategy" + }, "versionDescription": { "type": "string" } @@ -219234,107 +219662,87 @@ "description": "Resource Type definition for AWS::S3::Bucket", "properties": { "accelerateConfiguration": { - "$ref": "#/types/aws-native:s3:BucketAccelerateConfiguration", - "description": "Configuration for the transfer acceleration state." + "$ref": "#/types/aws-native:s3:BucketAccelerateConfiguration" }, "accessControl": { - "$ref": "#/types/aws-native:s3:BucketAccessControl", - "description": "A canned access control list (ACL) that grants predefined permissions to the bucket." + "type": "string" }, "analyticsConfigurations": { "type": "array", "items": { "$ref": "#/types/aws-native:s3:BucketAnalyticsConfiguration" - }, - "description": "The configuration and any analyses for the analytics filter of an Amazon S3 bucket." + } }, "arn": { - "type": "string", - "description": "The Amazon Resource Name (ARN) of the specified bucket." + "type": "string" }, "bucketEncryption": { "$ref": "#/types/aws-native:s3:BucketEncryption" }, "bucketName": { "type": "string", - "description": "A name for the bucket. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name.", "replaceOnChanges": true }, "corsConfiguration": { - "$ref": "#/types/aws-native:s3:BucketCorsConfiguration", - "description": "Rules that define cross-origin resource sharing of objects in this bucket." + "$ref": "#/types/aws-native:s3:BucketCorsConfiguration" }, "domainName": { - "type": "string", - "description": "The IPv4 DNS name of the specified bucket." + "type": "string" }, "dualStackDomainName": { - "type": "string", - "description": "The IPv6 DNS name of the specified bucket. For more information about dual-stack endpoints, see [Using Amazon S3 Dual-Stack Endpoints](https://docs.aws.amazon.com/AmazonS3/latest/dev/dual-stack-endpoints.html)." + "type": "string" }, "intelligentTieringConfigurations": { "type": "array", "items": { "$ref": "#/types/aws-native:s3:BucketIntelligentTieringConfiguration" - }, - "description": "Specifies the S3 Intelligent-Tiering configuration for an Amazon S3 bucket." + } }, "inventoryConfigurations": { "type": "array", "items": { "$ref": "#/types/aws-native:s3:BucketInventoryConfiguration" - }, - "description": "The inventory configuration for an Amazon S3 bucket." + } }, "lifecycleConfiguration": { - "$ref": "#/types/aws-native:s3:BucketLifecycleConfiguration", - "description": "Rules that define how Amazon S3 manages objects during their lifetime." + "$ref": "#/types/aws-native:s3:BucketLifecycleConfiguration" }, "loggingConfiguration": { - "$ref": "#/types/aws-native:s3:BucketLoggingConfiguration", - "description": "Settings that define where logs are stored." + "$ref": "#/types/aws-native:s3:BucketLoggingConfiguration" }, "metricsConfigurations": { "type": "array", "items": { "$ref": "#/types/aws-native:s3:BucketMetricsConfiguration" - }, - "description": "Settings that define a metrics configuration for the CloudWatch request metrics from the bucket." + } }, "notificationConfiguration": { - "$ref": "#/types/aws-native:s3:BucketNotificationConfiguration", - "description": "Configuration that defines how Amazon S3 handles bucket notifications." + "$ref": "#/types/aws-native:s3:BucketNotificationConfiguration" }, "objectLockConfiguration": { - "$ref": "#/types/aws-native:s3:BucketObjectLockConfiguration", - "description": "Places an Object Lock configuration on the specified bucket." + "$ref": "#/types/aws-native:s3:BucketObjectLockConfiguration" }, "objectLockEnabled": { "type": "boolean", - "description": "Indicates whether this bucket has an Object Lock configuration enabled.", "replaceOnChanges": true }, "ownershipControls": { - "$ref": "#/types/aws-native:s3:BucketOwnershipControls", - "description": "Specifies the container element for object ownership rules." + "$ref": "#/types/aws-native:s3:BucketOwnershipControls" }, "publicAccessBlockConfiguration": { "$ref": "#/types/aws-native:s3:BucketPublicAccessBlockConfiguration" }, "regionalDomainName": { - "type": "string", - "description": "Returns the regional domain name of the specified bucket." + "type": "string" }, "replicationConfiguration": { - "$ref": "#/types/aws-native:s3:BucketReplicationConfiguration", - "description": "Configuration for replicating objects in an S3 bucket." + "$ref": "#/types/aws-native:s3:BucketReplicationConfiguration" }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:s3:BucketTag" - }, - "description": "An arbitrary set of tags (key-value pairs) for this S3 bucket." + } }, "versioningConfiguration": { "$ref": "#/types/aws-native:s3:BucketVersioningConfiguration" @@ -219343,8 +219751,7 @@ "$ref": "#/types/aws-native:s3:BucketWebsiteConfiguration" }, "websiteUrl": { - "type": "string", - "description": "The Amazon S3 website endpoint for the specified bucket." + "type": "string" } }, "type": "object", @@ -219357,89 +219764,73 @@ ], "inputProperties": { "accelerateConfiguration": { - "$ref": "#/types/aws-native:s3:BucketAccelerateConfiguration", - "description": "Configuration for the transfer acceleration state." + "$ref": "#/types/aws-native:s3:BucketAccelerateConfiguration" }, "accessControl": { - "$ref": "#/types/aws-native:s3:BucketAccessControl", - "description": "A canned access control list (ACL) that grants predefined permissions to the bucket." + "type": "string" }, "analyticsConfigurations": { "type": "array", "items": { "$ref": "#/types/aws-native:s3:BucketAnalyticsConfiguration" - }, - "description": "The configuration and any analyses for the analytics filter of an Amazon S3 bucket." + } }, "bucketEncryption": { "$ref": "#/types/aws-native:s3:BucketEncryption" }, "bucketName": { - "type": "string", - "description": "A name for the bucket. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name." + "type": "string" }, "corsConfiguration": { - "$ref": "#/types/aws-native:s3:BucketCorsConfiguration", - "description": "Rules that define cross-origin resource sharing of objects in this bucket." + "$ref": "#/types/aws-native:s3:BucketCorsConfiguration" }, "intelligentTieringConfigurations": { "type": "array", "items": { "$ref": "#/types/aws-native:s3:BucketIntelligentTieringConfiguration" - }, - "description": "Specifies the S3 Intelligent-Tiering configuration for an Amazon S3 bucket." + } }, "inventoryConfigurations": { "type": "array", "items": { "$ref": "#/types/aws-native:s3:BucketInventoryConfiguration" - }, - "description": "The inventory configuration for an Amazon S3 bucket." + } }, "lifecycleConfiguration": { - "$ref": "#/types/aws-native:s3:BucketLifecycleConfiguration", - "description": "Rules that define how Amazon S3 manages objects during their lifetime." + "$ref": "#/types/aws-native:s3:BucketLifecycleConfiguration" }, "loggingConfiguration": { - "$ref": "#/types/aws-native:s3:BucketLoggingConfiguration", - "description": "Settings that define where logs are stored." + "$ref": "#/types/aws-native:s3:BucketLoggingConfiguration" }, "metricsConfigurations": { "type": "array", "items": { "$ref": "#/types/aws-native:s3:BucketMetricsConfiguration" - }, - "description": "Settings that define a metrics configuration for the CloudWatch request metrics from the bucket." + } }, "notificationConfiguration": { - "$ref": "#/types/aws-native:s3:BucketNotificationConfiguration", - "description": "Configuration that defines how Amazon S3 handles bucket notifications." + "$ref": "#/types/aws-native:s3:BucketNotificationConfiguration" }, "objectLockConfiguration": { - "$ref": "#/types/aws-native:s3:BucketObjectLockConfiguration", - "description": "Places an Object Lock configuration on the specified bucket." + "$ref": "#/types/aws-native:s3:BucketObjectLockConfiguration" }, "objectLockEnabled": { - "type": "boolean", - "description": "Indicates whether this bucket has an Object Lock configuration enabled." + "type": "boolean" }, "ownershipControls": { - "$ref": "#/types/aws-native:s3:BucketOwnershipControls", - "description": "Specifies the container element for object ownership rules." + "$ref": "#/types/aws-native:s3:BucketOwnershipControls" }, "publicAccessBlockConfiguration": { "$ref": "#/types/aws-native:s3:BucketPublicAccessBlockConfiguration" }, "replicationConfiguration": { - "$ref": "#/types/aws-native:s3:BucketReplicationConfiguration", - "description": "Configuration for replicating objects in an S3 bucket." + "$ref": "#/types/aws-native:s3:BucketReplicationConfiguration" }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:s3:BucketTag" - }, - "description": "An arbitrary set of tags (key-value pairs) for this S3 bucket." + } }, "versioningConfiguration": { "$ref": "#/types/aws-native:s3:BucketVersioningConfiguration" @@ -225344,6 +225735,10 @@ "aws-native:sns:Topic": { "description": "Resource Type definition for AWS::SNS::Topic", "properties": { + "archivePolicy": { + "$ref": "pulumi.json#/Any", + "description": "The archive policy determines the number of days Amazon SNS retains messages. You can set a retention period from 1 to 365 days." + }, "contentBasedDeduplication": { "type": "boolean", "description": "Enables content-based deduplication for FIFO topics. By default, ContentBasedDeduplication is set to false. If you create a FIFO topic and this attribute is false, you must specify a value for the MessageDeduplicationId parameter for the Publish action.\n\nWhen you set ContentBasedDeduplication to true, Amazon SNS uses a SHA-256 hash to generate the MessageDeduplicationId using the body of the message (but not the attributes of the message).\n\n(Optional) To override the generated value, you can specify a value for the the MessageDeduplicationId parameter for the Publish action.\n\n" @@ -225400,6 +225795,10 @@ "topicArn" ], "inputProperties": { + "archivePolicy": { + "$ref": "pulumi.json#/Any", + "description": "The archive policy determines the number of days Amazon SNS retains messages. You can set a retention period from 1 to 365 days." + }, "contentBasedDeduplication": { "type": "boolean", "description": "Enables content-based deduplication for FIFO topics. By default, ContentBasedDeduplication is set to false. If you create a FIFO topic and this attribute is false, you must specify a value for the MessageDeduplicationId parameter for the Publish action.\n\nWhen you set ContentBasedDeduplication to true, Amazon SNS uses a SHA-256 hash to generate the MessageDeduplicationId using the body of the message (but not the attributes of the message).\n\n(Optional) To override the generated value, you can specify a value for the the MessageDeduplicationId parameter for the Publish action.\n\n" @@ -225708,18 +226107,18 @@ ] }, "aws-native:sqs:QueuePolicy": { - "description": "Resource Type definition for AWS::SQS::QueuePolicy", + "description": "The ``AWS::SQS::QueuePolicy`` type applies a policy to SQS queues. For an example snippet, see [Declaring an policy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-iam.html#scenario-sqs-policy) in the *User Guide*.", "properties": { "policyDocument": { "$ref": "pulumi.json#/Any", - "description": "A policy document that contains the permissions for the specified Amazon SQS queues. For more information about Amazon SQS policies, see Creating Custom Policies Using the Access Policy Language in the Amazon Simple Queue Service Developer Guide." + "description": "A policy document that contains the permissions for the specified SQS queues. For more information about SQS policies, see [Using custom policies with the access policy language](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-creating-custom-policies.html) in the *Developer Guide*." }, "queues": { "type": "array", "items": { "type": "string" }, - "description": "The URLs of the queues to which you want to add the policy. You can use the Ref function to specify an AWS::SQS::Queue resource." + "description": "The URLs of the queues to which you want to add the policy. You can use the ``Ref`` function to specify an ``AWS::SQS::Queue`` resource." } }, "type": "object", @@ -225730,14 +226129,14 @@ "inputProperties": { "policyDocument": { "$ref": "pulumi.json#/Any", - "description": "A policy document that contains the permissions for the specified Amazon SQS queues. For more information about Amazon SQS policies, see Creating Custom Policies Using the Access Policy Language in the Amazon Simple Queue Service Developer Guide." + "description": "A policy document that contains the permissions for the specified SQS queues. For more information about SQS policies, see [Using custom policies with the access policy language](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-creating-custom-policies.html) in the *Developer Guide*." }, "queues": { "type": "array", "items": { "type": "string" }, - "description": "The URLs of the queues to which you want to add the policy. You can use the Ref function to specify an AWS::SQS::Queue resource." + "description": "The URLs of the queues to which you want to add the policy. You can use the ``Ref`` function to specify an ``AWS::SQS::Queue`` resource." } }, "requiredInputs": [ @@ -232537,7 +232936,7 @@ } }, "aws-native:apigateway:getAccount": { - "description": "Resource Type definition for AWS::ApiGateway::Account", + "description": "The ``AWS::ApiGateway::Account`` resource specifies the IAM role that Amazon API Gateway uses to write API logs to Amazon CloudWatch Logs. To avoid overwriting other roles, you should only have one ``AWS::ApiGateway::Account`` resource per region per account.", "inputs": { "properties": { "id": { @@ -232553,7 +232952,7 @@ "properties": { "cloudWatchRoleArn": { "type": "string", - "description": "The Amazon Resource Name (ARN) of an IAM role that has write access to CloudWatch Logs in your account." + "description": "The ARN of an Amazon CloudWatch role for the current Account." }, "id": { "type": "string", @@ -232611,7 +233010,7 @@ } }, "aws-native:apigateway:getAuthorizer": { - "description": "Represents an authorization layer for methods. If enabled on a method, API Gateway will activate the authorizer when a client calls the method.", + "description": "The ``AWS::ApiGateway::Authorizer`` resource creates an authorization layer that API Gateway activates for methods that have authorization enabled. API Gateway activates the authorizer when a client calls those methods.", "inputs": { "properties": { "authorizerId": { @@ -232619,7 +233018,7 @@ }, "restApiId": { "type": "string", - "description": "The identifier of the API." + "description": "The string identifier of the associated RestApi." } }, "required": [ @@ -232635,26 +233034,26 @@ }, "authorizerCredentials": { "type": "string", - "description": "Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer." + "description": "Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. To specify an IAM role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To use resource-based permissions on the Lambda function, specify null." }, "authorizerId": { "type": "string" }, "authorizerResultTtlInSeconds": { "type": "integer", - "description": "The TTL in seconds of cached authorizer results." + "description": "The TTL in seconds of cached authorizer results. If it equals 0, authorization caching is disabled. If it is greater than 0, API Gateway will cache authorizer responses. If this field is not set, the default value is 300. The maximum value is 3600, or 1 hour." }, "authorizerUri": { "type": "string", - "description": "Specifies the authorizer's Uniform Resource Identifier (URI)." + "description": "Specifies the authorizer's Uniform Resource Identifier (URI). For ``TOKEN`` or ``REQUEST`` authorizers, this must be a well-formed Lambda function URI, for example, ``arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:{account_id}:function:{lambda_function_name}/invocations``. In general, the URI has this form ``arn:aws:apigateway:{region}:lambda:path/{service_api}``, where ``{region}`` is the same as the region hosting the Lambda function, ``path`` indicates that the remaining substring in the URI should be treated as the path to the resource, including the initial ``/``. For Lambda functions, this is usually of the form ``/2015-03-31/functions/[FunctionARN]/invocations``." }, "identitySource": { "type": "string", - "description": "The identity source for which authorization is requested." + "description": "The identity source for which authorization is requested. For a ``TOKEN`` or ``COGNITO_USER_POOLS`` authorizer, this is required and specifies the request header mapping expression for the custom header holding the authorization token submitted by the client. For example, if the token header name is ``Auth``, the header mapping expression is ``method.request.header.Auth``. For the ``REQUEST`` authorizer, this is required when authorization caching is enabled. The value is a comma-separated string of one or more mapping expressions of the specified request parameters. For example, if an ``Auth`` header, a ``Name`` query string parameter are defined as identity sources, this value is ``method.request.header.Auth, method.request.querystring.Name``. These parameters will be used to derive the authorization caching key and to perform runtime validation of the ``REQUEST`` authorizer by verifying all of the identity-related request parameters are present, not null and non-empty. Only when this is true does the authorizer invoke the authorizer Lambda function, otherwise, it returns a 401 Unauthorized response without calling the Lambda function. The valid value is a string of comma-separated mapping expressions of the specified request parameters. When the authorization caching is not enabled, this property is optional." }, "identityValidationExpression": { "type": "string", - "description": "A validation expression for the incoming identity token." + "description": "A validation expression for the incoming identity token. For ``TOKEN`` authorizers, this value is a regular expression. For ``COGNITO_USER_POOLS`` authorizers, API Gateway will match the ``aud`` field of the incoming token from the client against the specified regular expression. It will invoke the authorizer's Lambda function when there is a match. Otherwise, it will return a 401 Unauthorized response without calling the Lambda function. The validation expression does not apply to the ``REQUEST`` authorizer." }, "name": { "type": "string", @@ -232665,11 +233064,11 @@ "items": { "type": "string" }, - "description": "A list of the Amazon Cognito user pool ARNs for the COGNITO_USER_POOLS authorizer." + "description": "A list of the Amazon Cognito user pool ARNs for the ``COGNITO_USER_POOLS`` authorizer. Each element is of this format: ``arn:aws:cognito-idp:{region}:{account_id}:userpool/{user_pool_id}``. For a ``TOKEN`` or ``REQUEST`` authorizer, this is not defined." }, "type": { "type": "string", - "description": "The authorizer type." + "description": "The authorizer type. Valid values are ``TOKEN`` for a Lambda function using a single authorization token submitted in a custom header, ``REQUEST`` for a Lambda function using incoming request parameters, and ``COGNITO_USER_POOLS`` for using an Amazon Cognito user pool." } } } @@ -232739,7 +233138,7 @@ } }, "aws-native:apigateway:getDeployment": { - "description": "Resource Type definition for AWS::ApiGateway::Deployment", + "description": "The ``AWS::ApiGateway::Deployment`` resource deploys an API Gateway ``RestApi`` resource to a stage so that clients can call the API over the internet. The stage acts as an environment.", "inputs": { "properties": { "deploymentId": { @@ -232748,7 +233147,7 @@ }, "restApiId": { "type": "string", - "description": "The ID of the RestApi resource to deploy. " + "description": "The string identifier of the associated RestApi." } }, "required": [ @@ -232764,13 +233163,13 @@ }, "description": { "type": "string", - "description": "A description of the purpose of the API Gateway deployment." + "description": "The description for the Deployment resource to create." } } } }, "aws-native:apigateway:getDocumentationPart": { - "description": "Resource Type definition for AWS::ApiGateway::DocumentationPart", + "description": "The ``AWS::ApiGateway::DocumentationPart`` resource creates a documentation part for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*.", "inputs": { "properties": { "documentationPartId": { @@ -232779,7 +233178,7 @@ }, "restApiId": { "type": "string", - "description": "Identifier of the targeted API entity" + "description": "The string identifier of the associated RestApi." } }, "required": [ @@ -232795,18 +233194,18 @@ }, "properties": { "type": "string", - "description": "The documentation content map of the targeted API entity." + "description": "The new documentation content map of the targeted API entity. Enclosed key-value pairs are API-specific, but only OpenAPI-compliant key-value pairs can be exported and, hence, published." } } } }, "aws-native:apigateway:getDocumentationVersion": { - "description": "A snapshot of the documentation of an API.", + "description": "The ``AWS::ApiGateway::DocumentationVersion`` resource creates a snapshot of the documentation for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*.", "inputs": { "properties": { "documentationVersion": { "type": "string", - "description": "The version identifier of the API documentation snapshot.", + "description": "The version identifier of the to-be-updated documentation version.", "language": { "csharp": { "name": "DocumentationVersionValue" @@ -232815,7 +233214,7 @@ }, "restApiId": { "type": "string", - "description": "The identifier of the API." + "description": "The string identifier of the associated RestApi." } }, "required": [ @@ -232827,7 +233226,7 @@ "properties": { "description": { "type": "string", - "description": "The description of the API documentation snapshot." + "description": "A description about the new documentation snapshot." } } } @@ -232920,20 +233319,20 @@ } }, "aws-native:apigateway:getMethod": { - "description": "Resource Type definition for AWS::ApiGateway::Method", + "description": "The ``AWS::ApiGateway::Method`` resource creates API Gateway methods that define the parameters and body that clients must send in their requests.", "inputs": { "properties": { "httpMethod": { "type": "string", - "description": "The backend system that the method calls when it receives a request." + "description": "The method's HTTP verb." }, "resourceId": { "type": "string", - "description": "The ID of an API Gateway resource." + "description": "The Resource identifier for the MethodResponse resource." }, "restApiId": { "type": "string", - "description": "The ID of the RestApi resource in which API Gateway creates the method." + "description": "The string identifier of the associated RestApi." } }, "required": [ @@ -232946,64 +233345,64 @@ "properties": { "apiKeyRequired": { "type": "boolean", - "description": "Indicates whether the method requires clients to submit a valid API key." + "description": "A boolean flag specifying whether a valid ApiKey is required to invoke this method." }, "authorizationScopes": { "type": "array", "items": { "type": "string" }, - "description": "A list of authorization scopes configured on the method." + "description": "A list of authorization scopes configured on the method. The scopes are used with a ``COGNITO_USER_POOLS`` authorizer to authorize the method invocation. The authorization works by matching the method scopes against the scopes parsed from the access token in the incoming request. The method invocation is authorized if any method scopes matches a claimed scope in the access token. Otherwise, the invocation is not authorized. When the method scope is configured, the client must provide an access token instead of an identity token for authorization purposes." }, "authorizationType": { "$ref": "#/types/aws-native:apigateway:MethodAuthorizationType", - "description": "The method's authorization type." + "description": "The method's authorization type. This parameter is required. For valid values, see [Method](https://docs.aws.amazon.com/apigateway/latest/api/API_Method.html) in the *API Gateway API Reference*.\n If you specify the ``AuthorizerId`` property, specify ``CUSTOM`` or ``COGNITO_USER_POOLS`` for this property." }, "authorizerId": { "type": "string", - "description": "The identifier of the authorizer to use on this method." + "description": "The identifier of an authorizer to use on this method. The method's authorization type must be ``CUSTOM`` or ``COGNITO_USER_POOLS``." }, "integration": { "$ref": "#/types/aws-native:apigateway:MethodIntegration", - "description": "The backend system that the method calls when it receives a request." + "description": "Represents an ``HTTP``, ``HTTP_PROXY``, ``AWS``, ``AWS_PROXY``, or Mock integration." }, "methodResponses": { "type": "array", "items": { "$ref": "#/types/aws-native:apigateway:MethodResponse" }, - "description": "The responses that can be sent to the client who calls the method." + "description": "Gets a method response associated with a given HTTP status code." }, "operationName": { "type": "string", - "description": "A friendly operation name for the method." + "description": "A human-friendly operation identifier for the method. For example, you can assign the ``operationName`` of ``ListPets`` for the ``GET /pets`` method in the ``PetStore`` example." }, "requestModels": { "$ref": "pulumi.json#/Any", - "description": "The resources that are used for the request's content type. Specify request models as key-value pairs (string-to-string mapping), with a content type as the key and a Model resource name as the value." + "description": "A key-value map specifying data schemas, represented by Model resources, (as the mapped value) of the request payloads of given content types (as the mapping key)." }, "requestParameters": { "$ref": "pulumi.json#/Any", - "description": "The request parameters that API Gateway accepts. Specify request parameters as key-value pairs (string-to-Boolean mapping), with a source as the key and a Boolean as the value." + "description": "A key-value map defining required or optional method request parameters that can be accepted by API Gateway. A key is a method request parameter name matching the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and ``name`` is a valid and unique parameter name. The value associated with the key is a Boolean flag indicating whether the parameter is required (``true``) or optional (``false``). The method request parameter names defined here are available in Integration to be mapped to integration request parameters or templates." }, "requestValidatorId": { "type": "string", - "description": "The ID of the associated request validator." + "description": "The identifier of a RequestValidator for request validation." } } } }, "aws-native:apigateway:getModel": { - "description": "Resource Type definition for AWS::ApiGateway::Model", + "description": "The ``AWS::ApiGateway::Model`` resource defines the structure of a request or response payload for an API method.", "inputs": { "properties": { "name": { "type": "string", - "description": "A name for the model. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the model name." + "description": "A name for the model. If you don't specify a name, CFN generates a unique physical ID and uses that ID for the model name. For more information, see [Name Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html).\n If you specify a name, you cannot perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name." }, "restApiId": { "type": "string", - "description": "The ID of a REST API with which to associate this model." + "description": "The string identifier of the associated RestApi." } }, "required": [ @@ -233015,11 +233414,11 @@ "properties": { "description": { "type": "string", - "description": "A description that identifies this model." + "description": "The description of the model." }, "schema": { "$ref": "pulumi.json#/Any", - "description": "The schema to use to transform data to one or more output formats. Specify null ({}) if you don't want to specify a schema." + "description": "The schema for the model. For ``application/json`` models, this should be JSON schema draft 4 model. Do not include \"\\*/\" characters in the description of any properties because such \"\\*/\" characters may be interpreted as the closing marker for comments in some languages, such as Java or JavaScript, causing the installation of your API's SDK generated by API Gateway to fail." } } } @@ -233060,7 +233459,7 @@ } }, "aws-native:apigateway:getResource": { - "description": "Resource Type definition for AWS::ApiGateway::Resource", + "description": "The ``AWS::ApiGateway::Resource`` resource creates a resource in an API.", "inputs": { "properties": { "resourceId": { @@ -233069,7 +233468,7 @@ }, "restApiId": { "type": "string", - "description": "The ID of the RestApi resource in which you want to create this resource.." + "description": "The string identifier of the associated RestApi." } }, "required": [ @@ -233087,7 +233486,7 @@ } }, "aws-native:apigateway:getRestApi": { - "description": "Resource Type definition for AWS::ApiGateway::RestApi.", + "description": "The ``AWS::ApiGateway::RestApi`` resource creates a REST API. For more information, see [restapi:create](https://docs.aws.amazon.com/apigateway/latest/api/API_CreateRestApi.html) in the *Amazon API Gateway REST API Reference*.\n On January 1, 2016, the Swagger Specification was donated to the [OpenAPI initiative](https://docs.aws.amazon.com/https://www.openapis.org/), becoming the foundation of the OpenAPI Specification.", "inputs": { "properties": { "restApiId": { @@ -233101,31 +233500,39 @@ "outputs": { "properties": { "apiKeySourceType": { - "type": "string" + "type": "string", + "description": "The source of the API key for metering requests according to a usage plan. Valid values are: ``HEADER`` to read the API key from the ``X-API-Key`` header of a request. ``AUTHORIZER`` to read the API key from the ``UsageIdentifierKey`` from a custom authorizer." }, "binaryMediaTypes": { "type": "array", "items": { "type": "string" - } + }, + "description": "The list of binary media types supported by the RestApi. By default, the RestApi supports only UTF-8-encoded text payloads." }, "description": { - "type": "string" + "type": "string", + "description": "The description of the RestApi." }, "disableExecuteApiEndpoint": { - "type": "boolean" + "type": "boolean", + "description": "Specifies whether clients can invoke your API by using the default ``execute-api`` endpoint. By default, clients can invoke your API with the default ``https://{api_id}.execute-api.{region}.amazonaws.com`` endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint" }, "endpointConfiguration": { - "$ref": "#/types/aws-native:apigateway:RestApiEndpointConfiguration" + "$ref": "#/types/aws-native:apigateway:RestApiEndpointConfiguration", + "description": "A list of the endpoint types of the API. Use this property when creating an API. When importing an existing API, specify the endpoint configuration types using the ``Parameters`` property." }, "minimumCompressionSize": { - "type": "integer" + "type": "integer", + "description": "A nullable integer that is used to enable compression (with non-negative between 0 and 10485760 (10M) bytes, inclusive) or disable compression (with a null value) on an API. When compression is enabled, compression or decompression is not applied on the payload if the payload size is smaller than this value. Setting it to zero allows compression for any payload size." }, "name": { - "type": "string" + "type": "string", + "description": "The name of the RestApi. A name is required if the REST API is not based on an OpenAPI specification." }, "policy": { - "$ref": "pulumi.json#/Any" + "$ref": "pulumi.json#/Any", + "description": "A policy document that contains the permissions for the ``RestApi`` resource. To set the ARN for the policy, use the ``!Join`` intrinsic function with ``\"\"`` as delimiter and values of ``\"execute-api:/\"`` and ``\"*\"``." }, "restApiId": { "type": "string" @@ -233137,22 +233544,23 @@ "type": "array", "items": { "$ref": "#/types/aws-native:apigateway:RestApiTag" - } + }, + "description": "The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with ``aws:``. The tag value can be up to 256 characters." } } } }, "aws-native:apigateway:getStage": { - "description": "Resource Type definition for AWS::ApiGateway::Stage", + "description": "The ``AWS::ApiGateway::Stage`` resource creates a stage for a deployment.", "inputs": { "properties": { "restApiId": { "type": "string", - "description": "The ID of the RestApi resource that you're deploying with this stage." + "description": "The string identifier of the associated RestApi." }, "stageName": { "type": "string", - "description": "The name of the stage, which API Gateway uses as the first path segment in the invoked Uniform Resource Identifier (URI)." + "description": "The name of the stage is the first path segment in the Uniform Resource Identifier (URI) of a call to API Gateway. Stage names can only contain alphanumeric characters, hyphens, and underscores. Maximum length is 128 characters." } }, "required": [ @@ -233164,57 +233572,57 @@ "properties": { "accessLogSetting": { "$ref": "#/types/aws-native:apigateway:StageAccessLogSetting", - "description": "Specifies settings for logging access in this stage." + "description": "Access log settings, including the access log format and access log destination ARN." }, "cacheClusterEnabled": { "type": "boolean", - "description": "Indicates whether cache clustering is enabled for the stage." + "description": "Specifies whether a cache cluster is enabled for the stage." }, "cacheClusterSize": { "type": "string", - "description": "The stage's cache cluster size." + "description": "The stage's cache capacity in GB. For more information about choosing a cache size, see [Enabling API caching to enhance responsiveness](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html)." }, "canarySetting": { "$ref": "#/types/aws-native:apigateway:StageCanarySetting", - "description": "Specifies settings for the canary deployment in this stage." + "description": "Settings for the canary deployment in this stage." }, "clientCertificateId": { "type": "string", - "description": "The ID of the client certificate that API Gateway uses to call your integration endpoints in the stage. " + "description": "The identifier of a client certificate for an API stage." }, "deploymentId": { "type": "string", - "description": "The ID of the deployment that the stage is associated with. This parameter is required to create a stage. " + "description": "The identifier of the Deployment that the stage points to." }, "description": { "type": "string", - "description": "A description of the stage." + "description": "The stage's description." }, "documentationVersion": { "type": "string", - "description": "The version ID of the API documentation snapshot." + "description": "The version of the associated API documentation." }, "methodSettings": { "type": "array", "items": { "$ref": "#/types/aws-native:apigateway:StageMethodSetting" }, - "description": "Settings for all methods in the stage." + "description": "A map that defines the method settings for a Stage resource. Keys (designated as ``/{method_setting_key`` below) are method paths defined as ``{resource_path}/{http_method}`` for an individual method override, or ``/\\*/\\*`` for overriding all methods in the stage." }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:apigateway:StageTag" }, - "description": "An array of arbitrary tags (key-value pairs) to associate with the stage." + "description": "The collection of tags. Each tag element is associated with a given resource." }, "tracingEnabled": { "type": "boolean", - "description": "Specifies whether active X-Ray tracing is enabled for this stage." + "description": "Specifies whether active tracing with X-ray is enabled for the Stage." }, "variables": { "$ref": "pulumi.json#/Any", - "description": "A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value." + "description": "A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value. Variable names are limited to alphanumeric characters. Values must match the following regular expression: ``[A-Za-z0-9-._~:/?#\u0026=,]+``." } } } @@ -233272,7 +233680,7 @@ } }, "aws-native:apigateway:getUsagePlanKey": { - "description": "Resource Type definition for AWS::ApiGateway::UsagePlanKey", + "description": "The ``AWS::ApiGateway::UsagePlanKey`` resource associates an API key with a usage plan. This association determines which users the usage plan is applied to.", "inputs": { "properties": { "id": { @@ -233940,30 +234348,35 @@ "description": "Resource Type definition for AWS::AppConfig::Application", "inputs": { "properties": { - "id": { - "type": "string" + "applicationId": { + "type": "string", + "description": "The application Id" } }, "required": [ - "id" + "applicationId" ] }, "outputs": { "properties": { - "description": { - "type": "string" + "applicationId": { + "type": "string", + "description": "The application Id" }, - "id": { - "type": "string" + "description": { + "type": "string", + "description": "A description of the application." }, "name": { - "type": "string" + "type": "string", + "description": "A name for the application." }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:appconfig:ApplicationTags" - } + }, + "description": "Metadata to assign to the application. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define." } } } @@ -233988,6 +234401,9 @@ "id": { "type": "string" }, + "kmsKeyIdentifier": { + "type": "string" + }, "name": { "type": "string" }, @@ -235622,66 +236038,67 @@ } }, "aws-native:appsync:getFunctionConfiguration": { - "description": "Resource Type definition for AWS::AppSync::FunctionConfiguration", + "description": "An example resource schema demonstrating some basic constructs and validation rules.", "inputs": { "properties": { - "id": { - "type": "string" + "functionArn": { + "type": "string", + "description": "The ARN for the function generated by the service" } }, "required": [ - "id" + "functionArn" ] }, "outputs": { "properties": { "code": { - "type": "string" - }, - "codeS3Location": { - "type": "string" + "type": "string", + "description": "The resolver code that contains the request and response functions. When code is used, the runtime is required. The runtime value must be APPSYNC_JS." }, "dataSourceName": { - "type": "string" + "type": "string", + "description": "The name of data source this function will attach." }, "description": { - "type": "string" + "type": "string", + "description": "The function description." }, "functionArn": { - "type": "string" + "type": "string", + "description": "The ARN for the function generated by the service" }, "functionId": { - "type": "string" + "type": "string", + "description": "The unique identifier for the function generated by the service" }, "functionVersion": { - "type": "string" - }, - "id": { - "type": "string" + "type": "string", + "description": "The version of the request mapping template. Currently, only the 2018-05-29 version of the template is supported." }, "maxBatchSize": { - "type": "integer" + "type": "integer", + "description": "The maximum number of resolver request inputs that will be sent to a single AWS Lambda function in a BatchInvoke operation." }, "name": { - "type": "string" + "type": "string", + "description": "The name of the function." }, "requestMappingTemplate": { - "type": "string" - }, - "requestMappingTemplateS3Location": { - "type": "string" + "type": "string", + "description": "The Function request mapping template. Functions support only the 2018-05-29 version of the request mapping template." }, "responseMappingTemplate": { - "type": "string" - }, - "responseMappingTemplateS3Location": { - "type": "string" + "type": "string", + "description": "The Function response mapping template." }, "runtime": { - "$ref": "#/types/aws-native:appsync:FunctionConfigurationAppSyncRuntime" + "$ref": "#/types/aws-native:appsync:FunctionConfigurationAppSyncRuntime", + "description": "Describes a runtime used by an AWS AppSync pipeline resolver or AWS AppSync function. Specifies the name and version of the runtime to use. Note that if a runtime is specified, code must also be specified." }, "syncConfig": { - "$ref": "#/types/aws-native:appsync:FunctionConfigurationSyncConfig" + "$ref": "#/types/aws-native:appsync:FunctionConfigurationSyncConfig", + "description": "Describes a Sync configuration for a resolver. Specifies which Conflict Detection strategy and Resolution strategy to use when the resolver is invoked." } } } @@ -240189,12 +240606,18 @@ "allowUnauthenticatedIdentities": { "type": "boolean" }, + "cognitoEvents": { + "$ref": "pulumi.json#/Any" + }, "cognitoIdentityProviders": { "type": "array", "items": { "$ref": "#/types/aws-native:cognito:IdentityPoolCognitoIdentityProvider" } }, + "cognitoStreams": { + "$ref": "#/types/aws-native:cognito:IdentityPoolCognitoStreams" + }, "developerProviderName": { "type": "string" }, @@ -240204,13 +240627,6 @@ "identityPoolName": { "type": "string" }, - "identityPoolTags": { - "type": "array", - "items": { - "$ref": "#/types/aws-native:cognito:IdentityPoolTag" - }, - "description": "An array of key-value pairs to apply to this resource." - }, "name": { "type": "string" }, @@ -240220,6 +240636,9 @@ "type": "string" } }, + "pushSync": { + "$ref": "#/types/aws-native:cognito:IdentityPoolPushSync" + }, "samlProviderArns": { "type": "array", "items": { @@ -240315,12 +240734,12 @@ "description": "Resource Type definition for AWS::Cognito::UserPool", "inputs": { "properties": { - "id": { + "userPoolId": { "type": "string" } }, "required": [ - "id" + "userPoolId" ] }, "outputs": { @@ -240361,15 +240780,6 @@ "emailVerificationSubject": { "type": "string" }, - "enabledMfas": { - "type": "array", - "items": { - "type": "string" - } - }, - "id": { - "type": "string" - }, "lambdaConfig": { "$ref": "#/types/aws-native:cognito:UserPoolLambdaConfig" }, @@ -240406,6 +240816,9 @@ "userPoolAddOns": { "$ref": "#/types/aws-native:cognito:UserPoolAddOns" }, + "userPoolId": { + "type": "string" + }, "userPoolName": { "type": "string" }, @@ -240567,12 +240980,16 @@ "description": "Resource Type definition for AWS::Cognito::UserPoolGroup", "inputs": { "properties": { - "id": { + "groupName": { + "type": "string" + }, + "userPoolId": { "type": "string" } }, "required": [ - "id" + "userPoolId", + "groupName" ] }, "outputs": { @@ -240580,11 +240997,8 @@ "description": { "type": "string" }, - "id": { - "type": "string" - }, "precedence": { - "type": "number" + "type": "integer" }, "roleArn": { "type": "string" @@ -241255,11 +241669,11 @@ "description": "The name of the contact flow module." }, "state": { - "$ref": "#/types/aws-native:connect:ContactFlowModuleState", + "type": "string", "description": "The state of the contact flow module." }, "status": { - "$ref": "#/types/aws-native:connect:ContactFlowModuleStatus", + "type": "string", "description": "The status of the contact flow module." }, "tags": { @@ -242344,6 +242758,15 @@ "type": "string", "description": "The time of this integration got last updated at" }, + "matching": { + "$ref": "#/types/aws-native:customerprofiles:DomainMatching" + }, + "ruleBasedMatching": { + "$ref": "#/types/aws-native:customerprofiles:DomainRuleBasedMatching" + }, + "stats": { + "$ref": "#/types/aws-native:customerprofiles:DomainStats" + }, "tags": { "type": "array", "items": { @@ -246925,6 +247348,10 @@ "enableDns64": { "type": "boolean" }, + "ipv4NetmaskLength": { + "type": "integer", + "description": "The netmask length of the IPv4 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool" + }, "ipv6CidrBlock": { "type": "string" }, @@ -246934,6 +247361,10 @@ "type": "string" } }, + "ipv6NetmaskLength": { + "type": "integer", + "description": "The netmask length of the IPv6 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool" + }, "mapPublicIpOnLaunch": { "type": "boolean" }, @@ -250578,6 +251009,61 @@ } } }, + "aws-native:entityresolution:getIdMappingWorkflow": { + "description": "IdMappingWorkflow defined in AWS Entity Resolution service", + "inputs": { + "properties": { + "workflowName": { + "type": "string", + "description": "The name of the IdMappingWorkflow" + } + }, + "required": [ + "workflowName" + ] + }, + "outputs": { + "properties": { + "createdAt": { + "type": "string" + }, + "description": { + "type": "string", + "description": "The description of the IdMappingWorkflow" + }, + "idMappingTechniques": { + "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowIdMappingTechniques" + }, + "inputSourceConfig": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowInputSource" + } + }, + "outputSourceConfig": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowOutputSource" + } + }, + "roleArn": { + "type": "string" + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowTag" + } + }, + "updatedAt": { + "type": "string" + }, + "workflowArn": { + "type": "string" + } + } + } + }, "aws-native:entityresolution:getMatchingWorkflow": { "description": "MatchingWorkflow defined in AWS Entity Resolution service", "inputs": { @@ -250886,51 +251372,42 @@ "description": "Resource Type definition for AWS::Events::Rule", "inputs": { "properties": { - "arn": { - "type": "string", - "description": "The ARN of the rule, such as arn:aws:events:us-east-2:123456789012:rule/example." + "id": { + "type": "string" } }, "required": [ - "arn" + "id" ] }, "outputs": { "properties": { "arn": { - "type": "string", - "description": "The ARN of the rule, such as arn:aws:events:us-east-2:123456789012:rule/example." + "type": "string" }, "description": { - "type": "string", - "description": "The description of the rule." - }, - "eventBusName": { - "type": "string", - "description": "The name or ARN of the event bus associated with the rule. If you omit this, the default event bus is used." + "type": "string" }, "eventPattern": { - "type": "string", - "description": "The event pattern of the rule. For more information, see Events and Event Patterns in the Amazon EventBridge User Guide." + "$ref": "pulumi.json#/Any" + }, + "id": { + "type": "string" }, "roleArn": { - "type": "string", - "description": "The Amazon Resource Name (ARN) of the role that is used for target invocation." + "type": "string" }, "scheduleExpression": { - "type": "string", - "description": "The scheduling expression. For example, \"cron(0 20 * * ? *)\", \"rate(5 minutes)\". For more information, see Creating an Amazon EventBridge rule that runs on a schedule." + "type": "string" }, "state": { - "$ref": "#/types/aws-native:events:RuleState", - "description": "The state of the rule." + "type": "string" }, "targets": { "type": "array", "items": { "$ref": "#/types/aws-native:events:RuleTarget" - }, - "description": "Adds the specified targets to the specified rule, or updates the targets if they are already associated with the rule.\nTargets are the resources that are invoked when a rule is triggered." + } } } } @@ -254444,36 +254921,38 @@ "description": "Resource Type definition for AWS::IAM::Group", "inputs": { "properties": { - "id": { - "type": "string" + "groupName": { + "type": "string", + "description": "The name of the group to create" } }, "required": [ - "id" + "groupName" ] }, "outputs": { "properties": { "arn": { - "type": "string" - }, - "id": { - "type": "string" + "type": "string", + "description": "The Arn of the group to create" }, "managedPolicyArns": { "type": "array", "items": { "type": "string" - } + }, + "description": "A list of Amazon Resource Names (ARNs) of the IAM managed policies that you want to attach to the role. " }, "path": { - "type": "string" + "type": "string", + "description": "The path to the group" }, "policies": { "type": "array", "items": { "$ref": "#/types/aws-native:iam:GroupPolicy" - } + }, + "description": "Adds or updates an inline policy document that is embedded in the specified IAM group" } } } @@ -256160,21 +256639,6 @@ "properties": { "arn": { "type": "string" - }, - "destinationPackageVersions": { - "type": "array", - "items": { - "type": "string" - } - }, - "jobExecutionsRetryConfig": { - "$ref": "#/types/aws-native:iot:JobExecutionsRetryConfigProperties" - }, - "maintenanceWindows": { - "type": "array", - "items": { - "$ref": "#/types/aws-native:iot:JobTemplateMaintenanceWindow" - } } } } @@ -256264,6 +256728,12 @@ }, "policyDocument": { "$ref": "pulumi.json#/Any" + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:iot:PolicyTag" + } } } } @@ -263895,6 +264365,46 @@ } } }, + "aws-native:msk:getReplicator": { + "description": "Resource Type definition for AWS::MSK::Replicator", + "inputs": { + "properties": { + "replicatorArn": { + "type": "string", + "description": "Amazon Resource Name for the created replicator." + } + }, + "required": [ + "replicatorArn" + ] + }, + "outputs": { + "properties": { + "currentVersion": { + "type": "string", + "description": "The current version of the MSK replicator." + }, + "replicationInfoList": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:msk:ReplicatorReplicationInfo" + }, + "description": "A list of replication configurations, where each configuration targets a given source cluster to target cluster replication flow." + }, + "replicatorArn": { + "type": "string", + "description": "Amazon Resource Name for the created replicator." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:msk:ReplicatorTag" + }, + "description": "A collection of tags associated with a resource" + } + } + } + }, "aws-native:msk:getServerlessCluster": { "description": "Resource Type definition for AWS::MSK::ServerlessCluster", "inputs": { @@ -272026,105 +272536,93 @@ "description": "Resource Type definition for AWS::S3::Bucket", "inputs": { "properties": { - "bucketName": { - "type": "string", - "description": "A name for the bucket. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name." + "id": { + "type": "string" } }, "required": [ - "bucketName" + "id" ] }, "outputs": { "properties": { "accelerateConfiguration": { - "$ref": "#/types/aws-native:s3:BucketAccelerateConfiguration", - "description": "Configuration for the transfer acceleration state." + "$ref": "#/types/aws-native:s3:BucketAccelerateConfiguration" + }, + "accessControl": { + "type": "string" }, "analyticsConfigurations": { "type": "array", "items": { "$ref": "#/types/aws-native:s3:BucketAnalyticsConfiguration" - }, - "description": "The configuration and any analyses for the analytics filter of an Amazon S3 bucket." + } }, "arn": { - "type": "string", - "description": "The Amazon Resource Name (ARN) of the specified bucket." + "type": "string" }, "bucketEncryption": { "$ref": "#/types/aws-native:s3:BucketEncryption" }, "corsConfiguration": { - "$ref": "#/types/aws-native:s3:BucketCorsConfiguration", - "description": "Rules that define cross-origin resource sharing of objects in this bucket." + "$ref": "#/types/aws-native:s3:BucketCorsConfiguration" }, "domainName": { - "type": "string", - "description": "The IPv4 DNS name of the specified bucket." + "type": "string" }, "dualStackDomainName": { - "type": "string", - "description": "The IPv6 DNS name of the specified bucket. For more information about dual-stack endpoints, see [Using Amazon S3 Dual-Stack Endpoints](https://docs.aws.amazon.com/AmazonS3/latest/dev/dual-stack-endpoints.html)." + "type": "string" + }, + "id": { + "type": "string" }, "intelligentTieringConfigurations": { "type": "array", "items": { "$ref": "#/types/aws-native:s3:BucketIntelligentTieringConfiguration" - }, - "description": "Specifies the S3 Intelligent-Tiering configuration for an Amazon S3 bucket." + } }, "inventoryConfigurations": { "type": "array", "items": { "$ref": "#/types/aws-native:s3:BucketInventoryConfiguration" - }, - "description": "The inventory configuration for an Amazon S3 bucket." + } }, "lifecycleConfiguration": { - "$ref": "#/types/aws-native:s3:BucketLifecycleConfiguration", - "description": "Rules that define how Amazon S3 manages objects during their lifetime." + "$ref": "#/types/aws-native:s3:BucketLifecycleConfiguration" }, "loggingConfiguration": { - "$ref": "#/types/aws-native:s3:BucketLoggingConfiguration", - "description": "Settings that define where logs are stored." + "$ref": "#/types/aws-native:s3:BucketLoggingConfiguration" }, "metricsConfigurations": { "type": "array", "items": { "$ref": "#/types/aws-native:s3:BucketMetricsConfiguration" - }, - "description": "Settings that define a metrics configuration for the CloudWatch request metrics from the bucket." + } }, "notificationConfiguration": { - "$ref": "#/types/aws-native:s3:BucketNotificationConfiguration", - "description": "Configuration that defines how Amazon S3 handles bucket notifications." + "$ref": "#/types/aws-native:s3:BucketNotificationConfiguration" }, "objectLockConfiguration": { - "$ref": "#/types/aws-native:s3:BucketObjectLockConfiguration", - "description": "Places an Object Lock configuration on the specified bucket." + "$ref": "#/types/aws-native:s3:BucketObjectLockConfiguration" }, "ownershipControls": { - "$ref": "#/types/aws-native:s3:BucketOwnershipControls", - "description": "Specifies the container element for object ownership rules." + "$ref": "#/types/aws-native:s3:BucketOwnershipControls" }, "publicAccessBlockConfiguration": { "$ref": "#/types/aws-native:s3:BucketPublicAccessBlockConfiguration" }, "regionalDomainName": { - "type": "string", - "description": "Returns the regional domain name of the specified bucket." + "type": "string" }, "replicationConfiguration": { - "$ref": "#/types/aws-native:s3:BucketReplicationConfiguration", - "description": "Configuration for replicating objects in an S3 bucket." + "$ref": "#/types/aws-native:s3:BucketReplicationConfiguration" }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:s3:BucketTag" - }, - "description": "An arbitrary set of tags (key-value pairs) for this S3 bucket." + } }, "versioningConfiguration": { "$ref": "#/types/aws-native:s3:BucketVersioningConfiguration" @@ -272133,8 +272631,7 @@ "$ref": "#/types/aws-native:s3:BucketWebsiteConfiguration" }, "websiteUrl": { - "type": "string", - "description": "The Amazon S3 website endpoint for the specified bucket." + "type": "string" } } } @@ -274440,12 +274937,16 @@ "description": "Resource Schema for AWS::ServiceCatalogAppRegistry::AttributeGroupAssociation.", "inputs": { "properties": { - "id": { + "applicationArn": { + "type": "string" + }, + "attributeGroupArn": { "type": "string" } }, "required": [ - "id" + "applicationArn", + "attributeGroupArn" ] }, "outputs": { @@ -274455,9 +274956,6 @@ }, "attributeGroupArn": { "type": "string" - }, - "id": { - "type": "string" } } } @@ -274466,12 +274964,21 @@ "description": "Resource Schema for AWS::ServiceCatalogAppRegistry::ResourceAssociation", "inputs": { "properties": { - "id": { + "applicationArn": { "type": "string" + }, + "resourceArn": { + "type": "string" + }, + "resourceType": { + "$ref": "#/types/aws-native:servicecatalogappregistry:ResourceAssociationResourceType", + "description": "The type of the CFN Resource for now it's enum CFN_STACK." } }, "required": [ - "id" + "applicationArn", + "resourceArn", + "resourceType" ] }, "outputs": { @@ -274479,9 +274986,6 @@ "applicationArn": { "type": "string" }, - "id": { - "type": "string" - }, "resourceArn": { "type": "string" } @@ -275221,6 +275725,10 @@ }, "outputs": { "properties": { + "archivePolicy": { + "$ref": "pulumi.json#/Any", + "description": "The archive policy determines the number of days Amazon SNS retains messages. You can set a retention period from 1 to 365 days." + }, "contentBasedDeduplication": { "type": "boolean", "description": "Enables content-based deduplication for FIFO topics. By default, ContentBasedDeduplication is set to false. If you create a FIFO topic and this attribute is false, you must specify a value for the MessageDeduplicationId parameter for the Publish action.\n\nWhen you set ContentBasedDeduplication to true, Amazon SNS uses a SHA-256 hash to generate the MessageDeduplicationId using the body of the message (but not the attributes of the message).\n\n(Optional) To override the generated value, you can specify a value for the the MessageDeduplicationId parameter for the Publish action.\n\n" @@ -275427,7 +275935,7 @@ } }, "aws-native:sqs:getQueuePolicy": { - "description": "Resource Type definition for AWS::SQS::QueuePolicy", + "description": "The ``AWS::SQS::QueuePolicy`` type applies a policy to SQS queues. For an example snippet, see [Declaring an policy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-iam.html#scenario-sqs-policy) in the *User Guide*.", "inputs": { "properties": { "id": { @@ -275447,14 +275955,14 @@ }, "policyDocument": { "$ref": "pulumi.json#/Any", - "description": "A policy document that contains the permissions for the specified Amazon SQS queues. For more information about Amazon SQS policies, see Creating Custom Policies Using the Access Policy Language in the Amazon Simple Queue Service Developer Guide." + "description": "A policy document that contains the permissions for the specified SQS queues. For more information about SQS policies, see [Using custom policies with the access policy language](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-creating-custom-policies.html) in the *Developer Guide*." }, "queues": { "type": "array", "items": { "type": "string" }, - "description": "The URLs of the queues to which you want to add the policy. You can use the Ref function to specify an AWS::SQS::Queue resource." + "description": "The URLs of the queues to which you want to add the policy. You can use the ``Ref`` function to specify an ``AWS::SQS::Queue`` resource." } } } diff --git a/provider/cmd/pulumi-gen-aws-native/deprecated-types.txt b/provider/cmd/pulumi-gen-aws-native/deprecated-types.txt index 4e8621bbae..18a21e116d 100644 --- a/provider/cmd/pulumi-gen-aws-native/deprecated-types.txt +++ b/provider/cmd/pulumi-gen-aws-native/deprecated-types.txt @@ -1,6 +1,10 @@ +AWS::Cognito::IdentityPool +AWS::EC2::SubnetNetworkAclAssociation +AWS::Events::Rule AWS::GameCast::Application AWS::GameCast::StreamGroup AWS::Lambda::EventInvokeConfig +AWS::S3::Bucket AWS::SNS::TopicPolicy AWSQS::EKS::Cluster AWSQS::Kubernetes::Get diff --git a/provider/cmd/pulumi-gen-aws-native/supported-types.txt b/provider/cmd/pulumi-gen-aws-native/supported-types.txt index 8a56c1ffb5..a4c8cddd21 100644 --- a/provider/cmd/pulumi-gen-aws-native/supported-types.txt +++ b/provider/cmd/pulumi-gen-aws-native/supported-types.txt @@ -39,6 +39,7 @@ AWS::ApiGatewayV2::Model AWS::ApiGatewayV2::Route AWS::ApiGatewayV2::RouteResponse AWS::ApiGatewayV2::VpcLink +AWS::AppConfig::Application AWS::AppConfig::Extension AWS::AppConfig::ExtensionAssociation AWS::AppFlow::Connector @@ -61,6 +62,7 @@ AWS::AppStream::Entitlement AWS::AppStream::ImageBuilder AWS::AppSync::DomainName AWS::AppSync::DomainNameApiAssociation +AWS::AppSync::FunctionConfiguration AWS::AppSync::SourceApiAssociation AWS::ApplicationAutoScaling::ScalableTarget AWS::ApplicationInsights::Application @@ -140,6 +142,8 @@ AWS::CodeStarNotifications::NotificationRule AWS::Cognito::IdentityPool AWS::Cognito::IdentityPoolPrincipalTag AWS::Cognito::LogDeliveryConfiguration +AWS::Cognito::UserPool +AWS::Cognito::UserPoolGroup AWS::Cognito::UserPoolUser AWS::Comprehend::DocumentClassifier AWS::Comprehend::Flywheel @@ -325,6 +329,7 @@ AWS::ElasticLoadBalancingV2::Listener AWS::ElasticLoadBalancingV2::ListenerRule AWS::ElasticLoadBalancingV2::LoadBalancer AWS::ElasticLoadBalancingV2::TargetGroup +AWS::EntityResolution::IdMappingWorkflow AWS::EntityResolution::MatchingWorkflow AWS::EntityResolution::SchemaMapping AWS::EventSchemas::RegistryPolicy @@ -377,6 +382,7 @@ AWS::GroundStation::MissionProfile AWS::GuardDuty::Detector AWS::HealthImaging::Datastore AWS::HealthLake::FHIRDatastore +AWS::IAM::Group AWS::IAM::GroupPolicy AWS::IAM::InstanceProfile AWS::IAM::ManagedPolicy @@ -528,6 +534,7 @@ AWS::MSK::BatchScramSecret AWS::MSK::Cluster AWS::MSK::ClusterPolicy AWS::MSK::Configuration +AWS::MSK::Replicator AWS::MSK::ServerlessCluster AWS::MSK::VpcConnection AWS::MWAA::Environment diff --git a/provider/cmd/pulumi-resource-aws-native/metadata.json b/provider/cmd/pulumi-resource-aws-native/metadata.json index 0651730042..91d9721c89 100644 --- a/provider/cmd/pulumi-resource-aws-native/metadata.json +++ b/provider/cmd/pulumi-resource-aws-native/metadata.json @@ -1029,13 +1029,13 @@ "inputs": { "cloudWatchRoleArn": { "type": "string", - "description": "The Amazon Resource Name (ARN) of an IAM role that has write access to CloudWatch Logs in your account." + "description": "The ARN of an Amazon CloudWatch role for the current Account." } }, "outputs": { "cloudWatchRoleArn": { "type": "string", - "description": "The Amazon Resource Name (ARN) of an IAM role that has write access to CloudWatch Logs in your account." + "description": "The ARN of an Amazon CloudWatch role for the current Account." } } }, @@ -1152,23 +1152,23 @@ }, "authorizerCredentials": { "type": "string", - "description": "Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer." + "description": "Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. To specify an IAM role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To use resource-based permissions on the Lambda function, specify null." }, "authorizerResultTtlInSeconds": { "type": "integer", - "description": "The TTL in seconds of cached authorizer results." + "description": "The TTL in seconds of cached authorizer results. If it equals 0, authorization caching is disabled. If it is greater than 0, API Gateway will cache authorizer responses. If this field is not set, the default value is 300. The maximum value is 3600, or 1 hour." }, "authorizerUri": { "type": "string", - "description": "Specifies the authorizer's Uniform Resource Identifier (URI)." + "description": "Specifies the authorizer's Uniform Resource Identifier (URI). For ``TOKEN`` or ``REQUEST`` authorizers, this must be a well-formed Lambda function URI, for example, ``arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:{account_id}:function:{lambda_function_name}/invocations``. In general, the URI has this form ``arn:aws:apigateway:{region}:lambda:path/{service_api}``, where ``{region}`` is the same as the region hosting the Lambda function, ``path`` indicates that the remaining substring in the URI should be treated as the path to the resource, including the initial ``/``. For Lambda functions, this is usually of the form ``/2015-03-31/functions/[FunctionARN]/invocations``." }, "identitySource": { "type": "string", - "description": "The identity source for which authorization is requested." + "description": "The identity source for which authorization is requested. For a ``TOKEN`` or ``COGNITO_USER_POOLS`` authorizer, this is required and specifies the request header mapping expression for the custom header holding the authorization token submitted by the client. For example, if the token header name is ``Auth``, the header mapping expression is ``method.request.header.Auth``. For the ``REQUEST`` authorizer, this is required when authorization caching is enabled. The value is a comma-separated string of one or more mapping expressions of the specified request parameters. For example, if an ``Auth`` header, a ``Name`` query string parameter are defined as identity sources, this value is ``method.request.header.Auth, method.request.querystring.Name``. These parameters will be used to derive the authorization caching key and to perform runtime validation of the ``REQUEST`` authorizer by verifying all of the identity-related request parameters are present, not null and non-empty. Only when this is true does the authorizer invoke the authorizer Lambda function, otherwise, it returns a 401 Unauthorized response without calling the Lambda function. The valid value is a string of comma-separated mapping expressions of the specified request parameters. When the authorization caching is not enabled, this property is optional." }, "identityValidationExpression": { "type": "string", - "description": "A validation expression for the incoming identity token." + "description": "A validation expression for the incoming identity token. For ``TOKEN`` authorizers, this value is a regular expression. For ``COGNITO_USER_POOLS`` authorizers, API Gateway will match the ``aud`` field of the incoming token from the client against the specified regular expression. It will invoke the authorizer's Lambda function when there is a match. Otherwise, it will return a 401 Unauthorized response without calling the Lambda function. The validation expression does not apply to the ``REQUEST`` authorizer." }, "name": { "type": "string", @@ -1179,15 +1179,15 @@ "items": { "type": "string" }, - "description": "A list of the Amazon Cognito user pool ARNs for the COGNITO_USER_POOLS authorizer." + "description": "A list of the Amazon Cognito user pool ARNs for the ``COGNITO_USER_POOLS`` authorizer. Each element is of this format: ``arn:aws:cognito-idp:{region}:{account_id}:userpool/{user_pool_id}``. For a ``TOKEN`` or ``REQUEST`` authorizer, this is not defined." }, "restApiId": { "type": "string", - "description": "The identifier of the API." + "description": "The string identifier of the associated RestApi." }, "type": { "type": "string", - "description": "The authorizer type." + "description": "The authorizer type. Valid values are ``TOKEN`` for a Lambda function using a single authorization token submitted in a custom header, ``REQUEST`` for a Lambda function using incoming request parameters, and ``COGNITO_USER_POOLS`` for using an Amazon Cognito user pool." } }, "outputs": { @@ -1197,26 +1197,26 @@ }, "authorizerCredentials": { "type": "string", - "description": "Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer." + "description": "Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. To specify an IAM role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To use resource-based permissions on the Lambda function, specify null." }, "authorizerId": { "type": "string" }, "authorizerResultTtlInSeconds": { "type": "integer", - "description": "The TTL in seconds of cached authorizer results." + "description": "The TTL in seconds of cached authorizer results. If it equals 0, authorization caching is disabled. If it is greater than 0, API Gateway will cache authorizer responses. If this field is not set, the default value is 300. The maximum value is 3600, or 1 hour." }, "authorizerUri": { "type": "string", - "description": "Specifies the authorizer's Uniform Resource Identifier (URI)." + "description": "Specifies the authorizer's Uniform Resource Identifier (URI). For ``TOKEN`` or ``REQUEST`` authorizers, this must be a well-formed Lambda function URI, for example, ``arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:{account_id}:function:{lambda_function_name}/invocations``. In general, the URI has this form ``arn:aws:apigateway:{region}:lambda:path/{service_api}``, where ``{region}`` is the same as the region hosting the Lambda function, ``path`` indicates that the remaining substring in the URI should be treated as the path to the resource, including the initial ``/``. For Lambda functions, this is usually of the form ``/2015-03-31/functions/[FunctionARN]/invocations``." }, "identitySource": { "type": "string", - "description": "The identity source for which authorization is requested." + "description": "The identity source for which authorization is requested. For a ``TOKEN`` or ``COGNITO_USER_POOLS`` authorizer, this is required and specifies the request header mapping expression for the custom header holding the authorization token submitted by the client. For example, if the token header name is ``Auth``, the header mapping expression is ``method.request.header.Auth``. For the ``REQUEST`` authorizer, this is required when authorization caching is enabled. The value is a comma-separated string of one or more mapping expressions of the specified request parameters. For example, if an ``Auth`` header, a ``Name`` query string parameter are defined as identity sources, this value is ``method.request.header.Auth, method.request.querystring.Name``. These parameters will be used to derive the authorization caching key and to perform runtime validation of the ``REQUEST`` authorizer by verifying all of the identity-related request parameters are present, not null and non-empty. Only when this is true does the authorizer invoke the authorizer Lambda function, otherwise, it returns a 401 Unauthorized response without calling the Lambda function. The valid value is a string of comma-separated mapping expressions of the specified request parameters. When the authorization caching is not enabled, this property is optional." }, "identityValidationExpression": { "type": "string", - "description": "A validation expression for the incoming identity token." + "description": "A validation expression for the incoming identity token. For ``TOKEN`` authorizers, this value is a regular expression. For ``COGNITO_USER_POOLS`` authorizers, API Gateway will match the ``aud`` field of the incoming token from the client against the specified regular expression. It will invoke the authorizer's Lambda function when there is a match. Otherwise, it will return a 401 Unauthorized response without calling the Lambda function. The validation expression does not apply to the ``REQUEST`` authorizer." }, "name": { "type": "string", @@ -1227,16 +1227,16 @@ "items": { "type": "string" }, - "description": "A list of the Amazon Cognito user pool ARNs for the COGNITO_USER_POOLS authorizer." + "description": "A list of the Amazon Cognito user pool ARNs for the ``COGNITO_USER_POOLS`` authorizer. Each element is of this format: ``arn:aws:cognito-idp:{region}:{account_id}:userpool/{user_pool_id}``. For a ``TOKEN`` or ``REQUEST`` authorizer, this is not defined." }, "restApiId": { "type": "string", - "description": "The identifier of the API.", + "description": "The string identifier of the associated RestApi.", "replaceOnChanges": true }, "type": { "type": "string", - "description": "The authorizer type." + "description": "The authorizer type. Valid values are ``TOKEN`` for a Lambda function using a single authorization token submitted in a custom header, ``REQUEST`` for a Lambda function using incoming request parameters, and ``COGNITO_USER_POOLS`` for using an Amazon Cognito user pool." } }, "autoNamingSpec": { @@ -1339,29 +1339,29 @@ "inputs": { "deploymentCanarySettings": { "$ref": "#/types/aws-native:apigateway:DeploymentCanarySettings", - "description": "Specifies settings for the canary deployment." + "description": "The input configuration for a canary deployment." }, "description": { "type": "string", - "description": "A description of the purpose of the API Gateway deployment." + "description": "The description for the Deployment resource to create." }, "restApiId": { "type": "string", - "description": "The ID of the RestApi resource to deploy. " + "description": "The string identifier of the associated RestApi." }, "stageDescription": { "$ref": "#/types/aws-native:apigateway:DeploymentStageDescription", - "description": "Configures the stage that API Gateway creates with this deployment." + "description": "The description of the Stage resource for the Deployment resource to create. To specify a stage description, you must also provide a stage name." }, "stageName": { "type": "string", - "description": "A name for the stage that API Gateway creates with this deployment. Use only alphanumeric characters." + "description": "The name of the Stage resource for the Deployment resource to create." } }, "outputs": { "deploymentCanarySettings": { "$ref": "#/types/aws-native:apigateway:DeploymentCanarySettings", - "description": "Specifies settings for the canary deployment.", + "description": "The input configuration for a canary deployment.", "replaceOnChanges": true }, "deploymentId": { @@ -1370,20 +1370,20 @@ }, "description": { "type": "string", - "description": "A description of the purpose of the API Gateway deployment." + "description": "The description for the Deployment resource to create." }, "restApiId": { "type": "string", - "description": "The ID of the RestApi resource to deploy. ", + "description": "The string identifier of the associated RestApi.", "replaceOnChanges": true }, "stageDescription": { "$ref": "#/types/aws-native:apigateway:DeploymentStageDescription", - "description": "Configures the stage that API Gateway creates with this deployment." + "description": "The description of the Stage resource for the Deployment resource to create. To specify a stage description, you must also provide a stage name." }, "stageName": { "type": "string", - "description": "A name for the stage that API Gateway creates with this deployment. Use only alphanumeric characters." + "description": "The name of the Stage resource for the Deployment resource to create." } }, "required": [ @@ -1404,15 +1404,15 @@ "inputs": { "location": { "$ref": "#/types/aws-native:apigateway:DocumentationPartLocation", - "description": "The location of the API entity that the documentation applies to." + "description": "The location of the targeted API entity of the to-be-created documentation part." }, "properties": { "type": "string", - "description": "The documentation content map of the targeted API entity." + "description": "The new documentation content map of the targeted API entity. Enclosed key-value pairs are API-specific, but only OpenAPI-compliant key-value pairs can be exported and, hence, published." }, "restApiId": { "type": "string", - "description": "Identifier of the targeted API entity" + "description": "The string identifier of the associated RestApi." } }, "outputs": { @@ -1422,16 +1422,16 @@ }, "location": { "$ref": "#/types/aws-native:apigateway:DocumentationPartLocation", - "description": "The location of the API entity that the documentation applies to.", + "description": "The location of the targeted API entity of the to-be-created documentation part.", "replaceOnChanges": true }, "properties": { "type": "string", - "description": "The documentation content map of the targeted API entity." + "description": "The new documentation content map of the targeted API entity. Enclosed key-value pairs are API-specific, but only OpenAPI-compliant key-value pairs can be exported and, hence, published." }, "restApiId": { "type": "string", - "description": "Identifier of the targeted API entity", + "description": "The string identifier of the associated RestApi.", "replaceOnChanges": true } }, @@ -1450,11 +1450,11 @@ "inputs": { "description": { "type": "string", - "description": "The description of the API documentation snapshot." + "description": "A description about the new documentation snapshot." }, "documentationVersion": { "type": "string", - "description": "The version identifier of the API documentation snapshot.", + "description": "The version identifier of the to-be-updated documentation version.", "language": { "csharp": { "name": "DocumentationVersionValue" @@ -1463,17 +1463,17 @@ }, "restApiId": { "type": "string", - "description": "The identifier of the API." + "description": "The string identifier of the associated RestApi." } }, "outputs": { "description": { "type": "string", - "description": "The description of the API documentation snapshot." + "description": "A description about the new documentation snapshot." }, "documentationVersion": { "type": "string", - "description": "The version identifier of the API documentation snapshot.", + "description": "The version identifier of the to-be-updated documentation version.", "language": { "csharp": { "name": "DocumentationVersionValue" @@ -1483,7 +1483,7 @@ }, "restApiId": { "type": "string", - "description": "The identifier of the API.", + "description": "The string identifier of the associated RestApi.", "replaceOnChanges": true } }, @@ -1588,123 +1588,123 @@ "inputs": { "apiKeyRequired": { "type": "boolean", - "description": "Indicates whether the method requires clients to submit a valid API key." + "description": "A boolean flag specifying whether a valid ApiKey is required to invoke this method." }, "authorizationScopes": { "type": "array", "items": { "type": "string" }, - "description": "A list of authorization scopes configured on the method." + "description": "A list of authorization scopes configured on the method. The scopes are used with a ``COGNITO_USER_POOLS`` authorizer to authorize the method invocation. The authorization works by matching the method scopes against the scopes parsed from the access token in the incoming request. The method invocation is authorized if any method scopes matches a claimed scope in the access token. Otherwise, the invocation is not authorized. When the method scope is configured, the client must provide an access token instead of an identity token for authorization purposes." }, "authorizationType": { "$ref": "#/types/aws-native:apigateway:MethodAuthorizationType", - "description": "The method's authorization type." + "description": "The method's authorization type. This parameter is required. For valid values, see [Method](https://docs.aws.amazon.com/apigateway/latest/api/API_Method.html) in the *API Gateway API Reference*.\n If you specify the ``AuthorizerId`` property, specify ``CUSTOM`` or ``COGNITO_USER_POOLS`` for this property." }, "authorizerId": { "type": "string", - "description": "The identifier of the authorizer to use on this method." + "description": "The identifier of an authorizer to use on this method. The method's authorization type must be ``CUSTOM`` or ``COGNITO_USER_POOLS``." }, "httpMethod": { "type": "string", - "description": "The backend system that the method calls when it receives a request." + "description": "The method's HTTP verb." }, "integration": { "$ref": "#/types/aws-native:apigateway:MethodIntegration", - "description": "The backend system that the method calls when it receives a request." + "description": "Represents an ``HTTP``, ``HTTP_PROXY``, ``AWS``, ``AWS_PROXY``, or Mock integration." }, "methodResponses": { "type": "array", "items": { "$ref": "#/types/aws-native:apigateway:MethodResponse" }, - "description": "The responses that can be sent to the client who calls the method." + "description": "Gets a method response associated with a given HTTP status code." }, "operationName": { "type": "string", - "description": "A friendly operation name for the method." + "description": "A human-friendly operation identifier for the method. For example, you can assign the ``operationName`` of ``ListPets`` for the ``GET /pets`` method in the ``PetStore`` example." }, "requestModels": { "$ref": "pulumi.json#/Any", - "description": "The resources that are used for the request's content type. Specify request models as key-value pairs (string-to-string mapping), with a content type as the key and a Model resource name as the value." + "description": "A key-value map specifying data schemas, represented by Model resources, (as the mapped value) of the request payloads of given content types (as the mapping key)." }, "requestParameters": { "$ref": "pulumi.json#/Any", - "description": "The request parameters that API Gateway accepts. Specify request parameters as key-value pairs (string-to-Boolean mapping), with a source as the key and a Boolean as the value." + "description": "A key-value map defining required or optional method request parameters that can be accepted by API Gateway. A key is a method request parameter name matching the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and ``name`` is a valid and unique parameter name. The value associated with the key is a Boolean flag indicating whether the parameter is required (``true``) or optional (``false``). The method request parameter names defined here are available in Integration to be mapped to integration request parameters or templates." }, "requestValidatorId": { "type": "string", - "description": "The ID of the associated request validator." + "description": "The identifier of a RequestValidator for request validation." }, "resourceId": { "type": "string", - "description": "The ID of an API Gateway resource." + "description": "The Resource identifier for the MethodResponse resource." }, "restApiId": { "type": "string", - "description": "The ID of the RestApi resource in which API Gateway creates the method." + "description": "The string identifier of the associated RestApi." } }, "outputs": { "apiKeyRequired": { "type": "boolean", - "description": "Indicates whether the method requires clients to submit a valid API key." + "description": "A boolean flag specifying whether a valid ApiKey is required to invoke this method." }, "authorizationScopes": { "type": "array", "items": { "type": "string" }, - "description": "A list of authorization scopes configured on the method." + "description": "A list of authorization scopes configured on the method. The scopes are used with a ``COGNITO_USER_POOLS`` authorizer to authorize the method invocation. The authorization works by matching the method scopes against the scopes parsed from the access token in the incoming request. The method invocation is authorized if any method scopes matches a claimed scope in the access token. Otherwise, the invocation is not authorized. When the method scope is configured, the client must provide an access token instead of an identity token for authorization purposes." }, "authorizationType": { "$ref": "#/types/aws-native:apigateway:MethodAuthorizationType", - "description": "The method's authorization type." + "description": "The method's authorization type. This parameter is required. For valid values, see [Method](https://docs.aws.amazon.com/apigateway/latest/api/API_Method.html) in the *API Gateway API Reference*.\n If you specify the ``AuthorizerId`` property, specify ``CUSTOM`` or ``COGNITO_USER_POOLS`` for this property." }, "authorizerId": { "type": "string", - "description": "The identifier of the authorizer to use on this method." + "description": "The identifier of an authorizer to use on this method. The method's authorization type must be ``CUSTOM`` or ``COGNITO_USER_POOLS``." }, "httpMethod": { "type": "string", - "description": "The backend system that the method calls when it receives a request.", + "description": "The method's HTTP verb.", "replaceOnChanges": true }, "integration": { "$ref": "#/types/aws-native:apigateway:MethodIntegration", - "description": "The backend system that the method calls when it receives a request." + "description": "Represents an ``HTTP``, ``HTTP_PROXY``, ``AWS``, ``AWS_PROXY``, or Mock integration." }, "methodResponses": { "type": "array", "items": { "$ref": "#/types/aws-native:apigateway:MethodResponse" }, - "description": "The responses that can be sent to the client who calls the method." + "description": "Gets a method response associated with a given HTTP status code." }, "operationName": { "type": "string", - "description": "A friendly operation name for the method." + "description": "A human-friendly operation identifier for the method. For example, you can assign the ``operationName`` of ``ListPets`` for the ``GET /pets`` method in the ``PetStore`` example." }, "requestModels": { "$ref": "pulumi.json#/Any", - "description": "The resources that are used for the request's content type. Specify request models as key-value pairs (string-to-string mapping), with a content type as the key and a Model resource name as the value." + "description": "A key-value map specifying data schemas, represented by Model resources, (as the mapped value) of the request payloads of given content types (as the mapping key)." }, "requestParameters": { "$ref": "pulumi.json#/Any", - "description": "The request parameters that API Gateway accepts. Specify request parameters as key-value pairs (string-to-Boolean mapping), with a source as the key and a Boolean as the value." + "description": "A key-value map defining required or optional method request parameters that can be accepted by API Gateway. A key is a method request parameter name matching the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and ``name`` is a valid and unique parameter name. The value associated with the key is a Boolean flag indicating whether the parameter is required (``true``) or optional (``false``). The method request parameter names defined here are available in Integration to be mapped to integration request parameters or templates." }, "requestValidatorId": { "type": "string", - "description": "The ID of the associated request validator." + "description": "The identifier of a RequestValidator for request validation." }, "resourceId": { "type": "string", - "description": "The ID of an API Gateway resource.", + "description": "The Resource identifier for the MethodResponse resource.", "replaceOnChanges": true }, "restApiId": { "type": "string", - "description": "The ID of the RestApi resource in which API Gateway creates the method.", + "description": "The string identifier of the associated RestApi.", "replaceOnChanges": true } }, @@ -1724,48 +1724,48 @@ "inputs": { "contentType": { "type": "string", - "description": "The content type for the model." + "description": "The content-type for the model." }, "description": { "type": "string", - "description": "A description that identifies this model." + "description": "The description of the model." }, "name": { "type": "string", - "description": "A name for the model. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the model name." + "description": "A name for the model. If you don't specify a name, CFN generates a unique physical ID and uses that ID for the model name. For more information, see [Name Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html).\n If you specify a name, you cannot perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name." }, "restApiId": { "type": "string", - "description": "The ID of a REST API with which to associate this model." + "description": "The string identifier of the associated RestApi." }, "schema": { "$ref": "pulumi.json#/Any", - "description": "The schema to use to transform data to one or more output formats. Specify null ({}) if you don't want to specify a schema." + "description": "The schema for the model. For ``application/json`` models, this should be JSON schema draft 4 model. Do not include \"\\*/\" characters in the description of any properties because such \"\\*/\" characters may be interpreted as the closing marker for comments in some languages, such as Java or JavaScript, causing the installation of your API's SDK generated by API Gateway to fail." } }, "outputs": { "contentType": { "type": "string", - "description": "The content type for the model.", + "description": "The content-type for the model.", "replaceOnChanges": true }, "description": { "type": "string", - "description": "A description that identifies this model." + "description": "The description of the model." }, "name": { "type": "string", - "description": "A name for the model. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the model name.", + "description": "A name for the model. If you don't specify a name, CFN generates a unique physical ID and uses that ID for the model name. For more information, see [Name Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html).\n If you specify a name, you cannot perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name.", "replaceOnChanges": true }, "restApiId": { "type": "string", - "description": "The ID of a REST API with which to associate this model.", + "description": "The string identifier of the associated RestApi.", "replaceOnChanges": true }, "schema": { "$ref": "pulumi.json#/Any", - "description": "The schema to use to transform data to one or more output formats. Specify null ({}) if you don't want to specify a schema." + "description": "The schema for the model. For ``application/json`` models, this should be JSON schema draft 4 model. Do not include \"\\*/\" characters in the description of any properties because such \"\\*/\" characters may be interpreted as the closing marker for comments in some languages, such as Java or JavaScript, causing the installation of your API's SDK generated by API Gateway to fail." } }, "autoNamingSpec": { @@ -1848,7 +1848,7 @@ }, "restApiId": { "type": "string", - "description": "The ID of the RestApi resource in which you want to create this resource.." + "description": "The string identifier of the associated RestApi." } }, "outputs": { @@ -1868,7 +1868,7 @@ }, "restApiId": { "type": "string", - "description": "The ID of the RestApi resource in which you want to create this resource..", + "description": "The string identifier of the associated RestApi.", "replaceOnChanges": true } }, @@ -1887,102 +1887,131 @@ "cf": "AWS::ApiGateway::RestApi", "inputs": { "apiKeySourceType": { - "type": "string" + "type": "string", + "description": "The source of the API key for metering requests according to a usage plan. Valid values are: ``HEADER`` to read the API key from the ``X-API-Key`` header of a request. ``AUTHORIZER`` to read the API key from the ``UsageIdentifierKey`` from a custom authorizer." }, "binaryMediaTypes": { "type": "array", "items": { "type": "string" - } + }, + "description": "The list of binary media types supported by the RestApi. By default, the RestApi supports only UTF-8-encoded text payloads." }, "body": { - "$ref": "pulumi.json#/Any" + "$ref": "pulumi.json#/Any", + "description": "An OpenAPI specification that defines a set of RESTful APIs in JSON format. For YAML templates, you can also provide the specification in YAML format." }, "bodyS3Location": { - "$ref": "#/types/aws-native:apigateway:RestApiS3Location" + "$ref": "#/types/aws-native:apigateway:RestApiS3Location", + "description": "The Amazon Simple Storage Service (Amazon S3) location that points to an OpenAPI file, which defines a set of RESTful APIs in JSON or YAML format." }, "cloneFrom": { - "type": "string" + "type": "string", + "description": "The ID of the RestApi that you want to clone from." }, "description": { - "type": "string" + "type": "string", + "description": "The description of the RestApi." }, "disableExecuteApiEndpoint": { - "type": "boolean" + "type": "boolean", + "description": "Specifies whether clients can invoke your API by using the default ``execute-api`` endpoint. By default, clients can invoke your API with the default ``https://{api_id}.execute-api.{region}.amazonaws.com`` endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint" }, "endpointConfiguration": { - "$ref": "#/types/aws-native:apigateway:RestApiEndpointConfiguration" + "$ref": "#/types/aws-native:apigateway:RestApiEndpointConfiguration", + "description": "A list of the endpoint types of the API. Use this property when creating an API. When importing an existing API, specify the endpoint configuration types using the ``Parameters`` property." }, "failOnWarnings": { - "type": "boolean" + "type": "boolean", + "description": "A query parameter to indicate whether to rollback the API update (``true``) or not (``false``) when a warning is encountered. The default value is ``false``." }, "minimumCompressionSize": { - "type": "integer" + "type": "integer", + "description": "A nullable integer that is used to enable compression (with non-negative between 0 and 10485760 (10M) bytes, inclusive) or disable compression (with a null value) on an API. When compression is enabled, compression or decompression is not applied on the payload if the payload size is smaller than this value. Setting it to zero allows compression for any payload size." }, "mode": { - "type": "string" + "type": "string", + "description": "This property applies only when you use OpenAPI to define your REST API. The ``Mode`` determines how API Gateway handles resource updates.\n Valid values are ``overwrite`` or ``merge``. \n For ``overwrite``, the new API definition replaces the existing one. The existing API identifier remains unchanged.\n For ``merge``, the new API definition is merged with the existing API.\n If you don't specify this property, a default value is chosen. For REST APIs created before March 29, 2021, the default is ``overwrite``. For REST APIs created after March 29, 2021, the new API definition takes precedence, but any container types such as endpoint configurations and binary media types are merged with the existing API. \n Use the default mode to define top-level ``RestApi`` properties in addition to using OpenAPI. Generally, it's preferred to use API Gateway's OpenAPI extensions to model these properties." }, "name": { - "type": "string" + "type": "string", + "description": "The name of the RestApi. A name is required if the REST API is not based on an OpenAPI specification." }, "parameters": { - "$ref": "pulumi.json#/Any" + "$ref": "pulumi.json#/Any", + "description": "Custom header parameters as part of the request. For example, to exclude DocumentationParts from an imported API, set ``ignore=documentation`` as a ``parameters`` value, as in the AWS CLI command of ``aws apigateway import-rest-api --parameters ignore=documentation --body 'file:///path/to/imported-api-body.json'``." }, "policy": { - "$ref": "pulumi.json#/Any" + "$ref": "pulumi.json#/Any", + "description": "A policy document that contains the permissions for the ``RestApi`` resource. To set the ARN for the policy, use the ``!Join`` intrinsic function with ``\"\"`` as delimiter and values of ``\"execute-api:/\"`` and ``\"*\"``." }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:apigateway:RestApiTag" - } + }, + "description": "The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with ``aws:``. The tag value can be up to 256 characters." } }, "outputs": { "apiKeySourceType": { - "type": "string" + "type": "string", + "description": "The source of the API key for metering requests according to a usage plan. Valid values are: ``HEADER`` to read the API key from the ``X-API-Key`` header of a request. ``AUTHORIZER`` to read the API key from the ``UsageIdentifierKey`` from a custom authorizer." }, "binaryMediaTypes": { "type": "array", "items": { "type": "string" - } + }, + "description": "The list of binary media types supported by the RestApi. By default, the RestApi supports only UTF-8-encoded text payloads." }, "body": { - "$ref": "pulumi.json#/Any" + "$ref": "pulumi.json#/Any", + "description": "An OpenAPI specification that defines a set of RESTful APIs in JSON format. For YAML templates, you can also provide the specification in YAML format." }, "bodyS3Location": { - "$ref": "#/types/aws-native:apigateway:RestApiS3Location" + "$ref": "#/types/aws-native:apigateway:RestApiS3Location", + "description": "The Amazon Simple Storage Service (Amazon S3) location that points to an OpenAPI file, which defines a set of RESTful APIs in JSON or YAML format." }, "cloneFrom": { - "type": "string" + "type": "string", + "description": "The ID of the RestApi that you want to clone from." }, "description": { - "type": "string" + "type": "string", + "description": "The description of the RestApi." }, "disableExecuteApiEndpoint": { - "type": "boolean" + "type": "boolean", + "description": "Specifies whether clients can invoke your API by using the default ``execute-api`` endpoint. By default, clients can invoke your API with the default ``https://{api_id}.execute-api.{region}.amazonaws.com`` endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint" }, "endpointConfiguration": { - "$ref": "#/types/aws-native:apigateway:RestApiEndpointConfiguration" + "$ref": "#/types/aws-native:apigateway:RestApiEndpointConfiguration", + "description": "A list of the endpoint types of the API. Use this property when creating an API. When importing an existing API, specify the endpoint configuration types using the ``Parameters`` property." }, "failOnWarnings": { - "type": "boolean" + "type": "boolean", + "description": "A query parameter to indicate whether to rollback the API update (``true``) or not (``false``) when a warning is encountered. The default value is ``false``." }, "minimumCompressionSize": { - "type": "integer" + "type": "integer", + "description": "A nullable integer that is used to enable compression (with non-negative between 0 and 10485760 (10M) bytes, inclusive) or disable compression (with a null value) on an API. When compression is enabled, compression or decompression is not applied on the payload if the payload size is smaller than this value. Setting it to zero allows compression for any payload size." }, "mode": { - "type": "string" + "type": "string", + "description": "This property applies only when you use OpenAPI to define your REST API. The ``Mode`` determines how API Gateway handles resource updates.\n Valid values are ``overwrite`` or ``merge``. \n For ``overwrite``, the new API definition replaces the existing one. The existing API identifier remains unchanged.\n For ``merge``, the new API definition is merged with the existing API.\n If you don't specify this property, a default value is chosen. For REST APIs created before March 29, 2021, the default is ``overwrite``. For REST APIs created after March 29, 2021, the new API definition takes precedence, but any container types such as endpoint configurations and binary media types are merged with the existing API. \n Use the default mode to define top-level ``RestApi`` properties in addition to using OpenAPI. Generally, it's preferred to use API Gateway's OpenAPI extensions to model these properties." }, "name": { - "type": "string" + "type": "string", + "description": "The name of the RestApi. A name is required if the REST API is not based on an OpenAPI specification." }, "parameters": { - "$ref": "pulumi.json#/Any" + "$ref": "pulumi.json#/Any", + "description": "Custom header parameters as part of the request. For example, to exclude DocumentationParts from an imported API, set ``ignore=documentation`` as a ``parameters`` value, as in the AWS CLI command of ``aws apigateway import-rest-api --parameters ignore=documentation --body 'file:///path/to/imported-api-body.json'``." }, "policy": { - "$ref": "pulumi.json#/Any" + "$ref": "pulumi.json#/Any", + "description": "A policy document that contains the permissions for the ``RestApi`` resource. To set the ARN for the policy, use the ``!Join`` intrinsic function with ``\"\"`` as delimiter and values of ``\"execute-api:/\"`` and ``\"*\"``." }, "restApiId": { "type": "string" @@ -1994,7 +2023,8 @@ "type": "array", "items": { "$ref": "#/types/aws-native:apigateway:RestApiTag" - } + }, + "description": "The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with ``aws:``. The tag value can be up to 256 characters." } }, "autoNamingSpec": { @@ -2017,115 +2047,115 @@ "inputs": { "accessLogSetting": { "$ref": "#/types/aws-native:apigateway:StageAccessLogSetting", - "description": "Specifies settings for logging access in this stage." + "description": "Access log settings, including the access log format and access log destination ARN." }, "cacheClusterEnabled": { "type": "boolean", - "description": "Indicates whether cache clustering is enabled for the stage." + "description": "Specifies whether a cache cluster is enabled for the stage." }, "cacheClusterSize": { "type": "string", - "description": "The stage's cache cluster size." + "description": "The stage's cache capacity in GB. For more information about choosing a cache size, see [Enabling API caching to enhance responsiveness](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html)." }, "canarySetting": { "$ref": "#/types/aws-native:apigateway:StageCanarySetting", - "description": "Specifies settings for the canary deployment in this stage." + "description": "Settings for the canary deployment in this stage." }, "clientCertificateId": { "type": "string", - "description": "The ID of the client certificate that API Gateway uses to call your integration endpoints in the stage. " + "description": "The identifier of a client certificate for an API stage." }, "deploymentId": { "type": "string", - "description": "The ID of the deployment that the stage is associated with. This parameter is required to create a stage. " + "description": "The identifier of the Deployment that the stage points to." }, "description": { "type": "string", - "description": "A description of the stage." + "description": "The stage's description." }, "documentationVersion": { "type": "string", - "description": "The version ID of the API documentation snapshot." + "description": "The version of the associated API documentation." }, "methodSettings": { "type": "array", "items": { "$ref": "#/types/aws-native:apigateway:StageMethodSetting" }, - "description": "Settings for all methods in the stage." + "description": "A map that defines the method settings for a Stage resource. Keys (designated as ``/{method_setting_key`` below) are method paths defined as ``{resource_path}/{http_method}`` for an individual method override, or ``/\\*/\\*`` for overriding all methods in the stage." }, "restApiId": { "type": "string", - "description": "The ID of the RestApi resource that you're deploying with this stage." + "description": "The string identifier of the associated RestApi." }, "stageName": { "type": "string", - "description": "The name of the stage, which API Gateway uses as the first path segment in the invoked Uniform Resource Identifier (URI)." + "description": "The name of the stage is the first path segment in the Uniform Resource Identifier (URI) of a call to API Gateway. Stage names can only contain alphanumeric characters, hyphens, and underscores. Maximum length is 128 characters." }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:apigateway:StageTag" }, - "description": "An array of arbitrary tags (key-value pairs) to associate with the stage." + "description": "The collection of tags. Each tag element is associated with a given resource." }, "tracingEnabled": { "type": "boolean", - "description": "Specifies whether active X-Ray tracing is enabled for this stage." + "description": "Specifies whether active tracing with X-ray is enabled for the Stage." }, "variables": { "$ref": "pulumi.json#/Any", - "description": "A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value." + "description": "A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value. Variable names are limited to alphanumeric characters. Values must match the following regular expression: ``[A-Za-z0-9-._~:/?#\u0026=,]+``." } }, "outputs": { "accessLogSetting": { "$ref": "#/types/aws-native:apigateway:StageAccessLogSetting", - "description": "Specifies settings for logging access in this stage." + "description": "Access log settings, including the access log format and access log destination ARN." }, "cacheClusterEnabled": { "type": "boolean", - "description": "Indicates whether cache clustering is enabled for the stage." + "description": "Specifies whether a cache cluster is enabled for the stage." }, "cacheClusterSize": { "type": "string", - "description": "The stage's cache cluster size." + "description": "The stage's cache capacity in GB. For more information about choosing a cache size, see [Enabling API caching to enhance responsiveness](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html)." }, "canarySetting": { "$ref": "#/types/aws-native:apigateway:StageCanarySetting", - "description": "Specifies settings for the canary deployment in this stage." + "description": "Settings for the canary deployment in this stage." }, "clientCertificateId": { "type": "string", - "description": "The ID of the client certificate that API Gateway uses to call your integration endpoints in the stage. " + "description": "The identifier of a client certificate for an API stage." }, "deploymentId": { "type": "string", - "description": "The ID of the deployment that the stage is associated with. This parameter is required to create a stage. " + "description": "The identifier of the Deployment that the stage points to." }, "description": { "type": "string", - "description": "A description of the stage." + "description": "The stage's description." }, "documentationVersion": { "type": "string", - "description": "The version ID of the API documentation snapshot." + "description": "The version of the associated API documentation." }, "methodSettings": { "type": "array", "items": { "$ref": "#/types/aws-native:apigateway:StageMethodSetting" }, - "description": "Settings for all methods in the stage." + "description": "A map that defines the method settings for a Stage resource. Keys (designated as ``/{method_setting_key`` below) are method paths defined as ``{resource_path}/{http_method}`` for an individual method override, or ``/\\*/\\*`` for overriding all methods in the stage." }, "restApiId": { "type": "string", - "description": "The ID of the RestApi resource that you're deploying with this stage.", + "description": "The string identifier of the associated RestApi.", "replaceOnChanges": true }, "stageName": { "type": "string", - "description": "The name of the stage, which API Gateway uses as the first path segment in the invoked Uniform Resource Identifier (URI).", + "description": "The name of the stage is the first path segment in the Uniform Resource Identifier (URI) of a call to API Gateway. Stage names can only contain alphanumeric characters, hyphens, and underscores. Maximum length is 128 characters.", "replaceOnChanges": true }, "tags": { @@ -2133,15 +2163,15 @@ "items": { "$ref": "#/types/aws-native:apigateway:StageTag" }, - "description": "An array of arbitrary tags (key-value pairs) to associate with the stage." + "description": "The collection of tags. Each tag element is associated with a given resource." }, "tracingEnabled": { "type": "boolean", - "description": "Specifies whether active X-Ray tracing is enabled for this stage." + "description": "Specifies whether active tracing with X-ray is enabled for the Stage." }, "variables": { "$ref": "pulumi.json#/Any", - "description": "A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value." + "description": "A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value. Variable names are limited to alphanumeric characters. Values must match the following regular expression: ``[A-Za-z0-9-._~:/?#\u0026=,]+``." } }, "autoNamingSpec": { @@ -2230,31 +2260,31 @@ "inputs": { "keyId": { "type": "string", - "description": "The ID of the usage plan key." + "description": "The Id of the UsagePlanKey resource." }, "keyType": { "$ref": "#/types/aws-native:apigateway:UsagePlanKeyKeyType", - "description": "The type of usage plan key. Currently, the only valid key type is API_KEY." + "description": "The type of a UsagePlanKey resource for a plan customer." }, "usagePlanId": { "type": "string", - "description": "The ID of the usage plan." + "description": "The Id of the UsagePlan resource representing the usage plan containing the UsagePlanKey resource representing a plan customer." } }, "outputs": { "keyId": { "type": "string", - "description": "The ID of the usage plan key.", + "description": "The Id of the UsagePlanKey resource.", "replaceOnChanges": true }, "keyType": { "$ref": "#/types/aws-native:apigateway:UsagePlanKeyKeyType", - "description": "The type of usage plan key. Currently, the only valid key type is API_KEY.", + "description": "The type of a UsagePlanKey resource for a plan customer.", "replaceOnChanges": true }, "usagePlanId": { "type": "string", - "description": "The ID of the usage plan.", + "description": "The Id of the UsagePlan resource representing the usage plan containing the UsagePlanKey resource representing a plan customer.", "replaceOnChanges": true } }, @@ -3158,6 +3188,50 @@ "subnetIds" ] }, + "aws-native:appconfig:Application": { + "cf": "AWS::AppConfig::Application", + "inputs": { + "description": { + "type": "string", + "description": "A description of the application." + }, + "name": { + "type": "string", + "description": "A name for the application." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:appconfig:ApplicationTags" + }, + "description": "Metadata to assign to the application. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define." + } + }, + "outputs": { + "applicationId": { + "type": "string", + "description": "The application Id" + }, + "description": { + "type": "string", + "description": "A description of the application." + }, + "name": { + "type": "string", + "description": "A name for the application." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:appconfig:ApplicationTags" + }, + "description": "Metadata to assign to the application. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define." + } + }, + "autoNamingSpec": { + "sdkName": "name" + } + }, "aws-native:appconfig:Extension": { "cf": "AWS::AppConfig::Extension", "inputs": { @@ -5139,6 +5213,154 @@ "domainName" ] }, + "aws-native:appsync:FunctionConfiguration": { + "cf": "AWS::AppSync::FunctionConfiguration", + "inputs": { + "apiId": { + "type": "string", + "description": "The AWS AppSync GraphQL API that you want to attach using this function." + }, + "code": { + "type": "string", + "description": "The resolver code that contains the request and response functions. When code is used, the runtime is required. The runtime value must be APPSYNC_JS." + }, + "codeS3Location": { + "type": "string", + "description": "The Amazon S3 endpoint (where the code is located??)." + }, + "dataSourceName": { + "type": "string", + "description": "The name of data source this function will attach." + }, + "description": { + "type": "string", + "description": "The function description." + }, + "functionVersion": { + "type": "string", + "description": "The version of the request mapping template. Currently, only the 2018-05-29 version of the template is supported." + }, + "maxBatchSize": { + "type": "integer", + "description": "The maximum number of resolver request inputs that will be sent to a single AWS Lambda function in a BatchInvoke operation." + }, + "name": { + "type": "string", + "description": "The name of the function." + }, + "requestMappingTemplate": { + "type": "string", + "description": "The Function request mapping template. Functions support only the 2018-05-29 version of the request mapping template." + }, + "requestMappingTemplateS3Location": { + "type": "string", + "description": "Describes a Sync configuration for a resolver. Contains information on which Conflict Detection, as well as Resolution strategy, should be performed when the resolver is invoked." + }, + "responseMappingTemplate": { + "type": "string", + "description": "The Function response mapping template." + }, + "responseMappingTemplateS3Location": { + "type": "string", + "description": "The location of a response mapping template in an Amazon S3 bucket. Use this if you want to provision with a template file in Amazon S3 rather than embedding it in your CloudFormation template." + }, + "runtime": { + "$ref": "#/types/aws-native:appsync:FunctionConfigurationAppSyncRuntime", + "description": "Describes a runtime used by an AWS AppSync pipeline resolver or AWS AppSync function. Specifies the name and version of the runtime to use. Note that if a runtime is specified, code must also be specified." + }, + "syncConfig": { + "$ref": "#/types/aws-native:appsync:FunctionConfigurationSyncConfig", + "description": "Describes a Sync configuration for a resolver. Specifies which Conflict Detection strategy and Resolution strategy to use when the resolver is invoked." + } + }, + "outputs": { + "apiId": { + "type": "string", + "description": "The AWS AppSync GraphQL API that you want to attach using this function.", + "replaceOnChanges": true + }, + "code": { + "type": "string", + "description": "The resolver code that contains the request and response functions. When code is used, the runtime is required. The runtime value must be APPSYNC_JS." + }, + "codeS3Location": { + "type": "string", + "description": "The Amazon S3 endpoint (where the code is located??)." + }, + "dataSourceName": { + "type": "string", + "description": "The name of data source this function will attach." + }, + "description": { + "type": "string", + "description": "The function description." + }, + "functionArn": { + "type": "string", + "description": "The ARN for the function generated by the service" + }, + "functionId": { + "type": "string", + "description": "The unique identifier for the function generated by the service" + }, + "functionVersion": { + "type": "string", + "description": "The version of the request mapping template. Currently, only the 2018-05-29 version of the template is supported." + }, + "maxBatchSize": { + "type": "integer", + "description": "The maximum number of resolver request inputs that will be sent to a single AWS Lambda function in a BatchInvoke operation." + }, + "name": { + "type": "string", + "description": "The name of the function." + }, + "requestMappingTemplate": { + "type": "string", + "description": "The Function request mapping template. Functions support only the 2018-05-29 version of the request mapping template." + }, + "requestMappingTemplateS3Location": { + "type": "string", + "description": "Describes a Sync configuration for a resolver. Contains information on which Conflict Detection, as well as Resolution strategy, should be performed when the resolver is invoked." + }, + "responseMappingTemplate": { + "type": "string", + "description": "The Function response mapping template." + }, + "responseMappingTemplateS3Location": { + "type": "string", + "description": "The location of a response mapping template in an Amazon S3 bucket. Use this if you want to provision with a template file in Amazon S3 rather than embedding it in your CloudFormation template." + }, + "runtime": { + "$ref": "#/types/aws-native:appsync:FunctionConfigurationAppSyncRuntime", + "description": "Describes a runtime used by an AWS AppSync pipeline resolver or AWS AppSync function. Specifies the name and version of the runtime to use. Note that if a runtime is specified, code must also be specified." + }, + "syncConfig": { + "$ref": "#/types/aws-native:appsync:FunctionConfigurationSyncConfig", + "description": "Describes a Sync configuration for a resolver. Specifies which Conflict Detection strategy and Resolution strategy to use when the resolver is invoked." + } + }, + "autoNamingSpec": { + "sdkName": "name" + }, + "required": [ + "apiId", + "dataSourceName" + ], + "createOnly": [ + "apiId" + ], + "writeOnly": [ + "codeS3Location", + "requestMappingTemplateS3Location", + "responseMappingTemplateS3Location" + ], + "irreversibleNames": { + "codeS3Location": "CodeS3Location", + "requestMappingTemplateS3Location": "RequestMappingTemplateS3Location", + "responseMappingTemplateS3Location": "ResponseMappingTemplateS3Location" + } + }, "aws-native:appsync:SourceApiAssociation": { "cf": "AWS::AppSync::SourceApiAssociation", "inputs": { @@ -11070,13 +11292,6 @@ "identityPoolName": { "type": "string" }, - "identityPoolTags": { - "type": "array", - "items": { - "$ref": "#/types/aws-native:cognito:IdentityPoolTag" - }, - "description": "An array of key-value pairs to apply to this resource." - }, "openIdConnectProviderArns": { "type": "array", "items": { @@ -11121,13 +11336,6 @@ "identityPoolName": { "type": "string" }, - "identityPoolTags": { - "type": "array", - "items": { - "$ref": "#/types/aws-native:cognito:IdentityPoolTag" - }, - "description": "An array of key-value pairs to apply to this resource." - }, "name": { "type": "string" }, @@ -11156,11 +11364,6 @@ "required": [ "allowUnauthenticatedIdentities" ], - "writeOnly": [ - "cognitoEvents", - "cognitoStreams", - "pushSync" - ], "irreversibleNames": { "openIdConnectProviderArns": "OpenIdConnectProviderARNs", "samlProviderArns": "SamlProviderARNs" @@ -11239,6 +11442,256 @@ "userPoolId" ] }, + "aws-native:cognito:UserPool": { + "cf": "AWS::Cognito::UserPool", + "inputs": { + "accountRecoverySetting": { + "$ref": "#/types/aws-native:cognito:UserPoolAccountRecoverySetting" + }, + "adminCreateUserConfig": { + "$ref": "#/types/aws-native:cognito:UserPoolAdminCreateUserConfig" + }, + "aliasAttributes": { + "type": "array", + "items": { + "type": "string" + } + }, + "autoVerifiedAttributes": { + "type": "array", + "items": { + "type": "string" + } + }, + "deletionProtection": { + "type": "string" + }, + "deviceConfiguration": { + "$ref": "#/types/aws-native:cognito:UserPoolDeviceConfiguration" + }, + "emailConfiguration": { + "$ref": "#/types/aws-native:cognito:UserPoolEmailConfiguration" + }, + "emailVerificationMessage": { + "type": "string" + }, + "emailVerificationSubject": { + "type": "string" + }, + "enabledMfas": { + "type": "array", + "items": { + "type": "string" + } + }, + "lambdaConfig": { + "$ref": "#/types/aws-native:cognito:UserPoolLambdaConfig" + }, + "mfaConfiguration": { + "type": "string" + }, + "policies": { + "$ref": "#/types/aws-native:cognito:UserPoolPolicies" + }, + "schema": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:cognito:UserPoolSchemaAttribute" + } + }, + "smsAuthenticationMessage": { + "type": "string" + }, + "smsConfiguration": { + "$ref": "#/types/aws-native:cognito:UserPoolSmsConfiguration" + }, + "smsVerificationMessage": { + "type": "string" + }, + "userAttributeUpdateSettings": { + "$ref": "#/types/aws-native:cognito:UserPoolUserAttributeUpdateSettings" + }, + "userPoolAddOns": { + "$ref": "#/types/aws-native:cognito:UserPoolAddOns" + }, + "userPoolName": { + "type": "string" + }, + "userPoolTags": { + "$ref": "pulumi.json#/Any" + }, + "usernameAttributes": { + "type": "array", + "items": { + "type": "string" + } + }, + "usernameConfiguration": { + "$ref": "#/types/aws-native:cognito:UserPoolUsernameConfiguration" + }, + "verificationMessageTemplate": { + "$ref": "#/types/aws-native:cognito:UserPoolVerificationMessageTemplate" + } + }, + "outputs": { + "accountRecoverySetting": { + "$ref": "#/types/aws-native:cognito:UserPoolAccountRecoverySetting" + }, + "adminCreateUserConfig": { + "$ref": "#/types/aws-native:cognito:UserPoolAdminCreateUserConfig" + }, + "aliasAttributes": { + "type": "array", + "items": { + "type": "string" + } + }, + "arn": { + "type": "string" + }, + "autoVerifiedAttributes": { + "type": "array", + "items": { + "type": "string" + } + }, + "deletionProtection": { + "type": "string" + }, + "deviceConfiguration": { + "$ref": "#/types/aws-native:cognito:UserPoolDeviceConfiguration" + }, + "emailConfiguration": { + "$ref": "#/types/aws-native:cognito:UserPoolEmailConfiguration" + }, + "emailVerificationMessage": { + "type": "string" + }, + "emailVerificationSubject": { + "type": "string" + }, + "enabledMfas": { + "type": "array", + "items": { + "type": "string" + } + }, + "lambdaConfig": { + "$ref": "#/types/aws-native:cognito:UserPoolLambdaConfig" + }, + "mfaConfiguration": { + "type": "string" + }, + "policies": { + "$ref": "#/types/aws-native:cognito:UserPoolPolicies" + }, + "providerName": { + "type": "string" + }, + "providerUrl": { + "type": "string" + }, + "schema": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:cognito:UserPoolSchemaAttribute" + } + }, + "smsAuthenticationMessage": { + "type": "string" + }, + "smsConfiguration": { + "$ref": "#/types/aws-native:cognito:UserPoolSmsConfiguration" + }, + "smsVerificationMessage": { + "type": "string" + }, + "userAttributeUpdateSettings": { + "$ref": "#/types/aws-native:cognito:UserPoolUserAttributeUpdateSettings" + }, + "userPoolAddOns": { + "$ref": "#/types/aws-native:cognito:UserPoolAddOns" + }, + "userPoolId": { + "type": "string" + }, + "userPoolName": { + "type": "string" + }, + "userPoolTags": { + "$ref": "pulumi.json#/Any" + }, + "usernameAttributes": { + "type": "array", + "items": { + "type": "string" + } + }, + "usernameConfiguration": { + "$ref": "#/types/aws-native:cognito:UserPoolUsernameConfiguration" + }, + "verificationMessageTemplate": { + "$ref": "#/types/aws-native:cognito:UserPoolVerificationMessageTemplate" + } + }, + "autoNamingSpec": { + "sdkName": "userPoolName", + "minLength": 1, + "maxLength": 128 + }, + "writeOnly": [ + "enabledMfas" + ], + "irreversibleNames": { + "providerUrl": "ProviderURL" + } + }, + "aws-native:cognito:UserPoolGroup": { + "cf": "AWS::Cognito::UserPoolGroup", + "inputs": { + "description": { + "type": "string" + }, + "groupName": { + "type": "string" + }, + "precedence": { + "type": "integer" + }, + "roleArn": { + "type": "string" + }, + "userPoolId": { + "type": "string" + } + }, + "outputs": { + "description": { + "type": "string" + }, + "groupName": { + "type": "string", + "replaceOnChanges": true + }, + "precedence": { + "type": "integer" + }, + "roleArn": { + "type": "string" + }, + "userPoolId": { + "type": "string", + "replaceOnChanges": true + } + }, + "required": [ + "userPoolId" + ], + "createOnly": [ + "groupName", + "userPoolId" + ] + }, "aws-native:cognito:UserPoolUser": { "cf": "AWS::Cognito::UserPoolUser", "inputs": { @@ -12126,7 +12579,7 @@ "description": "The name of the contact flow module." }, "state": { - "$ref": "#/types/aws-native:connect:ContactFlowModuleState", + "type": "string", "description": "The state of the contact flow module." }, "tags": { @@ -12159,11 +12612,11 @@ "description": "The name of the contact flow module." }, "state": { - "$ref": "#/types/aws-native:connect:ContactFlowModuleState", + "type": "string", "description": "The state of the contact flow module." }, "status": { - "$ref": "#/types/aws-native:connect:ContactFlowModuleStatus", + "type": "string", "description": "The status of the contact flow module." }, "tags": { @@ -13896,6 +14349,12 @@ "type": "string", "description": "The unique name of the domain." }, + "matching": { + "$ref": "#/types/aws-native:customerprofiles:DomainMatching" + }, + "ruleBasedMatching": { + "$ref": "#/types/aws-native:customerprofiles:DomainRuleBasedMatching" + }, "tags": { "type": "array", "items": { @@ -13930,6 +14389,15 @@ "type": "string", "description": "The time of this integration got last updated at" }, + "matching": { + "$ref": "#/types/aws-native:customerprofiles:DomainMatching" + }, + "ruleBasedMatching": { + "$ref": "#/types/aws-native:customerprofiles:DomainRuleBasedMatching" + }, + "stats": { + "$ref": "#/types/aws-native:customerprofiles:DomainStats" + }, "tags": { "type": "array", "items": { @@ -20708,12 +21176,20 @@ "enableDns64": { "type": "boolean" }, + "ipv4NetmaskLength": { + "type": "integer", + "description": "The netmask length of the IPv4 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool" + }, "ipv6CidrBlock": { "type": "string" }, "ipv6Native": { "type": "boolean" }, + "ipv6NetmaskLength": { + "type": "integer", + "description": "The netmask length of the IPv6 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool" + }, "mapPublicIpOnLaunch": { "type": "boolean" }, @@ -20752,6 +21228,10 @@ "enableDns64": { "type": "boolean" }, + "ipv4NetmaskLength": { + "type": "integer", + "description": "The netmask length of the IPv4 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool" + }, "ipv6CidrBlock": { "type": "string" }, @@ -20765,6 +21245,10 @@ "type": "boolean", "replaceOnChanges": true }, + "ipv6NetmaskLength": { + "type": "integer", + "description": "The netmask length of the IPv6 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool" + }, "mapPublicIpOnLaunch": { "type": "boolean" }, @@ -26299,6 +26783,97 @@ "type" ] }, + "aws-native:entityresolution:IdMappingWorkflow": { + "cf": "AWS::EntityResolution::IdMappingWorkflow", + "inputs": { + "description": { + "type": "string", + "description": "The description of the IdMappingWorkflow" + }, + "idMappingTechniques": { + "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowIdMappingTechniques" + }, + "inputSourceConfig": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowInputSource" + } + }, + "outputSourceConfig": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowOutputSource" + } + }, + "roleArn": { + "type": "string" + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowTag" + } + }, + "workflowName": { + "type": "string", + "description": "The name of the IdMappingWorkflow" + } + }, + "outputs": { + "createdAt": { + "type": "string" + }, + "description": { + "type": "string", + "description": "The description of the IdMappingWorkflow" + }, + "idMappingTechniques": { + "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowIdMappingTechniques" + }, + "inputSourceConfig": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowInputSource" + } + }, + "outputSourceConfig": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowOutputSource" + } + }, + "roleArn": { + "type": "string" + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowTag" + } + }, + "updatedAt": { + "type": "string" + }, + "workflowArn": { + "type": "string" + }, + "workflowName": { + "type": "string", + "description": "The name of the IdMappingWorkflow", + "replaceOnChanges": true + } + }, + "required": [ + "idMappingTechniques", + "inputSourceConfig", + "outputSourceConfig", + "roleArn", + "workflowName" + ], + "createOnly": [ + "workflowName" + ] + }, "aws-native:entityresolution:MatchingWorkflow": { "cf": "AWS::EntityResolution::MatchingWorkflow", "inputs": { @@ -26780,87 +27355,72 @@ "cf": "AWS::Events::Rule", "inputs": { "description": { - "type": "string", - "description": "The description of the rule." + "type": "string" }, "eventBusName": { - "type": "string", - "description": "The name or ARN of the event bus associated with the rule. If you omit this, the default event bus is used." + "type": "string" }, "eventPattern": { - "type": "string", - "description": "The event pattern of the rule. For more information, see Events and Event Patterns in the Amazon EventBridge User Guide." + "$ref": "pulumi.json#/Any" }, "name": { - "type": "string", - "description": "The name of the rule." + "type": "string" }, "roleArn": { - "type": "string", - "description": "The Amazon Resource Name (ARN) of the role that is used for target invocation." + "type": "string" }, "scheduleExpression": { - "type": "string", - "description": "The scheduling expression. For example, \"cron(0 20 * * ? *)\", \"rate(5 minutes)\". For more information, see Creating an Amazon EventBridge rule that runs on a schedule." + "type": "string" }, "state": { - "$ref": "#/types/aws-native:events:RuleState", - "description": "The state of the rule." + "type": "string" }, "targets": { "type": "array", "items": { "$ref": "#/types/aws-native:events:RuleTarget" - }, - "description": "Adds the specified targets to the specified rule, or updates the targets if they are already associated with the rule.\nTargets are the resources that are invoked when a rule is triggered." + } } }, "outputs": { "arn": { - "type": "string", - "description": "The ARN of the rule, such as arn:aws:events:us-east-2:123456789012:rule/example." + "type": "string" }, "description": { - "type": "string", - "description": "The description of the rule." + "type": "string" }, "eventBusName": { "type": "string", - "description": "The name or ARN of the event bus associated with the rule. If you omit this, the default event bus is used." + "replaceOnChanges": true }, "eventPattern": { - "type": "string", - "description": "The event pattern of the rule. For more information, see Events and Event Patterns in the Amazon EventBridge User Guide." + "$ref": "pulumi.json#/Any" }, "name": { "type": "string", - "description": "The name of the rule.", "replaceOnChanges": true }, "roleArn": { - "type": "string", - "description": "The Amazon Resource Name (ARN) of the role that is used for target invocation." + "type": "string" }, "scheduleExpression": { - "type": "string", - "description": "The scheduling expression. For example, \"cron(0 20 * * ? *)\", \"rate(5 minutes)\". For more information, see Creating an Amazon EventBridge rule that runs on a schedule." + "type": "string" }, "state": { - "$ref": "#/types/aws-native:events:RuleState", - "description": "The state of the rule." + "type": "string" }, "targets": { "type": "array", "items": { "$ref": "#/types/aws-native:events:RuleTarget" - }, - "description": "Adds the specified targets to the specified rule, or updates the targets if they are already associated with the rule.\nTargets are the resources that are invoked when a rule is triggered." + } } }, "autoNamingSpec": { "sdkName": "name" }, "createOnly": [ + "eventBusName", "name" ] }, @@ -28683,6 +29243,10 @@ "type": "string", "description": "A unique identifier for an AWS IAM role that manages access to your AWS services. With an instance role ARN set, any application that runs on an instance in this fleet can assume the role, including install scripts, server processes, and daemons (background processes). Create a role or look up a role's ARN from the IAM dashboard in the AWS Management Console." }, + "instanceRoleCredentialsProvider": { + "$ref": "#/types/aws-native:gamelift:FleetInstanceRoleCredentialsProvider", + "description": "Credentials provider implementation that loads credentials from the Amazon EC2 Instance Metadata Service." + }, "locations": { "type": "array", "items": { @@ -28802,6 +29366,11 @@ "description": "A unique identifier for an AWS IAM role that manages access to your AWS services. With an instance role ARN set, any application that runs on an instance in this fleet can assume the role, including install scripts, server processes, and daemons (background processes). Create a role or look up a role's ARN from the IAM dashboard in the AWS Management Console.", "replaceOnChanges": true }, + "instanceRoleCredentialsProvider": { + "$ref": "#/types/aws-native:gamelift:FleetInstanceRoleCredentialsProvider", + "description": "Credentials provider implementation that loads credentials from the Amazon EC2 Instance Metadata Service.", + "replaceOnChanges": true + }, "locations": { "type": "array", "items": { @@ -28886,6 +29455,7 @@ "ec2InstanceType", "fleetType", "instanceRoleArn", + "instanceRoleCredentialsProvider", "logPaths", "peerVpcAwsAccountId", "peerVpcId", @@ -30257,6 +30827,68 @@ "sseConfiguration" ] }, + "aws-native:iam:Group": { + "cf": "AWS::IAM::Group", + "inputs": { + "groupName": { + "type": "string", + "description": "The name of the group to create" + }, + "managedPolicyArns": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of Amazon Resource Names (ARNs) of the IAM managed policies that you want to attach to the role. " + }, + "path": { + "type": "string", + "description": "The path to the group" + }, + "policies": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:iam:GroupPolicy" + }, + "description": "Adds or updates an inline policy document that is embedded in the specified IAM group" + } + }, + "outputs": { + "arn": { + "type": "string", + "description": "The Arn of the group to create" + }, + "groupName": { + "type": "string", + "description": "The name of the group to create", + "replaceOnChanges": true + }, + "managedPolicyArns": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of Amazon Resource Names (ARNs) of the IAM managed policies that you want to attach to the role. " + }, + "path": { + "type": "string", + "description": "The path to the group" + }, + "policies": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:iam:GroupPolicy" + }, + "description": "Adds or updates an inline policy document that is embedded in the specified IAM group" + } + }, + "autoNamingSpec": { + "sdkName": "groupName" + }, + "createOnly": [ + "groupName" + ] + }, "aws-native:iam:GroupPolicy": { "cf": "AWS::IAM::GroupPolicy", "inputs": { @@ -32977,7 +33609,8 @@ "type": "array", "items": { "type": "string" - } + }, + "replaceOnChanges": true }, "document": { "type": "string", @@ -32995,7 +33628,8 @@ "replaceOnChanges": true }, "jobExecutionsRetryConfig": { - "$ref": "#/types/aws-native:iot:JobExecutionsRetryConfigProperties" + "$ref": "#/types/aws-native:iot:JobExecutionsRetryConfigProperties", + "replaceOnChanges": true }, "jobExecutionsRolloutConfig": { "$ref": "#/types/aws-native:iot:JobExecutionsRolloutConfigProperties", @@ -33010,7 +33644,8 @@ "type": "array", "items": { "$ref": "#/types/aws-native:iot:JobTemplateMaintenanceWindow" - } + }, + "replaceOnChanges": true }, "presignedUrlConfig": { "$ref": "#/types/aws-native:iot:PresignedUrlConfigProperties", @@ -33038,18 +33673,30 @@ "createOnly": [ "abortConfig", "description", + "destinationPackageVersions", "document", "documentSource", "jobArn", + "jobExecutionsRetryConfig", "jobExecutionsRolloutConfig", "jobTemplateId", + "maintenanceWindows", "presignedUrlConfig", "tags", "timeoutConfig" ], "writeOnly": [ + "abortConfig", + "destinationPackageVersions", + "document", + "documentSource", "jobArn", - "tags" + "jobExecutionsRetryConfig", + "jobExecutionsRolloutConfig", + "maintenanceWindows", + "presignedUrlConfig", + "tags", + "timeoutConfig" ] }, "aws-native:iot:Logging": { @@ -33155,6 +33802,12 @@ }, "policyName": { "type": "string" + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:iot:PolicyTag" + } } }, "outputs": { @@ -33167,6 +33820,12 @@ "policyName": { "type": "string", "replaceOnChanges": true + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:iot:PolicyTag" + } } }, "autoNamingSpec": { @@ -38399,6 +39058,10 @@ "$ref": "#/types/aws-native:lambda:FunctionPackageType", "description": "PackageType." }, + "policy": { + "$ref": "pulumi.json#/Any", + "description": "The resource policy of your function" + }, "reservedConcurrentExecutions": { "type": "integer", "description": "The number of simultaneous executions to reserve for the function." @@ -38513,6 +39176,10 @@ "$ref": "#/types/aws-native:lambda:FunctionPackageType", "description": "PackageType." }, + "policy": { + "$ref": "pulumi.json#/Any", + "description": "The resource policy of your function" + }, "reservedConcurrentExecutions": { "type": "integer", "description": "The number of simultaneous executions to reserve for the function." @@ -38575,6 +39242,7 @@ "code/S3Key", "code/S3ObjectVersion", "code/ZipFile", + "policy", "snapStart", "snapStart/ApplyOn" ] @@ -44713,6 +45381,111 @@ "serverProperties" ] }, + "aws-native:msk:Replicator": { + "cf": "AWS::MSK::Replicator", + "inputs": { + "currentVersion": { + "type": "string", + "description": "The current version of the MSK replicator." + }, + "description": { + "type": "string", + "description": "A summary description of the replicator." + }, + "kafkaClusters": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:msk:ReplicatorKafkaCluster" + }, + "description": "Specifies a list of Kafka clusters which are targets of the replicator." + }, + "replicationInfoList": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:msk:ReplicatorReplicationInfo" + }, + "description": "A list of replication configurations, where each configuration targets a given source cluster to target cluster replication flow." + }, + "replicatorName": { + "type": "string", + "description": "The name of the replicator." + }, + "serviceExecutionRoleArn": { + "type": "string", + "description": "The Amazon Resource Name (ARN) of the IAM role used by the replicator to access external resources." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:msk:ReplicatorTag" + }, + "description": "A collection of tags associated with a resource" + } + }, + "outputs": { + "currentVersion": { + "type": "string", + "description": "The current version of the MSK replicator." + }, + "description": { + "type": "string", + "description": "A summary description of the replicator.", + "replaceOnChanges": true + }, + "kafkaClusters": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:msk:ReplicatorKafkaCluster" + }, + "description": "Specifies a list of Kafka clusters which are targets of the replicator.", + "replaceOnChanges": true + }, + "replicationInfoList": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:msk:ReplicatorReplicationInfo" + }, + "description": "A list of replication configurations, where each configuration targets a given source cluster to target cluster replication flow." + }, + "replicatorArn": { + "type": "string", + "description": "Amazon Resource Name for the created replicator." + }, + "replicatorName": { + "type": "string", + "description": "The name of the replicator.", + "replaceOnChanges": true + }, + "serviceExecutionRoleArn": { + "type": "string", + "description": "The Amazon Resource Name (ARN) of the IAM role used by the replicator to access external resources.", + "replaceOnChanges": true + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:msk:ReplicatorTag" + }, + "description": "A collection of tags associated with a resource" + } + }, + "autoNamingSpec": { + "sdkName": "replicatorName", + "minLength": 1, + "maxLength": 128 + }, + "required": [ + "kafkaClusters", + "replicationInfoList", + "serviceExecutionRoleArn" + ], + "createOnly": [ + "description", + "kafkaClusters", + "replicatorName", + "serviceExecutionRoleArn" + ] + }, "aws-native:msk:ServerlessCluster": { "cf": "AWS::MSK::ServerlessCluster", "inputs": { @@ -50104,6 +50877,9 @@ }, "themeArn": { "type": "string" + }, + "validationStrategy": { + "$ref": "#/types/aws-native:quicksight:AnalysisValidationStrategy" } }, "outputs": { @@ -50171,6 +50947,9 @@ }, "themeArn": { "type": "string" + }, + "validationStrategy": { + "$ref": "#/types/aws-native:quicksight:AnalysisValidationStrategy" } }, "autoNamingSpec": { @@ -50192,7 +50971,8 @@ "parameters", "sheets", "sourceEntity", - "status" + "status", + "validationStrategy" ] }, "aws-native:quicksight:Dashboard": { @@ -50234,6 +51014,9 @@ "themeArn": { "type": "string" }, + "validationStrategy": { + "$ref": "#/types/aws-native:quicksight:DashboardValidationStrategy" + }, "versionDescription": { "type": "string" } @@ -50289,6 +51072,9 @@ "themeArn": { "type": "string" }, + "validationStrategy": { + "$ref": "#/types/aws-native:quicksight:DashboardValidationStrategy" + }, "version": { "$ref": "#/types/aws-native:quicksight:DashboardVersion" }, @@ -50317,6 +51103,7 @@ "parameters", "sourceEntity", "themeArn", + "validationStrategy", "versionDescription" ] }, @@ -50709,6 +51496,9 @@ "templateId": { "type": "string" }, + "validationStrategy": { + "$ref": "#/types/aws-native:quicksight:TemplateValidationStrategy" + }, "versionDescription": { "type": "string" } @@ -50752,6 +51542,9 @@ "type": "string", "replaceOnChanges": true }, + "validationStrategy": { + "$ref": "#/types/aws-native:quicksight:TemplateValidationStrategy" + }, "version": { "$ref": "#/types/aws-native:quicksight:TemplateVersion" }, @@ -50777,6 +51570,7 @@ "definition", "lastUpdatedTime", "sourceEntity", + "validationStrategy", "version", "versionDescription" ] @@ -57587,89 +58381,73 @@ "cf": "AWS::S3::Bucket", "inputs": { "accelerateConfiguration": { - "$ref": "#/types/aws-native:s3:BucketAccelerateConfiguration", - "description": "Configuration for the transfer acceleration state." + "$ref": "#/types/aws-native:s3:BucketAccelerateConfiguration" }, "accessControl": { - "$ref": "#/types/aws-native:s3:BucketAccessControl", - "description": "A canned access control list (ACL) that grants predefined permissions to the bucket." + "type": "string" }, "analyticsConfigurations": { "type": "array", "items": { "$ref": "#/types/aws-native:s3:BucketAnalyticsConfiguration" - }, - "description": "The configuration and any analyses for the analytics filter of an Amazon S3 bucket." + } }, "bucketEncryption": { "$ref": "#/types/aws-native:s3:BucketEncryption" }, "bucketName": { - "type": "string", - "description": "A name for the bucket. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name." + "type": "string" }, "corsConfiguration": { - "$ref": "#/types/aws-native:s3:BucketCorsConfiguration", - "description": "Rules that define cross-origin resource sharing of objects in this bucket." + "$ref": "#/types/aws-native:s3:BucketCorsConfiguration" }, "intelligentTieringConfigurations": { "type": "array", "items": { "$ref": "#/types/aws-native:s3:BucketIntelligentTieringConfiguration" - }, - "description": "Specifies the S3 Intelligent-Tiering configuration for an Amazon S3 bucket." + } }, "inventoryConfigurations": { "type": "array", "items": { "$ref": "#/types/aws-native:s3:BucketInventoryConfiguration" - }, - "description": "The inventory configuration for an Amazon S3 bucket." + } }, "lifecycleConfiguration": { - "$ref": "#/types/aws-native:s3:BucketLifecycleConfiguration", - "description": "Rules that define how Amazon S3 manages objects during their lifetime." + "$ref": "#/types/aws-native:s3:BucketLifecycleConfiguration" }, "loggingConfiguration": { - "$ref": "#/types/aws-native:s3:BucketLoggingConfiguration", - "description": "Settings that define where logs are stored." + "$ref": "#/types/aws-native:s3:BucketLoggingConfiguration" }, "metricsConfigurations": { "type": "array", "items": { "$ref": "#/types/aws-native:s3:BucketMetricsConfiguration" - }, - "description": "Settings that define a metrics configuration for the CloudWatch request metrics from the bucket." + } }, "notificationConfiguration": { - "$ref": "#/types/aws-native:s3:BucketNotificationConfiguration", - "description": "Configuration that defines how Amazon S3 handles bucket notifications." + "$ref": "#/types/aws-native:s3:BucketNotificationConfiguration" }, "objectLockConfiguration": { - "$ref": "#/types/aws-native:s3:BucketObjectLockConfiguration", - "description": "Places an Object Lock configuration on the specified bucket." + "$ref": "#/types/aws-native:s3:BucketObjectLockConfiguration" }, "objectLockEnabled": { - "type": "boolean", - "description": "Indicates whether this bucket has an Object Lock configuration enabled." + "type": "boolean" }, "ownershipControls": { - "$ref": "#/types/aws-native:s3:BucketOwnershipControls", - "description": "Specifies the container element for object ownership rules." + "$ref": "#/types/aws-native:s3:BucketOwnershipControls" }, "publicAccessBlockConfiguration": { "$ref": "#/types/aws-native:s3:BucketPublicAccessBlockConfiguration" }, "replicationConfiguration": { - "$ref": "#/types/aws-native:s3:BucketReplicationConfiguration", - "description": "Configuration for replicating objects in an S3 bucket." + "$ref": "#/types/aws-native:s3:BucketReplicationConfiguration" }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:s3:BucketTag" - }, - "description": "An arbitrary set of tags (key-value pairs) for this S3 bucket." + } }, "versioningConfiguration": { "$ref": "#/types/aws-native:s3:BucketVersioningConfiguration" @@ -57680,107 +58458,87 @@ }, "outputs": { "accelerateConfiguration": { - "$ref": "#/types/aws-native:s3:BucketAccelerateConfiguration", - "description": "Configuration for the transfer acceleration state." + "$ref": "#/types/aws-native:s3:BucketAccelerateConfiguration" }, "accessControl": { - "$ref": "#/types/aws-native:s3:BucketAccessControl", - "description": "A canned access control list (ACL) that grants predefined permissions to the bucket." + "type": "string" }, "analyticsConfigurations": { "type": "array", "items": { "$ref": "#/types/aws-native:s3:BucketAnalyticsConfiguration" - }, - "description": "The configuration and any analyses for the analytics filter of an Amazon S3 bucket." + } }, "arn": { - "type": "string", - "description": "The Amazon Resource Name (ARN) of the specified bucket." + "type": "string" }, "bucketEncryption": { "$ref": "#/types/aws-native:s3:BucketEncryption" }, "bucketName": { "type": "string", - "description": "A name for the bucket. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name.", "replaceOnChanges": true }, "corsConfiguration": { - "$ref": "#/types/aws-native:s3:BucketCorsConfiguration", - "description": "Rules that define cross-origin resource sharing of objects in this bucket." + "$ref": "#/types/aws-native:s3:BucketCorsConfiguration" }, "domainName": { - "type": "string", - "description": "The IPv4 DNS name of the specified bucket." + "type": "string" }, "dualStackDomainName": { - "type": "string", - "description": "The IPv6 DNS name of the specified bucket. For more information about dual-stack endpoints, see [Using Amazon S3 Dual-Stack Endpoints](https://docs.aws.amazon.com/AmazonS3/latest/dev/dual-stack-endpoints.html)." + "type": "string" }, "intelligentTieringConfigurations": { "type": "array", "items": { "$ref": "#/types/aws-native:s3:BucketIntelligentTieringConfiguration" - }, - "description": "Specifies the S3 Intelligent-Tiering configuration for an Amazon S3 bucket." + } }, "inventoryConfigurations": { "type": "array", "items": { "$ref": "#/types/aws-native:s3:BucketInventoryConfiguration" - }, - "description": "The inventory configuration for an Amazon S3 bucket." + } }, "lifecycleConfiguration": { - "$ref": "#/types/aws-native:s3:BucketLifecycleConfiguration", - "description": "Rules that define how Amazon S3 manages objects during their lifetime." + "$ref": "#/types/aws-native:s3:BucketLifecycleConfiguration" }, "loggingConfiguration": { - "$ref": "#/types/aws-native:s3:BucketLoggingConfiguration", - "description": "Settings that define where logs are stored." + "$ref": "#/types/aws-native:s3:BucketLoggingConfiguration" }, "metricsConfigurations": { "type": "array", "items": { "$ref": "#/types/aws-native:s3:BucketMetricsConfiguration" - }, - "description": "Settings that define a metrics configuration for the CloudWatch request metrics from the bucket." + } }, "notificationConfiguration": { - "$ref": "#/types/aws-native:s3:BucketNotificationConfiguration", - "description": "Configuration that defines how Amazon S3 handles bucket notifications." + "$ref": "#/types/aws-native:s3:BucketNotificationConfiguration" }, "objectLockConfiguration": { - "$ref": "#/types/aws-native:s3:BucketObjectLockConfiguration", - "description": "Places an Object Lock configuration on the specified bucket." + "$ref": "#/types/aws-native:s3:BucketObjectLockConfiguration" }, "objectLockEnabled": { "type": "boolean", - "description": "Indicates whether this bucket has an Object Lock configuration enabled.", "replaceOnChanges": true }, "ownershipControls": { - "$ref": "#/types/aws-native:s3:BucketOwnershipControls", - "description": "Specifies the container element for object ownership rules." + "$ref": "#/types/aws-native:s3:BucketOwnershipControls" }, "publicAccessBlockConfiguration": { "$ref": "#/types/aws-native:s3:BucketPublicAccessBlockConfiguration" }, "regionalDomainName": { - "type": "string", - "description": "Returns the regional domain name of the specified bucket." + "type": "string" }, "replicationConfiguration": { - "$ref": "#/types/aws-native:s3:BucketReplicationConfiguration", - "description": "Configuration for replicating objects in an S3 bucket." + "$ref": "#/types/aws-native:s3:BucketReplicationConfiguration" }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:s3:BucketTag" - }, - "description": "An arbitrary set of tags (key-value pairs) for this S3 bucket." + } }, "versioningConfiguration": { "$ref": "#/types/aws-native:s3:BucketVersioningConfiguration" @@ -57789,26 +58547,16 @@ "$ref": "#/types/aws-native:s3:BucketWebsiteConfiguration" }, "websiteUrl": { - "type": "string", - "description": "The Amazon S3 website endpoint for the specified bucket." + "type": "string" } }, "autoNamingSpec": { - "sdkName": "bucketName", - "minLength": 3, - "maxLength": 63 + "sdkName": "bucketName" }, "createOnly": [ "bucketName", "objectLockEnabled" ], - "writeOnly": [ - "accessControl", - "lifecycleConfiguration/Rules/*/NoncurrentVersionExpirationInDays", - "lifecycleConfiguration/Rules/*/NoncurrentVersionTransition", - "lifecycleConfiguration/Rules/*/Transition", - "replicationConfiguration/Rules/*/Prefix" - ], "irreversibleNames": { "websiteUrl": "WebsiteURL" } @@ -61957,6 +62705,10 @@ "aws-native:sns:Topic": { "cf": "AWS::SNS::Topic", "inputs": { + "archivePolicy": { + "$ref": "pulumi.json#/Any", + "description": "The archive policy determines the number of days Amazon SNS retains messages. You can set a retention period from 1 to 365 days." + }, "contentBasedDeduplication": { "type": "boolean", "description": "Enables content-based deduplication for FIFO topics. By default, ContentBasedDeduplication is set to false. If you create a FIFO topic and this attribute is false, you must specify a value for the MessageDeduplicationId parameter for the Publish action.\n\nWhen you set ContentBasedDeduplication to true, Amazon SNS uses a SHA-256 hash to generate the MessageDeduplicationId using the body of the message (but not the attributes of the message).\n\n(Optional) To override the generated value, you can specify a value for the the MessageDeduplicationId parameter for the Publish action.\n\n" @@ -62004,6 +62756,10 @@ } }, "outputs": { + "archivePolicy": { + "$ref": "pulumi.json#/Any", + "description": "The archive policy determines the number of days Amazon SNS retains messages. You can set a retention period from 1 to 365 days." + }, "contentBasedDeduplication": { "type": "boolean", "description": "Enables content-based deduplication for FIFO topics. By default, ContentBasedDeduplication is set to false. If you create a FIFO topic and this attribute is false, you must specify a value for the MessageDeduplicationId parameter for the Publish action.\n\nWhen you set ContentBasedDeduplication to true, Amazon SNS uses a SHA-256 hash to generate the MessageDeduplicationId using the body of the message (but not the attributes of the message).\n\n(Optional) To override the generated value, you can specify a value for the the MessageDeduplicationId parameter for the Publish action.\n\n" @@ -68136,11 +68892,11 @@ "properties": { "destinationArn": { "type": "string", - "description": "The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with amazon-apigateway-. " + "description": "The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with ``amazon-apigateway-``." }, "format": { "type": "string", - "description": "A single line format of the access logs of data, as specified by selected $context variables. The format must include at least $context.requestId. " + "description": "A single line format of the access logs of data, as specified by selected $context variables. The format must include at least ``$context.requestId``." } } }, @@ -68153,11 +68909,11 @@ }, "stageVariableOverrides": { "$ref": "pulumi.json#/Any", - "description": "Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values. " + "description": "Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values." }, "useStageCache": { "type": "boolean", - "description": "Whether the canary deployment uses the stage cache or not." + "description": "A Boolean flag to indicate whether the canary deployment uses the stage cache or not." } } }, @@ -68166,15 +68922,15 @@ "properties": { "percentTraffic": { "type": "number", - "description": "The percentage (0-100) of traffic diverted to a canary deployment." + "description": "The percentage (0.0-100.0) of traffic routed to the canary deployment." }, "stageVariableOverrides": { "$ref": "pulumi.json#/Any", - "description": "Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values. Duplicates are not allowed." + "description": "A stage variable overrides used for the canary release deployment. They can override existing stage variables or add new stage variables for the canary release deployment. These stage variables are represented as a string-to-string map between stage variable names and their values." }, "useStageCache": { "type": "boolean", - "description": "Whether the canary deployment uses the stage cache." + "description": "A Boolean flag to indicate whether the canary release deployment uses the stage cache or not." } } }, @@ -68183,19 +68939,19 @@ "properties": { "cacheDataEncrypted": { "type": "boolean", - "description": "Indicates whether the cached responses are encrypted" + "description": "Specifies whether the cached responses are encrypted." }, "cacheTtlInSeconds": { "type": "integer", - "description": "The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. " + "description": "Specifies the time to live (TTL), in seconds, for cached responses. The higher the TTL, the longer the response will be cached." }, "cachingEnabled": { "type": "boolean", - "description": "Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses." + "description": "Specifies whether responses should be cached and returned for requests. A cache cluster must be enabled on the stage for responses to be cached." }, "dataTraceEnabled": { "type": "boolean", - "description": "Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs. " + "description": "Specifies whether data trace logging is enabled for this method, which affects the log entries pushed to Amazon CloudWatch Logs. This can be useful to troubleshoot APIs, but can result in logging sensitive data. We recommend that you don't enable this option for production APIs." }, "httpMethod": { "type": "string", @@ -68203,23 +68959,23 @@ }, "loggingLevel": { "type": "string", - "description": "The logging level for this method. For valid values, see the loggingLevel property of the Stage resource in the Amazon API Gateway API Reference. " + "description": "Specifies the logging level for this method, which affects the log entries pushed to Amazon CloudWatch Logs. Valid values are ``OFF``, ``ERROR``, and ``INFO``. Choose ``ERROR`` to write only error-level entries to CloudWatch Logs, or choose ``INFO`` to include all ``ERROR`` events as well as extra informational events." }, "metricsEnabled": { "type": "boolean", - "description": "Indicates whether Amazon CloudWatch metrics are enabled for methods in the stage." + "description": "Specifies whether Amazon CloudWatch metrics are enabled for this method." }, "resourcePath": { "type": "string", - "description": "The resource path for this method. Forward slashes (/) are encoded as ~1 and the initial slash must include a forward slash. " + "description": "The resource path for this method. Forward slashes (``/``) are encoded as ``~1`` and the initial slash must include a forward slash. For example, the path value ``/resource/subresource`` must be encoded as ``/~1resource~1subresource``. To specify the root path, use only a slash (``/``)." }, "throttlingBurstLimit": { "type": "integer", - "description": "The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account." + "description": "Specifies the throttling burst limit." }, "throttlingRateLimit": { "type": "number", - "description": "The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account." + "description": "Specifies the throttling rate limit." } } }, @@ -68232,23 +68988,23 @@ }, "cacheClusterEnabled": { "type": "boolean", - "description": "Indicates whether cache clustering is enabled for the stage." + "description": "Specifies whether a cache cluster is enabled for the stage." }, "cacheClusterSize": { "type": "string", - "description": "The size of the stage's cache cluster." + "description": "The size of the stage's cache cluster. For more information, see [cacheClusterSize](https://docs.aws.amazon.com/apigateway/latest/api/API_CreateStage.html#apigw-CreateStage-request-cacheClusterSize) in the *API Gateway API Reference*." }, "cacheDataEncrypted": { "type": "boolean", - "description": "The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. " + "description": "Indicates whether the cached responses are encrypted." }, "cacheTtlInSeconds": { "type": "integer", - "description": "The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. " + "description": "The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses." }, "cachingEnabled": { "type": "boolean", - "description": "Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses." + "description": "Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses. For more information, see [Enable API Gateway Caching in a Stage to Enhance API Performance](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html) in the *API Gateway Developer Guide*." }, "canarySetting": { "$ref": "#/types/aws-native:apigateway:DeploymentCanarySetting", @@ -68256,11 +69012,11 @@ }, "clientCertificateId": { "type": "string", - "description": "The identifier of the client certificate that API Gateway uses to call your integration endpoints in the stage. " + "description": "The identifier of the client certificate that API Gateway uses to call your integration endpoints in the stage." }, "dataTraceEnabled": { "type": "boolean", - "description": "Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs. " + "description": "Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs." }, "description": { "type": "string", @@ -68272,7 +69028,7 @@ }, "loggingLevel": { "type": "string", - "description": "The logging level for this method. For valid values, see the loggingLevel property of the Stage resource in the Amazon API Gateway API Reference. " + "description": "The logging level for this method. For valid values, see the ``loggingLevel`` property of the [MethodSetting](https://docs.aws.amazon.com/apigateway/latest/api/API_MethodSetting.html) resource in the *Amazon API Gateway API Reference*." }, "methodSettings": { "type": "array", @@ -68294,19 +69050,19 @@ }, "throttlingBurstLimit": { "type": "integer", - "description": "The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account." + "description": "The target request burst rate limit. This allows more requests through for a period of time than the target rate limit. For more information, see [Manage API Request Throttling](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-request-throttling.html) in the *API Gateway Developer Guide*." }, "throttlingRateLimit": { "type": "number", - "description": "The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account." + "description": "The target request steady-state rate limit. For more information, see [Manage API Request Throttling](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-request-throttling.html) in the *API Gateway Developer Guide*." }, "tracingEnabled": { "type": "boolean", - "description": "Specifies whether active tracing with X-ray is enabled for this stage." + "description": "Specifies whether active tracing with X-ray is enabled for this stage.\n For more information, see [Trace API Gateway API Execution with X-Ray](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-xray.html) in the *API Gateway Developer Guide*." }, "variables": { "$ref": "pulumi.json#/Any", - "description": "A map that defines the stage variables. Variable names must consist of alphanumeric characters, and the values must match the following regular expression: [A-Za-z0-9-._~:/?#\u0026=,]+. " + "description": "A map that defines the stage variables. Variable names must consist of alphanumeric characters, and the values must match the following regular expression: ``[A-Za-z0-9-._~:/?#\u0026=,]+``." } } }, @@ -68328,23 +69084,23 @@ "properties": { "method": { "type": "string", - "description": "The HTTP verb of a method." + "description": "The HTTP verb of a method. It is a valid field for the API entity types of ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``*`` for any method. When an applicable child entity inherits the content of an entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``method`` attribute must match that of the parent entity exactly." }, "name": { "type": "string", - "description": "The name of the targeted API entity." + "description": "The name of the targeted API entity. It is a valid and required field for the API entity types of ``AUTHORIZER``, ``MODEL``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY`` and ``RESPONSE_HEADER``. It is an invalid field for any other entity type." }, "path": { "type": "string", - "description": "The URL path of the target." + "description": "The URL path of the target. It is a valid field for the API entity types of ``RESOURCE``, ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``/`` for the root resource. When an applicable child entity inherits the content of another entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``path`` attribute must match that of the parent entity as a prefix." }, "statusCode": { "type": "string", - "description": "The HTTP status code of a response." + "description": "The HTTP status code of a response. It is a valid field for the API entity types of ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``*`` for any status code. When an applicable child entity inherits the content of an entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``statusCode`` attribute must match that of the parent entity exactly." }, "type": { "$ref": "#/types/aws-native:apigateway:DocumentationPartLocationType", - "description": "The type of API entity that the documentation content applies to." + "description": "The type of API entity to which the documentation content applies. Valid values are ``API``, ``AUTHORIZER``, ``MODEL``, ``RESOURCE``, ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. Content inheritance does not apply to any entity of the ``API``, ``AUTHORIZER``, ``METHOD``, ``MODEL``, ``REQUEST_BODY``, or ``RESOURCE`` type." } } }, @@ -68395,62 +69151,62 @@ "items": { "type": "string" }, - "description": "A list of request parameters whose values API Gateway caches." + "description": "A list of request parameters whose values API Gateway caches. To be valid values for ``cacheKeyParameters``, these parameters must also be specified for Method ``requestParameters``." }, "cacheNamespace": { "type": "string", - "description": "An API-specific tag group of related cached parameters." + "description": "Specifies a group of related cached parameters. By default, API Gateway uses the resource ID as the ``cacheNamespace``. You can specify the same ``cacheNamespace`` across resources to return the same cached data for requests to different resources." }, "connectionId": { "type": "string", - "description": "The ID of the VpcLink used for the integration when connectionType=VPC_LINK, otherwise undefined." + "description": "The ID of the VpcLink used for the integration when ``connectionType=VPC_LINK`` and undefined, otherwise." }, "connectionType": { "$ref": "#/types/aws-native:apigateway:MethodIntegrationConnectionType", - "description": "The type of the network connection to the integration endpoint." + "description": "The type of the network connection to the integration endpoint. The valid value is ``INTERNET`` for connections through the public routable internet or ``VPC_LINK`` for private connections between API Gateway and a network load balancer in a VPC. The default value is ``INTERNET``." }, "contentHandling": { "$ref": "#/types/aws-native:apigateway:MethodIntegrationContentHandling", - "description": "Specifies how to handle request payload content type conversions." + "description": "Specifies how to handle request payload content type conversions. Supported values are ``CONVERT_TO_BINARY`` and ``CONVERT_TO_TEXT``, with the following behaviors:\n If this property is not defined, the request payload will be passed through from the method request to integration request without modification, provided that the ``passthroughBehavior`` is configured to support payload pass-through." }, "credentials": { "type": "string", - "description": "The credentials that are required for the integration." + "description": "Specifies the credentials required for the integration, if any. For AWS integrations, three options are available. To specify an IAM Role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To require that the caller's identity be passed through from the request, specify the string ``arn:aws:iam::\\*:user/\\*``. To use resource-based permissions on supported AWS services, specify null." }, "integrationHttpMethod": { "type": "string", - "description": "The integration's HTTP method type." + "description": "Specifies the integration's HTTP method type. For the Type property, if you specify ``MOCK``, this property is optional. For Lambda integrations, you must set the integration method to ``POST``. For all other types, you must specify this property." }, "integrationResponses": { "type": "array", "items": { "$ref": "#/types/aws-native:apigateway:MethodIntegrationResponse" }, - "description": "The response that API Gateway provides after a method's backend completes processing a request." + "description": "Specifies the integration's responses." }, "passthroughBehavior": { "$ref": "#/types/aws-native:apigateway:MethodIntegrationPassthroughBehavior", - "description": "Indicates when API Gateway passes requests to the targeted backend." + "description": "Specifies how the method request body of an unmapped content type will be passed through the integration request to the back end without transformation. A content type is unmapped if no mapping template is defined in the integration or the content type does not match any of the mapped content types, as specified in ``requestTemplates``. The valid value is one of the following: ``WHEN_NO_MATCH``: passes the method request body through the integration request to the back end without transformation when the method request content type does not match any content type associated with the mapping templates defined in the integration request. ``WHEN_NO_TEMPLATES``: passes the method request body through the integration request to the back end without transformation when no mapping template is defined in the integration request. If a template is defined when this option is selected, the method request of an unmapped content-type will be rejected with an HTTP 415 Unsupported Media Type response. ``NEVER``: rejects the method request with an HTTP 415 Unsupported Media Type response when either the method request content type does not match any content type associated with the mapping templates defined in the integration request or no mapping template is defined in the integration request." }, "requestParameters": { "$ref": "pulumi.json#/Any", - "description": "The request parameters that API Gateway sends with the backend request." + "description": "A key-value map specifying request parameters that are passed from the method request to the back end. The key is an integration request parameter name and the associated value is a method request parameter value or static value that must be enclosed within single quotes and pre-encoded as required by the back end. The method request parameter value must match the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and ``name`` must be a valid and unique method request parameter name." }, "requestTemplates": { "$ref": "pulumi.json#/Any", - "description": "A map of Apache Velocity templates that are applied on the request payload." + "description": "Represents a map of Velocity templates that are applied on the request payload based on the value of the Content-Type header sent by the client. The content type value is the key in this map, and the template (as a String) is the value." }, "timeoutInMillis": { "type": "integer", - "description": "Custom timeout between 50 and 29,000 milliseconds." + "description": "Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds or 29 seconds." }, "type": { "$ref": "#/types/aws-native:apigateway:MethodIntegrationType", - "description": "The type of backend that your method is running." + "description": "Specifies an API method integration type. The valid value is one of the following:\n For the HTTP and HTTP proxy integrations, each integration can specify a protocol (``http/https``), port and path. Standard 80 and 443 ports are supported as well as custom ports above 1024. An HTTP or HTTP proxy integration with a ``connectionType`` of ``VPC_LINK`` is referred to as a private integration and uses a VpcLink to connect API Gateway to a network load balancer of a VPC." }, "uri": { "type": "string", - "description": "The Uniform Resource Identifier (URI) for the integration." + "description": "Specifies Uniform Resource Identifier (URI) of the integration endpoint.\n For ``HTTP`` or ``HTTP_PROXY`` integrations, the URI must be a fully formed, encoded HTTP(S) URL according to the RFC-3986 specification for standard integrations. If ``connectionType`` is ``VPC_LINK`` specify the Network Load Balancer DNS name. For ``AWS`` or ``AWS_PROXY`` integrations, the URI is of the form ``arn:aws:apigateway:{region}:{subdomain.service|service}:path|action/{service_api}``. Here, {Region} is the API Gateway region (e.g., us-east-1); {service} is the name of the integrated AWS service (e.g., s3); and {subdomain} is a designated subdomain supported by certain AWS service for fast host-name lookup. action can be used for an AWS service action-based API, using an Action={name}\u0026{p1}={v1}\u0026p2={v2}... query string. The ensuing {service_api} refers to a supported action {name} plus any required input parameters. Alternatively, path can be used for an AWS service path-based API. The ensuing service_api refers to the path to an AWS service resource, including the region of the integrated AWS service, if applicable. For example, for integration with the S3 API of GetObject, the uri can be either ``arn:aws:apigateway:us-west-2:s3:action/GetObject\u0026Bucket={bucket}\u0026Key={key}`` or ``arn:aws:apigateway:us-west-2:s3:path/{bucket}/{key}``" } } }, @@ -68468,23 +69224,23 @@ "properties": { "contentHandling": { "$ref": "#/types/aws-native:apigateway:MethodIntegrationResponseContentHandling", - "description": "Specifies how to handle request payload content type conversions." + "description": "Specifies how to handle response payload content type conversions. Supported values are ``CONVERT_TO_BINARY`` and ``CONVERT_TO_TEXT``, with the following behaviors:\n If this property is not defined, the response payload will be passed through from the integration response to the method response without modification." }, "responseParameters": { "$ref": "pulumi.json#/Any", - "description": "The response parameters from the backend response that API Gateway sends to the method response." + "description": "A key-value map specifying response parameters that are passed to the method response from the back end. The key is a method response header parameter name and the mapped value is an integration response header value, a static value enclosed within a pair of single quotes, or a JSON expression from the integration response body. The mapping key must match the pattern of ``method.response.header.{name}``, where ``name`` is a valid and unique header name. The mapped non-static value must match the pattern of ``integration.response.header.{name}`` or ``integration.response.body.{JSON-expression}``, where ``name`` is a valid and unique response header name and ``JSON-expression`` is a valid JSON expression without the ``$`` prefix." }, "responseTemplates": { "$ref": "pulumi.json#/Any", - "description": "The templates that are used to transform the integration response body. Specify templates as key-value pairs (string-to-string mappings), with a content type as the key and a template as the value." + "description": "Specifies the templates used to transform the integration response body. Response templates are represented as a key/value map, with a content-type as the key and a template as the value." }, "selectionPattern": { "type": "string", - "description": "A regular expression that specifies which error strings or status codes from the backend map to the integration response." + "description": "Specifies the regular expression (regex) pattern used to choose an integration response based on the response from the back end. For example, if the success response returns nothing and the error response returns some string, you could use the ``.+`` regex to match error response. However, make sure that the error response does not contain any newline (``\\n``) character in such cases. If the back end is an LAMlong function, the LAMlong function error header is matched. For all other HTTP and AWS back ends, the HTTP status code is matched." }, "statusCode": { "type": "string", - "description": "The status code that API Gateway uses to map the integration response to a MethodResponse status code." + "description": "Specifies the status code that is used to map the integration response to an existing MethodResponse." } } }, @@ -68499,15 +69255,15 @@ "properties": { "responseModels": { "$ref": "pulumi.json#/Any", - "description": "The resources used for the response's content type. Specify response models as key-value pairs (string-to-string maps), with a content type as the key and a Model resource name as the value." + "description": "Specifies the Model resources used for the response's content-type. Response models are represented as a key/value map, with a content-type as the key and a Model name as the value." }, "responseParameters": { "$ref": "pulumi.json#/Any", - "description": "Response parameters that API Gateway sends to the client that called a method. Specify response parameters as key-value pairs (string-to-Boolean maps), with a destination as the key and a Boolean as the value." + "description": "A key-value map specifying required or optional response parameters that API Gateway can send back to the caller. A key defines a method response header and the value specifies whether the associated method response header is required or not. The expression of the key must match the pattern ``method.response.header.{name}``, where ``name`` is a valid and unique header name. API Gateway passes certain integration response data to the method response headers specified here according to the mapping you prescribe in the API's IntegrationResponse. The integration response data that can be mapped include an integration response header expressed in ``integration.response.header.{name}``, a static value enclosed within a pair of single quotes (e.g., ``'application/json'``), or a JSON expression from the back-end response payload in the form of ``integration.response.body.{JSON-expression}``, where ``JSON-expression`` is a valid JSON expression without the ``$`` prefix.)" }, "statusCode": { "type": "string", - "description": "The method response's status code, which you map to an IntegrationResponse." + "description": "The method response's status code." } } }, @@ -68518,13 +69274,15 @@ "type": "array", "items": { "type": "string" - } + }, + "description": "A list of endpoint types of an API (RestApi) or its custom domain name (DomainName). For an edge-optimized API and its custom domain name, the endpoint type is ``\"EDGE\"``. For a regional API and its custom domain name, the endpoint type is ``REGIONAL``. For a private API, the endpoint type is ``PRIVATE``." }, "vpcEndpointIds": { "type": "array", "items": { "type": "string" - } + }, + "description": "A list of VpcEndpointIds of an API (RestApi) against which to create Route53 ALIASes. It is only supported for ``PRIVATE`` endpoint type." } } }, @@ -68532,16 +69290,20 @@ "type": "object", "properties": { "bucket": { - "type": "string" + "type": "string", + "description": "The name of the S3 bucket where the OpenAPI file is stored." }, "eTag": { - "type": "string" + "type": "string", + "description": "The Amazon S3 ETag (a file checksum) of the OpenAPI file. If you don't specify a value, API Gateway skips ETag validation of your OpenAPI file." }, "key": { - "type": "string" + "type": "string", + "description": "The file name of the OpenAPI file (Amazon S3 object name)." }, "version": { - "type": "string" + "type": "string", + "description": "For versioning-enabled buckets, a specific version of the OpenAPI file." } } }, @@ -68561,11 +69323,11 @@ "properties": { "destinationArn": { "type": "string", - "description": "The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with amazon-apigateway-. This parameter is required to enable access logging." + "description": "The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with ``amazon-apigateway-``. This parameter is required to enable access logging." }, "format": { "type": "string", - "description": "A single line format of the access logs of data, as specified by selected $context variables (https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html#context-variable-reference). The format must include at least $context.requestId. This parameter is required to enable access logging." + "description": "A single line format of the access logs of data, as specified by selected [$context variables](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html#context-variable-reference). The format must include at least ``$context.requestId``. This parameter is required to enable access logging." } } }, @@ -68574,11 +69336,11 @@ "properties": { "deploymentId": { "type": "string", - "description": "The identifier of the deployment that the stage points to." + "description": "The ID of the canary deployment." }, "percentTraffic": { "type": "number", - "description": "The percentage (0-100) of traffic diverted to a canary deployment." + "description": "The percent (0-100) of traffic diverted to a canary deployment." }, "stageVariableOverrides": { "$ref": "pulumi.json#/Any", @@ -68586,7 +69348,7 @@ }, "useStageCache": { "type": "boolean", - "description": "Whether the canary deployment uses the stage cache or not." + "description": "A Boolean flag to indicate whether the canary deployment uses the stage cache or not." } } }, @@ -68595,43 +69357,43 @@ "properties": { "cacheDataEncrypted": { "type": "boolean", - "description": "Indicates whether the cached responses are encrypted." + "description": "Specifies whether the cached responses are encrypted." }, "cacheTtlInSeconds": { "type": "integer", - "description": "The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses." + "description": "Specifies the time to live (TTL), in seconds, for cached responses. The higher the TTL, the longer the response will be cached." }, "cachingEnabled": { "type": "boolean", - "description": "Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses." + "description": "Specifies whether responses should be cached and returned for requests. A cache cluster must be enabled on the stage for responses to be cached." }, "dataTraceEnabled": { "type": "boolean", - "description": "Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs." + "description": "Specifies whether data trace logging is enabled for this method, which affects the log entries pushed to Amazon CloudWatch Logs. This can be useful to troubleshoot APIs, but can result in logging sensitive data. We recommend that you don't enable this option for production APIs." }, "httpMethod": { "type": "string", - "description": "The HTTP method. You can use an asterisk (*) as a wildcard to apply method settings to multiple methods." + "description": "The HTTP method. To apply settings to multiple resources and methods, specify an asterisk (``*``) for the ``HttpMethod`` and ``/*`` for the ``ResourcePath``. This parameter is required when you specify a ``MethodSetting``." }, "loggingLevel": { "type": "string", - "description": "The logging level for this method. For valid values, see the loggingLevel property of the Stage (https://docs.aws.amazon.com/apigateway/api-reference/resource/stage/#loggingLevel) resource in the Amazon API Gateway API Reference." + "description": "Specifies the logging level for this method, which affects the log entries pushed to Amazon CloudWatch Logs. Valid values are ``OFF``, ``ERROR``, and ``INFO``. Choose ``ERROR`` to write only error-level entries to CloudWatch Logs, or choose ``INFO`` to include all ``ERROR`` events as well as extra informational events." }, "metricsEnabled": { "type": "boolean", - "description": "Indicates whether Amazon CloudWatch metrics are enabled for methods in the stage." + "description": "Specifies whether Amazon CloudWatch metrics are enabled for this method." }, "resourcePath": { "type": "string", - "description": "The resource path for this method. Forward slashes (/) are encoded as ~1 and the initial slash must include a forward slash. For example, the path value /resource/subresource must be encoded as /~1resource~1subresource. To specify the root path, use only a slash (/). You can use an asterisk (*) as a wildcard to apply method settings to multiple methods." + "description": "The resource path for this method. Forward slashes (``/``) are encoded as ``~1`` and the initial slash must include a forward slash. For example, the path value ``/resource/subresource`` must be encoded as ``/~1resource~1subresource``. To specify the root path, use only a slash (``/``). To apply settings to multiple resources and methods, specify an asterisk (``*``) for the ``HttpMethod`` and ``/*`` for the ``ResourcePath``. This parameter is required when you specify a ``MethodSetting``." }, "throttlingBurstLimit": { "type": "integer", - "description": "The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account." + "description": "Specifies the throttling burst limit." }, "throttlingRateLimit": { "type": "number", - "description": "The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account." + "description": "Specifies the throttling rate limit." } } }, @@ -68839,6 +69601,19 @@ "aws-native:apigatewayv2:RouteResponseRouteParameters": { "type": "object" }, + "aws-native:appconfig:ApplicationTags": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "The key-value string map. The valid character set is [a-zA-Z1-9+-=._:/]. The tag key can be up to 128 characters and must not start with aws:." + }, + "value": { + "type": "string", + "description": "The tag value can be up to 256 characters." + } + } + }, "aws-native:appconfig:ExtensionAssociationTag": { "type": "object", "properties": { @@ -71646,6 +72421,44 @@ } } }, + "aws-native:appsync:FunctionConfigurationAppSyncRuntime": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the runtime to use. Currently, the only allowed value is APPSYNC_JS." + }, + "runtimeVersion": { + "type": "string", + "description": "The version of the runtime to use. Currently, the only allowed version is 1.0.0." + } + } + }, + "aws-native:appsync:FunctionConfigurationLambdaConflictHandlerConfig": { + "type": "object", + "properties": { + "lambdaConflictHandlerArn": { + "type": "string", + "description": "The Amazon Resource Name (ARN) for the Lambda function to use as the Conflict Handler." + } + } + }, + "aws-native:appsync:FunctionConfigurationSyncConfig": { + "type": "object", + "properties": { + "conflictDetection": { + "type": "string", + "description": "The Conflict Detection strategy to use." + }, + "conflictHandler": { + "type": "string", + "description": "The Conflict Resolution strategy to perform in the event of a conflict." + }, + "lambdaConflictHandlerConfig": { + "$ref": "#/types/aws-native:appsync:FunctionConfigurationLambdaConflictHandlerConfig" + } + } + }, "aws-native:appsync:SourceApiAssociationConfig": { "type": "object", "properties": { @@ -76057,19 +76870,6 @@ } } }, - "aws-native:cognito:IdentityPoolTag": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -." - }, - "value": { - "type": "string", - "description": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -." - } - } - }, "aws-native:cognito:LogDeliveryConfigurationCloudWatchLogsConfiguration": { "type": "object", "properties": { @@ -76092,6 +76892,261 @@ } } }, + "aws-native:cognito:UserPoolAccountRecoverySetting": { + "type": "object", + "properties": { + "recoveryMechanisms": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:cognito:UserPoolRecoveryOption" + } + } + } + }, + "aws-native:cognito:UserPoolAddOns": { + "type": "object", + "properties": { + "advancedSecurityMode": { + "type": "string" + } + } + }, + "aws-native:cognito:UserPoolAdminCreateUserConfig": { + "type": "object", + "properties": { + "allowAdminCreateUserOnly": { + "type": "boolean" + }, + "inviteMessageTemplate": { + "$ref": "#/types/aws-native:cognito:UserPoolInviteMessageTemplate" + }, + "unusedAccountValidityDays": { + "type": "integer" + } + } + }, + "aws-native:cognito:UserPoolCustomEmailSender": { + "type": "object", + "properties": { + "lambdaArn": { + "type": "string" + }, + "lambdaVersion": { + "type": "string" + } + } + }, + "aws-native:cognito:UserPoolCustomSmsSender": { + "type": "object", + "properties": { + "lambdaArn": { + "type": "string" + }, + "lambdaVersion": { + "type": "string" + } + } + }, + "aws-native:cognito:UserPoolDeviceConfiguration": { + "type": "object", + "properties": { + "challengeRequiredOnNewDevice": { + "type": "boolean" + }, + "deviceOnlyRememberedOnUserPrompt": { + "type": "boolean" + } + } + }, + "aws-native:cognito:UserPoolEmailConfiguration": { + "type": "object", + "properties": { + "configurationSet": { + "type": "string" + }, + "emailSendingAccount": { + "type": "string" + }, + "from": { + "type": "string" + }, + "replyToEmailAddress": { + "type": "string" + }, + "sourceArn": { + "type": "string" + } + } + }, + "aws-native:cognito:UserPoolInviteMessageTemplate": { + "type": "object", + "properties": { + "emailMessage": { + "type": "string" + }, + "emailSubject": { + "type": "string" + }, + "smsMessage": { + "type": "string" + } + }, + "irreversibleNames": { + "smsMessage": "SMSMessage" + } + }, + "aws-native:cognito:UserPoolLambdaConfig": { + "type": "object", + "properties": { + "createAuthChallenge": { + "type": "string" + }, + "customEmailSender": { + "$ref": "#/types/aws-native:cognito:UserPoolCustomEmailSender" + }, + "customMessage": { + "type": "string" + }, + "customSmsSender": { + "$ref": "#/types/aws-native:cognito:UserPoolCustomSmsSender" + }, + "defineAuthChallenge": { + "type": "string" + }, + "kmsKeyId": { + "type": "string" + }, + "postAuthentication": { + "type": "string" + }, + "postConfirmation": { + "type": "string" + }, + "preAuthentication": { + "type": "string" + }, + "preSignUp": { + "type": "string" + }, + "preTokenGeneration": { + "type": "string" + }, + "userMigration": { + "type": "string" + }, + "verifyAuthChallengeResponse": { + "type": "string" + } + }, + "irreversibleNames": { + "customSmsSender": "CustomSMSSender", + "kmsKeyId": "KMSKeyID" + } + }, + "aws-native:cognito:UserPoolNumberAttributeConstraints": { + "type": "object", + "properties": { + "maxValue": { + "type": "string" + }, + "minValue": { + "type": "string" + } + } + }, + "aws-native:cognito:UserPoolPasswordPolicy": { + "type": "object", + "properties": { + "minimumLength": { + "type": "integer" + }, + "requireLowercase": { + "type": "boolean" + }, + "requireNumbers": { + "type": "boolean" + }, + "requireSymbols": { + "type": "boolean" + }, + "requireUppercase": { + "type": "boolean" + }, + "temporaryPasswordValidityDays": { + "type": "integer" + } + } + }, + "aws-native:cognito:UserPoolPolicies": { + "type": "object", + "properties": { + "passwordPolicy": { + "$ref": "#/types/aws-native:cognito:UserPoolPasswordPolicy" + } + } + }, + "aws-native:cognito:UserPoolRecoveryOption": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "priority": { + "type": "integer" + } + } + }, + "aws-native:cognito:UserPoolSchemaAttribute": { + "type": "object", + "properties": { + "attributeDataType": { + "type": "string" + }, + "developerOnlyAttribute": { + "type": "boolean" + }, + "mutable": { + "type": "boolean" + }, + "name": { + "type": "string" + }, + "numberAttributeConstraints": { + "$ref": "#/types/aws-native:cognito:UserPoolNumberAttributeConstraints" + }, + "required": { + "type": "boolean" + }, + "stringAttributeConstraints": { + "$ref": "#/types/aws-native:cognito:UserPoolStringAttributeConstraints" + } + } + }, + "aws-native:cognito:UserPoolSmsConfiguration": { + "type": "object", + "properties": { + "externalId": { + "type": "string" + }, + "snsCallerArn": { + "type": "string" + }, + "snsRegion": { + "type": "string" + } + } + }, + "aws-native:cognito:UserPoolStringAttributeConstraints": { + "type": "object", + "properties": { + "maxLength": { + "type": "string" + }, + "minLength": { + "type": "string" + } + } + }, "aws-native:cognito:UserPoolUserAttributeType": { "type": "object", "properties": { @@ -76103,6 +77158,48 @@ } } }, + "aws-native:cognito:UserPoolUserAttributeUpdateSettings": { + "type": "object", + "properties": { + "attributesRequireVerificationBeforeUpdate": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "aws-native:cognito:UserPoolUsernameConfiguration": { + "type": "object", + "properties": { + "caseSensitive": { + "type": "boolean" + } + } + }, + "aws-native:cognito:UserPoolVerificationMessageTemplate": { + "type": "object", + "properties": { + "defaultEmailOption": { + "type": "string" + }, + "emailMessage": { + "type": "string" + }, + "emailMessageByLink": { + "type": "string" + }, + "emailSubject": { + "type": "string" + }, + "emailSubjectByLink": { + "type": "string" + }, + "smsMessage": { + "type": "string" + } + } + }, "aws-native:comprehend:DocumentClassifierAugmentedManifestsListItem": { "type": "object", "properties": { @@ -76590,12 +77687,6 @@ } } }, - "aws-native:connect:ContactFlowModuleState": { - "type": "string" - }, - "aws-native:connect:ContactFlowModuleStatus": { - "type": "string" - }, "aws-native:connect:ContactFlowModuleTag": { "type": "object", "properties": { @@ -77769,6 +78860,222 @@ } } }, + "aws-native:customerprofiles:DomainAttributeTypesSelector": { + "type": "object", + "properties": { + "address": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The Address type. You can choose from Address, BusinessAddress, MaillingAddress, and ShippingAddress. You only can use the Address type in the MatchingRule. For example, if you want to match profile based on BusinessAddress.City or MaillingAddress.City, you need to choose the BusinessAddress and the MaillingAddress to represent the Address type and specify the Address.City on the matching rule." + }, + "attributeMatchingModel": { + "$ref": "#/types/aws-native:customerprofiles:DomainAttributeTypesSelectorAttributeMatchingModel", + "description": "Configures the AttributeMatchingModel, you can either choose ONE_TO_ONE or MANY_TO_MANY." + }, + "emailAddress": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The Email type. You can choose from EmailAddress, BusinessEmailAddress and PersonalEmailAddress. You only can use the EmailAddress type in the MatchingRule. For example, if you want to match profile based on PersonalEmailAddress or BusinessEmailAddress, you need to choose the PersonalEmailAddress and the BusinessEmailAddress to represent the EmailAddress type and only specify the EmailAddress on the matching rule." + }, + "phoneNumber": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The PhoneNumber type. You can choose from PhoneNumber, HomePhoneNumber, and MobilePhoneNumber. You only can use the PhoneNumber type in the MatchingRule. For example, if you want to match a profile based on Phone or HomePhone, you need to choose the Phone and the HomePhone to represent the PhoneNumber type and only specify the PhoneNumber on the matching rule." + } + } + }, + "aws-native:customerprofiles:DomainAttributeTypesSelectorAttributeMatchingModel": { + "type": "string" + }, + "aws-native:customerprofiles:DomainAutoMerging": { + "type": "object", + "properties": { + "conflictResolution": { + "$ref": "#/types/aws-native:customerprofiles:DomainConflictResolution" + }, + "consolidation": { + "$ref": "#/types/aws-native:customerprofiles:DomainConsolidation" + }, + "enabled": { + "type": "boolean", + "description": "The flag that enables the auto-merging of duplicate profiles." + }, + "minAllowedConfidenceScoreForMerging": { + "type": "number", + "description": "A number between 0 and 1 that represents the minimum confidence score required for profiles within a matching group to be merged during the auto-merge process. A higher score means higher similarity required to merge profiles." + } + } + }, + "aws-native:customerprofiles:DomainConflictResolution": { + "type": "object", + "properties": { + "conflictResolvingModel": { + "$ref": "#/types/aws-native:customerprofiles:DomainConflictResolutionConflictResolvingModel", + "description": "How the auto-merging process should resolve conflicts between different profiles." + }, + "sourceName": { + "type": "string", + "description": "The ObjectType name that is used to resolve profile merging conflicts when choosing SOURCE as the ConflictResolvingModel." + } + } + }, + "aws-native:customerprofiles:DomainConflictResolutionConflictResolvingModel": { + "type": "string" + }, + "aws-native:customerprofiles:DomainConsolidation": { + "type": "object", + "properties": { + "matchingAttributesList": { + "type": "array", + "items": { + "type": "array", + "items": { + "type": "string" + } + }, + "description": "A list of matching criteria." + } + } + }, + "aws-native:customerprofiles:DomainExportingConfig": { + "type": "object", + "properties": { + "s3Exporting": { + "$ref": "#/types/aws-native:customerprofiles:DomainS3ExportingConfig" + } + }, + "irreversibleNames": { + "s3Exporting": "S3Exporting" + } + }, + "aws-native:customerprofiles:DomainJobSchedule": { + "type": "object", + "properties": { + "dayOfTheWeek": { + "$ref": "#/types/aws-native:customerprofiles:DomainJobScheduleDayOfTheWeek", + "description": "The day when the Identity Resolution Job should run every week." + }, + "time": { + "type": "string", + "description": "The time when the Identity Resolution Job should run every week." + } + } + }, + "aws-native:customerprofiles:DomainJobScheduleDayOfTheWeek": { + "type": "string" + }, + "aws-native:customerprofiles:DomainMatching": { + "type": "object", + "properties": { + "autoMerging": { + "$ref": "#/types/aws-native:customerprofiles:DomainAutoMerging" + }, + "enabled": { + "type": "boolean", + "description": "The flag that enables the matching process of duplicate profiles." + }, + "exportingConfig": { + "$ref": "#/types/aws-native:customerprofiles:DomainExportingConfig" + }, + "jobSchedule": { + "$ref": "#/types/aws-native:customerprofiles:DomainJobSchedule" + } + } + }, + "aws-native:customerprofiles:DomainMatchingRule": { + "type": "object", + "properties": { + "rule": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "aws-native:customerprofiles:DomainRuleBasedMatching": { + "type": "object", + "properties": { + "attributeTypesSelector": { + "$ref": "#/types/aws-native:customerprofiles:DomainAttributeTypesSelector" + }, + "conflictResolution": { + "$ref": "#/types/aws-native:customerprofiles:DomainConflictResolution" + }, + "enabled": { + "type": "boolean", + "description": "The flag that enables the rule-based matching process of duplicate profiles." + }, + "exportingConfig": { + "$ref": "#/types/aws-native:customerprofiles:DomainExportingConfig" + }, + "matchingRules": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:customerprofiles:DomainMatchingRule" + }, + "description": "Configures how the rule-based matching process should match profiles. You can have up to 15 MatchingRule in the MatchingRules." + }, + "maxAllowedRuleLevelForMatching": { + "type": "integer", + "description": "Indicates the maximum allowed rule level for matching." + }, + "maxAllowedRuleLevelForMerging": { + "type": "integer", + "description": "Indicates the maximum allowed rule level for merging." + }, + "status": { + "$ref": "#/types/aws-native:customerprofiles:DomainRuleBasedMatchingStatus" + } + } + }, + "aws-native:customerprofiles:DomainRuleBasedMatchingStatus": { + "type": "string" + }, + "aws-native:customerprofiles:DomainS3ExportingConfig": { + "type": "object", + "properties": { + "s3BucketName": { + "type": "string", + "description": "The name of the S3 bucket where Identity Resolution Jobs write result files." + }, + "s3KeyName": { + "type": "string", + "description": "The S3 key name of the location where Identity Resolution Jobs write result files." + } + }, + "irreversibleNames": { + "s3BucketName": "S3BucketName", + "s3KeyName": "S3KeyName" + } + }, + "aws-native:customerprofiles:DomainStats": { + "type": "object", + "properties": { + "meteringProfileCount": { + "type": "number", + "description": "The number of profiles that you are currently paying for in the domain. If you have more than 100 objects associated with a single profile, that profile counts as two profiles. If you have more than 200 objects, that profile counts as three, and so on." + }, + "objectCount": { + "type": "number", + "description": "The total number of objects in domain." + }, + "profileCount": { + "type": "number", + "description": "The total number of profiles currently in the domain." + }, + "totalSize": { + "type": "number", + "description": "The total size, in bytes, of all objects in the domain." + } + } + }, "aws-native:customerprofiles:DomainTag": { "type": "object", "properties": { @@ -87335,6 +88642,92 @@ "aws-native:emrserverless:ApplicationWorkerTypeSpecificationInputMap": { "type": "object" }, + "aws-native:entityresolution:IdMappingWorkflowIdMappingTechniques": { + "type": "object", + "properties": { + "idMappingType": { + "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowIdMappingTechniquesIdMappingType" + }, + "providerProperties": { + "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowProviderProperties" + } + } + }, + "aws-native:entityresolution:IdMappingWorkflowIdMappingTechniquesIdMappingType": { + "type": "string" + }, + "aws-native:entityresolution:IdMappingWorkflowInputSource": { + "type": "object", + "properties": { + "inputSourceArn": { + "type": "string", + "description": "An Glue table ARN for the input source table" + }, + "schemaArn": { + "type": "string" + } + }, + "irreversibleNames": { + "inputSourceArn": "InputSourceARN" + } + }, + "aws-native:entityresolution:IdMappingWorkflowIntermediateSourceConfiguration": { + "type": "object", + "properties": { + "intermediateS3Path": { + "type": "string", + "description": "The s3 path that would be used to stage the intermediate data being generated during workflow execution." + } + }, + "irreversibleNames": { + "intermediateS3Path": "IntermediateS3Path" + } + }, + "aws-native:entityresolution:IdMappingWorkflowOutputSource": { + "type": "object", + "properties": { + "kmsArn": { + "type": "string" + }, + "outputS3Path": { + "type": "string", + "description": "The S3 path to which Entity Resolution will write the output table" + } + }, + "irreversibleNames": { + "kmsArn": "KMSArn", + "outputS3Path": "OutputS3Path" + } + }, + "aws-native:entityresolution:IdMappingWorkflowProviderProperties": { + "type": "object", + "properties": { + "intermediateSourceConfiguration": { + "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowIntermediateSourceConfiguration" + }, + "providerConfiguration": { + "$ref": "pulumi.json#/Any", + "description": "Additional Provider configuration that would be required for the provider service. The Configuration must be in JSON string format" + }, + "providerServiceArn": { + "type": "string", + "description": "Arn of the Provider Service being used." + } + } + }, + "aws-native:entityresolution:IdMappingWorkflowTag": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -." + }, + "value": { + "type": "string", + "description": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -." + } + } + }, "aws-native:entityresolution:MatchingWorkflowInputSource": { "type": "object", "properties": { @@ -87917,12 +89310,6 @@ "sql": { "type": "string" }, - "sqls": { - "type": "array", - "items": { - "type": "string" - } - }, "statementName": { "type": "string" }, @@ -87997,9 +89384,6 @@ } } }, - "aws-native:events:RuleState": { - "type": "string" - }, "aws-native:events:RuleTag": { "type": "object", "properties": { @@ -89302,6 +90686,9 @@ "aws-native:gamelift:FleetComputeType": { "type": "string" }, + "aws-native:gamelift:FleetInstanceRoleCredentialsProvider": { + "type": "string" + }, "aws-native:gamelift:FleetIpPermission": { "type": "object", "properties": { @@ -90669,6 +92056,19 @@ } } }, + "aws-native:iam:GroupPolicy": { + "type": "object", + "properties": { + "policyDocument": { + "type": "string", + "description": "The policy document." + }, + "policyName": { + "type": "string", + "description": "The friendly name (not ARN) identifying the policy." + } + } + }, "aws-native:iam:OidcProviderTag": { "type": "object", "properties": { @@ -92266,6 +93666,17 @@ "aws-native:iot:MitigationActionUpdateDeviceCertificateParamsAction": { "type": "string" }, + "aws-native:iot:PolicyTag": { + "type": "object", + "properties": { + "key": { + "type": "string" + }, + "value": { + "type": "string" + } + } + }, "aws-native:iot:PresignedUrlConfigProperties": { "type": "object", "properties": { @@ -105217,6 +106628,144 @@ } } }, + "aws-native:msk:ReplicatorAmazonMskCluster": { + "type": "object", + "properties": { + "mskClusterArn": { + "type": "string", + "description": "The ARN of an Amazon MSK cluster." + } + } + }, + "aws-native:msk:ReplicatorConsumerGroupReplication": { + "type": "object", + "properties": { + "consumerGroupsToExclude": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of regular expression patterns indicating the consumer groups that should not be replicated." + }, + "consumerGroupsToReplicate": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of regular expression patterns indicating the consumer groups to copy." + }, + "detectAndCopyNewConsumerGroups": { + "type": "boolean", + "description": "Whether to periodically check for new consumer groups." + }, + "synchroniseConsumerGroupOffsets": { + "type": "boolean", + "description": "Whether to periodically write the translated offsets to __consumer_offsets topic in target cluster." + } + } + }, + "aws-native:msk:ReplicatorKafkaCluster": { + "type": "object", + "properties": { + "amazonMskCluster": { + "$ref": "#/types/aws-native:msk:ReplicatorAmazonMskCluster", + "description": "Details of an Amazon MSK cluster. Exactly one of AmazonMskCluster is required." + }, + "vpcConfig": { + "$ref": "#/types/aws-native:msk:ReplicatorKafkaClusterClientVpcConfig", + "description": "Details of an Amazon VPC which has network connectivity to the Apache Kafka cluster." + } + } + }, + "aws-native:msk:ReplicatorKafkaClusterClientVpcConfig": { + "type": "object", + "properties": { + "securityGroupIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The AWS security groups to associate with the elastic network interfaces in order to specify what the replicator has access to. If a security group is not specified, the default security group associated with the VPC is used." + }, + "subnetIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of subnets to connect to in the virtual private cloud (VPC). AWS creates elastic network interfaces inside these subnets." + } + } + }, + "aws-native:msk:ReplicatorReplicationInfo": { + "type": "object", + "properties": { + "consumerGroupReplication": { + "$ref": "#/types/aws-native:msk:ReplicatorConsumerGroupReplication", + "description": "Configuration relating to consumer group replication." + }, + "sourceKafkaClusterArn": { + "type": "string", + "description": "Amazon Resource Name of the source Kafka cluster." + }, + "targetCompressionType": { + "$ref": "#/types/aws-native:msk:ReplicatorReplicationInfoTargetCompressionType", + "description": "The type of compression to use writing records to target Kafka cluster." + }, + "targetKafkaClusterArn": { + "type": "string", + "description": "Amazon Resource Name of the target Kafka cluster." + }, + "topicReplication": { + "$ref": "#/types/aws-native:msk:ReplicatorTopicReplication", + "description": "Configuration relating to topic replication." + } + } + }, + "aws-native:msk:ReplicatorReplicationInfoTargetCompressionType": { + "type": "string" + }, + "aws-native:msk:ReplicatorTag": { + "type": "object", + "properties": { + "key": { + "type": "string" + }, + "value": { + "type": "string" + } + } + }, + "aws-native:msk:ReplicatorTopicReplication": { + "type": "object", + "properties": { + "copyAccessControlListsForTopics": { + "type": "boolean", + "description": "Whether to periodically configure remote topic ACLs to match their corresponding upstream topics." + }, + "copyTopicConfigurations": { + "type": "boolean", + "description": "Whether to periodically configure remote topics to match their corresponding upstream topics." + }, + "detectAndCopyNewTopics": { + "type": "boolean", + "description": "Whether to periodically check for new topics and partitions." + }, + "topicsToExclude": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of regular expression patterns indicating the topics that should not be replicated." + }, + "topicsToReplicate": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of regular expression patterns indicating the topics to copy." + } + } + }, "aws-native:msk:ServerlessClusterClientAuthentication": { "type": "object", "properties": { @@ -117033,6 +118582,17 @@ "aws-native:quicksight:AnalysisUrlTargetConfiguration": { "type": "string" }, + "aws-native:quicksight:AnalysisValidationStrategy": { + "type": "object", + "properties": { + "mode": { + "$ref": "#/types/aws-native:quicksight:AnalysisValidationStrategyMode" + } + } + }, + "aws-native:quicksight:AnalysisValidationStrategyMode": { + "type": "string" + }, "aws-native:quicksight:AnalysisValueWhenUnsetOption": { "type": "string" }, @@ -125114,6 +126674,17 @@ "aws-native:quicksight:DashboardUrlTargetConfiguration": { "type": "string" }, + "aws-native:quicksight:DashboardValidationStrategy": { + "type": "object", + "properties": { + "mode": { + "$ref": "#/types/aws-native:quicksight:DashboardValidationStrategyMode" + } + } + }, + "aws-native:quicksight:DashboardValidationStrategyMode": { + "type": "string" + }, "aws-native:quicksight:DashboardValueWhenUnsetOption": { "type": "string" }, @@ -134075,6 +135646,17 @@ "aws-native:quicksight:TemplateUrlTargetConfiguration": { "type": "string" }, + "aws-native:quicksight:TemplateValidationStrategy": { + "type": "object", + "properties": { + "mode": { + "$ref": "#/types/aws-native:quicksight:TemplateValidationStrategyMode" + } + } + }, + "aws-native:quicksight:TemplateValidationStrategyMode": { + "type": "string" + }, "aws-native:quicksight:TemplateValueWhenUnsetOption": { "type": "string" }, @@ -137764,8 +139346,7 @@ "type": "object", "properties": { "daysAfterInitiation": { - "type": "integer", - "description": "Specifies the number of days after which Amazon S3 aborts an incomplete multipart upload." + "type": "integer" } } }, @@ -137773,17 +139354,10 @@ "type": "object", "properties": { "accelerationStatus": { - "$ref": "#/types/aws-native:s3:BucketAccelerateConfigurationAccelerationStatus", - "description": "Configures the transfer acceleration state for an Amazon S3 bucket." + "type": "string" } } }, - "aws-native:s3:BucketAccelerateConfigurationAccelerationStatus": { - "type": "string" - }, - "aws-native:s3:BucketAccessControl": { - "type": "string" - }, "aws-native:s3:BucketAccessControlTranslation": { "type": "object", "properties": { @@ -137796,12 +139370,10 @@ "type": "object", "properties": { "id": { - "type": "string", - "description": "The ID that identifies the analytics configuration." + "type": "string" }, "prefix": { - "type": "string", - "description": "The prefix that an object must have to be included in the analytics results." + "type": "string" }, "storageClassAnalysis": { "$ref": "#/types/aws-native:s3:BucketStorageClassAnalysis" @@ -137832,43 +139404,34 @@ "type": "array", "items": { "type": "string" - }, - "description": "Headers that are specified in the Access-Control-Request-Headers header." + } }, "allowedMethods": { "type": "array", "items": { - "$ref": "#/types/aws-native:s3:BucketCorsRuleAllowedMethodsItem" - }, - "description": "An HTTP method that you allow the origin to execute." + "type": "string" + } }, "allowedOrigins": { "type": "array", "items": { "type": "string" - }, - "description": "One or more origins you want customers to be able to access the bucket from." + } }, "exposedHeaders": { "type": "array", "items": { "type": "string" - }, - "description": "One or more headers in the response that you want customers to be able to access from their applications (for example, from a JavaScript XMLHttpRequest object)." + } }, "id": { - "type": "string", - "description": "A unique identifier for this rule." + "type": "string" }, "maxAge": { - "type": "integer", - "description": "The time in seconds that your browser is to cache the preflight response for the specified resource." + "type": "integer" } } }, - "aws-native:s3:BucketCorsRuleAllowedMethodsItem": { - "type": "string" - }, "aws-native:s3:BucketDataExport": { "type": "object", "properties": { @@ -137876,8 +139439,7 @@ "$ref": "#/types/aws-native:s3:BucketDestination" }, "outputSchemaVersion": { - "type": "string", - "description": "The version of the output schema to use when exporting data." + "type": "string" } } }, @@ -137888,51 +139450,38 @@ "type": "integer" }, "mode": { - "$ref": "#/types/aws-native:s3:BucketDefaultRetentionMode" + "type": "string" }, "years": { "type": "integer" } } }, - "aws-native:s3:BucketDefaultRetentionMode": { - "type": "string" - }, "aws-native:s3:BucketDeleteMarkerReplication": { "type": "object", "properties": { "status": { - "$ref": "#/types/aws-native:s3:BucketDeleteMarkerReplicationStatus" + "type": "string" } } }, - "aws-native:s3:BucketDeleteMarkerReplicationStatus": { - "type": "string" - }, "aws-native:s3:BucketDestination": { "type": "object", "properties": { "bucketAccountId": { - "type": "string", - "description": "The account ID that owns the destination S3 bucket. " + "type": "string" }, "bucketArn": { - "type": "string", - "description": "The Amazon Resource Name (ARN) of the bucket to which data is exported." + "type": "string" }, "format": { - "$ref": "#/types/aws-native:s3:BucketDestinationFormat", - "description": "Specifies the file format used when exporting data to Amazon S3." + "type": "string" }, "prefix": { - "type": "string", - "description": "The prefix to use when exporting data. The prefix is prepended to all results." + "type": "string" } } }, - "aws-native:s3:BucketDestinationFormat": { - "type": "string" - }, "aws-native:s3:BucketEncryption": { "type": "object", "properties": { @@ -137940,8 +139489,7 @@ "type": "array", "items": { "$ref": "#/types/aws-native:s3:BucketServerSideEncryptionRule" - }, - "description": "Specifies the default server-side-encryption configuration." + } } } }, @@ -137949,8 +139497,7 @@ "type": "object", "properties": { "replicaKmsKeyId": { - "type": "string", - "description": "Specifies the ID (Key ARN or Alias ARN) of the customer managed customer master key (CMK) stored in AWS Key Management Service (KMS) for the destination bucket." + "type": "string" } }, "irreversibleNames": { @@ -137961,8 +139508,7 @@ "type": "object", "properties": { "eventBridgeEnabled": { - "type": "boolean", - "description": "Specifies whether to send notifications to Amazon EventBridge when events occur in an Amazon S3 bucket." + "type": "boolean" } } }, @@ -137981,36 +139527,28 @@ "type": "object", "properties": { "id": { - "type": "string", - "description": "The ID used to identify the S3 Intelligent-Tiering configuration." + "type": "string" }, "prefix": { - "type": "string", - "description": "An object key name prefix that identifies the subset of objects to which the rule applies." + "type": "string" }, "status": { - "$ref": "#/types/aws-native:s3:BucketIntelligentTieringConfigurationStatus", - "description": "Specifies the status of the configuration." + "type": "string" }, "tagFilters": { "type": "array", "items": { "$ref": "#/types/aws-native:s3:BucketTagFilter" - }, - "description": "A container for a key-value pair." + } }, "tierings": { "type": "array", "items": { "$ref": "#/types/aws-native:s3:BucketTiering" - }, - "description": "Specifies a list of S3 Intelligent-Tiering storage class tiers in the configuration. At least one tier must be defined in the list. At most, you can specify two tiers in the list, one for each available AccessTier: ARCHIVE_ACCESS and DEEP_ARCHIVE_ACCESS." + } } } }, - "aws-native:s3:BucketIntelligentTieringConfigurationStatus": { - "type": "string" - }, "aws-native:s3:BucketInventoryConfiguration": { "type": "object", "properties": { @@ -138018,57 +139556,39 @@ "$ref": "#/types/aws-native:s3:BucketDestination" }, "enabled": { - "type": "boolean", - "description": "Specifies whether the inventory is enabled or disabled." + "type": "boolean" }, "id": { - "type": "string", - "description": "The ID used to identify the inventory configuration." + "type": "string" }, "includedObjectVersions": { - "$ref": "#/types/aws-native:s3:BucketInventoryConfigurationIncludedObjectVersions", - "description": "Object versions to include in the inventory list." + "type": "string" }, "optionalFields": { "type": "array", "items": { - "$ref": "#/types/aws-native:s3:BucketInventoryConfigurationOptionalFieldsItem" - }, - "description": "Contains the optional fields that are included in the inventory results." + "type": "string" + } }, "prefix": { - "type": "string", - "description": "The prefix that is prepended to all inventory results." + "type": "string" }, "scheduleFrequency": { - "$ref": "#/types/aws-native:s3:BucketInventoryConfigurationScheduleFrequency", - "description": "Specifies the schedule for generating inventory results." + "type": "string" } } }, - "aws-native:s3:BucketInventoryConfigurationIncludedObjectVersions": { - "type": "string" - }, - "aws-native:s3:BucketInventoryConfigurationOptionalFieldsItem": { - "type": "string" - }, - "aws-native:s3:BucketInventoryConfigurationScheduleFrequency": { - "type": "string" - }, "aws-native:s3:BucketLambdaConfiguration": { "type": "object", "properties": { "event": { - "type": "string", - "description": "The Amazon S3 bucket event for which to invoke the AWS Lambda function." + "type": "string" }, "filter": { - "$ref": "#/types/aws-native:s3:BucketNotificationFilter", - "description": "The filtering rules that determine which objects invoke the AWS Lambda function." + "$ref": "#/types/aws-native:s3:BucketNotificationFilter" }, "function": { - "type": "string", - "description": "The Amazon Resource Name (ARN) of the AWS Lambda function that Amazon S3 invokes when the specified event type occurs." + "type": "string" } } }, @@ -138079,8 +139599,7 @@ "type": "array", "items": { "$ref": "#/types/aws-native:s3:BucketRule" - }, - "description": "A lifecycle rule for individual objects in an Amazon S3 bucket." + } } } }, @@ -138088,8 +139607,7 @@ "type": "object", "properties": { "destinationBucketName": { - "type": "string", - "description": "The name of an Amazon S3 bucket where Amazon S3 store server access log files. You can store log files in any bucket that you own. By default, logs are stored in the bucket where the LoggingConfiguration property is defined." + "type": "string" }, "logFilePrefix": { "type": "string" @@ -138103,7 +139621,7 @@ "$ref": "#/types/aws-native:s3:BucketReplicationTimeValue" }, "status": { - "$ref": "#/types/aws-native:s3:BucketMetricsStatus" + "type": "string" } } }, @@ -138127,19 +139645,14 @@ } } }, - "aws-native:s3:BucketMetricsStatus": { - "type": "string" - }, "aws-native:s3:BucketNoncurrentVersionExpiration": { "type": "object", "properties": { "newerNoncurrentVersions": { - "type": "integer", - "description": "Specified the number of newer noncurrent and current versions that must exists before performing the associated action" + "type": "integer" }, "noncurrentDays": { - "type": "integer", - "description": "Specified the number of days an object is noncurrent before Amazon S3 can perform the associated action" + "type": "integer" } } }, @@ -138147,22 +139660,16 @@ "type": "object", "properties": { "newerNoncurrentVersions": { - "type": "integer", - "description": "Specified the number of newer noncurrent and current versions that must exists before performing the associated action" + "type": "integer" }, "storageClass": { - "$ref": "#/types/aws-native:s3:BucketNoncurrentVersionTransitionStorageClass", - "description": "The class of storage used to store the object." + "type": "string" }, "transitionInDays": { - "type": "integer", - "description": "Specifies the number of days an object is noncurrent before Amazon S3 can perform the associated action." + "type": "integer" } } }, - "aws-native:s3:BucketNoncurrentVersionTransitionStorageClass": { - "type": "string" - }, "aws-native:s3:BucketNotificationConfiguration": { "type": "object", "properties": { @@ -138234,32 +139741,24 @@ "type": "object", "properties": { "objectOwnership": { - "$ref": "#/types/aws-native:s3:BucketOwnershipControlsRuleObjectOwnership", - "description": "Specifies an object ownership rule." + "type": "string" } } }, - "aws-native:s3:BucketOwnershipControlsRuleObjectOwnership": { - "type": "string" - }, "aws-native:s3:BucketPublicAccessBlockConfiguration": { "type": "object", "properties": { "blockPublicAcls": { - "type": "boolean", - "description": "Specifies whether Amazon S3 should block public access control lists (ACLs) for this bucket and objects in this bucket. Setting this element to TRUE causes the following behavior:\n- PUT Bucket acl and PUT Object acl calls fail if the specified ACL is public.\n - PUT Object calls fail if the request includes a public ACL.\nEnabling this setting doesn't affect existing policies or ACLs." + "type": "boolean" }, "blockPublicPolicy": { - "type": "boolean", - "description": "Specifies whether Amazon S3 should block public bucket policies for this bucket. Setting this element to TRUE causes Amazon S3 to reject calls to PUT Bucket policy if the specified bucket policy allows public access.\nEnabling this setting doesn't affect existing bucket policies." + "type": "boolean" }, "ignorePublicAcls": { - "type": "boolean", - "description": "Specifies whether Amazon S3 should ignore public ACLs for this bucket and objects in this bucket. Setting this element to TRUE causes Amazon S3 to ignore all public ACLs on this bucket and objects in this bucket.\nEnabling this setting doesn't affect the persistence of any existing ACLs and doesn't prevent new public ACLs from being set." + "type": "boolean" }, "restrictPublicBuckets": { - "type": "boolean", - "description": "Specifies whether Amazon S3 should restrict public bucket policies for this bucket. Setting this element to TRUE restricts access to this bucket to only AWS services and authorized users within this account if the bucket has a public policy.\nEnabling this setting doesn't affect previously stored bucket policies, except that public and cross-account access within any public bucket policy, including non-public delegation to specific accounts, is blocked." + "type": "boolean" } } }, @@ -138267,16 +139766,13 @@ "type": "object", "properties": { "event": { - "type": "string", - "description": "The Amazon S3 bucket event about which you want to publish messages to Amazon SQS." + "type": "string" }, "filter": { - "$ref": "#/types/aws-native:s3:BucketNotificationFilter", - "description": "The filtering rules that determine which objects trigger notifications." + "$ref": "#/types/aws-native:s3:BucketNotificationFilter" }, "queue": { - "type": "string", - "description": "The Amazon Resource Name (ARN) of the Amazon SQS queue to which Amazon S3 publishes a message when it detects events of the specified type." + "type": "string" } } }, @@ -138284,71 +139780,52 @@ "type": "object", "properties": { "hostName": { - "type": "string", - "description": "Name of the host where requests are redirected." + "type": "string" }, "protocol": { - "$ref": "#/types/aws-native:s3:BucketRedirectAllRequestsToProtocol", - "description": "Protocol to use when redirecting requests. The default is the protocol that is used in the original request." + "type": "string" } } }, - "aws-native:s3:BucketRedirectAllRequestsToProtocol": { - "type": "string" - }, "aws-native:s3:BucketRedirectRule": { "type": "object", "properties": { "hostName": { - "type": "string", - "description": "The host name to use in the redirect request." + "type": "string" }, "httpRedirectCode": { - "type": "string", - "description": "The HTTP redirect code to use on the response. Not required if one of the siblings is present." + "type": "string" }, "protocol": { - "$ref": "#/types/aws-native:s3:BucketRedirectRuleProtocol", - "description": "Protocol to use when redirecting requests. The default is the protocol that is used in the original request." + "type": "string" }, "replaceKeyPrefixWith": { - "type": "string", - "description": "The object key prefix to use in the redirect request." + "type": "string" }, "replaceKeyWith": { - "type": "string", - "description": "The specific object key to use in the redirect request.d" + "type": "string" } } }, - "aws-native:s3:BucketRedirectRuleProtocol": { - "type": "string" - }, "aws-native:s3:BucketReplicaModifications": { "type": "object", "properties": { "status": { - "$ref": "#/types/aws-native:s3:BucketReplicaModificationsStatus", - "description": "Specifies whether Amazon S3 replicates modifications on replicas." + "type": "string" } } }, - "aws-native:s3:BucketReplicaModificationsStatus": { - "type": "string" - }, "aws-native:s3:BucketReplicationConfiguration": { "type": "object", "properties": { "role": { - "type": "string", - "description": "The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that Amazon S3 assumes when replicating objects." + "type": "string" }, "rules": { "type": "array", "items": { "$ref": "#/types/aws-native:s3:BucketReplicationRule" - }, - "description": "A container for one or more replication rules." + } } } }, @@ -138374,14 +139851,10 @@ "$ref": "#/types/aws-native:s3:BucketReplicationTime" }, "storageClass": { - "$ref": "#/types/aws-native:s3:BucketReplicationDestinationStorageClass", - "description": "The storage class to use when replicating objects, such as S3 Standard or reduced redundancy." + "type": "string" } } }, - "aws-native:s3:BucketReplicationDestinationStorageClass": { - "type": "string" - }, "aws-native:s3:BucketReplicationRule": { "type": "object", "properties": { @@ -138395,12 +139868,10 @@ "$ref": "#/types/aws-native:s3:BucketReplicationRuleFilter" }, "id": { - "type": "string", - "description": "A unique identifier for the rule." + "type": "string" }, "prefix": { - "type": "string", - "description": "An object key name prefix that identifies the object or objects to which the rule applies." + "type": "string" }, "priority": { "type": "integer" @@ -138409,8 +139880,7 @@ "$ref": "#/types/aws-native:s3:BucketSourceSelectionCriteria" }, "status": { - "$ref": "#/types/aws-native:s3:BucketReplicationRuleStatus", - "description": "Specifies whether the rule is enabled." + "type": "string" } } }, @@ -138442,23 +139912,17 @@ } } }, - "aws-native:s3:BucketReplicationRuleStatus": { - "type": "string" - }, "aws-native:s3:BucketReplicationTime": { "type": "object", "properties": { "status": { - "$ref": "#/types/aws-native:s3:BucketReplicationTimeStatus" + "type": "string" }, "time": { "$ref": "#/types/aws-native:s3:BucketReplicationTimeValue" } } }, - "aws-native:s3:BucketReplicationTimeStatus": { - "type": "string" - }, "aws-native:s3:BucketReplicationTimeValue": { "type": "object", "properties": { @@ -138471,8 +139935,7 @@ "type": "object", "properties": { "redirectRule": { - "$ref": "#/types/aws-native:s3:BucketRedirectRule", - "description": "Container for redirect information. You can redirect requests to another host, to another page, or with another protocol. In the event of an error, you can specify a different error code to return." + "$ref": "#/types/aws-native:s3:BucketRedirectRule" }, "routingRuleCondition": { "$ref": "#/types/aws-native:s3:BucketRoutingRuleCondition" @@ -138483,12 +139946,10 @@ "type": "object", "properties": { "httpErrorCodeReturnedEquals": { - "type": "string", - "description": "The HTTP error code when the redirect is applied. " + "type": "string" }, "keyPrefixEquals": { - "type": "string", - "description": "The object key name prefix when the redirect is applied." + "type": "string" } } }, @@ -138526,16 +139987,16 @@ } }, "objectSizeGreaterThan": { - "type": "string" + "type": "integer" }, "objectSizeLessThan": { - "type": "string" + "type": "integer" }, "prefix": { "type": "string" }, "status": { - "$ref": "#/types/aws-native:s3:BucketRuleStatus" + "type": "string" }, "tagFilters": { "type": "array", @@ -138554,9 +140015,6 @@ } } }, - "aws-native:s3:BucketRuleStatus": { - "type": "string" - }, "aws-native:s3:BucketS3KeyFilter": { "type": "object", "properties": { @@ -138572,11 +140030,10 @@ "type": "object", "properties": { "kmsMasterKeyId": { - "type": "string", - "description": "\"KMSMasterKeyID\" can only be used when you set the value of SSEAlgorithm as aws:kms or aws:kms:dsse." + "type": "string" }, "sseAlgorithm": { - "$ref": "#/types/aws-native:s3:BucketServerSideEncryptionByDefaultSseAlgorithm" + "type": "string" } }, "irreversibleNames": { @@ -138584,15 +140041,11 @@ "sseAlgorithm": "SSEAlgorithm" } }, - "aws-native:s3:BucketServerSideEncryptionByDefaultSseAlgorithm": { - "type": "string" - }, "aws-native:s3:BucketServerSideEncryptionRule": { "type": "object", "properties": { "bucketKeyEnabled": { - "type": "boolean", - "description": "Specifies whether Amazon S3 should use an S3 Bucket Key with server-side encryption using KMS (SSE-KMS) for new objects in the bucket. Existing objects are not affected. Setting the BucketKeyEnabled element to true causes Amazon S3 to use an S3 Bucket Key. By default, S3 Bucket Key is not enabled." + "type": "boolean" }, "serverSideEncryptionByDefault": { "$ref": "#/types/aws-native:s3:BucketServerSideEncryptionByDefault" @@ -138603,12 +140056,10 @@ "type": "object", "properties": { "replicaModifications": { - "$ref": "#/types/aws-native:s3:BucketReplicaModifications", - "description": "A filter that you can specify for selection for modifications on replicas." + "$ref": "#/types/aws-native:s3:BucketReplicaModifications" }, "sseKmsEncryptedObjects": { - "$ref": "#/types/aws-native:s3:BucketSseKmsEncryptedObjects", - "description": "A container for filter information for the selection of Amazon S3 objects encrypted with AWS KMS." + "$ref": "#/types/aws-native:s3:BucketSseKmsEncryptedObjects" } } }, @@ -138616,14 +140067,10 @@ "type": "object", "properties": { "status": { - "$ref": "#/types/aws-native:s3:BucketSseKmsEncryptedObjectsStatus", - "description": "Specifies whether Amazon S3 replicates objects created with server-side encryption using a customer master key (CMK) stored in AWS Key Management Service." + "type": "string" } } }, - "aws-native:s3:BucketSseKmsEncryptedObjectsStatus": { - "type": "string" - }, "aws-native:s3:BucketStorageClassAnalysis": { "type": "object", "properties": { @@ -138658,32 +140105,24 @@ "type": "object", "properties": { "accessTier": { - "$ref": "#/types/aws-native:s3:BucketTieringAccessTier", - "description": "S3 Intelligent-Tiering access tier. See Storage class for automatically optimizing frequently and infrequently accessed objects for a list of access tiers in the S3 Intelligent-Tiering storage class." + "type": "string" }, "days": { - "type": "integer", - "description": "The number of consecutive days of no access after which an object will be eligible to be transitioned to the corresponding tier. The minimum number of days specified for Archive Access tier must be at least 90 days and Deep Archive Access tier must be at least 180 days. The maximum can be up to 2 years (730 days)." + "type": "integer" } } }, - "aws-native:s3:BucketTieringAccessTier": { - "type": "string" - }, "aws-native:s3:BucketTopicConfiguration": { "type": "object", "properties": { "event": { - "type": "string", - "description": "The Amazon S3 bucket event about which to send notifications." + "type": "string" }, "filter": { - "$ref": "#/types/aws-native:s3:BucketNotificationFilter", - "description": "The filtering rules that determine for which objects to send notifications." + "$ref": "#/types/aws-native:s3:BucketNotificationFilter" }, "topic": { - "type": "string", - "description": "The Amazon Resource Name (ARN) of the Amazon SNS topic to which Amazon S3 publishes a message when it detects events of the specified type." + "type": "string" } } }, @@ -138691,7 +140130,7 @@ "type": "object", "properties": { "storageClass": { - "$ref": "#/types/aws-native:s3:BucketTransitionStorageClass" + "type": "string" }, "transitionDate": { "type": "string" @@ -138701,31 +140140,22 @@ } } }, - "aws-native:s3:BucketTransitionStorageClass": { - "type": "string" - }, "aws-native:s3:BucketVersioningConfiguration": { "type": "object", "properties": { "status": { - "$ref": "#/types/aws-native:s3:BucketVersioningConfigurationStatus", - "description": "The versioning state of the bucket." + "type": "string" } } }, - "aws-native:s3:BucketVersioningConfigurationStatus": { - "type": "string" - }, "aws-native:s3:BucketWebsiteConfiguration": { "type": "object", "properties": { "errorDocument": { - "type": "string", - "description": "The name of the error document for the website." + "type": "string" }, "indexDocument": { - "type": "string", - "description": "The name of the index document for the website." + "type": "string" }, "redirectAllRequestsTo": { "$ref": "#/types/aws-native:s3:BucketRedirectAllRequestsTo" @@ -139390,6 +140820,10 @@ "datasetFormat": { "$ref": "#/types/aws-native:sagemaker:DataQualityJobDefinitionDatasetFormat" }, + "excludeFeaturesAttribute": { + "type": "string", + "description": "Indexes or names of the features to be excluded from analysis" + }, "localPath": { "type": "string", "description": "Path to the filesystem where the endpoint data is available to the container." @@ -139540,6 +140974,10 @@ "endpointName": { "type": "string" }, + "excludeFeaturesAttribute": { + "type": "string", + "description": "Indexes or names of the features to be excluded from analysis" + }, "localPath": { "type": "string", "description": "Path to the filesystem where the endpoint data is available to the container." @@ -142518,6 +143956,10 @@ "datasetFormat": { "$ref": "#/types/aws-native:sagemaker:MonitoringScheduleDatasetFormat" }, + "excludeFeaturesAttribute": { + "type": "string", + "description": "Indexes or names of the features to be excluded from analysis" + }, "localPath": { "type": "string", "description": "Path to the filesystem where the endpoint data is available to the container." @@ -142626,6 +144068,10 @@ "endpointName": { "type": "string" }, + "excludeFeaturesAttribute": { + "type": "string", + "description": "Indexes or names of the features to be excluded from analysis" + }, "localPath": { "type": "string", "description": "Path to the filesystem where the endpoint data is available to the container." @@ -142857,9 +144303,17 @@ "aws-native:sagemaker:MonitoringScheduleScheduleConfig": { "type": "object", "properties": { + "dataAnalysisEndTime": { + "type": "string", + "description": "Data Analysis end time, e.g. PT0H" + }, + "dataAnalysisStartTime": { + "type": "string", + "description": "Data Analysis start time, e.g. -PT1H" + }, "scheduleExpression": { "type": "string", - "description": "A cron expression that describes details about the monitoring schedule." + "description": "A cron expression or 'NOW' that describes details about the monitoring schedule." } } }, @@ -149752,6 +151206,12 @@ "vpcLinkId" ] }, + "aws-native:appconfig:getApplication": { + "cf": "AWS::AppConfig::Application", + "ids": [ + "applicationId" + ] + }, "aws-native:appconfig:getExtension": { "cf": "AWS::AppConfig::Extension", "ids": [ @@ -149887,6 +151347,12 @@ "apiAssociationIdentifier" ] }, + "aws-native:appsync:getFunctionConfiguration": { + "cf": "AWS::AppSync::FunctionConfiguration", + "ids": [ + "functionArn" + ] + }, "aws-native:appsync:getSourceApiAssociation": { "cf": "AWS::AppSync::SourceApiAssociation", "ids": [ @@ -150353,6 +151819,19 @@ "id" ] }, + "aws-native:cognito:getUserPool": { + "cf": "AWS::Cognito::UserPool", + "ids": [ + "userPoolId" + ] + }, + "aws-native:cognito:getUserPoolGroup": { + "cf": "AWS::Cognito::UserPoolGroup", + "ids": [ + "userPoolId", + "groupName" + ] + }, "aws-native:comprehend:getDocumentClassifier": { "cf": "AWS::Comprehend::DocumentClassifier", "ids": [ @@ -151445,6 +152924,12 @@ "applicationId" ] }, + "aws-native:entityresolution:getIdMappingWorkflow": { + "cf": "AWS::EntityResolution::IdMappingWorkflow", + "ids": [ + "workflowName" + ] + }, "aws-native:entityresolution:getMatchingWorkflow": { "cf": "AWS::EntityResolution::MatchingWorkflow", "ids": [ @@ -151490,7 +152975,7 @@ "aws-native:events:getRule": { "cf": "AWS::Events::Rule", "ids": [ - "arn" + "id" ] }, "aws-native:eventschemas:getRegistryPolicy": { @@ -151740,6 +153225,12 @@ "datastoreId" ] }, + "aws-native:iam:getGroup": { + "cf": "AWS::IAM::Group", + "ids": [ + "groupName" + ] + }, "aws-native:iam:getGroupPolicy": { "cf": "AWS::IAM::GroupPolicy", "ids": [ @@ -152856,6 +154347,12 @@ "arn" ] }, + "aws-native:msk:getReplicator": { + "cf": "AWS::MSK::Replicator", + "ids": [ + "replicatorArn" + ] + }, "aws-native:msk:getServerlessCluster": { "cf": "AWS::MSK::ServerlessCluster", "ids": [ @@ -153702,7 +155199,7 @@ "aws-native:s3:getBucket": { "cf": "AWS::S3::Bucket", "ids": [ - "bucketName" + "id" ] }, "aws-native:s3:getBucketPolicy": { @@ -153941,13 +155438,16 @@ "aws-native:servicecatalogappregistry:getAttributeGroupAssociation": { "cf": "AWS::ServiceCatalogAppRegistry::AttributeGroupAssociation", "ids": [ - "id" + "applicationArn", + "attributeGroupArn" ] }, "aws-native:servicecatalogappregistry:getResourceAssociation": { "cf": "AWS::ServiceCatalogAppRegistry::ResourceAssociation", "ids": [ - "id" + "applicationArn", + "resourceArn", + "resourceType" ] }, "aws-native:ses:getConfigurationSet": { diff --git a/provider/cmd/pulumi-resource-aws-native/schema.json b/provider/cmd/pulumi-resource-aws-native/schema.json index ba4788740c..2988f977d3 100644 --- a/provider/cmd/pulumi-resource-aws-native/schema.json +++ b/provider/cmd/pulumi-resource-aws-native/schema.json @@ -1594,19 +1594,21 @@ ] }, "aws-native:apigateway:DeploymentAccessLogSetting": { + "description": "The ``AccessLogSetting`` property type specifies settings for logging access in this stage.\n ``AccessLogSetting`` is a property of the [StageDescription](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html) property type.", "properties": { "destinationArn": { "type": "string", - "description": "The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with amazon-apigateway-. " + "description": "The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with ``amazon-apigateway-``." }, "format": { "type": "string", - "description": "A single line format of the access logs of data, as specified by selected $context variables. The format must include at least $context.requestId. " + "description": "A single line format of the access logs of data, as specified by selected $context variables. The format must include at least ``$context.requestId``." } }, "type": "object" }, "aws-native:apigateway:DeploymentCanarySetting": { + "description": "The ``CanarySetting`` property type specifies settings for the canary deployment in this stage.\n ``CanarySetting`` is a property of the [StageDescription](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html) property type.", "properties": { "percentTraffic": { "type": "number", @@ -1614,49 +1616,51 @@ }, "stageVariableOverrides": { "$ref": "pulumi.json#/Any", - "description": "Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values. " + "description": "Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values." }, "useStageCache": { "type": "boolean", - "description": "Whether the canary deployment uses the stage cache or not." + "description": "A Boolean flag to indicate whether the canary deployment uses the stage cache or not." } }, "type": "object" }, "aws-native:apigateway:DeploymentCanarySettings": { + "description": "The ``DeploymentCanarySettings`` property type specifies settings for the canary deployment.", "properties": { "percentTraffic": { "type": "number", - "description": "The percentage (0-100) of traffic diverted to a canary deployment." + "description": "The percentage (0.0-100.0) of traffic routed to the canary deployment." }, "stageVariableOverrides": { "$ref": "pulumi.json#/Any", - "description": "Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values. Duplicates are not allowed." + "description": "A stage variable overrides used for the canary release deployment. They can override existing stage variables or add new stage variables for the canary release deployment. These stage variables are represented as a string-to-string map between stage variable names and their values." }, "useStageCache": { "type": "boolean", - "description": "Whether the canary deployment uses the stage cache." + "description": "A Boolean flag to indicate whether the canary release deployment uses the stage cache or not." } }, "type": "object" }, "aws-native:apigateway:DeploymentMethodSetting": { + "description": "The ``MethodSetting`` property type configures settings for all methods in a stage.\n The ``MethodSettings`` property of the [Amazon API Gateway Deployment StageDescription](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html) property type contains a list of ``MethodSetting`` property types.", "properties": { "cacheDataEncrypted": { "type": "boolean", - "description": "Indicates whether the cached responses are encrypted" + "description": "Specifies whether the cached responses are encrypted." }, "cacheTtlInSeconds": { "type": "integer", - "description": "The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. " + "description": "Specifies the time to live (TTL), in seconds, for cached responses. The higher the TTL, the longer the response will be cached." }, "cachingEnabled": { "type": "boolean", - "description": "Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses." + "description": "Specifies whether responses should be cached and returned for requests. A cache cluster must be enabled on the stage for responses to be cached." }, "dataTraceEnabled": { "type": "boolean", - "description": "Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs. " + "description": "Specifies whether data trace logging is enabled for this method, which affects the log entries pushed to Amazon CloudWatch Logs. This can be useful to troubleshoot APIs, but can result in logging sensitive data. We recommend that you don't enable this option for production APIs." }, "httpMethod": { "type": "string", @@ -1664,28 +1668,29 @@ }, "loggingLevel": { "type": "string", - "description": "The logging level for this method. For valid values, see the loggingLevel property of the Stage resource in the Amazon API Gateway API Reference. " + "description": "Specifies the logging level for this method, which affects the log entries pushed to Amazon CloudWatch Logs. Valid values are ``OFF``, ``ERROR``, and ``INFO``. Choose ``ERROR`` to write only error-level entries to CloudWatch Logs, or choose ``INFO`` to include all ``ERROR`` events as well as extra informational events." }, "metricsEnabled": { "type": "boolean", - "description": "Indicates whether Amazon CloudWatch metrics are enabled for methods in the stage." + "description": "Specifies whether Amazon CloudWatch metrics are enabled for this method." }, "resourcePath": { "type": "string", - "description": "The resource path for this method. Forward slashes (/) are encoded as ~1 and the initial slash must include a forward slash. " + "description": "The resource path for this method. Forward slashes (``/``) are encoded as ``~1`` and the initial slash must include a forward slash. For example, the path value ``/resource/subresource`` must be encoded as ``/~1resource~1subresource``. To specify the root path, use only a slash (``/``)." }, "throttlingBurstLimit": { "type": "integer", - "description": "The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account." + "description": "Specifies the throttling burst limit." }, "throttlingRateLimit": { "type": "number", - "description": "The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account." + "description": "Specifies the throttling rate limit." } }, "type": "object" }, "aws-native:apigateway:DeploymentStageDescription": { + "description": "``StageDescription`` is a property of the [AWS::ApiGateway::Deployment](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-deployment.html) resource that configures a deployment stage.", "properties": { "accessLogSetting": { "$ref": "#/types/aws-native:apigateway:DeploymentAccessLogSetting", @@ -1693,23 +1698,23 @@ }, "cacheClusterEnabled": { "type": "boolean", - "description": "Indicates whether cache clustering is enabled for the stage." + "description": "Specifies whether a cache cluster is enabled for the stage." }, "cacheClusterSize": { "type": "string", - "description": "The size of the stage's cache cluster." + "description": "The size of the stage's cache cluster. For more information, see [cacheClusterSize](https://docs.aws.amazon.com/apigateway/latest/api/API_CreateStage.html#apigw-CreateStage-request-cacheClusterSize) in the *API Gateway API Reference*." }, "cacheDataEncrypted": { "type": "boolean", - "description": "The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. " + "description": "Indicates whether the cached responses are encrypted." }, "cacheTtlInSeconds": { "type": "integer", - "description": "The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. " + "description": "The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses." }, "cachingEnabled": { "type": "boolean", - "description": "Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses." + "description": "Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses. For more information, see [Enable API Gateway Caching in a Stage to Enhance API Performance](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html) in the *API Gateway Developer Guide*." }, "canarySetting": { "$ref": "#/types/aws-native:apigateway:DeploymentCanarySetting", @@ -1717,11 +1722,11 @@ }, "clientCertificateId": { "type": "string", - "description": "The identifier of the client certificate that API Gateway uses to call your integration endpoints in the stage. " + "description": "The identifier of the client certificate that API Gateway uses to call your integration endpoints in the stage." }, "dataTraceEnabled": { "type": "boolean", - "description": "Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs. " + "description": "Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs." }, "description": { "type": "string", @@ -1733,7 +1738,7 @@ }, "loggingLevel": { "type": "string", - "description": "The logging level for this method. For valid values, see the loggingLevel property of the Stage resource in the Amazon API Gateway API Reference. " + "description": "The logging level for this method. For valid values, see the ``loggingLevel`` property of the [MethodSetting](https://docs.aws.amazon.com/apigateway/latest/api/API_MethodSetting.html) resource in the *Amazon API Gateway API Reference*." }, "methodSettings": { "type": "array", @@ -1755,19 +1760,19 @@ }, "throttlingBurstLimit": { "type": "integer", - "description": "The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account." + "description": "The target request burst rate limit. This allows more requests through for a period of time than the target rate limit. For more information, see [Manage API Request Throttling](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-request-throttling.html) in the *API Gateway Developer Guide*." }, "throttlingRateLimit": { "type": "number", - "description": "The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account." + "description": "The target request steady-state rate limit. For more information, see [Manage API Request Throttling](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-request-throttling.html) in the *API Gateway Developer Guide*." }, "tracingEnabled": { "type": "boolean", - "description": "Specifies whether active tracing with X-ray is enabled for this stage." + "description": "Specifies whether active tracing with X-ray is enabled for this stage.\n For more information, see [Trace API Gateway API Execution with X-Ray](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-xray.html) in the *API Gateway Developer Guide*." }, "variables": { "$ref": "pulumi.json#/Any", - "description": "A map that defines the stage variables. Variable names must consist of alphanumeric characters, and the values must match the following regular expression: [A-Za-z0-9-._~:/?#\u0026=,]+. " + "description": "A map that defines the stage variables. Variable names must consist of alphanumeric characters, and the values must match the following regular expression: ``[A-Za-z0-9-._~:/?#\u0026=,]+``." } }, "type": "object" @@ -1790,32 +1795,33 @@ ] }, "aws-native:apigateway:DocumentationPartLocation": { + "description": "The ``Location`` property specifies the location of the Amazon API Gateway API entity that the documentation applies to. ``Location`` is a property of the [AWS::ApiGateway::DocumentationPart](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationpart.html) resource.\n For more information about each property, including constraints and valid values, see [DocumentationPart](https://docs.aws.amazon.com/apigateway/latest/api/API_DocumentationPartLocation.html) in the *Amazon API Gateway REST API Reference*.", "properties": { "method": { "type": "string", - "description": "The HTTP verb of a method." + "description": "The HTTP verb of a method. It is a valid field for the API entity types of ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``*`` for any method. When an applicable child entity inherits the content of an entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``method`` attribute must match that of the parent entity exactly." }, "name": { "type": "string", - "description": "The name of the targeted API entity." + "description": "The name of the targeted API entity. It is a valid and required field for the API entity types of ``AUTHORIZER``, ``MODEL``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY`` and ``RESPONSE_HEADER``. It is an invalid field for any other entity type." }, "path": { "type": "string", - "description": "The URL path of the target." + "description": "The URL path of the target. It is a valid field for the API entity types of ``RESOURCE``, ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``/`` for the root resource. When an applicable child entity inherits the content of another entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``path`` attribute must match that of the parent entity as a prefix." }, "statusCode": { "type": "string", - "description": "The HTTP status code of a response." + "description": "The HTTP status code of a response. It is a valid field for the API entity types of ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``*`` for any status code. When an applicable child entity inherits the content of an entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``statusCode`` attribute must match that of the parent entity exactly." }, "type": { "$ref": "#/types/aws-native:apigateway:DocumentationPartLocationType", - "description": "The type of API entity that the documentation content applies to." + "description": "The type of API entity to which the documentation content applies. Valid values are ``API``, ``AUTHORIZER``, ``MODEL``, ``RESOURCE``, ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. Content inheritance does not apply to any entity of the ``API``, ``AUTHORIZER``, ``METHOD``, ``MODEL``, ``REQUEST_BODY``, or ``RESOURCE`` type." } }, "type": "object" }, "aws-native:apigateway:DocumentationPartLocationType": { - "description": "The type of API entity that the documentation content applies to.", + "description": "The type of API entity to which the documentation content applies. Valid values are ``API``, ``AUTHORIZER``, ``MODEL``, ``RESOURCE``, ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. Content inheritance does not apply to any entity of the ``API``, ``AUTHORIZER``, ``METHOD``, ``MODEL``, ``REQUEST_BODY``, or ``RESOURCE`` type.", "type": "string", "enum": [ { @@ -1902,7 +1908,7 @@ "type": "object" }, "aws-native:apigateway:MethodAuthorizationType": { - "description": "The method's authorization type.", + "description": "The method's authorization type. This parameter is required. For valid values, see [Method](https://docs.aws.amazon.com/apigateway/latest/api/API_Method.html) in the *API Gateway API Reference*.\n If you specify the ``AuthorizerId`` property, specify ``CUSTOM`` or ``COGNITO_USER_POOLS`` for this property.", "type": "string", "enum": [ { @@ -1924,68 +1930,69 @@ ] }, "aws-native:apigateway:MethodIntegration": { + "description": "``Integration`` is a property of the [AWS::ApiGateway::Method](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html) resource that specifies information about the target backend that a method calls.", "properties": { "cacheKeyParameters": { "type": "array", "items": { "type": "string" }, - "description": "A list of request parameters whose values API Gateway caches." + "description": "A list of request parameters whose values API Gateway caches. To be valid values for ``cacheKeyParameters``, these parameters must also be specified for Method ``requestParameters``." }, "cacheNamespace": { "type": "string", - "description": "An API-specific tag group of related cached parameters." + "description": "Specifies a group of related cached parameters. By default, API Gateway uses the resource ID as the ``cacheNamespace``. You can specify the same ``cacheNamespace`` across resources to return the same cached data for requests to different resources." }, "connectionId": { "type": "string", - "description": "The ID of the VpcLink used for the integration when connectionType=VPC_LINK, otherwise undefined." + "description": "The ID of the VpcLink used for the integration when ``connectionType=VPC_LINK`` and undefined, otherwise." }, "connectionType": { "$ref": "#/types/aws-native:apigateway:MethodIntegrationConnectionType", - "description": "The type of the network connection to the integration endpoint." + "description": "The type of the network connection to the integration endpoint. The valid value is ``INTERNET`` for connections through the public routable internet or ``VPC_LINK`` for private connections between API Gateway and a network load balancer in a VPC. The default value is ``INTERNET``." }, "contentHandling": { "$ref": "#/types/aws-native:apigateway:MethodIntegrationContentHandling", - "description": "Specifies how to handle request payload content type conversions." + "description": "Specifies how to handle request payload content type conversions. Supported values are ``CONVERT_TO_BINARY`` and ``CONVERT_TO_TEXT``, with the following behaviors:\n If this property is not defined, the request payload will be passed through from the method request to integration request without modification, provided that the ``passthroughBehavior`` is configured to support payload pass-through." }, "credentials": { "type": "string", - "description": "The credentials that are required for the integration." + "description": "Specifies the credentials required for the integration, if any. For AWS integrations, three options are available. To specify an IAM Role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To require that the caller's identity be passed through from the request, specify the string ``arn:aws:iam::\\*:user/\\*``. To use resource-based permissions on supported AWS services, specify null." }, "integrationHttpMethod": { "type": "string", - "description": "The integration's HTTP method type." + "description": "Specifies the integration's HTTP method type. For the Type property, if you specify ``MOCK``, this property is optional. For Lambda integrations, you must set the integration method to ``POST``. For all other types, you must specify this property." }, "integrationResponses": { "type": "array", "items": { "$ref": "#/types/aws-native:apigateway:MethodIntegrationResponse" }, - "description": "The response that API Gateway provides after a method's backend completes processing a request." + "description": "Specifies the integration's responses." }, "passthroughBehavior": { "$ref": "#/types/aws-native:apigateway:MethodIntegrationPassthroughBehavior", - "description": "Indicates when API Gateway passes requests to the targeted backend." + "description": "Specifies how the method request body of an unmapped content type will be passed through the integration request to the back end without transformation. A content type is unmapped if no mapping template is defined in the integration or the content type does not match any of the mapped content types, as specified in ``requestTemplates``. The valid value is one of the following: ``WHEN_NO_MATCH``: passes the method request body through the integration request to the back end without transformation when the method request content type does not match any content type associated with the mapping templates defined in the integration request. ``WHEN_NO_TEMPLATES``: passes the method request body through the integration request to the back end without transformation when no mapping template is defined in the integration request. If a template is defined when this option is selected, the method request of an unmapped content-type will be rejected with an HTTP 415 Unsupported Media Type response. ``NEVER``: rejects the method request with an HTTP 415 Unsupported Media Type response when either the method request content type does not match any content type associated with the mapping templates defined in the integration request or no mapping template is defined in the integration request." }, "requestParameters": { "$ref": "pulumi.json#/Any", - "description": "The request parameters that API Gateway sends with the backend request." + "description": "A key-value map specifying request parameters that are passed from the method request to the back end. The key is an integration request parameter name and the associated value is a method request parameter value or static value that must be enclosed within single quotes and pre-encoded as required by the back end. The method request parameter value must match the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and ``name`` must be a valid and unique method request parameter name." }, "requestTemplates": { "$ref": "pulumi.json#/Any", - "description": "A map of Apache Velocity templates that are applied on the request payload." + "description": "Represents a map of Velocity templates that are applied on the request payload based on the value of the Content-Type header sent by the client. The content type value is the key in this map, and the template (as a String) is the value." }, "timeoutInMillis": { "type": "integer", - "description": "Custom timeout between 50 and 29,000 milliseconds." + "description": "Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds or 29 seconds." }, "type": { "$ref": "#/types/aws-native:apigateway:MethodIntegrationType", - "description": "The type of backend that your method is running." + "description": "Specifies an API method integration type. The valid value is one of the following:\n For the HTTP and HTTP proxy integrations, each integration can specify a protocol (``http/https``), port and path. Standard 80 and 443 ports are supported as well as custom ports above 1024. An HTTP or HTTP proxy integration with a ``connectionType`` of ``VPC_LINK`` is referred to as a private integration and uses a VpcLink to connect API Gateway to a network load balancer of a VPC." }, "uri": { "type": "string", - "description": "The Uniform Resource Identifier (URI) for the integration." + "description": "Specifies Uniform Resource Identifier (URI) of the integration endpoint.\n For ``HTTP`` or ``HTTP_PROXY`` integrations, the URI must be a fully formed, encoded HTTP(S) URL according to the RFC-3986 specification for standard integrations. If ``connectionType`` is ``VPC_LINK`` specify the Network Load Balancer DNS name. For ``AWS`` or ``AWS_PROXY`` integrations, the URI is of the form ``arn:aws:apigateway:{region}:{subdomain.service|service}:path|action/{service_api}``. Here, {Region} is the API Gateway region (e.g., us-east-1); {service} is the name of the integrated AWS service (e.g., s3); and {subdomain} is a designated subdomain supported by certain AWS service for fast host-name lookup. action can be used for an AWS service action-based API, using an Action={name}\u0026{p1}={v1}\u0026p2={v2}... query string. The ensuing {service_api} refers to a supported action {name} plus any required input parameters. Alternatively, path can be used for an AWS service path-based API. The ensuing service_api refers to the path to an AWS service resource, including the region of the integrated AWS service, if applicable. For example, for integration with the S3 API of GetObject, the uri can be either ``arn:aws:apigateway:us-west-2:s3:action/GetObject\u0026Bucket={bucket}\u0026Key={key}`` or ``arn:aws:apigateway:us-west-2:s3:path/{bucket}/{key}``" } }, "type": "object", @@ -1994,7 +2001,7 @@ ] }, "aws-native:apigateway:MethodIntegrationConnectionType": { - "description": "The type of the network connection to the integration endpoint.", + "description": "The type of the network connection to the integration endpoint. The valid value is ``INTERNET`` for connections through the public routable internet or ``VPC_LINK`` for private connections between API Gateway and a network load balancer in a VPC. The default value is ``INTERNET``.", "type": "string", "enum": [ { @@ -2008,7 +2015,7 @@ ] }, "aws-native:apigateway:MethodIntegrationContentHandling": { - "description": "Specifies how to handle request payload content type conversions.", + "description": "Specifies how to handle request payload content type conversions. Supported values are ``CONVERT_TO_BINARY`` and ``CONVERT_TO_TEXT``, with the following behaviors:\n If this property is not defined, the request payload will be passed through from the method request to integration request without modification, provided that the ``passthroughBehavior`` is configured to support payload pass-through.", "type": "string", "enum": [ { @@ -2022,7 +2029,7 @@ ] }, "aws-native:apigateway:MethodIntegrationPassthroughBehavior": { - "description": "Indicates when API Gateway passes requests to the targeted backend.", + "description": "Specifies how the method request body of an unmapped content type will be passed through the integration request to the back end without transformation. A content type is unmapped if no mapping template is defined in the integration or the content type does not match any of the mapped content types, as specified in ``requestTemplates``. The valid value is one of the following: ``WHEN_NO_MATCH``: passes the method request body through the integration request to the back end without transformation when the method request content type does not match any content type associated with the mapping templates defined in the integration request. ``WHEN_NO_TEMPLATES``: passes the method request body through the integration request to the back end without transformation when no mapping template is defined in the integration request. If a template is defined when this option is selected, the method request of an unmapped content-type will be rejected with an HTTP 415 Unsupported Media Type response. ``NEVER``: rejects the method request with an HTTP 415 Unsupported Media Type response when either the method request content type does not match any content type associated with the mapping templates defined in the integration request or no mapping template is defined in the integration request.", "type": "string", "enum": [ { @@ -2040,26 +2047,27 @@ ] }, "aws-native:apigateway:MethodIntegrationResponse": { + "description": "``IntegrationResponse`` is a property of the [Amazon API Gateway Method Integration](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html) property type that specifies the response that API Gateway sends after a method's backend finishes processing a request.", "properties": { "contentHandling": { "$ref": "#/types/aws-native:apigateway:MethodIntegrationResponseContentHandling", - "description": "Specifies how to handle request payload content type conversions." + "description": "Specifies how to handle response payload content type conversions. Supported values are ``CONVERT_TO_BINARY`` and ``CONVERT_TO_TEXT``, with the following behaviors:\n If this property is not defined, the response payload will be passed through from the integration response to the method response without modification." }, "responseParameters": { "$ref": "pulumi.json#/Any", - "description": "The response parameters from the backend response that API Gateway sends to the method response." + "description": "A key-value map specifying response parameters that are passed to the method response from the back end. The key is a method response header parameter name and the mapped value is an integration response header value, a static value enclosed within a pair of single quotes, or a JSON expression from the integration response body. The mapping key must match the pattern of ``method.response.header.{name}``, where ``name`` is a valid and unique header name. The mapped non-static value must match the pattern of ``integration.response.header.{name}`` or ``integration.response.body.{JSON-expression}``, where ``name`` is a valid and unique response header name and ``JSON-expression`` is a valid JSON expression without the ``$`` prefix." }, "responseTemplates": { "$ref": "pulumi.json#/Any", - "description": "The templates that are used to transform the integration response body. Specify templates as key-value pairs (string-to-string mappings), with a content type as the key and a template as the value." + "description": "Specifies the templates used to transform the integration response body. Response templates are represented as a key/value map, with a content-type as the key and a template as the value." }, "selectionPattern": { "type": "string", - "description": "A regular expression that specifies which error strings or status codes from the backend map to the integration response." + "description": "Specifies the regular expression (regex) pattern used to choose an integration response based on the response from the back end. For example, if the success response returns nothing and the error response returns some string, you could use the ``.+`` regex to match error response. However, make sure that the error response does not contain any newline (``\\n``) character in such cases. If the back end is an LAMlong function, the LAMlong function error header is matched. For all other HTTP and AWS back ends, the HTTP status code is matched." }, "statusCode": { "type": "string", - "description": "The status code that API Gateway uses to map the integration response to a MethodResponse status code." + "description": "Specifies the status code that is used to map the integration response to an existing MethodResponse." } }, "type": "object", @@ -2068,7 +2076,7 @@ ] }, "aws-native:apigateway:MethodIntegrationResponseContentHandling": { - "description": "Specifies how to handle request payload content type conversions.", + "description": "Specifies how to handle response payload content type conversions. Supported values are ``CONVERT_TO_BINARY`` and ``CONVERT_TO_TEXT``, with the following behaviors:\n If this property is not defined, the response payload will be passed through from the integration response to the method response without modification.", "type": "string", "enum": [ { @@ -2082,7 +2090,7 @@ ] }, "aws-native:apigateway:MethodIntegrationType": { - "description": "The type of backend that your method is running.", + "description": "Specifies an API method integration type. The valid value is one of the following:\n For the HTTP and HTTP proxy integrations, each integration can specify a protocol (``http/https``), port and path. Standard 80 and 443 ports are supported as well as custom ports above 1024. An HTTP or HTTP proxy integration with a ``connectionType`` of ``VPC_LINK`` is referred to as a private integration and uses a VpcLink to connect API Gateway to a network load balancer of a VPC.", "type": "string", "enum": [ { @@ -2108,18 +2116,19 @@ ] }, "aws-native:apigateway:MethodResponse": { + "description": "Represents a method response of a given HTTP status code returned to the client. The method response is passed from the back end through the associated integration response that can be transformed using a mapping template.", "properties": { "responseModels": { "$ref": "pulumi.json#/Any", - "description": "The resources used for the response's content type. Specify response models as key-value pairs (string-to-string maps), with a content type as the key and a Model resource name as the value." + "description": "Specifies the Model resources used for the response's content-type. Response models are represented as a key/value map, with a content-type as the key and a Model name as the value." }, "responseParameters": { "$ref": "pulumi.json#/Any", - "description": "Response parameters that API Gateway sends to the client that called a method. Specify response parameters as key-value pairs (string-to-Boolean maps), with a destination as the key and a Boolean as the value." + "description": "A key-value map specifying required or optional response parameters that API Gateway can send back to the caller. A key defines a method response header and the value specifies whether the associated method response header is required or not. The expression of the key must match the pattern ``method.response.header.{name}``, where ``name`` is a valid and unique header name. API Gateway passes certain integration response data to the method response headers specified here according to the mapping you prescribe in the API's IntegrationResponse. The integration response data that can be mapped include an integration response header expressed in ``integration.response.header.{name}``, a static value enclosed within a pair of single quotes (e.g., ``'application/json'``), or a JSON expression from the back-end response payload in the form of ``integration.response.body.{JSON-expression}``, where ``JSON-expression`` is a valid JSON expression without the ``$`` prefix.)" }, "statusCode": { "type": "string", - "description": "The method response's status code, which you map to an IntegrationResponse." + "description": "The method response's status code." } }, "type": "object", @@ -2128,35 +2137,43 @@ ] }, "aws-native:apigateway:RestApiEndpointConfiguration": { + "description": "The ``EndpointConfiguration`` property type specifies the endpoint types of a REST API.\n ``EndpointConfiguration`` is a property of the [AWS::ApiGateway::RestApi](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html) resource.", "properties": { "types": { "type": "array", "items": { "type": "string" - } + }, + "description": "A list of endpoint types of an API (RestApi) or its custom domain name (DomainName). For an edge-optimized API and its custom domain name, the endpoint type is ``\"EDGE\"``. For a regional API and its custom domain name, the endpoint type is ``REGIONAL``. For a private API, the endpoint type is ``PRIVATE``." }, "vpcEndpointIds": { "type": "array", "items": { "type": "string" - } + }, + "description": "A list of VpcEndpointIds of an API (RestApi) against which to create Route53 ALIASes. It is only supported for ``PRIVATE`` endpoint type." } }, "type": "object" }, "aws-native:apigateway:RestApiS3Location": { + "description": "``S3Location`` is a property of the [AWS::ApiGateway::RestApi](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html) resource that specifies the Amazon S3 location of a OpenAPI (formerly Swagger) file that defines a set of RESTful APIs in JSON or YAML.\n On January 1, 2016, the Swagger Specification was donated to the [OpenAPI initiative](https://docs.aws.amazon.com/https://www.openapis.org/), becoming the foundation of the OpenAPI Specification.", "properties": { "bucket": { - "type": "string" + "type": "string", + "description": "The name of the S3 bucket where the OpenAPI file is stored." }, "eTag": { - "type": "string" + "type": "string", + "description": "The Amazon S3 ETag (a file checksum) of the OpenAPI file. If you don't specify a value, API Gateway skips ETag validation of your OpenAPI file." }, "key": { - "type": "string" + "type": "string", + "description": "The file name of the OpenAPI file (Amazon S3 object name)." }, "version": { - "type": "string" + "type": "string", + "description": "For versioning-enabled buckets, a specific version of the OpenAPI file." } }, "type": "object" @@ -2177,29 +2194,29 @@ ] }, "aws-native:apigateway:StageAccessLogSetting": { - "description": "Specifies settings for logging access in this stage.", + "description": "The ``AccessLogSetting`` property type specifies settings for logging access in this stage.\n ``AccessLogSetting`` is a property of the [AWS::ApiGateway::Stage](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html) resource.", "properties": { "destinationArn": { "type": "string", - "description": "The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with amazon-apigateway-. This parameter is required to enable access logging." + "description": "The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with ``amazon-apigateway-``. This parameter is required to enable access logging." }, "format": { "type": "string", - "description": "A single line format of the access logs of data, as specified by selected $context variables (https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html#context-variable-reference). The format must include at least $context.requestId. This parameter is required to enable access logging." + "description": "A single line format of the access logs of data, as specified by selected [$context variables](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html#context-variable-reference). The format must include at least ``$context.requestId``. This parameter is required to enable access logging." } }, "type": "object" }, "aws-native:apigateway:StageCanarySetting": { - "description": "Specifies settings for the canary deployment in this stage.", + "description": "Configuration settings of a canary deployment.", "properties": { "deploymentId": { "type": "string", - "description": "The identifier of the deployment that the stage points to." + "description": "The ID of the canary deployment." }, "percentTraffic": { "type": "number", - "description": "The percentage (0-100) of traffic diverted to a canary deployment." + "description": "The percent (0-100) of traffic diverted to a canary deployment." }, "stageVariableOverrides": { "$ref": "pulumi.json#/Any", @@ -2207,53 +2224,53 @@ }, "useStageCache": { "type": "boolean", - "description": "Whether the canary deployment uses the stage cache or not." + "description": "A Boolean flag to indicate whether the canary deployment uses the stage cache or not." } }, "type": "object" }, "aws-native:apigateway:StageMethodSetting": { - "description": "Configures settings for all methods in a stage.", + "description": "The ``MethodSetting`` property type configures settings for all methods in a stage.\n The ``MethodSettings`` property of the ``AWS::ApiGateway::Stage`` resource contains a list of ``MethodSetting`` property types.", "properties": { "cacheDataEncrypted": { "type": "boolean", - "description": "Indicates whether the cached responses are encrypted." + "description": "Specifies whether the cached responses are encrypted." }, "cacheTtlInSeconds": { "type": "integer", - "description": "The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses." + "description": "Specifies the time to live (TTL), in seconds, for cached responses. The higher the TTL, the longer the response will be cached." }, "cachingEnabled": { "type": "boolean", - "description": "Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses." + "description": "Specifies whether responses should be cached and returned for requests. A cache cluster must be enabled on the stage for responses to be cached." }, "dataTraceEnabled": { "type": "boolean", - "description": "Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs." + "description": "Specifies whether data trace logging is enabled for this method, which affects the log entries pushed to Amazon CloudWatch Logs. This can be useful to troubleshoot APIs, but can result in logging sensitive data. We recommend that you don't enable this option for production APIs." }, "httpMethod": { "type": "string", - "description": "The HTTP method. You can use an asterisk (*) as a wildcard to apply method settings to multiple methods." + "description": "The HTTP method. To apply settings to multiple resources and methods, specify an asterisk (``*``) for the ``HttpMethod`` and ``/*`` for the ``ResourcePath``. This parameter is required when you specify a ``MethodSetting``." }, "loggingLevel": { "type": "string", - "description": "The logging level for this method. For valid values, see the loggingLevel property of the Stage (https://docs.aws.amazon.com/apigateway/api-reference/resource/stage/#loggingLevel) resource in the Amazon API Gateway API Reference." + "description": "Specifies the logging level for this method, which affects the log entries pushed to Amazon CloudWatch Logs. Valid values are ``OFF``, ``ERROR``, and ``INFO``. Choose ``ERROR`` to write only error-level entries to CloudWatch Logs, or choose ``INFO`` to include all ``ERROR`` events as well as extra informational events." }, "metricsEnabled": { "type": "boolean", - "description": "Indicates whether Amazon CloudWatch metrics are enabled for methods in the stage." + "description": "Specifies whether Amazon CloudWatch metrics are enabled for this method." }, "resourcePath": { "type": "string", - "description": "The resource path for this method. Forward slashes (/) are encoded as ~1 and the initial slash must include a forward slash. For example, the path value /resource/subresource must be encoded as /~1resource~1subresource. To specify the root path, use only a slash (/). You can use an asterisk (*) as a wildcard to apply method settings to multiple methods." + "description": "The resource path for this method. Forward slashes (``/``) are encoded as ``~1`` and the initial slash must include a forward slash. For example, the path value ``/resource/subresource`` must be encoded as ``/~1resource~1subresource``. To specify the root path, use only a slash (``/``). To apply settings to multiple resources and methods, specify an asterisk (``*``) for the ``HttpMethod`` and ``/*`` for the ``ResourcePath``. This parameter is required when you specify a ``MethodSetting``." }, "throttlingBurstLimit": { "type": "integer", - "description": "The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account." + "description": "Specifies the throttling burst limit." }, "throttlingRateLimit": { "type": "number", - "description": "The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account." + "description": "Specifies the throttling rate limit." } }, "type": "object" @@ -2294,7 +2311,7 @@ "type": "object" }, "aws-native:apigateway:UsagePlanKeyKeyType": { - "description": "The type of usage plan key. Currently, the only valid key type is API_KEY.", + "description": "The type of a UsagePlanKey resource for a plan customer.", "type": "string", "enum": [ { @@ -2486,6 +2503,24 @@ "aws-native:apigatewayv2:RouteResponseRouteParameters": { "type": "object" }, + "aws-native:appconfig:ApplicationTags": { + "description": "Metadata to assign to the application. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define.", + "properties": { + "key": { + "type": "string", + "description": "The key-value string map. The valid character set is [a-zA-Z1-9+-=._:/]. The tag key can be up to 128 characters and must not start with aws:." + }, + "value": { + "type": "string", + "description": "The tag value can be up to 256 characters." + } + }, + "type": "object", + "required": [ + "key", + "value" + ] + }, "aws-native:appconfig:ExtensionAssociationTag": { "description": "A key-value pair to associate with a resource.", "properties": { @@ -7463,6 +7498,54 @@ }, "type": "object" }, + "aws-native:appsync:FunctionConfigurationAppSyncRuntime": { + "description": "Describes a runtime used by an AWS AppSync pipeline resolver or AWS AppSync function. Specifies the name and version of the runtime to use. Note that if a runtime is specified, code must also be specified.", + "properties": { + "name": { + "type": "string", + "description": "The name of the runtime to use. Currently, the only allowed value is APPSYNC_JS." + }, + "runtimeVersion": { + "type": "string", + "description": "The version of the runtime to use. Currently, the only allowed version is 1.0.0." + } + }, + "type": "object", + "required": [ + "name", + "runtimeVersion" + ] + }, + "aws-native:appsync:FunctionConfigurationLambdaConflictHandlerConfig": { + "description": "The LambdaConflictHandlerConfig when configuring LAMBDA as the Conflict Handler.", + "properties": { + "lambdaConflictHandlerArn": { + "type": "string", + "description": "The Amazon Resource Name (ARN) for the Lambda function to use as the Conflict Handler." + } + }, + "type": "object" + }, + "aws-native:appsync:FunctionConfigurationSyncConfig": { + "description": "Describes a Sync configuration for a resolver. Specifies which Conflict Detection strategy and Resolution strategy to use when the resolver is invoked.", + "properties": { + "conflictDetection": { + "type": "string", + "description": "The Conflict Detection strategy to use." + }, + "conflictHandler": { + "type": "string", + "description": "The Conflict Resolution strategy to perform in the event of a conflict." + }, + "lambdaConflictHandlerConfig": { + "$ref": "#/types/aws-native:appsync:FunctionConfigurationLambdaConflictHandlerConfig" + } + }, + "type": "object", + "required": [ + "conflictDetection" + ] + }, "aws-native:appsync:SourceApiAssociationConfig": { "properties": { "mergeType": { @@ -13492,11 +13575,7 @@ "type": "boolean" } }, - "type": "object", - "required": [ - "clientId", - "providerName" - ] + "type": "object" }, "aws-native:cognito:IdentityPoolCognitoStreams": { "properties": { @@ -13526,24 +13605,6 @@ }, "type": "object" }, - "aws-native:cognito:IdentityPoolTag": { - "description": "A key-value pair to associate with a resource.", - "properties": { - "key": { - "type": "string", - "description": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -." - }, - "value": { - "type": "string", - "description": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -." - } - }, - "type": "object", - "required": [ - "key", - "value" - ] - }, "aws-native:cognito:LogDeliveryConfigurationCloudWatchLogsConfiguration": { "properties": { "logGroupArn": { @@ -13566,6 +13627,254 @@ }, "type": "object" }, + "aws-native:cognito:UserPoolAccountRecoverySetting": { + "properties": { + "recoveryMechanisms": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:cognito:UserPoolRecoveryOption" + } + } + }, + "type": "object" + }, + "aws-native:cognito:UserPoolAddOns": { + "properties": { + "advancedSecurityMode": { + "type": "string" + } + }, + "type": "object" + }, + "aws-native:cognito:UserPoolAdminCreateUserConfig": { + "properties": { + "allowAdminCreateUserOnly": { + "type": "boolean" + }, + "inviteMessageTemplate": { + "$ref": "#/types/aws-native:cognito:UserPoolInviteMessageTemplate" + }, + "unusedAccountValidityDays": { + "type": "integer" + } + }, + "type": "object" + }, + "aws-native:cognito:UserPoolCustomEmailSender": { + "properties": { + "lambdaArn": { + "type": "string" + }, + "lambdaVersion": { + "type": "string" + } + }, + "type": "object" + }, + "aws-native:cognito:UserPoolCustomSmsSender": { + "properties": { + "lambdaArn": { + "type": "string" + }, + "lambdaVersion": { + "type": "string" + } + }, + "type": "object" + }, + "aws-native:cognito:UserPoolDeviceConfiguration": { + "properties": { + "challengeRequiredOnNewDevice": { + "type": "boolean" + }, + "deviceOnlyRememberedOnUserPrompt": { + "type": "boolean" + } + }, + "type": "object" + }, + "aws-native:cognito:UserPoolEmailConfiguration": { + "properties": { + "configurationSet": { + "type": "string" + }, + "emailSendingAccount": { + "type": "string" + }, + "from": { + "type": "string" + }, + "replyToEmailAddress": { + "type": "string" + }, + "sourceArn": { + "type": "string" + } + }, + "type": "object" + }, + "aws-native:cognito:UserPoolInviteMessageTemplate": { + "properties": { + "emailMessage": { + "type": "string" + }, + "emailSubject": { + "type": "string" + }, + "smsMessage": { + "type": "string" + } + }, + "type": "object" + }, + "aws-native:cognito:UserPoolLambdaConfig": { + "properties": { + "createAuthChallenge": { + "type": "string" + }, + "customEmailSender": { + "$ref": "#/types/aws-native:cognito:UserPoolCustomEmailSender" + }, + "customMessage": { + "type": "string" + }, + "customSmsSender": { + "$ref": "#/types/aws-native:cognito:UserPoolCustomSmsSender" + }, + "defineAuthChallenge": { + "type": "string" + }, + "kmsKeyId": { + "type": "string" + }, + "postAuthentication": { + "type": "string" + }, + "postConfirmation": { + "type": "string" + }, + "preAuthentication": { + "type": "string" + }, + "preSignUp": { + "type": "string" + }, + "preTokenGeneration": { + "type": "string" + }, + "userMigration": { + "type": "string" + }, + "verifyAuthChallengeResponse": { + "type": "string" + } + }, + "type": "object" + }, + "aws-native:cognito:UserPoolNumberAttributeConstraints": { + "properties": { + "maxValue": { + "type": "string" + }, + "minValue": { + "type": "string" + } + }, + "type": "object" + }, + "aws-native:cognito:UserPoolPasswordPolicy": { + "properties": { + "minimumLength": { + "type": "integer" + }, + "requireLowercase": { + "type": "boolean" + }, + "requireNumbers": { + "type": "boolean" + }, + "requireSymbols": { + "type": "boolean" + }, + "requireUppercase": { + "type": "boolean" + }, + "temporaryPasswordValidityDays": { + "type": "integer" + } + }, + "type": "object" + }, + "aws-native:cognito:UserPoolPolicies": { + "properties": { + "passwordPolicy": { + "$ref": "#/types/aws-native:cognito:UserPoolPasswordPolicy" + } + }, + "type": "object" + }, + "aws-native:cognito:UserPoolRecoveryOption": { + "properties": { + "name": { + "type": "string" + }, + "priority": { + "type": "integer" + } + }, + "type": "object" + }, + "aws-native:cognito:UserPoolSchemaAttribute": { + "properties": { + "attributeDataType": { + "type": "string" + }, + "developerOnlyAttribute": { + "type": "boolean" + }, + "mutable": { + "type": "boolean" + }, + "name": { + "type": "string" + }, + "numberAttributeConstraints": { + "$ref": "#/types/aws-native:cognito:UserPoolNumberAttributeConstraints" + }, + "required": { + "type": "boolean" + }, + "stringAttributeConstraints": { + "$ref": "#/types/aws-native:cognito:UserPoolStringAttributeConstraints" + } + }, + "type": "object" + }, + "aws-native:cognito:UserPoolSmsConfiguration": { + "properties": { + "externalId": { + "type": "string" + }, + "snsCallerArn": { + "type": "string" + }, + "snsRegion": { + "type": "string" + } + }, + "type": "object" + }, + "aws-native:cognito:UserPoolStringAttributeConstraints": { + "properties": { + "maxLength": { + "type": "string" + }, + "minLength": { + "type": "string" + } + }, + "type": "object" + }, "aws-native:cognito:UserPoolUserAttributeType": { "properties": { "name": { @@ -13577,6 +13886,51 @@ }, "type": "object" }, + "aws-native:cognito:UserPoolUserAttributeUpdateSettings": { + "properties": { + "attributesRequireVerificationBeforeUpdate": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "type": "object", + "required": [ + "attributesRequireVerificationBeforeUpdate" + ] + }, + "aws-native:cognito:UserPoolUsernameConfiguration": { + "properties": { + "caseSensitive": { + "type": "boolean" + } + }, + "type": "object" + }, + "aws-native:cognito:UserPoolVerificationMessageTemplate": { + "properties": { + "defaultEmailOption": { + "type": "string" + }, + "emailMessage": { + "type": "string" + }, + "emailMessageByLink": { + "type": "string" + }, + "emailSubject": { + "type": "string" + }, + "emailSubjectByLink": { + "type": "string" + }, + "smsMessage": { + "type": "string" + } + }, + "type": "object" + }, "aws-native:comprehend:DocumentClassifierAugmentedManifestsListItem": { "properties": { "attributeNames": { @@ -15845,34 +16199,6 @@ }, "type": "object" }, - "aws-native:connect:ContactFlowModuleState": { - "description": "The state of the contact flow module.", - "type": "string", - "enum": [ - { - "name": "Active", - "value": "ACTIVE" - }, - { - "name": "Archived", - "value": "ARCHIVED" - } - ] - }, - "aws-native:connect:ContactFlowModuleStatus": { - "description": "The status of the contact flow module.", - "type": "string", - "enum": [ - { - "name": "Published", - "value": "PUBLISHED" - }, - { - "name": "Saved", - "value": "SAVED" - } - ] - }, "aws-native:connect:ContactFlowModuleTag": { "description": "A key-value pair to associate with a resource.", "properties": { @@ -17940,6 +18266,321 @@ "uri" ] }, + "aws-native:customerprofiles:DomainAttributeTypesSelector": { + "description": "Configures information about the AttributeTypesSelector where the rule-based identity resolution uses to match profiles.", + "properties": { + "address": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The Address type. You can choose from Address, BusinessAddress, MaillingAddress, and ShippingAddress. You only can use the Address type in the MatchingRule. For example, if you want to match profile based on BusinessAddress.City or MaillingAddress.City, you need to choose the BusinessAddress and the MaillingAddress to represent the Address type and specify the Address.City on the matching rule." + }, + "attributeMatchingModel": { + "$ref": "#/types/aws-native:customerprofiles:DomainAttributeTypesSelectorAttributeMatchingModel", + "description": "Configures the AttributeMatchingModel, you can either choose ONE_TO_ONE or MANY_TO_MANY." + }, + "emailAddress": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The Email type. You can choose from EmailAddress, BusinessEmailAddress and PersonalEmailAddress. You only can use the EmailAddress type in the MatchingRule. For example, if you want to match profile based on PersonalEmailAddress or BusinessEmailAddress, you need to choose the PersonalEmailAddress and the BusinessEmailAddress to represent the EmailAddress type and only specify the EmailAddress on the matching rule." + }, + "phoneNumber": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The PhoneNumber type. You can choose from PhoneNumber, HomePhoneNumber, and MobilePhoneNumber. You only can use the PhoneNumber type in the MatchingRule. For example, if you want to match a profile based on Phone or HomePhone, you need to choose the Phone and the HomePhone to represent the PhoneNumber type and only specify the PhoneNumber on the matching rule." + } + }, + "type": "object", + "required": [ + "attributeMatchingModel" + ] + }, + "aws-native:customerprofiles:DomainAttributeTypesSelectorAttributeMatchingModel": { + "description": "Configures the AttributeMatchingModel, you can either choose ONE_TO_ONE or MANY_TO_MANY.", + "type": "string", + "enum": [ + { + "name": "OneToOne", + "value": "ONE_TO_ONE" + }, + { + "name": "ManyToMany", + "value": "MANY_TO_MANY" + } + ] + }, + "aws-native:customerprofiles:DomainAutoMerging": { + "description": "Configuration information about the auto-merging process.", + "properties": { + "conflictResolution": { + "$ref": "#/types/aws-native:customerprofiles:DomainConflictResolution" + }, + "consolidation": { + "$ref": "#/types/aws-native:customerprofiles:DomainConsolidation" + }, + "enabled": { + "type": "boolean", + "description": "The flag that enables the auto-merging of duplicate profiles." + }, + "minAllowedConfidenceScoreForMerging": { + "type": "number", + "description": "A number between 0 and 1 that represents the minimum confidence score required for profiles within a matching group to be merged during the auto-merge process. A higher score means higher similarity required to merge profiles." + } + }, + "type": "object", + "required": [ + "enabled" + ] + }, + "aws-native:customerprofiles:DomainConflictResolution": { + "description": "How the auto-merging process should resolve conflicts between different profiles. For example, if Profile A and Profile B have the same FirstName and LastName (and that is the matching criteria), which EmailAddress should be used? ", + "properties": { + "conflictResolvingModel": { + "$ref": "#/types/aws-native:customerprofiles:DomainConflictResolutionConflictResolvingModel", + "description": "How the auto-merging process should resolve conflicts between different profiles." + }, + "sourceName": { + "type": "string", + "description": "The ObjectType name that is used to resolve profile merging conflicts when choosing SOURCE as the ConflictResolvingModel." + } + }, + "type": "object", + "required": [ + "conflictResolvingModel" + ] + }, + "aws-native:customerprofiles:DomainConflictResolutionConflictResolvingModel": { + "description": "How the auto-merging process should resolve conflicts between different profiles.", + "type": "string", + "enum": [ + { + "name": "Recency", + "value": "RECENCY" + }, + { + "name": "Source", + "value": "SOURCE" + } + ] + }, + "aws-native:customerprofiles:DomainConsolidation": { + "description": "A list of matching attributes that represent matching criteria. If two profiles meet at least one of the requirements in the matching attributes list, they will be merged.", + "properties": { + "matchingAttributesList": { + "type": "array", + "items": { + "type": "array", + "items": { + "type": "string" + } + }, + "description": "A list of matching criteria." + } + }, + "type": "object", + "required": [ + "matchingAttributesList" + ] + }, + "aws-native:customerprofiles:DomainExportingConfig": { + "description": "Configuration information for exporting Identity Resolution results, for example, to an S3 bucket.", + "properties": { + "s3Exporting": { + "$ref": "#/types/aws-native:customerprofiles:DomainS3ExportingConfig" + } + }, + "type": "object" + }, + "aws-native:customerprofiles:DomainJobSchedule": { + "description": "The day and time when do you want to start the Identity Resolution Job every week.", + "properties": { + "dayOfTheWeek": { + "$ref": "#/types/aws-native:customerprofiles:DomainJobScheduleDayOfTheWeek", + "description": "The day when the Identity Resolution Job should run every week." + }, + "time": { + "type": "string", + "description": "The time when the Identity Resolution Job should run every week." + } + }, + "type": "object", + "required": [ + "dayOfTheWeek", + "time" + ] + }, + "aws-native:customerprofiles:DomainJobScheduleDayOfTheWeek": { + "description": "The day when the Identity Resolution Job should run every week.", + "type": "string", + "enum": [ + { + "name": "Sunday", + "value": "SUNDAY" + }, + { + "name": "Monday", + "value": "MONDAY" + }, + { + "name": "Tuesday", + "value": "TUESDAY" + }, + { + "name": "Wednesday", + "value": "WEDNESDAY" + }, + { + "name": "Thursday", + "value": "THURSDAY" + }, + { + "name": "Friday", + "value": "FRIDAY" + }, + { + "name": "Saturday", + "value": "SATURDAY" + } + ] + }, + "aws-native:customerprofiles:DomainMatching": { + "description": "The process of matching duplicate profiles. If Matching = true, Amazon Connect Customer Profiles starts a weekly batch process called Identity Resolution Job. If you do not specify a date and time for Identity Resolution Job to run, by default it runs every Saturday at 12AM UTC to detect duplicate profiles in your domains. After the Identity Resolution Job completes, use the GetMatches API to return and review the results. Or, if you have configured ExportingConfig in the MatchingRequest, you can download the results from S3.", + "properties": { + "autoMerging": { + "$ref": "#/types/aws-native:customerprofiles:DomainAutoMerging" + }, + "enabled": { + "type": "boolean", + "description": "The flag that enables the matching process of duplicate profiles." + }, + "exportingConfig": { + "$ref": "#/types/aws-native:customerprofiles:DomainExportingConfig" + }, + "jobSchedule": { + "$ref": "#/types/aws-native:customerprofiles:DomainJobSchedule" + } + }, + "type": "object", + "required": [ + "enabled" + ] + }, + "aws-native:customerprofiles:DomainMatchingRule": { + "description": "Specifies how does the rule-based matching process should match profiles.", + "properties": { + "rule": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "type": "object", + "required": [ + "rule" + ] + }, + "aws-native:customerprofiles:DomainRuleBasedMatching": { + "description": "The process of matching duplicate profiles using the Rule-Based matching. If RuleBasedMatching = true, Amazon Connect Customer Profiles will start to match and merge your profiles according to your configuration in the RuleBasedMatchingRequest. You can use the ListRuleBasedMatches and GetSimilarProfiles API to return and review the results. Also, if you have configured ExportingConfig in the RuleBasedMatchingRequest, you can download the results from S3.", + "properties": { + "attributeTypesSelector": { + "$ref": "#/types/aws-native:customerprofiles:DomainAttributeTypesSelector" + }, + "conflictResolution": { + "$ref": "#/types/aws-native:customerprofiles:DomainConflictResolution" + }, + "enabled": { + "type": "boolean", + "description": "The flag that enables the rule-based matching process of duplicate profiles." + }, + "exportingConfig": { + "$ref": "#/types/aws-native:customerprofiles:DomainExportingConfig" + }, + "matchingRules": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:customerprofiles:DomainMatchingRule" + }, + "description": "Configures how the rule-based matching process should match profiles. You can have up to 15 MatchingRule in the MatchingRules." + }, + "maxAllowedRuleLevelForMatching": { + "type": "integer", + "description": "Indicates the maximum allowed rule level for matching." + }, + "maxAllowedRuleLevelForMerging": { + "type": "integer", + "description": "Indicates the maximum allowed rule level for merging." + }, + "status": { + "$ref": "#/types/aws-native:customerprofiles:DomainRuleBasedMatchingStatus" + } + }, + "type": "object", + "required": [ + "enabled" + ] + }, + "aws-native:customerprofiles:DomainRuleBasedMatchingStatus": { + "type": "string", + "enum": [ + { + "name": "Pending", + "value": "PENDING" + }, + { + "name": "InProgress", + "value": "IN_PROGRESS" + }, + { + "name": "Active", + "value": "ACTIVE" + } + ] + }, + "aws-native:customerprofiles:DomainS3ExportingConfig": { + "description": "The S3 location where Identity Resolution Jobs write result files.", + "properties": { + "s3BucketName": { + "type": "string", + "description": "The name of the S3 bucket where Identity Resolution Jobs write result files." + }, + "s3KeyName": { + "type": "string", + "description": "The S3 key name of the location where Identity Resolution Jobs write result files." + } + }, + "type": "object", + "required": [ + "s3BucketName" + ] + }, + "aws-native:customerprofiles:DomainStats": { + "description": "Usage-specific statistics about the domain.", + "properties": { + "meteringProfileCount": { + "type": "number", + "description": "The number of profiles that you are currently paying for in the domain. If you have more than 100 objects associated with a single profile, that profile counts as two profiles. If you have more than 200 objects, that profile counts as three, and so on." + }, + "objectCount": { + "type": "number", + "description": "The total number of objects in domain." + }, + "profileCount": { + "type": "number", + "description": "The total number of profiles currently in the domain." + }, + "totalSize": { + "type": "number", + "description": "The total size, in bytes, of all objects in the domain." + } + }, + "type": "object" + }, "aws-native:customerprofiles:DomainTag": { "properties": { "key": { @@ -31601,6 +32242,106 @@ "aws-native:emrserverless:ApplicationWorkerTypeSpecificationInputMap": { "type": "object" }, + "aws-native:entityresolution:IdMappingWorkflowIdMappingTechniques": { + "properties": { + "idMappingType": { + "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowIdMappingTechniquesIdMappingType" + }, + "providerProperties": { + "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowProviderProperties" + } + }, + "type": "object" + }, + "aws-native:entityresolution:IdMappingWorkflowIdMappingTechniquesIdMappingType": { + "type": "string", + "enum": [ + { + "name": "Provider", + "value": "PROVIDER" + } + ] + }, + "aws-native:entityresolution:IdMappingWorkflowInputSource": { + "properties": { + "inputSourceArn": { + "type": "string", + "description": "An Glue table ARN for the input source table" + }, + "schemaArn": { + "type": "string" + } + }, + "type": "object", + "required": [ + "inputSourceArn", + "schemaArn" + ] + }, + "aws-native:entityresolution:IdMappingWorkflowIntermediateSourceConfiguration": { + "properties": { + "intermediateS3Path": { + "type": "string", + "description": "The s3 path that would be used to stage the intermediate data being generated during workflow execution." + } + }, + "type": "object", + "required": [ + "intermediateS3Path" + ] + }, + "aws-native:entityresolution:IdMappingWorkflowOutputSource": { + "properties": { + "kmsArn": { + "type": "string" + }, + "outputS3Path": { + "type": "string", + "description": "The S3 path to which Entity Resolution will write the output table" + } + }, + "type": "object", + "required": [ + "outputS3Path" + ] + }, + "aws-native:entityresolution:IdMappingWorkflowProviderProperties": { + "properties": { + "intermediateSourceConfiguration": { + "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowIntermediateSourceConfiguration" + }, + "providerConfiguration": { + "$ref": "pulumi.json#/Any", + "description": "Additional Provider configuration that would be required for the provider service. The Configuration must be in JSON string format" + }, + "providerServiceArn": { + "type": "string", + "description": "Arn of the Provider Service being used." + } + }, + "type": "object", + "required": [ + "providerServiceArn" + ] + }, + "aws-native:entityresolution:IdMappingWorkflowTag": { + "description": "A key-value pair to associate with a resource", + "properties": { + "key": { + "type": "string", + "description": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -." + }, + "value": { + "type": "string", + "description": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -." + } + }, + "type": "object", + "required": [ + "key", + "value" + ] + }, "aws-native:entityresolution:MatchingWorkflowInputSource": { "properties": { "applyNormalization": { @@ -32468,12 +33209,6 @@ "sql": { "type": "string" }, - "sqls": { - "type": "array", - "items": { - "type": "string" - } - }, "statementName": { "type": "string" }, @@ -32566,20 +33301,6 @@ "messageGroupId" ] }, - "aws-native:events:RuleState": { - "description": "The state of the rule.", - "type": "string", - "enum": [ - { - "name": "Disabled", - "value": "DISABLED" - }, - { - "name": "Enabled", - "value": "ENABLED" - } - ] - }, "aws-native:events:RuleTag": { "properties": { "key": { @@ -34869,6 +35590,16 @@ } ] }, + "aws-native:gamelift:FleetInstanceRoleCredentialsProvider": { + "description": "Credentials provider implementation that loads credentials from the Amazon EC2 Instance Metadata Service.", + "type": "string", + "enum": [ + { + "name": "SharedCredentialFile", + "value": "SHARED_CREDENTIAL_FILE" + } + ] + }, "aws-native:gamelift:FleetIpPermission": { "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.", "properties": { @@ -36985,6 +37716,23 @@ "value" ] }, + "aws-native:iam:GroupPolicy": { + "properties": { + "policyDocument": { + "type": "string", + "description": "The policy document." + }, + "policyName": { + "type": "string", + "description": "The friendly name (not ARN) identifying the policy." + } + }, + "type": "object", + "required": [ + "policyDocument", + "policyName" + ] + }, "aws-native:iam:OidcProviderTag": { "description": "A key-value pair to associate with a resource.", "properties": { @@ -40964,6 +41712,21 @@ } ] }, + "aws-native:iot:PolicyTag": { + "properties": { + "key": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "type": "object", + "required": [ + "key", + "value" + ] + }, "aws-native:iot:PresignedUrlConfigProperties": { "description": "Configuration for pre-signed S3 URLs.", "properties": { @@ -59590,6 +60353,199 @@ }, "type": "object" }, + "aws-native:msk:ReplicatorAmazonMskCluster": { + "description": "Details of an Amazon MSK cluster.", + "properties": { + "mskClusterArn": { + "type": "string", + "description": "The ARN of an Amazon MSK cluster." + } + }, + "type": "object", + "required": [ + "mskClusterArn" + ] + }, + "aws-native:msk:ReplicatorConsumerGroupReplication": { + "description": "Configuration relating to consumer group replication.", + "properties": { + "consumerGroupsToExclude": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of regular expression patterns indicating the consumer groups that should not be replicated." + }, + "consumerGroupsToReplicate": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of regular expression patterns indicating the consumer groups to copy." + }, + "detectAndCopyNewConsumerGroups": { + "type": "boolean", + "description": "Whether to periodically check for new consumer groups." + }, + "synchroniseConsumerGroupOffsets": { + "type": "boolean", + "description": "Whether to periodically write the translated offsets to __consumer_offsets topic in target cluster." + } + }, + "type": "object", + "required": [ + "consumerGroupsToReplicate" + ] + }, + "aws-native:msk:ReplicatorKafkaCluster": { + "description": "Details of a Kafka cluster for replication.", + "properties": { + "amazonMskCluster": { + "$ref": "#/types/aws-native:msk:ReplicatorAmazonMskCluster", + "description": "Details of an Amazon MSK cluster. Exactly one of AmazonMskCluster is required." + }, + "vpcConfig": { + "$ref": "#/types/aws-native:msk:ReplicatorKafkaClusterClientVpcConfig", + "description": "Details of an Amazon VPC which has network connectivity to the Apache Kafka cluster." + } + }, + "type": "object", + "required": [ + "amazonMskCluster", + "vpcConfig" + ] + }, + "aws-native:msk:ReplicatorKafkaClusterClientVpcConfig": { + "description": "Details of an Amazon VPC which has network connectivity to the Kafka cluster.", + "properties": { + "securityGroupIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The AWS security groups to associate with the elastic network interfaces in order to specify what the replicator has access to. If a security group is not specified, the default security group associated with the VPC is used." + }, + "subnetIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of subnets to connect to in the virtual private cloud (VPC). AWS creates elastic network interfaces inside these subnets." + } + }, + "type": "object", + "required": [ + "subnetIds" + ] + }, + "aws-native:msk:ReplicatorReplicationInfo": { + "description": "Specifies configuration for replication between a source and target Kafka cluster.", + "properties": { + "consumerGroupReplication": { + "$ref": "#/types/aws-native:msk:ReplicatorConsumerGroupReplication", + "description": "Configuration relating to consumer group replication." + }, + "sourceKafkaClusterArn": { + "type": "string", + "description": "Amazon Resource Name of the source Kafka cluster." + }, + "targetCompressionType": { + "$ref": "#/types/aws-native:msk:ReplicatorReplicationInfoTargetCompressionType", + "description": "The type of compression to use writing records to target Kafka cluster." + }, + "targetKafkaClusterArn": { + "type": "string", + "description": "Amazon Resource Name of the target Kafka cluster." + }, + "topicReplication": { + "$ref": "#/types/aws-native:msk:ReplicatorTopicReplication", + "description": "Configuration relating to topic replication." + } + }, + "type": "object", + "required": [ + "consumerGroupReplication", + "sourceKafkaClusterArn", + "targetCompressionType", + "targetKafkaClusterArn", + "topicReplication" + ] + }, + "aws-native:msk:ReplicatorReplicationInfoTargetCompressionType": { + "description": "The type of compression to use writing records to target Kafka cluster.", + "type": "string", + "enum": [ + { + "name": "None", + "value": "NONE" + }, + { + "name": "Gzip", + "value": "GZIP" + }, + { + "name": "Snappy", + "value": "SNAPPY" + }, + { + "name": "Lz4", + "value": "LZ4" + }, + { + "name": "Zstd", + "value": "ZSTD" + } + ] + }, + "aws-native:msk:ReplicatorTag": { + "properties": { + "key": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "type": "object", + "required": [ + "key", + "value" + ] + }, + "aws-native:msk:ReplicatorTopicReplication": { + "properties": { + "copyAccessControlListsForTopics": { + "type": "boolean", + "description": "Whether to periodically configure remote topic ACLs to match their corresponding upstream topics." + }, + "copyTopicConfigurations": { + "type": "boolean", + "description": "Whether to periodically configure remote topics to match their corresponding upstream topics." + }, + "detectAndCopyNewTopics": { + "type": "boolean", + "description": "Whether to periodically check for new topics and partitions." + }, + "topicsToExclude": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of regular expression patterns indicating the topics that should not be replicated." + }, + "topicsToReplicate": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of regular expression patterns indicating the topics to copy." + } + }, + "type": "object", + "required": [ + "topicsToReplicate" + ] + }, "aws-native:msk:ServerlessClusterClientAuthentication": { "properties": { "sasl": { @@ -75547,6 +76503,30 @@ } ] }, + "aws-native:quicksight:AnalysisValidationStrategy": { + "properties": { + "mode": { + "$ref": "#/types/aws-native:quicksight:AnalysisValidationStrategyMode" + } + }, + "type": "object", + "required": [ + "mode" + ] + }, + "aws-native:quicksight:AnalysisValidationStrategyMode": { + "type": "string", + "enum": [ + { + "name": "Strict", + "value": "STRICT" + }, + { + "name": "Lenient", + "value": "LENIENT" + } + ] + }, "aws-native:quicksight:AnalysisValueWhenUnsetOption": { "type": "string", "enum": [ @@ -85877,6 +86857,30 @@ } ] }, + "aws-native:quicksight:DashboardValidationStrategy": { + "properties": { + "mode": { + "$ref": "#/types/aws-native:quicksight:DashboardValidationStrategyMode" + } + }, + "type": "object", + "required": [ + "mode" + ] + }, + "aws-native:quicksight:DashboardValidationStrategyMode": { + "type": "string", + "enum": [ + { + "name": "Strict", + "value": "STRICT" + }, + { + "name": "Lenient", + "value": "LENIENT" + } + ] + }, "aws-native:quicksight:DashboardValueWhenUnsetOption": { "type": "string", "enum": [ @@ -97575,6 +98579,30 @@ } ] }, + "aws-native:quicksight:TemplateValidationStrategy": { + "properties": { + "mode": { + "$ref": "#/types/aws-native:quicksight:TemplateValidationStrategyMode" + } + }, + "type": "object", + "required": [ + "mode" + ] + }, + "aws-native:quicksight:TemplateValidationStrategyMode": { + "type": "string", + "enum": [ + { + "name": "Strict", + "value": "STRICT" + }, + { + "name": "Lenient", + "value": "LENIENT" + } + ] + }, "aws-native:quicksight:TemplateValueWhenUnsetOption": { "type": "string", "enum": [ @@ -103482,11 +104510,9 @@ "type": "object" }, "aws-native:s3:BucketAbortIncompleteMultipartUpload": { - "description": "Specifies the days since the initiation of an incomplete multipart upload that Amazon S3 will wait before permanently removing all parts of the upload.", "properties": { "daysAfterInitiation": { - "type": "integer", - "description": "Specifies the number of days after which Amazon S3 aborts an incomplete multipart upload." + "type": "integer" } }, "type": "object", @@ -103497,8 +104523,7 @@ "aws-native:s3:BucketAccelerateConfiguration": { "properties": { "accelerationStatus": { - "$ref": "#/types/aws-native:s3:BucketAccelerateConfigurationAccelerationStatus", - "description": "Configures the transfer acceleration state for an Amazon S3 bucket." + "type": "string" } }, "type": "object", @@ -103506,60 +104531,7 @@ "accelerationStatus" ] }, - "aws-native:s3:BucketAccelerateConfigurationAccelerationStatus": { - "description": "Configures the transfer acceleration state for an Amazon S3 bucket.", - "type": "string", - "enum": [ - { - "name": "Enabled", - "value": "Enabled" - }, - { - "name": "Suspended", - "value": "Suspended" - } - ] - }, - "aws-native:s3:BucketAccessControl": { - "description": "A canned access control list (ACL) that grants predefined permissions to the bucket.", - "type": "string", - "enum": [ - { - "name": "AuthenticatedRead", - "value": "AuthenticatedRead" - }, - { - "name": "AwsExecRead", - "value": "AwsExecRead" - }, - { - "name": "BucketOwnerFullControl", - "value": "BucketOwnerFullControl" - }, - { - "name": "BucketOwnerRead", - "value": "BucketOwnerRead" - }, - { - "name": "LogDeliveryWrite", - "value": "LogDeliveryWrite" - }, - { - "name": "Private", - "value": "Private" - }, - { - "name": "PublicRead", - "value": "PublicRead" - }, - { - "name": "PublicReadWrite", - "value": "PublicReadWrite" - } - ] - }, "aws-native:s3:BucketAccessControlTranslation": { - "description": "Specify this only in a cross-account scenario (where source and destination bucket owners are not the same), and you want to change replica ownership to the AWS account that owns the destination bucket. If this is not specified in the replication configuration, the replicas are owned by same AWS account that owns the source object.", "properties": { "owner": { "type": "string" @@ -103571,15 +104543,12 @@ ] }, "aws-native:s3:BucketAnalyticsConfiguration": { - "description": "Specifies the configuration and any analyses for the analytics filter of an Amazon S3 bucket.", "properties": { "id": { - "type": "string", - "description": "The ID that identifies the analytics configuration." + "type": "string" }, "prefix": { - "type": "string", - "description": "The prefix that an object must have to be included in the analytics results." + "type": "string" }, "storageClassAnalysis": { "$ref": "#/types/aws-native:s3:BucketStorageClassAnalysis" @@ -103612,43 +104581,36 @@ ] }, "aws-native:s3:BucketCorsRule": { - "description": "A set of origins and methods (cross-origin access that you want to allow). You can add up to 100 rules to the configuration.", "properties": { "allowedHeaders": { "type": "array", "items": { "type": "string" - }, - "description": "Headers that are specified in the Access-Control-Request-Headers header." + } }, "allowedMethods": { "type": "array", "items": { - "$ref": "#/types/aws-native:s3:BucketCorsRuleAllowedMethodsItem" - }, - "description": "An HTTP method that you allow the origin to execute." + "type": "string" + } }, "allowedOrigins": { "type": "array", "items": { "type": "string" - }, - "description": "One or more origins you want customers to be able to access the bucket from." + } }, "exposedHeaders": { "type": "array", "items": { "type": "string" - }, - "description": "One or more headers in the response that you want customers to be able to access from their applications (for example, from a JavaScript XMLHttpRequest object)." + } }, "id": { - "type": "string", - "description": "A unique identifier for this rule." + "type": "string" }, "maxAge": { - "type": "integer", - "description": "The time in seconds that your browser is to cache the preflight response for the specified resource." + "type": "integer" } }, "type": "object", @@ -103657,40 +104619,13 @@ "allowedOrigins" ] }, - "aws-native:s3:BucketCorsRuleAllowedMethodsItem": { - "type": "string", - "enum": [ - { - "name": "Get", - "value": "GET" - }, - { - "name": "Put", - "value": "PUT" - }, - { - "name": "Head", - "value": "HEAD" - }, - { - "name": "Post", - "value": "POST" - }, - { - "name": "Delete", - "value": "DELETE" - } - ] - }, "aws-native:s3:BucketDataExport": { - "description": "Specifies how data related to the storage class analysis for an Amazon S3 bucket should be exported.", "properties": { "destination": { "$ref": "#/types/aws-native:s3:BucketDestination" }, "outputSchemaVersion": { - "type": "string", - "description": "The version of the output schema to use when exporting data." + "type": "string" } }, "type": "object", @@ -103700,13 +104635,12 @@ ] }, "aws-native:s3:BucketDefaultRetention": { - "description": "The default retention period that you want to apply to new objects placed in the specified bucket.", "properties": { "days": { "type": "integer" }, "mode": { - "$ref": "#/types/aws-native:s3:BucketDefaultRetentionMode" + "type": "string" }, "years": { "type": "integer" @@ -103714,58 +104648,27 @@ }, "type": "object" }, - "aws-native:s3:BucketDefaultRetentionMode": { - "type": "string", - "enum": [ - { - "name": "Compliance", - "value": "COMPLIANCE" - }, - { - "name": "Governance", - "value": "GOVERNANCE" - } - ] - }, "aws-native:s3:BucketDeleteMarkerReplication": { "properties": { "status": { - "$ref": "#/types/aws-native:s3:BucketDeleteMarkerReplicationStatus" + "type": "string" } }, "type": "object" }, - "aws-native:s3:BucketDeleteMarkerReplicationStatus": { - "type": "string", - "enum": [ - { - "name": "Disabled", - "value": "Disabled" - }, - { - "name": "Enabled", - "value": "Enabled" - } - ] - }, "aws-native:s3:BucketDestination": { - "description": "Specifies information about where to publish analysis or configuration results for an Amazon S3 bucket and S3 Replication Time Control (S3 RTC).", "properties": { "bucketAccountId": { - "type": "string", - "description": "The account ID that owns the destination S3 bucket. " + "type": "string" }, "bucketArn": { - "type": "string", - "description": "The Amazon Resource Name (ARN) of the bucket to which data is exported." + "type": "string" }, "format": { - "$ref": "#/types/aws-native:s3:BucketDestinationFormat", - "description": "Specifies the file format used when exporting data to Amazon S3." + "type": "string" }, "prefix": { - "type": "string", - "description": "The prefix to use when exporting data. The prefix is prepended to all results." + "type": "string" } }, "type": "object", @@ -103774,33 +104677,13 @@ "format" ] }, - "aws-native:s3:BucketDestinationFormat": { - "description": "Specifies the file format used when exporting data to Amazon S3.", - "type": "string", - "enum": [ - { - "name": "Csv", - "value": "CSV" - }, - { - "name": "Orc", - "value": "ORC" - }, - { - "name": "Parquet", - "value": "Parquet" - } - ] - }, "aws-native:s3:BucketEncryption": { - "description": "Specifies default encryption for a bucket using server-side encryption with either Amazon S3-managed keys (SSE-S3) or AWS KMS-managed keys (SSE-KMS).", "properties": { "serverSideEncryptionConfiguration": { "type": "array", "items": { "$ref": "#/types/aws-native:s3:BucketServerSideEncryptionRule" - }, - "description": "Specifies the default server-side-encryption configuration." + } } }, "type": "object", @@ -103809,11 +104692,9 @@ ] }, "aws-native:s3:BucketEncryptionConfiguration": { - "description": "Specifies encryption-related information for an Amazon S3 bucket that is a destination for replicated objects.", "properties": { "replicaKmsKeyId": { - "type": "string", - "description": "Specifies the ID (Key ARN or Alias ARN) of the customer managed customer master key (CMK) stored in AWS Key Management Service (KMS) for the destination bucket." + "type": "string" } }, "type": "object", @@ -103822,20 +104703,14 @@ ] }, "aws-native:s3:BucketEventBridgeConfiguration": { - "description": "Describes the Amazon EventBridge notification configuration for an Amazon S3 bucket.", "properties": { "eventBridgeEnabled": { - "type": "boolean", - "description": "Specifies whether to send notifications to Amazon EventBridge when events occur in an Amazon S3 bucket." + "type": "boolean" } }, - "type": "object", - "required": [ - "eventBridgeEnabled" - ] + "type": "object" }, "aws-native:s3:BucketFilterRule": { - "description": "Specifies the Amazon S3 object key name to filter on and whether to filter on the suffix or prefix of the key name.", "properties": { "name": { "type": "string" @@ -103853,30 +104728,25 @@ "aws-native:s3:BucketIntelligentTieringConfiguration": { "properties": { "id": { - "type": "string", - "description": "The ID used to identify the S3 Intelligent-Tiering configuration." + "type": "string" }, "prefix": { - "type": "string", - "description": "An object key name prefix that identifies the subset of objects to which the rule applies." + "type": "string" }, "status": { - "$ref": "#/types/aws-native:s3:BucketIntelligentTieringConfigurationStatus", - "description": "Specifies the status of the configuration." + "type": "string" }, "tagFilters": { "type": "array", "items": { "$ref": "#/types/aws-native:s3:BucketTagFilter" - }, - "description": "A container for a key-value pair." + } }, "tierings": { "type": "array", "items": { "$ref": "#/types/aws-native:s3:BucketTiering" - }, - "description": "Specifies a list of S3 Intelligent-Tiering storage class tiers in the configuration. At least one tier must be defined in the list. At most, you can specify two tiers in the list, one for each available AccessTier: ARCHIVE_ACCESS and DEEP_ARCHIVE_ACCESS." + } } }, "type": "object", @@ -103886,51 +104756,31 @@ "tierings" ] }, - "aws-native:s3:BucketIntelligentTieringConfigurationStatus": { - "description": "Specifies the status of the configuration.", - "type": "string", - "enum": [ - { - "name": "Disabled", - "value": "Disabled" - }, - { - "name": "Enabled", - "value": "Enabled" - } - ] - }, "aws-native:s3:BucketInventoryConfiguration": { "properties": { "destination": { "$ref": "#/types/aws-native:s3:BucketDestination" }, "enabled": { - "type": "boolean", - "description": "Specifies whether the inventory is enabled or disabled." + "type": "boolean" }, "id": { - "type": "string", - "description": "The ID used to identify the inventory configuration." + "type": "string" }, "includedObjectVersions": { - "$ref": "#/types/aws-native:s3:BucketInventoryConfigurationIncludedObjectVersions", - "description": "Object versions to include in the inventory list." + "type": "string" }, "optionalFields": { "type": "array", "items": { - "$ref": "#/types/aws-native:s3:BucketInventoryConfigurationOptionalFieldsItem" - }, - "description": "Contains the optional fields that are included in the inventory results." + "type": "string" + } }, "prefix": { - "type": "string", - "description": "The prefix that is prepended to all inventory results." + "type": "string" }, "scheduleFrequency": { - "$ref": "#/types/aws-native:s3:BucketInventoryConfigurationScheduleFrequency", - "description": "Specifies the schedule for generating inventory results." + "type": "string" } }, "type": "object", @@ -103942,101 +104792,16 @@ "scheduleFrequency" ] }, - "aws-native:s3:BucketInventoryConfigurationIncludedObjectVersions": { - "description": "Object versions to include in the inventory list.", - "type": "string", - "enum": [ - { - "name": "All", - "value": "All" - }, - { - "name": "Current", - "value": "Current" - } - ] - }, - "aws-native:s3:BucketInventoryConfigurationOptionalFieldsItem": { - "type": "string", - "enum": [ - { - "name": "Size", - "value": "Size" - }, - { - "name": "LastModifiedDate", - "value": "LastModifiedDate" - }, - { - "name": "StorageClass", - "value": "StorageClass" - }, - { - "name": "ETag", - "value": "ETag" - }, - { - "name": "IsMultipartUploaded", - "value": "IsMultipartUploaded" - }, - { - "name": "ReplicationStatus", - "value": "ReplicationStatus" - }, - { - "name": "EncryptionStatus", - "value": "EncryptionStatus" - }, - { - "name": "ObjectLockRetainUntilDate", - "value": "ObjectLockRetainUntilDate" - }, - { - "name": "ObjectLockMode", - "value": "ObjectLockMode" - }, - { - "name": "ObjectLockLegalHoldStatus", - "value": "ObjectLockLegalHoldStatus" - }, - { - "name": "IntelligentTieringAccessTier", - "value": "IntelligentTieringAccessTier" - }, - { - "name": "BucketKeyStatus", - "value": "BucketKeyStatus" - } - ] - }, - "aws-native:s3:BucketInventoryConfigurationScheduleFrequency": { - "description": "Specifies the schedule for generating inventory results.", - "type": "string", - "enum": [ - { - "name": "Daily", - "value": "Daily" - }, - { - "name": "Weekly", - "value": "Weekly" - } - ] - }, "aws-native:s3:BucketLambdaConfiguration": { - "description": "Describes the AWS Lambda functions to invoke and the events for which to invoke them.", "properties": { "event": { - "type": "string", - "description": "The Amazon S3 bucket event for which to invoke the AWS Lambda function." + "type": "string" }, "filter": { - "$ref": "#/types/aws-native:s3:BucketNotificationFilter", - "description": "The filtering rules that determine which objects invoke the AWS Lambda function." + "$ref": "#/types/aws-native:s3:BucketNotificationFilter" }, "function": { - "type": "string", - "description": "The Amazon Resource Name (ARN) of the AWS Lambda function that Amazon S3 invokes when the specified event type occurs." + "type": "string" } }, "type": "object", @@ -104051,8 +104816,7 @@ "type": "array", "items": { "$ref": "#/types/aws-native:s3:BucketRule" - }, - "description": "A lifecycle rule for individual objects in an Amazon S3 bucket." + } } }, "type": "object", @@ -104063,8 +104827,7 @@ "aws-native:s3:BucketLoggingConfiguration": { "properties": { "destinationBucketName": { - "type": "string", - "description": "The name of an Amazon S3 bucket where Amazon S3 store server access log files. You can store log files in any bucket that you own. By default, logs are stored in the bucket where the LoggingConfiguration property is defined." + "type": "string" }, "logFilePrefix": { "type": "string" @@ -104078,7 +104841,7 @@ "$ref": "#/types/aws-native:s3:BucketReplicationTimeValue" }, "status": { - "$ref": "#/types/aws-native:s3:BucketMetricsStatus" + "type": "string" } }, "type": "object", @@ -104109,29 +104872,13 @@ "id" ] }, - "aws-native:s3:BucketMetricsStatus": { - "type": "string", - "enum": [ - { - "name": "Disabled", - "value": "Disabled" - }, - { - "name": "Enabled", - "value": "Enabled" - } - ] - }, "aws-native:s3:BucketNoncurrentVersionExpiration": { - "description": "Container for the expiration rule that describes when noncurrent objects are expired. If your bucket is versioning-enabled (or versioning is suspended), you can set this action to request that Amazon S3 expire noncurrent object versions at a specific period in the object's lifetime", "properties": { "newerNoncurrentVersions": { - "type": "integer", - "description": "Specified the number of newer noncurrent and current versions that must exists before performing the associated action" + "type": "integer" }, "noncurrentDays": { - "type": "integer", - "description": "Specified the number of days an object is noncurrent before Amazon S3 can perform the associated action" + "type": "integer" } }, "type": "object", @@ -104140,19 +104887,15 @@ ] }, "aws-native:s3:BucketNoncurrentVersionTransition": { - "description": "Container for the transition rule that describes when noncurrent objects transition to the STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER_IR, GLACIER, or DEEP_ARCHIVE storage class. If your bucket is versioning-enabled (or versioning is suspended), you can set this action to request that Amazon S3 transition noncurrent object versions to the STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER_IR, GLACIER, or DEEP_ARCHIVE storage class at a specific period in the object's lifetime.", "properties": { "newerNoncurrentVersions": { - "type": "integer", - "description": "Specified the number of newer noncurrent and current versions that must exists before performing the associated action" + "type": "integer" }, "storageClass": { - "$ref": "#/types/aws-native:s3:BucketNoncurrentVersionTransitionStorageClass", - "description": "The class of storage used to store the object." + "type": "string" }, "transitionInDays": { - "type": "integer", - "description": "Specifies the number of days an object is noncurrent before Amazon S3 can perform the associated action." + "type": "integer" } }, "type": "object", @@ -104161,38 +104904,7 @@ "transitionInDays" ] }, - "aws-native:s3:BucketNoncurrentVersionTransitionStorageClass": { - "description": "The class of storage used to store the object.", - "type": "string", - "enum": [ - { - "name": "DeepArchive", - "value": "DEEP_ARCHIVE" - }, - { - "name": "Glacier", - "value": "GLACIER" - }, - { - "name": "GlacierIr", - "value": "GLACIER_IR" - }, - { - "name": "IntelligentTiering", - "value": "INTELLIGENT_TIERING" - }, - { - "name": "OnezoneIa", - "value": "ONEZONE_IA" - }, - { - "name": "StandardIa", - "value": "STANDARD_IA" - } - ] - }, "aws-native:s3:BucketNotificationConfiguration": { - "description": "Describes the notification configuration for an Amazon S3 bucket.", "properties": { "eventBridgeConfiguration": { "$ref": "#/types/aws-native:s3:BucketEventBridgeConfiguration" @@ -104219,7 +104931,6 @@ "type": "object" }, "aws-native:s3:BucketNotificationFilter": { - "description": "Specifies object key name filtering rules.", "properties": { "s3Key": { "$ref": "#/types/aws-native:s3:BucketS3KeyFilter" @@ -104242,7 +104953,6 @@ "type": "object" }, "aws-native:s3:BucketObjectLockRule": { - "description": "The Object Lock rule in place for the specified object.", "properties": { "defaultRetention": { "$ref": "#/types/aws-native:s3:BucketDefaultRetention" @@ -104267,66 +104977,38 @@ "aws-native:s3:BucketOwnershipControlsRule": { "properties": { "objectOwnership": { - "$ref": "#/types/aws-native:s3:BucketOwnershipControlsRuleObjectOwnership", - "description": "Specifies an object ownership rule." + "type": "string" } }, "type": "object" }, - "aws-native:s3:BucketOwnershipControlsRuleObjectOwnership": { - "description": "Specifies an object ownership rule.", - "type": "string", - "enum": [ - { - "name": "ObjectWriter", - "value": "ObjectWriter" - }, - { - "name": "BucketOwnerPreferred", - "value": "BucketOwnerPreferred" - }, - { - "name": "BucketOwnerEnforced", - "value": "BucketOwnerEnforced" - } - ] - }, "aws-native:s3:BucketPublicAccessBlockConfiguration": { - "description": "Configuration that defines how Amazon S3 handles public access.", "properties": { "blockPublicAcls": { - "type": "boolean", - "description": "Specifies whether Amazon S3 should block public access control lists (ACLs) for this bucket and objects in this bucket. Setting this element to TRUE causes the following behavior:\n- PUT Bucket acl and PUT Object acl calls fail if the specified ACL is public.\n - PUT Object calls fail if the request includes a public ACL.\nEnabling this setting doesn't affect existing policies or ACLs." + "type": "boolean" }, "blockPublicPolicy": { - "type": "boolean", - "description": "Specifies whether Amazon S3 should block public bucket policies for this bucket. Setting this element to TRUE causes Amazon S3 to reject calls to PUT Bucket policy if the specified bucket policy allows public access.\nEnabling this setting doesn't affect existing bucket policies." + "type": "boolean" }, "ignorePublicAcls": { - "type": "boolean", - "description": "Specifies whether Amazon S3 should ignore public ACLs for this bucket and objects in this bucket. Setting this element to TRUE causes Amazon S3 to ignore all public ACLs on this bucket and objects in this bucket.\nEnabling this setting doesn't affect the persistence of any existing ACLs and doesn't prevent new public ACLs from being set." + "type": "boolean" }, "restrictPublicBuckets": { - "type": "boolean", - "description": "Specifies whether Amazon S3 should restrict public bucket policies for this bucket. Setting this element to TRUE restricts access to this bucket to only AWS services and authorized users within this account if the bucket has a public policy.\nEnabling this setting doesn't affect previously stored bucket policies, except that public and cross-account access within any public bucket policy, including non-public delegation to specific accounts, is blocked." + "type": "boolean" } }, "type": "object" }, "aws-native:s3:BucketQueueConfiguration": { - "description": "The Amazon Simple Queue Service queues to publish messages to and the events for which to publish messages.", "properties": { "event": { - "type": "string", - "description": "The Amazon S3 bucket event about which you want to publish messages to Amazon SQS." + "type": "string" }, "filter": { - "$ref": "#/types/aws-native:s3:BucketNotificationFilter", - "description": "The filtering rules that determine which objects trigger notifications." + "$ref": "#/types/aws-native:s3:BucketNotificationFilter" }, "queue": { - "type": "string", - "description": "The Amazon Resource Name (ARN) of the Amazon SQS queue to which Amazon S3 publishes a message when it detects events of the specified type." + "type": "string" } }, "type": "object", @@ -104336,15 +105018,12 @@ ] }, "aws-native:s3:BucketRedirectAllRequestsTo": { - "description": "Specifies the redirect behavior of all requests to a website endpoint of an Amazon S3 bucket.", "properties": { "hostName": { - "type": "string", - "description": "Name of the host where requests are redirected." + "type": "string" }, "protocol": { - "$ref": "#/types/aws-native:s3:BucketRedirectAllRequestsToProtocol", - "description": "Protocol to use when redirecting requests. The default is the protocol that is used in the original request." + "type": "string" } }, "type": "object", @@ -104352,65 +105031,30 @@ "hostName" ] }, - "aws-native:s3:BucketRedirectAllRequestsToProtocol": { - "description": "Protocol to use when redirecting requests. The default is the protocol that is used in the original request.", - "type": "string", - "enum": [ - { - "name": "Http", - "value": "http" - }, - { - "name": "Https", - "value": "https" - } - ] - }, "aws-native:s3:BucketRedirectRule": { - "description": "Specifies how requests are redirected. In the event of an error, you can specify a different error code to return.", "properties": { "hostName": { - "type": "string", - "description": "The host name to use in the redirect request." + "type": "string" }, "httpRedirectCode": { - "type": "string", - "description": "The HTTP redirect code to use on the response. Not required if one of the siblings is present." + "type": "string" }, "protocol": { - "$ref": "#/types/aws-native:s3:BucketRedirectRuleProtocol", - "description": "Protocol to use when redirecting requests. The default is the protocol that is used in the original request." + "type": "string" }, "replaceKeyPrefixWith": { - "type": "string", - "description": "The object key prefix to use in the redirect request." + "type": "string" }, "replaceKeyWith": { - "type": "string", - "description": "The specific object key to use in the redirect request.d" + "type": "string" } }, "type": "object" }, - "aws-native:s3:BucketRedirectRuleProtocol": { - "description": "Protocol to use when redirecting requests. The default is the protocol that is used in the original request.", - "type": "string", - "enum": [ - { - "name": "Http", - "value": "http" - }, - { - "name": "Https", - "value": "https" - } - ] - }, "aws-native:s3:BucketReplicaModifications": { "properties": { "status": { - "$ref": "#/types/aws-native:s3:BucketReplicaModificationsStatus", - "description": "Specifies whether Amazon S3 replicates modifications on replicas." + "type": "string" } }, "type": "object", @@ -104418,33 +105062,16 @@ "status" ] }, - "aws-native:s3:BucketReplicaModificationsStatus": { - "description": "Specifies whether Amazon S3 replicates modifications on replicas.", - "type": "string", - "enum": [ - { - "name": "Enabled", - "value": "Enabled" - }, - { - "name": "Disabled", - "value": "Disabled" - } - ] - }, "aws-native:s3:BucketReplicationConfiguration": { - "description": "A container for replication rules. You can add up to 1,000 rules. The maximum size of a replication configuration is 2 MB.", "properties": { "role": { - "type": "string", - "description": "The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that Amazon S3 assumes when replicating objects." + "type": "string" }, "rules": { "type": "array", "items": { "$ref": "#/types/aws-native:s3:BucketReplicationRule" - }, - "description": "A container for one or more replication rules." + } } }, "type": "object", @@ -104454,7 +105081,6 @@ ] }, "aws-native:s3:BucketReplicationDestination": { - "description": "Specifies which Amazon S3 bucket to store replicated objects in and their storage class.", "properties": { "accessControlTranslation": { "$ref": "#/types/aws-native:s3:BucketAccessControlTranslation" @@ -104475,8 +105101,7 @@ "$ref": "#/types/aws-native:s3:BucketReplicationTime" }, "storageClass": { - "$ref": "#/types/aws-native:s3:BucketReplicationDestinationStorageClass", - "description": "The storage class to use when replicating objects, such as S3 Standard or reduced redundancy." + "type": "string" } }, "type": "object", @@ -104484,46 +105109,7 @@ "bucket" ] }, - "aws-native:s3:BucketReplicationDestinationStorageClass": { - "description": "The storage class to use when replicating objects, such as S3 Standard or reduced redundancy.", - "type": "string", - "enum": [ - { - "name": "DeepArchive", - "value": "DEEP_ARCHIVE" - }, - { - "name": "Glacier", - "value": "GLACIER" - }, - { - "name": "GlacierIr", - "value": "GLACIER_IR" - }, - { - "name": "IntelligentTiering", - "value": "INTELLIGENT_TIERING" - }, - { - "name": "OnezoneIa", - "value": "ONEZONE_IA" - }, - { - "name": "ReducedRedundancy", - "value": "REDUCED_REDUNDANCY" - }, - { - "name": "Standard", - "value": "STANDARD" - }, - { - "name": "StandardIa", - "value": "STANDARD_IA" - } - ] - }, "aws-native:s3:BucketReplicationRule": { - "description": "Specifies which Amazon S3 objects to replicate and where to store the replicas.", "properties": { "deleteMarkerReplication": { "$ref": "#/types/aws-native:s3:BucketDeleteMarkerReplication" @@ -104535,12 +105121,10 @@ "$ref": "#/types/aws-native:s3:BucketReplicationRuleFilter" }, "id": { - "type": "string", - "description": "A unique identifier for the rule." + "type": "string" }, "prefix": { - "type": "string", - "description": "An object key name prefix that identifies the object or objects to which the rule applies." + "type": "string" }, "priority": { "type": "integer" @@ -104549,8 +105133,7 @@ "$ref": "#/types/aws-native:s3:BucketSourceSelectionCriteria" }, "status": { - "$ref": "#/types/aws-native:s3:BucketReplicationRuleStatus", - "description": "Specifies whether the rule is enabled." + "type": "string" } }, "type": "object", @@ -104587,24 +105170,10 @@ }, "type": "object" }, - "aws-native:s3:BucketReplicationRuleStatus": { - "description": "Specifies whether the rule is enabled.", - "type": "string", - "enum": [ - { - "name": "Disabled", - "value": "Disabled" - }, - { - "name": "Enabled", - "value": "Enabled" - } - ] - }, "aws-native:s3:BucketReplicationTime": { "properties": { "status": { - "$ref": "#/types/aws-native:s3:BucketReplicationTimeStatus" + "type": "string" }, "time": { "$ref": "#/types/aws-native:s3:BucketReplicationTimeValue" @@ -104616,19 +105185,6 @@ "time" ] }, - "aws-native:s3:BucketReplicationTimeStatus": { - "type": "string", - "enum": [ - { - "name": "Disabled", - "value": "Disabled" - }, - { - "name": "Enabled", - "value": "Enabled" - } - ] - }, "aws-native:s3:BucketReplicationTimeValue": { "properties": { "minutes": { @@ -104641,11 +105197,9 @@ ] }, "aws-native:s3:BucketRoutingRule": { - "description": "Specifies the redirect behavior and when a redirect is applied.", "properties": { "redirectRule": { - "$ref": "#/types/aws-native:s3:BucketRedirectRule", - "description": "Container for redirect information. You can redirect requests to another host, to another page, or with another protocol. In the event of an error, you can specify a different error code to return." + "$ref": "#/types/aws-native:s3:BucketRedirectRule" }, "routingRuleCondition": { "$ref": "#/types/aws-native:s3:BucketRoutingRuleCondition" @@ -104657,21 +105211,17 @@ ] }, "aws-native:s3:BucketRoutingRuleCondition": { - "description": "A container for describing a condition that must be met for the specified redirect to apply.You must specify at least one of HttpErrorCodeReturnedEquals and KeyPrefixEquals", "properties": { "httpErrorCodeReturnedEquals": { - "type": "string", - "description": "The HTTP error code when the redirect is applied. " + "type": "string" }, "keyPrefixEquals": { - "type": "string", - "description": "The object key name prefix when the redirect is applied." + "type": "string" } }, "type": "object" }, "aws-native:s3:BucketRule": { - "description": "You must specify at least one of the following properties: AbortIncompleteMultipartUpload, ExpirationDate, ExpirationInDays, NoncurrentVersionExpirationInDays, NoncurrentVersionTransition, NoncurrentVersionTransitions, Transition, or Transitions.", "properties": { "abortIncompleteMultipartUpload": { "$ref": "#/types/aws-native:s3:BucketAbortIncompleteMultipartUpload" @@ -104704,16 +105254,16 @@ } }, "objectSizeGreaterThan": { - "type": "string" + "type": "integer" }, "objectSizeLessThan": { - "type": "string" + "type": "integer" }, "prefix": { "type": "string" }, "status": { - "$ref": "#/types/aws-native:s3:BucketRuleStatus" + "type": "string" }, "tagFilters": { "type": "array", @@ -104736,21 +105286,7 @@ "status" ] }, - "aws-native:s3:BucketRuleStatus": { - "type": "string", - "enum": [ - { - "name": "Enabled", - "value": "Enabled" - }, - { - "name": "Disabled", - "value": "Disabled" - } - ] - }, "aws-native:s3:BucketS3KeyFilter": { - "description": "A container for object key name prefix and suffix filtering rules.", "properties": { "rules": { "type": "array", @@ -104765,14 +105301,12 @@ ] }, "aws-native:s3:BucketServerSideEncryptionByDefault": { - "description": "Specifies the default server-side encryption to apply to new objects in the bucket. If a PUT Object request doesn't specify any server-side encryption, this default encryption will be applied.", "properties": { "kmsMasterKeyId": { - "type": "string", - "description": "\"KMSMasterKeyID\" can only be used when you set the value of SSEAlgorithm as aws:kms or aws:kms:dsse." + "type": "string" }, "sseAlgorithm": { - "$ref": "#/types/aws-native:s3:BucketServerSideEncryptionByDefaultSseAlgorithm" + "type": "string" } }, "type": "object", @@ -104780,29 +105314,10 @@ "sseAlgorithm" ] }, - "aws-native:s3:BucketServerSideEncryptionByDefaultSseAlgorithm": { - "type": "string", - "enum": [ - { - "name": "Awskms", - "value": "aws:kms" - }, - { - "name": "Aes256", - "value": "AES256" - }, - { - "name": "Awskmsdsse", - "value": "aws:kms:dsse" - } - ] - }, "aws-native:s3:BucketServerSideEncryptionRule": { - "description": "Specifies the default server-side encryption configuration.", "properties": { "bucketKeyEnabled": { - "type": "boolean", - "description": "Specifies whether Amazon S3 should use an S3 Bucket Key with server-side encryption using KMS (SSE-KMS) for new objects in the bucket. Existing objects are not affected. Setting the BucketKeyEnabled element to true causes Amazon S3 to use an S3 Bucket Key. By default, S3 Bucket Key is not enabled." + "type": "boolean" }, "serverSideEncryptionByDefault": { "$ref": "#/types/aws-native:s3:BucketServerSideEncryptionByDefault" @@ -104811,25 +105326,20 @@ "type": "object" }, "aws-native:s3:BucketSourceSelectionCriteria": { - "description": "A container that describes additional filters for identifying the source objects that you want to replicate.", "properties": { "replicaModifications": { - "$ref": "#/types/aws-native:s3:BucketReplicaModifications", - "description": "A filter that you can specify for selection for modifications on replicas." + "$ref": "#/types/aws-native:s3:BucketReplicaModifications" }, "sseKmsEncryptedObjects": { - "$ref": "#/types/aws-native:s3:BucketSseKmsEncryptedObjects", - "description": "A container for filter information for the selection of Amazon S3 objects encrypted with AWS KMS." + "$ref": "#/types/aws-native:s3:BucketSseKmsEncryptedObjects" } }, "type": "object" }, "aws-native:s3:BucketSseKmsEncryptedObjects": { - "description": "A container for filter information for the selection of S3 objects encrypted with AWS KMS.", "properties": { "status": { - "$ref": "#/types/aws-native:s3:BucketSseKmsEncryptedObjectsStatus", - "description": "Specifies whether Amazon S3 replicates objects created with server-side encryption using a customer master key (CMK) stored in AWS Key Management Service." + "type": "string" } }, "type": "object", @@ -104837,22 +105347,7 @@ "status" ] }, - "aws-native:s3:BucketSseKmsEncryptedObjectsStatus": { - "description": "Specifies whether Amazon S3 replicates objects created with server-side encryption using a customer master key (CMK) stored in AWS Key Management Service.", - "type": "string", - "enum": [ - { - "name": "Disabled", - "value": "Disabled" - }, - { - "name": "Enabled", - "value": "Enabled" - } - ] - }, "aws-native:s3:BucketStorageClassAnalysis": { - "description": "Specifies data related to access patterns to be collected and made available to analyze the tradeoffs between different storage classes for an Amazon S3 bucket.", "properties": { "dataExport": { "$ref": "#/types/aws-native:s3:BucketDataExport" @@ -104876,7 +105371,6 @@ ] }, "aws-native:s3:BucketTagFilter": { - "description": "Tags to use to identify a subset of objects for an Amazon S3 bucket.", "properties": { "key": { "type": "string" @@ -104894,12 +105388,10 @@ "aws-native:s3:BucketTiering": { "properties": { "accessTier": { - "$ref": "#/types/aws-native:s3:BucketTieringAccessTier", - "description": "S3 Intelligent-Tiering access tier. See Storage class for automatically optimizing frequently and infrequently accessed objects for a list of access tiers in the S3 Intelligent-Tiering storage class." + "type": "string" }, "days": { - "type": "integer", - "description": "The number of consecutive days of no access after which an object will be eligible to be transitioned to the corresponding tier. The minimum number of days specified for Archive Access tier must be at least 90 days and Deep Archive Access tier must be at least 180 days. The maximum can be up to 2 years (730 days)." + "type": "integer" } }, "type": "object", @@ -104908,34 +105400,16 @@ "days" ] }, - "aws-native:s3:BucketTieringAccessTier": { - "description": "S3 Intelligent-Tiering access tier. See Storage class for automatically optimizing frequently and infrequently accessed objects for a list of access tiers in the S3 Intelligent-Tiering storage class.", - "type": "string", - "enum": [ - { - "name": "ArchiveAccess", - "value": "ARCHIVE_ACCESS" - }, - { - "name": "DeepArchiveAccess", - "value": "DEEP_ARCHIVE_ACCESS" - } - ] - }, "aws-native:s3:BucketTopicConfiguration": { - "description": "The topic to which notifications are sent and the events for which notifications are generated.", "properties": { "event": { - "type": "string", - "description": "The Amazon S3 bucket event about which to send notifications." + "type": "string" }, "filter": { - "$ref": "#/types/aws-native:s3:BucketNotificationFilter", - "description": "The filtering rules that determine for which objects to send notifications." + "$ref": "#/types/aws-native:s3:BucketNotificationFilter" }, "topic": { - "type": "string", - "description": "The Amazon Resource Name (ARN) of the Amazon SNS topic to which Amazon S3 publishes a message when it detects events of the specified type." + "type": "string" } }, "type": "object", @@ -104945,10 +105419,9 @@ ] }, "aws-native:s3:BucketTransition": { - "description": "You must specify at least one of \"TransitionDate\" and \"TransitionInDays\"", "properties": { "storageClass": { - "$ref": "#/types/aws-native:s3:BucketTransitionStorageClass" + "type": "string" }, "transitionDate": { "type": "string" @@ -104962,41 +105435,10 @@ "storageClass" ] }, - "aws-native:s3:BucketTransitionStorageClass": { - "type": "string", - "enum": [ - { - "name": "DeepArchive", - "value": "DEEP_ARCHIVE" - }, - { - "name": "Glacier", - "value": "GLACIER" - }, - { - "name": "GlacierIr", - "value": "GLACIER_IR" - }, - { - "name": "IntelligentTiering", - "value": "INTELLIGENT_TIERING" - }, - { - "name": "OnezoneIa", - "value": "ONEZONE_IA" - }, - { - "name": "StandardIa", - "value": "STANDARD_IA" - } - ] - }, "aws-native:s3:BucketVersioningConfiguration": { - "description": "Describes the versioning state of an Amazon S3 bucket.", "properties": { "status": { - "$ref": "#/types/aws-native:s3:BucketVersioningConfigurationStatus", - "description": "The versioning state of the bucket." + "type": "string" } }, "type": "object", @@ -105004,30 +105446,13 @@ "status" ] }, - "aws-native:s3:BucketVersioningConfigurationStatus": { - "description": "The versioning state of the bucket.", - "type": "string", - "enum": [ - { - "name": "Enabled", - "value": "Enabled" - }, - { - "name": "Suspended", - "value": "Suspended" - } - ] - }, "aws-native:s3:BucketWebsiteConfiguration": { - "description": "Specifies website configuration parameters for an Amazon S3 bucket.", "properties": { "errorDocument": { - "type": "string", - "description": "The name of the error document for the website." + "type": "string" }, "indexDocument": { - "type": "string", - "description": "The name of the index document for the website." + "type": "string" }, "redirectAllRequestsTo": { "$ref": "#/types/aws-native:s3:BucketRedirectAllRequestsTo" @@ -106144,6 +106569,10 @@ "datasetFormat": { "$ref": "#/types/aws-native:sagemaker:DataQualityJobDefinitionDatasetFormat" }, + "excludeFeaturesAttribute": { + "type": "string", + "description": "Indexes or names of the features to be excluded from analysis" + }, "localPath": { "type": "string", "description": "Path to the filesystem where the endpoint data is available to the container." @@ -106326,6 +106755,10 @@ "endpointName": { "type": "string" }, + "excludeFeaturesAttribute": { + "type": "string", + "description": "Indexes or names of the features to be excluded from analysis" + }, "localPath": { "type": "string", "description": "Path to the filesystem where the endpoint data is available to the container." @@ -110687,6 +111120,10 @@ "datasetFormat": { "$ref": "#/types/aws-native:sagemaker:MonitoringScheduleDatasetFormat" }, + "excludeFeaturesAttribute": { + "type": "string", + "description": "Indexes or names of the features to be excluded from analysis" + }, "localPath": { "type": "string", "description": "Path to the filesystem where the endpoint data is available to the container." @@ -110822,6 +111259,10 @@ "endpointName": { "type": "string" }, + "excludeFeaturesAttribute": { + "type": "string", + "description": "Indexes or names of the features to be excluded from analysis" + }, "localPath": { "type": "string", "description": "Path to the filesystem where the endpoint data is available to the container." @@ -111170,9 +111611,17 @@ "aws-native:sagemaker:MonitoringScheduleScheduleConfig": { "description": "Configuration details about the monitoring schedule.", "properties": { + "dataAnalysisEndTime": { + "type": "string", + "description": "Data Analysis end time, e.g. PT0H" + }, + "dataAnalysisStartTime": { + "type": "string", + "description": "Data Analysis start time, e.g. -PT1H" + }, "scheduleExpression": { "type": "string", - "description": "A cron expression that describes details about the monitoring schedule." + "description": "A cron expression or 'NOW' that describes details about the monitoring schedule." } }, "type": "object", @@ -122799,18 +123248,18 @@ ] }, "aws-native:apigateway:Account": { - "description": "Resource Type definition for AWS::ApiGateway::Account", + "description": "The ``AWS::ApiGateway::Account`` resource specifies the IAM role that Amazon API Gateway uses to write API logs to Amazon CloudWatch Logs. To avoid overwriting other roles, you should only have one ``AWS::ApiGateway::Account`` resource per region per account.", "properties": { "cloudWatchRoleArn": { "type": "string", - "description": "The Amazon Resource Name (ARN) of an IAM role that has write access to CloudWatch Logs in your account." + "description": "The ARN of an Amazon CloudWatch role for the current Account." } }, "type": "object", "inputProperties": { "cloudWatchRoleArn": { "type": "string", - "description": "The Amazon Resource Name (ARN) of an IAM role that has write access to CloudWatch Logs in your account." + "description": "The ARN of an Amazon CloudWatch role for the current Account." } } }, @@ -122909,7 +123358,7 @@ } }, "aws-native:apigateway:Authorizer": { - "description": "Represents an authorization layer for methods. If enabled on a method, API Gateway will activate the authorizer when a client calls the method.", + "description": "The ``AWS::ApiGateway::Authorizer`` resource creates an authorization layer that API Gateway activates for methods that have authorization enabled. API Gateway activates the authorizer when a client calls those methods.", "properties": { "authType": { "type": "string", @@ -122917,26 +123366,26 @@ }, "authorizerCredentials": { "type": "string", - "description": "Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer." + "description": "Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. To specify an IAM role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To use resource-based permissions on the Lambda function, specify null." }, "authorizerId": { "type": "string" }, "authorizerResultTtlInSeconds": { "type": "integer", - "description": "The TTL in seconds of cached authorizer results." + "description": "The TTL in seconds of cached authorizer results. If it equals 0, authorization caching is disabled. If it is greater than 0, API Gateway will cache authorizer responses. If this field is not set, the default value is 300. The maximum value is 3600, or 1 hour." }, "authorizerUri": { "type": "string", - "description": "Specifies the authorizer's Uniform Resource Identifier (URI)." + "description": "Specifies the authorizer's Uniform Resource Identifier (URI). For ``TOKEN`` or ``REQUEST`` authorizers, this must be a well-formed Lambda function URI, for example, ``arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:{account_id}:function:{lambda_function_name}/invocations``. In general, the URI has this form ``arn:aws:apigateway:{region}:lambda:path/{service_api}``, where ``{region}`` is the same as the region hosting the Lambda function, ``path`` indicates that the remaining substring in the URI should be treated as the path to the resource, including the initial ``/``. For Lambda functions, this is usually of the form ``/2015-03-31/functions/[FunctionARN]/invocations``." }, "identitySource": { "type": "string", - "description": "The identity source for which authorization is requested." + "description": "The identity source for which authorization is requested. For a ``TOKEN`` or ``COGNITO_USER_POOLS`` authorizer, this is required and specifies the request header mapping expression for the custom header holding the authorization token submitted by the client. For example, if the token header name is ``Auth``, the header mapping expression is ``method.request.header.Auth``. For the ``REQUEST`` authorizer, this is required when authorization caching is enabled. The value is a comma-separated string of one or more mapping expressions of the specified request parameters. For example, if an ``Auth`` header, a ``Name`` query string parameter are defined as identity sources, this value is ``method.request.header.Auth, method.request.querystring.Name``. These parameters will be used to derive the authorization caching key and to perform runtime validation of the ``REQUEST`` authorizer by verifying all of the identity-related request parameters are present, not null and non-empty. Only when this is true does the authorizer invoke the authorizer Lambda function, otherwise, it returns a 401 Unauthorized response without calling the Lambda function. The valid value is a string of comma-separated mapping expressions of the specified request parameters. When the authorization caching is not enabled, this property is optional." }, "identityValidationExpression": { "type": "string", - "description": "A validation expression for the incoming identity token." + "description": "A validation expression for the incoming identity token. For ``TOKEN`` authorizers, this value is a regular expression. For ``COGNITO_USER_POOLS`` authorizers, API Gateway will match the ``aud`` field of the incoming token from the client against the specified regular expression. It will invoke the authorizer's Lambda function when there is a match. Otherwise, it will return a 401 Unauthorized response without calling the Lambda function. The validation expression does not apply to the ``REQUEST`` authorizer." }, "name": { "type": "string", @@ -122947,16 +123396,16 @@ "items": { "type": "string" }, - "description": "A list of the Amazon Cognito user pool ARNs for the COGNITO_USER_POOLS authorizer." + "description": "A list of the Amazon Cognito user pool ARNs for the ``COGNITO_USER_POOLS`` authorizer. Each element is of this format: ``arn:aws:cognito-idp:{region}:{account_id}:userpool/{user_pool_id}``. For a ``TOKEN`` or ``REQUEST`` authorizer, this is not defined." }, "restApiId": { "type": "string", - "description": "The identifier of the API.", + "description": "The string identifier of the associated RestApi.", "replaceOnChanges": true }, "type": { "type": "string", - "description": "The authorizer type." + "description": "The authorizer type. Valid values are ``TOKEN`` for a Lambda function using a single authorization token submitted in a custom header, ``REQUEST`` for a Lambda function using incoming request parameters, and ``COGNITO_USER_POOLS`` for using an Amazon Cognito user pool." } }, "type": "object", @@ -122973,23 +123422,23 @@ }, "authorizerCredentials": { "type": "string", - "description": "Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer." + "description": "Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. To specify an IAM role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To use resource-based permissions on the Lambda function, specify null." }, "authorizerResultTtlInSeconds": { "type": "integer", - "description": "The TTL in seconds of cached authorizer results." + "description": "The TTL in seconds of cached authorizer results. If it equals 0, authorization caching is disabled. If it is greater than 0, API Gateway will cache authorizer responses. If this field is not set, the default value is 300. The maximum value is 3600, or 1 hour." }, "authorizerUri": { "type": "string", - "description": "Specifies the authorizer's Uniform Resource Identifier (URI)." + "description": "Specifies the authorizer's Uniform Resource Identifier (URI). For ``TOKEN`` or ``REQUEST`` authorizers, this must be a well-formed Lambda function URI, for example, ``arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:{account_id}:function:{lambda_function_name}/invocations``. In general, the URI has this form ``arn:aws:apigateway:{region}:lambda:path/{service_api}``, where ``{region}`` is the same as the region hosting the Lambda function, ``path`` indicates that the remaining substring in the URI should be treated as the path to the resource, including the initial ``/``. For Lambda functions, this is usually of the form ``/2015-03-31/functions/[FunctionARN]/invocations``." }, "identitySource": { "type": "string", - "description": "The identity source for which authorization is requested." + "description": "The identity source for which authorization is requested. For a ``TOKEN`` or ``COGNITO_USER_POOLS`` authorizer, this is required and specifies the request header mapping expression for the custom header holding the authorization token submitted by the client. For example, if the token header name is ``Auth``, the header mapping expression is ``method.request.header.Auth``. For the ``REQUEST`` authorizer, this is required when authorization caching is enabled. The value is a comma-separated string of one or more mapping expressions of the specified request parameters. For example, if an ``Auth`` header, a ``Name`` query string parameter are defined as identity sources, this value is ``method.request.header.Auth, method.request.querystring.Name``. These parameters will be used to derive the authorization caching key and to perform runtime validation of the ``REQUEST`` authorizer by verifying all of the identity-related request parameters are present, not null and non-empty. Only when this is true does the authorizer invoke the authorizer Lambda function, otherwise, it returns a 401 Unauthorized response without calling the Lambda function. The valid value is a string of comma-separated mapping expressions of the specified request parameters. When the authorization caching is not enabled, this property is optional." }, "identityValidationExpression": { "type": "string", - "description": "A validation expression for the incoming identity token." + "description": "A validation expression for the incoming identity token. For ``TOKEN`` authorizers, this value is a regular expression. For ``COGNITO_USER_POOLS`` authorizers, API Gateway will match the ``aud`` field of the incoming token from the client against the specified regular expression. It will invoke the authorizer's Lambda function when there is a match. Otherwise, it will return a 401 Unauthorized response without calling the Lambda function. The validation expression does not apply to the ``REQUEST`` authorizer." }, "name": { "type": "string", @@ -123000,15 +123449,15 @@ "items": { "type": "string" }, - "description": "A list of the Amazon Cognito user pool ARNs for the COGNITO_USER_POOLS authorizer." + "description": "A list of the Amazon Cognito user pool ARNs for the ``COGNITO_USER_POOLS`` authorizer. Each element is of this format: ``arn:aws:cognito-idp:{region}:{account_id}:userpool/{user_pool_id}``. For a ``TOKEN`` or ``REQUEST`` authorizer, this is not defined." }, "restApiId": { "type": "string", - "description": "The identifier of the API." + "description": "The string identifier of the associated RestApi." }, "type": { "type": "string", - "description": "The authorizer type." + "description": "The authorizer type. Valid values are ``TOKEN`` for a Lambda function using a single authorization token submitted in a custom header, ``REQUEST`` for a Lambda function using incoming request parameters, and ``COGNITO_USER_POOLS`` for using an Amazon Cognito user pool." } }, "requiredInputs": [ @@ -123102,11 +123551,11 @@ } }, "aws-native:apigateway:Deployment": { - "description": "Resource Type definition for AWS::ApiGateway::Deployment", + "description": "The ``AWS::ApiGateway::Deployment`` resource deploys an API Gateway ``RestApi`` resource to a stage so that clients can call the API over the internet. The stage acts as an environment.", "properties": { "deploymentCanarySettings": { "$ref": "#/types/aws-native:apigateway:DeploymentCanarySettings", - "description": "Specifies settings for the canary deployment.", + "description": "The input configuration for a canary deployment.", "replaceOnChanges": true }, "deploymentId": { @@ -123115,20 +123564,20 @@ }, "description": { "type": "string", - "description": "A description of the purpose of the API Gateway deployment." + "description": "The description for the Deployment resource to create." }, "restApiId": { "type": "string", - "description": "The ID of the RestApi resource to deploy. ", + "description": "The string identifier of the associated RestApi.", "replaceOnChanges": true }, "stageDescription": { "$ref": "#/types/aws-native:apigateway:DeploymentStageDescription", - "description": "Configures the stage that API Gateway creates with this deployment." + "description": "The description of the Stage resource for the Deployment resource to create. To specify a stage description, you must also provide a stage name." }, "stageName": { "type": "string", - "description": "A name for the stage that API Gateway creates with this deployment. Use only alphanumeric characters." + "description": "The name of the Stage resource for the Deployment resource to create." } }, "type": "object", @@ -123139,23 +123588,23 @@ "inputProperties": { "deploymentCanarySettings": { "$ref": "#/types/aws-native:apigateway:DeploymentCanarySettings", - "description": "Specifies settings for the canary deployment." + "description": "The input configuration for a canary deployment." }, "description": { "type": "string", - "description": "A description of the purpose of the API Gateway deployment." + "description": "The description for the Deployment resource to create." }, "restApiId": { "type": "string", - "description": "The ID of the RestApi resource to deploy. " + "description": "The string identifier of the associated RestApi." }, "stageDescription": { "$ref": "#/types/aws-native:apigateway:DeploymentStageDescription", - "description": "Configures the stage that API Gateway creates with this deployment." + "description": "The description of the Stage resource for the Deployment resource to create. To specify a stage description, you must also provide a stage name." }, "stageName": { "type": "string", - "description": "A name for the stage that API Gateway creates with this deployment. Use only alphanumeric characters." + "description": "The name of the Stage resource for the Deployment resource to create." } }, "requiredInputs": [ @@ -123163,7 +123612,7 @@ ] }, "aws-native:apigateway:DocumentationPart": { - "description": "Resource Type definition for AWS::ApiGateway::DocumentationPart", + "description": "The ``AWS::ApiGateway::DocumentationPart`` resource creates a documentation part for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*.", "properties": { "documentationPartId": { "type": "string", @@ -123171,16 +123620,16 @@ }, "location": { "$ref": "#/types/aws-native:apigateway:DocumentationPartLocation", - "description": "The location of the API entity that the documentation applies to.", + "description": "The location of the targeted API entity of the to-be-created documentation part.", "replaceOnChanges": true }, "properties": { "type": "string", - "description": "The documentation content map of the targeted API entity." + "description": "The new documentation content map of the targeted API entity. Enclosed key-value pairs are API-specific, but only OpenAPI-compliant key-value pairs can be exported and, hence, published." }, "restApiId": { "type": "string", - "description": "Identifier of the targeted API entity", + "description": "The string identifier of the associated RestApi.", "replaceOnChanges": true } }, @@ -123194,15 +123643,15 @@ "inputProperties": { "location": { "$ref": "#/types/aws-native:apigateway:DocumentationPartLocation", - "description": "The location of the API entity that the documentation applies to." + "description": "The location of the targeted API entity of the to-be-created documentation part." }, "properties": { "type": "string", - "description": "The documentation content map of the targeted API entity." + "description": "The new documentation content map of the targeted API entity. Enclosed key-value pairs are API-specific, but only OpenAPI-compliant key-value pairs can be exported and, hence, published." }, "restApiId": { "type": "string", - "description": "Identifier of the targeted API entity" + "description": "The string identifier of the associated RestApi." } }, "requiredInputs": [ @@ -123212,15 +123661,15 @@ ] }, "aws-native:apigateway:DocumentationVersion": { - "description": "A snapshot of the documentation of an API.", + "description": "The ``AWS::ApiGateway::DocumentationVersion`` resource creates a snapshot of the documentation for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*.", "properties": { "description": { "type": "string", - "description": "The description of the API documentation snapshot." + "description": "A description about the new documentation snapshot." }, "documentationVersion": { "type": "string", - "description": "The version identifier of the API documentation snapshot.", + "description": "The version identifier of the to-be-updated documentation version.", "language": { "csharp": { "name": "DocumentationVersionValue" @@ -123230,7 +123679,7 @@ }, "restApiId": { "type": "string", - "description": "The identifier of the API.", + "description": "The string identifier of the associated RestApi.", "replaceOnChanges": true } }, @@ -123242,11 +123691,11 @@ "inputProperties": { "description": { "type": "string", - "description": "The description of the API documentation snapshot." + "description": "A description about the new documentation snapshot." }, "documentationVersion": { "type": "string", - "description": "The version identifier of the API documentation snapshot.", + "description": "The version identifier of the to-be-updated documentation version.", "language": { "csharp": { "name": "DocumentationVersionValue" @@ -123255,7 +123704,7 @@ }, "restApiId": { "type": "string", - "description": "The identifier of the API." + "description": "The string identifier of the associated RestApi." } }, "requiredInputs": [ @@ -123355,67 +123804,67 @@ } }, "aws-native:apigateway:Method": { - "description": "Resource Type definition for AWS::ApiGateway::Method", + "description": "The ``AWS::ApiGateway::Method`` resource creates API Gateway methods that define the parameters and body that clients must send in their requests.", "properties": { "apiKeyRequired": { "type": "boolean", - "description": "Indicates whether the method requires clients to submit a valid API key." + "description": "A boolean flag specifying whether a valid ApiKey is required to invoke this method." }, "authorizationScopes": { "type": "array", "items": { "type": "string" }, - "description": "A list of authorization scopes configured on the method." + "description": "A list of authorization scopes configured on the method. The scopes are used with a ``COGNITO_USER_POOLS`` authorizer to authorize the method invocation. The authorization works by matching the method scopes against the scopes parsed from the access token in the incoming request. The method invocation is authorized if any method scopes matches a claimed scope in the access token. Otherwise, the invocation is not authorized. When the method scope is configured, the client must provide an access token instead of an identity token for authorization purposes." }, "authorizationType": { "$ref": "#/types/aws-native:apigateway:MethodAuthorizationType", - "description": "The method's authorization type." + "description": "The method's authorization type. This parameter is required. For valid values, see [Method](https://docs.aws.amazon.com/apigateway/latest/api/API_Method.html) in the *API Gateway API Reference*.\n If you specify the ``AuthorizerId`` property, specify ``CUSTOM`` or ``COGNITO_USER_POOLS`` for this property." }, "authorizerId": { "type": "string", - "description": "The identifier of the authorizer to use on this method." + "description": "The identifier of an authorizer to use on this method. The method's authorization type must be ``CUSTOM`` or ``COGNITO_USER_POOLS``." }, "httpMethod": { "type": "string", - "description": "The backend system that the method calls when it receives a request.", + "description": "The method's HTTP verb.", "replaceOnChanges": true }, "integration": { "$ref": "#/types/aws-native:apigateway:MethodIntegration", - "description": "The backend system that the method calls when it receives a request." + "description": "Represents an ``HTTP``, ``HTTP_PROXY``, ``AWS``, ``AWS_PROXY``, or Mock integration." }, "methodResponses": { "type": "array", "items": { "$ref": "#/types/aws-native:apigateway:MethodResponse" }, - "description": "The responses that can be sent to the client who calls the method." + "description": "Gets a method response associated with a given HTTP status code." }, "operationName": { "type": "string", - "description": "A friendly operation name for the method." + "description": "A human-friendly operation identifier for the method. For example, you can assign the ``operationName`` of ``ListPets`` for the ``GET /pets`` method in the ``PetStore`` example." }, "requestModels": { "$ref": "pulumi.json#/Any", - "description": "The resources that are used for the request's content type. Specify request models as key-value pairs (string-to-string mapping), with a content type as the key and a Model resource name as the value." + "description": "A key-value map specifying data schemas, represented by Model resources, (as the mapped value) of the request payloads of given content types (as the mapping key)." }, "requestParameters": { "$ref": "pulumi.json#/Any", - "description": "The request parameters that API Gateway accepts. Specify request parameters as key-value pairs (string-to-Boolean mapping), with a source as the key and a Boolean as the value." + "description": "A key-value map defining required or optional method request parameters that can be accepted by API Gateway. A key is a method request parameter name matching the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and ``name`` is a valid and unique parameter name. The value associated with the key is a Boolean flag indicating whether the parameter is required (``true``) or optional (``false``). The method request parameter names defined here are available in Integration to be mapped to integration request parameters or templates." }, "requestValidatorId": { "type": "string", - "description": "The ID of the associated request validator." + "description": "The identifier of a RequestValidator for request validation." }, "resourceId": { "type": "string", - "description": "The ID of an API Gateway resource.", + "description": "The Resource identifier for the MethodResponse resource.", "replaceOnChanges": true }, "restApiId": { "type": "string", - "description": "The ID of the RestApi resource in which API Gateway creates the method.", + "description": "The string identifier of the associated RestApi.", "replaceOnChanges": true } }, @@ -123428,61 +123877,61 @@ "inputProperties": { "apiKeyRequired": { "type": "boolean", - "description": "Indicates whether the method requires clients to submit a valid API key." + "description": "A boolean flag specifying whether a valid ApiKey is required to invoke this method." }, "authorizationScopes": { "type": "array", "items": { "type": "string" }, - "description": "A list of authorization scopes configured on the method." + "description": "A list of authorization scopes configured on the method. The scopes are used with a ``COGNITO_USER_POOLS`` authorizer to authorize the method invocation. The authorization works by matching the method scopes against the scopes parsed from the access token in the incoming request. The method invocation is authorized if any method scopes matches a claimed scope in the access token. Otherwise, the invocation is not authorized. When the method scope is configured, the client must provide an access token instead of an identity token for authorization purposes." }, "authorizationType": { "$ref": "#/types/aws-native:apigateway:MethodAuthorizationType", - "description": "The method's authorization type." + "description": "The method's authorization type. This parameter is required. For valid values, see [Method](https://docs.aws.amazon.com/apigateway/latest/api/API_Method.html) in the *API Gateway API Reference*.\n If you specify the ``AuthorizerId`` property, specify ``CUSTOM`` or ``COGNITO_USER_POOLS`` for this property." }, "authorizerId": { "type": "string", - "description": "The identifier of the authorizer to use on this method." + "description": "The identifier of an authorizer to use on this method. The method's authorization type must be ``CUSTOM`` or ``COGNITO_USER_POOLS``." }, "httpMethod": { "type": "string", - "description": "The backend system that the method calls when it receives a request." + "description": "The method's HTTP verb." }, "integration": { "$ref": "#/types/aws-native:apigateway:MethodIntegration", - "description": "The backend system that the method calls when it receives a request." + "description": "Represents an ``HTTP``, ``HTTP_PROXY``, ``AWS``, ``AWS_PROXY``, or Mock integration." }, "methodResponses": { "type": "array", "items": { "$ref": "#/types/aws-native:apigateway:MethodResponse" }, - "description": "The responses that can be sent to the client who calls the method." + "description": "Gets a method response associated with a given HTTP status code." }, "operationName": { "type": "string", - "description": "A friendly operation name for the method." + "description": "A human-friendly operation identifier for the method. For example, you can assign the ``operationName`` of ``ListPets`` for the ``GET /pets`` method in the ``PetStore`` example." }, "requestModels": { "$ref": "pulumi.json#/Any", - "description": "The resources that are used for the request's content type. Specify request models as key-value pairs (string-to-string mapping), with a content type as the key and a Model resource name as the value." + "description": "A key-value map specifying data schemas, represented by Model resources, (as the mapped value) of the request payloads of given content types (as the mapping key)." }, "requestParameters": { "$ref": "pulumi.json#/Any", - "description": "The request parameters that API Gateway accepts. Specify request parameters as key-value pairs (string-to-Boolean mapping), with a source as the key and a Boolean as the value." + "description": "A key-value map defining required or optional method request parameters that can be accepted by API Gateway. A key is a method request parameter name matching the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and ``name`` is a valid and unique parameter name. The value associated with the key is a Boolean flag indicating whether the parameter is required (``true``) or optional (``false``). The method request parameter names defined here are available in Integration to be mapped to integration request parameters or templates." }, "requestValidatorId": { "type": "string", - "description": "The ID of the associated request validator." + "description": "The identifier of a RequestValidator for request validation." }, "resourceId": { "type": "string", - "description": "The ID of an API Gateway resource." + "description": "The Resource identifier for the MethodResponse resource." }, "restApiId": { "type": "string", - "description": "The ID of the RestApi resource in which API Gateway creates the method." + "description": "The string identifier of the associated RestApi." } }, "requiredInputs": [ @@ -123492,30 +123941,30 @@ ] }, "aws-native:apigateway:Model": { - "description": "Resource Type definition for AWS::ApiGateway::Model", + "description": "The ``AWS::ApiGateway::Model`` resource defines the structure of a request or response payload for an API method.", "properties": { "contentType": { "type": "string", - "description": "The content type for the model.", + "description": "The content-type for the model.", "replaceOnChanges": true }, "description": { "type": "string", - "description": "A description that identifies this model." + "description": "The description of the model." }, "name": { "type": "string", - "description": "A name for the model. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the model name.", + "description": "A name for the model. If you don't specify a name, CFN generates a unique physical ID and uses that ID for the model name. For more information, see [Name Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html).\n If you specify a name, you cannot perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name.", "replaceOnChanges": true }, "restApiId": { "type": "string", - "description": "The ID of a REST API with which to associate this model.", + "description": "The string identifier of the associated RestApi.", "replaceOnChanges": true }, "schema": { "$ref": "pulumi.json#/Any", - "description": "The schema to use to transform data to one or more output formats. Specify null ({}) if you don't want to specify a schema." + "description": "The schema for the model. For ``application/json`` models, this should be JSON schema draft 4 model. Do not include \"\\*/\" characters in the description of any properties because such \"\\*/\" characters may be interpreted as the closing marker for comments in some languages, such as Java or JavaScript, causing the installation of your API's SDK generated by API Gateway to fail." } }, "type": "object", @@ -123525,23 +123974,23 @@ "inputProperties": { "contentType": { "type": "string", - "description": "The content type for the model." + "description": "The content-type for the model." }, "description": { "type": "string", - "description": "A description that identifies this model." + "description": "The description of the model." }, "name": { "type": "string", - "description": "A name for the model. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the model name." + "description": "A name for the model. If you don't specify a name, CFN generates a unique physical ID and uses that ID for the model name. For more information, see [Name Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html).\n If you specify a name, you cannot perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name." }, "restApiId": { "type": "string", - "description": "The ID of a REST API with which to associate this model." + "description": "The string identifier of the associated RestApi." }, "schema": { "$ref": "pulumi.json#/Any", - "description": "The schema to use to transform data to one or more output formats. Specify null ({}) if you don't want to specify a schema." + "description": "The schema for the model. For ``application/json`` models, this should be JSON schema draft 4 model. Do not include \"\\*/\" characters in the description of any properties because such \"\\*/\" characters may be interpreted as the closing marker for comments in some languages, such as Java or JavaScript, causing the installation of your API's SDK generated by API Gateway to fail." } }, "requiredInputs": [ @@ -123602,7 +124051,7 @@ ] }, "aws-native:apigateway:Resource": { - "description": "Resource Type definition for AWS::ApiGateway::Resource", + "description": "The ``AWS::ApiGateway::Resource`` resource creates a resource in an API.", "properties": { "parentId": { "type": "string", @@ -123620,7 +124069,7 @@ }, "restApiId": { "type": "string", - "description": "The ID of the RestApi resource in which you want to create this resource..", + "description": "The string identifier of the associated RestApi.", "replaceOnChanges": true } }, @@ -123642,7 +124091,7 @@ }, "restApiId": { "type": "string", - "description": "The ID of the RestApi resource in which you want to create this resource.." + "description": "The string identifier of the associated RestApi." } }, "requiredInputs": [ @@ -123652,52 +124101,66 @@ ] }, "aws-native:apigateway:RestApi": { - "description": "Resource Type definition for AWS::ApiGateway::RestApi.\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 config = new Config();\n var apiName = config.Require(\"apiName\");\n var description = config.Require(\"description\");\n var version = config.Require(\"version\");\n var type = config.Require(\"type\");\n var property = config.Require(\"property\");\n var restApi = new AwsNative.ApiGateway.RestApi(\"restApi\", new()\n {\n Name = apiName,\n });\n\n var documentationPart = new AwsNative.ApiGateway.DocumentationPart(\"documentationPart\", new()\n {\n Location = new AwsNative.ApiGateway.Inputs.DocumentationPartLocationArgs\n {\n Type = System.Enum.Parse\u003cAwsNative.ApiGateway.DocumentationPartLocationType\u003e(type),\n },\n RestApiId = restApi.Id,\n Properties = property,\n });\n\n var documentationVersion = new AwsNative.ApiGateway.DocumentationVersion(\"documentationVersion\", new()\n {\n Description = description,\n DocumentationVersionValue = version,\n RestApiId = restApi.Id,\n }, new CustomResourceOptions\n {\n DependsOn = new[]\n {\n documentationPart,\n },\n });\n\n});\n\n\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws_native from \"@pulumi/aws-native\";\n\nconst config = new pulumi.Config();\nconst apiName = config.require(\"apiName\");\nconst description = config.require(\"description\");\nconst version = config.require(\"version\");\nconst type = config.require(\"type\");\nconst property = config.require(\"property\");\nconst restApi = new aws_native.apigateway.RestApi(\"restApi\", {name: apiName});\nconst documentationPart = new aws_native.apigateway.DocumentationPart(\"documentationPart\", {\n location: {\n type: aws_native.apigateway.DocumentationPartLocationType[type],\n },\n restApiId: restApi.id,\n properties: property,\n});\nconst documentationVersion = new aws_native.apigateway.DocumentationVersion(\"documentationVersion\", {\n description: description,\n documentationVersion: version,\n restApiId: restApi.id,\n}, {\n dependsOn: [documentationPart],\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nconfig = pulumi.Config()\napi_name = config.require(\"apiName\")\ndescription = config.require(\"description\")\nversion = config.require(\"version\")\ntype = config.require(\"type\")\nproperty = config.require(\"property\")\nrest_api = aws_native.apigateway.RestApi(\"restApi\", name=api_name)\ndocumentation_part = aws_native.apigateway.DocumentationPart(\"documentationPart\",\n location=aws_native.apigateway.DocumentationPartLocationArgs(\n type=aws_native.apigateway.DocumentationPartLocationType(type),\n ),\n rest_api_id=rest_api.id,\n properties=property)\ndocumentation_version = aws_native.apigateway.DocumentationVersion(\"documentationVersion\",\n description=description,\n documentation_version=version,\n rest_api_id=rest_api.id,\n opts=pulumi.ResourceOptions(depends_on=[documentation_part]))\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 config = new Config();\n var apiName = config.Require(\"apiName\");\n var description = config.Require(\"description\");\n var version = config.Require(\"version\");\n var type = config.Require(\"type\");\n var property = config.Require(\"property\");\n var restApi = new AwsNative.ApiGateway.RestApi(\"restApi\", new()\n {\n Name = apiName,\n });\n\n var documentationPart = new AwsNative.ApiGateway.DocumentationPart(\"documentationPart\", new()\n {\n Location = new AwsNative.ApiGateway.Inputs.DocumentationPartLocationArgs\n {\n Type = System.Enum.Parse\u003cAwsNative.ApiGateway.DocumentationPartLocationType\u003e(type),\n },\n RestApiId = restApi.Id,\n Properties = property,\n });\n\n var documentationVersion = new AwsNative.ApiGateway.DocumentationVersion(\"documentationVersion\", new()\n {\n Description = description,\n DocumentationVersionValue = version,\n RestApiId = restApi.Id,\n }, new CustomResourceOptions\n {\n DependsOn = new[]\n {\n documentationPart,\n },\n });\n\n});\n\n\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws_native from \"@pulumi/aws-native\";\n\nconst config = new pulumi.Config();\nconst apiName = config.require(\"apiName\");\nconst description = config.require(\"description\");\nconst version = config.require(\"version\");\nconst type = config.require(\"type\");\nconst property = config.require(\"property\");\nconst restApi = new aws_native.apigateway.RestApi(\"restApi\", {name: apiName});\nconst documentationPart = new aws_native.apigateway.DocumentationPart(\"documentationPart\", {\n location: {\n type: aws_native.apigateway.DocumentationPartLocationType[type],\n },\n restApiId: restApi.id,\n properties: property,\n});\nconst documentationVersion = new aws_native.apigateway.DocumentationVersion(\"documentationVersion\", {\n description: description,\n documentationVersion: version,\n restApiId: restApi.id,\n}, {\n dependsOn: [documentationPart],\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nconfig = pulumi.Config()\napi_name = config.require(\"apiName\")\ndescription = config.require(\"description\")\nversion = config.require(\"version\")\ntype = config.require(\"type\")\nproperty = config.require(\"property\")\nrest_api = aws_native.apigateway.RestApi(\"restApi\", name=api_name)\ndocumentation_part = aws_native.apigateway.DocumentationPart(\"documentationPart\",\n location=aws_native.apigateway.DocumentationPartLocationArgs(\n type=aws_native.apigateway.DocumentationPartLocationType(type),\n ),\n rest_api_id=rest_api.id,\n properties=property)\ndocumentation_version = aws_native.apigateway.DocumentationVersion(\"documentationVersion\",\n description=description,\n documentation_version=version,\n rest_api_id=rest_api.id,\n opts=pulumi.ResourceOptions(depends_on=[documentation_part]))\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 config = new Config();\n var contentHandling = config.Require(\"contentHandling\");\n var operationName = config.Get(\"operationName\") ?? \"testoperationName\";\n var restApiName = config.Get(\"restApiName\") ?? \"testrestApiName\";\n var validatorName = config.Get(\"validatorName\") ?? \"testvalidatorName\";\n var validateRequestBody = config.Get(\"validateRequestBody\") ?? \"testvalidateRequestBody\";\n var validateRequestParameters = config.Get(\"validateRequestParameters\") ?? true;\n var restApi = new AwsNative.ApiGateway.RestApi(\"restApi\", new()\n {\n Name = restApiName,\n });\n\n var requestValidator = new AwsNative.ApiGateway.RequestValidator(\"requestValidator\", new()\n {\n Name = validatorName,\n RestApiId = restApi.Id,\n ValidateRequestBody = validateRequestBody,\n ValidateRequestParameters = validateRequestParameters,\n });\n\n var method = new AwsNative.ApiGateway.Method(\"method\", new()\n {\n HttpMethod = \"POST\",\n ResourceId = restApi.RootResourceId,\n RestApiId = restApi.Id,\n AuthorizationType = AwsNative.ApiGateway.MethodAuthorizationType.None,\n Integration = new AwsNative.ApiGateway.Inputs.MethodIntegrationArgs\n {\n Type = AwsNative.ApiGateway.MethodIntegrationType.Mock,\n ContentHandling = System.Enum.Parse\u003cAwsNative.ApiGateway.MethodIntegrationContentHandling\u003e(contentHandling),\n IntegrationResponses = new[]\n {\n new AwsNative.ApiGateway.Inputs.MethodIntegrationResponseArgs\n {\n ContentHandling = System.Enum.Parse\u003cAwsNative.ApiGateway.MethodIntegrationResponseContentHandling\u003e(contentHandling),\n StatusCode = \"400\",\n },\n },\n },\n RequestValidatorId = requestValidator.Id,\n OperationName = operationName,\n });\n\n return new Dictionary\u003cstring, object?\u003e\n {\n [\"rootResourceId\"] = restApi.RootResourceId,\n };\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\ncfg := config.New(ctx, \"\")\ncontentHandling := cfg.Require(\"contentHandling\")\noperationName := \"testoperationName\";\nif param := cfg.Get(\"operationName\"); param != \"\"{\noperationName = param\n}\nrestApiName := \"testrestApiName\";\nif param := cfg.Get(\"restApiName\"); param != \"\"{\nrestApiName = param\n}\nvalidatorName := \"testvalidatorName\";\nif param := cfg.Get(\"validatorName\"); param != \"\"{\nvalidatorName = param\n}\nvalidateRequestBody := \"testvalidateRequestBody\";\nif param := cfg.Get(\"validateRequestBody\"); param != \"\"{\nvalidateRequestBody = param\n}\nvalidateRequestParameters := true;\nif param := cfg.Get(\"validateRequestParameters\"); param != \"\"{\nvalidateRequestParameters = param\n}\nrestApi, err := apigateway.NewRestApi(ctx, \"restApi\", \u0026apigateway.RestApiArgs{\nName: pulumi.String(restApiName),\n})\nif err != nil {\nreturn err\n}\nrequestValidator, err := apigateway.NewRequestValidator(ctx, \"requestValidator\", \u0026apigateway.RequestValidatorArgs{\nName: pulumi.String(validatorName),\nRestApiId: restApi.ID(),\nValidateRequestBody: pulumi.String(validateRequestBody),\nValidateRequestParameters: pulumi.String(validateRequestParameters),\n})\nif err != nil {\nreturn err\n}\n_, err = apigateway.NewMethod(ctx, \"method\", \u0026apigateway.MethodArgs{\nHttpMethod: pulumi.String(\"POST\"),\nResourceId: restApi.RootResourceId,\nRestApiId: restApi.ID(),\nAuthorizationType: apigateway.MethodAuthorizationTypeNone,\nIntegration: interface{}{\nType: apigateway.MethodIntegrationTypeMock,\nContentHandling: apigateway.MethodIntegrationContentHandling(contentHandling),\nIntegrationResponses: apigateway.MethodIntegrationResponseArray{\n\u0026apigateway.MethodIntegrationResponseArgs{\nContentHandling: apigateway.MethodIntegrationResponseContentHandling(contentHandling),\nStatusCode: pulumi.String(\"400\"),\n},\n},\n},\nRequestValidatorId: requestValidator.ID(),\nOperationName: pulumi.String(operationName),\n})\nif err != nil {\nreturn err\n}\nctx.Export(\"rootResourceId\", restApi.RootResourceId)\nreturn nil\n})\n}\n\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws_native from \"@pulumi/aws-native\";\n\nconst config = new pulumi.Config();\nconst contentHandling = config.require(\"contentHandling\");\nconst operationName = config.get(\"operationName\") || \"testoperationName\";\nconst restApiName = config.get(\"restApiName\") || \"testrestApiName\";\nconst validatorName = config.get(\"validatorName\") || \"testvalidatorName\";\nconst validateRequestBody = config.get(\"validateRequestBody\") || \"testvalidateRequestBody\";\nconst validateRequestParameters = config.get(\"validateRequestParameters\") || true;\nconst restApi = new aws_native.apigateway.RestApi(\"restApi\", {name: restApiName});\nconst requestValidator = new aws_native.apigateway.RequestValidator(\"requestValidator\", {\n name: validatorName,\n restApiId: restApi.id,\n validateRequestBody: validateRequestBody,\n validateRequestParameters: validateRequestParameters,\n});\nconst method = new aws_native.apigateway.Method(\"method\", {\n httpMethod: \"POST\",\n resourceId: restApi.rootResourceId,\n restApiId: restApi.id,\n authorizationType: aws_native.apigateway.MethodAuthorizationType.None,\n integration: {\n type: aws_native.apigateway.MethodIntegrationType.Mock,\n contentHandling: aws_native.apigateway.MethodIntegrationContentHandling[contentHandling],\n integrationResponses: [{\n contentHandling: aws_native.apigateway.MethodIntegrationResponseContentHandling[contentHandling],\n statusCode: \"400\",\n }],\n },\n requestValidatorId: requestValidator.id,\n operationName: operationName,\n});\nexport const rootResourceId = restApi.rootResourceId;\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nconfig = pulumi.Config()\ncontent_handling = config.require(\"contentHandling\")\noperation_name = config.get(\"operationName\")\nif operation_name is None:\n operation_name = \"testoperationName\"\nrest_api_name = config.get(\"restApiName\")\nif rest_api_name is None:\n rest_api_name = \"testrestApiName\"\nvalidator_name = config.get(\"validatorName\")\nif validator_name is None:\n validator_name = \"testvalidatorName\"\nvalidate_request_body = config.get(\"validateRequestBody\")\nif validate_request_body is None:\n validate_request_body = \"testvalidateRequestBody\"\nvalidate_request_parameters = config.get(\"validateRequestParameters\")\nif validate_request_parameters is None:\n validate_request_parameters = True\nrest_api = aws_native.apigateway.RestApi(\"restApi\", name=rest_api_name)\nrequest_validator = aws_native.apigateway.RequestValidator(\"requestValidator\",\n name=validator_name,\n rest_api_id=rest_api.id,\n validate_request_body=validate_request_body,\n validate_request_parameters=validate_request_parameters)\nmethod = aws_native.apigateway.Method(\"method\",\n http_method=\"POST\",\n resource_id=rest_api.root_resource_id,\n rest_api_id=rest_api.id,\n authorization_type=aws_native.apigateway.MethodAuthorizationType.NONE,\n integration=aws_native.apigateway.MethodIntegrationArgs(\n type=aws_native.apigateway.MethodIntegrationType.MOCK,\n content_handling=aws_native.apigateway.MethodIntegrationContentHandling(content_handling),\n integration_responses=[aws_native.apigateway.MethodIntegrationResponseArgs(\n content_handling=aws_native.apigateway.MethodIntegrationResponseContentHandling(content_handling),\n status_code=\"400\",\n )],\n ),\n request_validator_id=request_validator.id,\n operation_name=operation_name)\npulumi.export(\"rootResourceId\", rest_api.root_resource_id)\n\n```\n\n{{% /example %}}\n{{% example %}}\n### Example\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AwsNative = Pulumi.AwsNative;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var contentHandling = config.Require(\"contentHandling\");\n var operationName = config.Get(\"operationName\") ?? \"testoperationName\";\n var restApiName = config.Get(\"restApiName\") ?? \"testrestApiName\";\n var validatorName = config.Get(\"validatorName\") ?? \"testvalidatorName\";\n var validateRequestBody = config.Get(\"validateRequestBody\") ?? \"testvalidateRequestBody\";\n var validateRequestParameters = config.Get(\"validateRequestParameters\") ?? true;\n var restApi = new AwsNative.ApiGateway.RestApi(\"restApi\", new()\n {\n Name = restApiName,\n });\n\n var requestValidator = new AwsNative.ApiGateway.RequestValidator(\"requestValidator\", new()\n {\n Name = validatorName,\n RestApiId = restApi.Id,\n ValidateRequestBody = validateRequestBody,\n ValidateRequestParameters = validateRequestParameters,\n });\n\n var method = new AwsNative.ApiGateway.Method(\"method\", new()\n {\n HttpMethod = \"POST\",\n ResourceId = restApi.RootResourceId,\n RestApiId = restApi.Id,\n AuthorizationType = AwsNative.ApiGateway.MethodAuthorizationType.None,\n Integration = new AwsNative.ApiGateway.Inputs.MethodIntegrationArgs\n {\n Type = AwsNative.ApiGateway.MethodIntegrationType.Mock,\n ContentHandling = System.Enum.Parse\u003cAwsNative.ApiGateway.MethodIntegrationContentHandling\u003e(contentHandling),\n IntegrationResponses = new[]\n {\n new AwsNative.ApiGateway.Inputs.MethodIntegrationResponseArgs\n {\n ContentHandling = System.Enum.Parse\u003cAwsNative.ApiGateway.MethodIntegrationResponseContentHandling\u003e(contentHandling),\n StatusCode = \"400\",\n },\n },\n },\n RequestValidatorId = requestValidator.Id,\n OperationName = operationName,\n });\n\n return new Dictionary\u003cstring, object?\u003e\n {\n [\"rootResourceId\"] = restApi.RootResourceId,\n };\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\ncfg := config.New(ctx, \"\")\ncontentHandling := cfg.Require(\"contentHandling\")\noperationName := \"testoperationName\";\nif param := cfg.Get(\"operationName\"); param != \"\"{\noperationName = param\n}\nrestApiName := \"testrestApiName\";\nif param := cfg.Get(\"restApiName\"); param != \"\"{\nrestApiName = param\n}\nvalidatorName := \"testvalidatorName\";\nif param := cfg.Get(\"validatorName\"); param != \"\"{\nvalidatorName = param\n}\nvalidateRequestBody := \"testvalidateRequestBody\";\nif param := cfg.Get(\"validateRequestBody\"); param != \"\"{\nvalidateRequestBody = param\n}\nvalidateRequestParameters := true;\nif param := cfg.Get(\"validateRequestParameters\"); param != \"\"{\nvalidateRequestParameters = param\n}\nrestApi, err := apigateway.NewRestApi(ctx, \"restApi\", \u0026apigateway.RestApiArgs{\nName: pulumi.String(restApiName),\n})\nif err != nil {\nreturn err\n}\nrequestValidator, err := apigateway.NewRequestValidator(ctx, \"requestValidator\", \u0026apigateway.RequestValidatorArgs{\nName: pulumi.String(validatorName),\nRestApiId: restApi.ID(),\nValidateRequestBody: pulumi.String(validateRequestBody),\nValidateRequestParameters: pulumi.String(validateRequestParameters),\n})\nif err != nil {\nreturn err\n}\n_, err = apigateway.NewMethod(ctx, \"method\", \u0026apigateway.MethodArgs{\nHttpMethod: pulumi.String(\"POST\"),\nResourceId: restApi.RootResourceId,\nRestApiId: restApi.ID(),\nAuthorizationType: apigateway.MethodAuthorizationTypeNone,\nIntegration: interface{}{\nType: apigateway.MethodIntegrationTypeMock,\nContentHandling: apigateway.MethodIntegrationContentHandling(contentHandling),\nIntegrationResponses: apigateway.MethodIntegrationResponseArray{\n\u0026apigateway.MethodIntegrationResponseArgs{\nContentHandling: apigateway.MethodIntegrationResponseContentHandling(contentHandling),\nStatusCode: pulumi.String(\"400\"),\n},\n},\n},\nRequestValidatorId: requestValidator.ID(),\nOperationName: pulumi.String(operationName),\n})\nif err != nil {\nreturn err\n}\nctx.Export(\"rootResourceId\", restApi.RootResourceId)\nreturn nil\n})\n}\n\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws_native from \"@pulumi/aws-native\";\n\nconst config = new pulumi.Config();\nconst contentHandling = config.require(\"contentHandling\");\nconst operationName = config.get(\"operationName\") || \"testoperationName\";\nconst restApiName = config.get(\"restApiName\") || \"testrestApiName\";\nconst validatorName = config.get(\"validatorName\") || \"testvalidatorName\";\nconst validateRequestBody = config.get(\"validateRequestBody\") || \"testvalidateRequestBody\";\nconst validateRequestParameters = config.get(\"validateRequestParameters\") || true;\nconst restApi = new aws_native.apigateway.RestApi(\"restApi\", {name: restApiName});\nconst requestValidator = new aws_native.apigateway.RequestValidator(\"requestValidator\", {\n name: validatorName,\n restApiId: restApi.id,\n validateRequestBody: validateRequestBody,\n validateRequestParameters: validateRequestParameters,\n});\nconst method = new aws_native.apigateway.Method(\"method\", {\n httpMethod: \"POST\",\n resourceId: restApi.rootResourceId,\n restApiId: restApi.id,\n authorizationType: aws_native.apigateway.MethodAuthorizationType.None,\n integration: {\n type: aws_native.apigateway.MethodIntegrationType.Mock,\n contentHandling: aws_native.apigateway.MethodIntegrationContentHandling[contentHandling],\n integrationResponses: [{\n contentHandling: aws_native.apigateway.MethodIntegrationResponseContentHandling[contentHandling],\n statusCode: \"400\",\n }],\n },\n requestValidatorId: requestValidator.id,\n operationName: operationName,\n});\nexport const rootResourceId = restApi.rootResourceId;\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nconfig = pulumi.Config()\ncontent_handling = config.require(\"contentHandling\")\noperation_name = config.get(\"operationName\")\nif operation_name is None:\n operation_name = \"testoperationName\"\nrest_api_name = config.get(\"restApiName\")\nif rest_api_name is None:\n rest_api_name = \"testrestApiName\"\nvalidator_name = config.get(\"validatorName\")\nif validator_name is None:\n validator_name = \"testvalidatorName\"\nvalidate_request_body = config.get(\"validateRequestBody\")\nif validate_request_body is None:\n validate_request_body = \"testvalidateRequestBody\"\nvalidate_request_parameters = config.get(\"validateRequestParameters\")\nif validate_request_parameters is None:\n validate_request_parameters = True\nrest_api = aws_native.apigateway.RestApi(\"restApi\", name=rest_api_name)\nrequest_validator = aws_native.apigateway.RequestValidator(\"requestValidator\",\n name=validator_name,\n rest_api_id=rest_api.id,\n validate_request_body=validate_request_body,\n validate_request_parameters=validate_request_parameters)\nmethod = aws_native.apigateway.Method(\"method\",\n http_method=\"POST\",\n resource_id=rest_api.root_resource_id,\n rest_api_id=rest_api.id,\n authorization_type=aws_native.apigateway.MethodAuthorizationType.NONE,\n integration=aws_native.apigateway.MethodIntegrationArgs(\n type=aws_native.apigateway.MethodIntegrationType.MOCK,\n content_handling=aws_native.apigateway.MethodIntegrationContentHandling(content_handling),\n integration_responses=[aws_native.apigateway.MethodIntegrationResponseArgs(\n content_handling=aws_native.apigateway.MethodIntegrationResponseContentHandling(content_handling),\n status_code=\"400\",\n )],\n ),\n request_validator_id=request_validator.id,\n operation_name=operation_name)\npulumi.export(\"rootResourceId\", rest_api.root_resource_id)\n\n```\n\n{{% /example %}}\n{{% example %}}\n### Example\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AwsNative = Pulumi.AwsNative;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var apiName = config.Require(\"apiName\");\n var validatorName = config.Require(\"validatorName\");\n var validateRequestBody = config.Require(\"validateRequestBody\");\n var validateRequestParameters = config.Require(\"validateRequestParameters\");\n var restApi = new AwsNative.ApiGateway.RestApi(\"restApi\", new()\n {\n Name = apiName,\n });\n\n var requestValidator = new AwsNative.ApiGateway.RequestValidator(\"requestValidator\", new()\n {\n Name = validatorName,\n RestApiId = restApi.Id,\n ValidateRequestBody = validateRequestBody,\n ValidateRequestParameters = validateRequestParameters,\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tapiName := cfg.Require(\"apiName\")\n\t\tvalidatorName := cfg.Require(\"validatorName\")\n\t\tvalidateRequestBody := cfg.Require(\"validateRequestBody\")\n\t\tvalidateRequestParameters := cfg.Require(\"validateRequestParameters\")\n\t\trestApi, err := apigateway.NewRestApi(ctx, \"restApi\", \u0026apigateway.RestApiArgs{\n\t\t\tName: pulumi.String(apiName),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = apigateway.NewRequestValidator(ctx, \"requestValidator\", \u0026apigateway.RequestValidatorArgs{\n\t\t\tName: pulumi.String(validatorName),\n\t\t\tRestApiId: restApi.ID(),\n\t\t\tValidateRequestBody: pulumi.String(validateRequestBody),\n\t\t\tValidateRequestParameters: pulumi.String(validateRequestParameters),\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 config = new pulumi.Config();\nconst apiName = config.require(\"apiName\");\nconst validatorName = config.require(\"validatorName\");\nconst validateRequestBody = config.require(\"validateRequestBody\");\nconst validateRequestParameters = config.require(\"validateRequestParameters\");\nconst restApi = new aws_native.apigateway.RestApi(\"restApi\", {name: apiName});\nconst requestValidator = new aws_native.apigateway.RequestValidator(\"requestValidator\", {\n name: validatorName,\n restApiId: restApi.id,\n validateRequestBody: validateRequestBody,\n validateRequestParameters: validateRequestParameters,\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nconfig = pulumi.Config()\napi_name = config.require(\"apiName\")\nvalidator_name = config.require(\"validatorName\")\nvalidate_request_body = config.require(\"validateRequestBody\")\nvalidate_request_parameters = config.require(\"validateRequestParameters\")\nrest_api = aws_native.apigateway.RestApi(\"restApi\", name=api_name)\nrequest_validator = aws_native.apigateway.RequestValidator(\"requestValidator\",\n name=validator_name,\n rest_api_id=rest_api.id,\n validate_request_body=validate_request_body,\n validate_request_parameters=validate_request_parameters)\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 config = new Config();\n var apiName = config.Require(\"apiName\");\n var validatorName = config.Require(\"validatorName\");\n var validateRequestBody = config.Require(\"validateRequestBody\");\n var validateRequestParameters = config.Require(\"validateRequestParameters\");\n var restApi = new AwsNative.ApiGateway.RestApi(\"restApi\", new()\n {\n Name = apiName,\n });\n\n var requestValidator = new AwsNative.ApiGateway.RequestValidator(\"requestValidator\", new()\n {\n Name = validatorName,\n RestApiId = restApi.Id,\n ValidateRequestBody = validateRequestBody,\n ValidateRequestParameters = validateRequestParameters,\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tapiName := cfg.Require(\"apiName\")\n\t\tvalidatorName := cfg.Require(\"validatorName\")\n\t\tvalidateRequestBody := cfg.Require(\"validateRequestBody\")\n\t\tvalidateRequestParameters := cfg.Require(\"validateRequestParameters\")\n\t\trestApi, err := apigateway.NewRestApi(ctx, \"restApi\", \u0026apigateway.RestApiArgs{\n\t\t\tName: pulumi.String(apiName),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = apigateway.NewRequestValidator(ctx, \"requestValidator\", \u0026apigateway.RequestValidatorArgs{\n\t\t\tName: pulumi.String(validatorName),\n\t\t\tRestApiId: restApi.ID(),\n\t\t\tValidateRequestBody: pulumi.String(validateRequestBody),\n\t\t\tValidateRequestParameters: pulumi.String(validateRequestParameters),\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 config = new pulumi.Config();\nconst apiName = config.require(\"apiName\");\nconst validatorName = config.require(\"validatorName\");\nconst validateRequestBody = config.require(\"validateRequestBody\");\nconst validateRequestParameters = config.require(\"validateRequestParameters\");\nconst restApi = new aws_native.apigateway.RestApi(\"restApi\", {name: apiName});\nconst requestValidator = new aws_native.apigateway.RequestValidator(\"requestValidator\", {\n name: validatorName,\n restApiId: restApi.id,\n validateRequestBody: validateRequestBody,\n validateRequestParameters: validateRequestParameters,\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nconfig = pulumi.Config()\napi_name = config.require(\"apiName\")\nvalidator_name = config.require(\"validatorName\")\nvalidate_request_body = config.require(\"validateRequestBody\")\nvalidate_request_parameters = config.require(\"validateRequestParameters\")\nrest_api = aws_native.apigateway.RestApi(\"restApi\", name=api_name)\nrequest_validator = aws_native.apigateway.RequestValidator(\"requestValidator\",\n name=validator_name,\n rest_api_id=rest_api.id,\n validate_request_body=validate_request_body,\n validate_request_parameters=validate_request_parameters)\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 config = new Config();\n var apiName = config.Require(\"apiName\");\n var type = config.Require(\"type\");\n var myRestApi = new AwsNative.ApiGateway.RestApi(\"myRestApi\", new()\n {\n EndpointConfiguration = new AwsNative.ApiGateway.Inputs.RestApiEndpointConfigurationArgs\n {\n Types = new[]\n {\n type,\n },\n },\n Name = apiName,\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tapiName := cfg.Require(\"apiName\")\n\t\t_type := cfg.Require(\"type\")\n\t\t_, err := apigateway.NewRestApi(ctx, \"myRestApi\", \u0026apigateway.RestApiArgs{\n\t\t\tEndpointConfiguration: \u0026apigateway.RestApiEndpointConfigurationArgs{\n\t\t\t\tTypes: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(_type),\n\t\t\t\t},\n\t\t\t},\n\t\t\tName: pulumi.String(apiName),\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 config = new pulumi.Config();\nconst apiName = config.require(\"apiName\");\nconst type = config.require(\"type\");\nconst myRestApi = new aws_native.apigateway.RestApi(\"myRestApi\", {\n endpointConfiguration: {\n types: [type],\n },\n name: apiName,\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nconfig = pulumi.Config()\napi_name = config.require(\"apiName\")\ntype = config.require(\"type\")\nmy_rest_api = aws_native.apigateway.RestApi(\"myRestApi\",\n endpoint_configuration=aws_native.apigateway.RestApiEndpointConfigurationArgs(\n types=[type],\n ),\n name=api_name)\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 config = new Config();\n var apiName = config.Require(\"apiName\");\n var type = config.Require(\"type\");\n var myRestApi = new AwsNative.ApiGateway.RestApi(\"myRestApi\", new()\n {\n EndpointConfiguration = new AwsNative.ApiGateway.Inputs.RestApiEndpointConfigurationArgs\n {\n Types = new[]\n {\n type,\n },\n },\n Name = apiName,\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tapiName := cfg.Require(\"apiName\")\n\t\t_type := cfg.Require(\"type\")\n\t\t_, err := apigateway.NewRestApi(ctx, \"myRestApi\", \u0026apigateway.RestApiArgs{\n\t\t\tEndpointConfiguration: \u0026apigateway.RestApiEndpointConfigurationArgs{\n\t\t\t\tTypes: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(_type),\n\t\t\t\t},\n\t\t\t},\n\t\t\tName: pulumi.String(apiName),\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 config = new pulumi.Config();\nconst apiName = config.require(\"apiName\");\nconst type = config.require(\"type\");\nconst myRestApi = new aws_native.apigateway.RestApi(\"myRestApi\", {\n endpointConfiguration: {\n types: [type],\n },\n name: apiName,\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nconfig = pulumi.Config()\napi_name = config.require(\"apiName\")\ntype = config.require(\"type\")\nmy_rest_api = aws_native.apigateway.RestApi(\"myRestApi\",\n endpoint_configuration=aws_native.apigateway.RestApiEndpointConfigurationArgs(\n types=[type],\n ),\n name=api_name)\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 restApi = new AwsNative.ApiGateway.RestApi(\"restApi\", new()\n {\n Body = \n {\n { \"swagger\", 2 },\n { \"info\", \n {\n { \"version\", \"0.0.1\" },\n { \"title\", \"test\" },\n } },\n { \"basePath\", \"/pete\" },\n { \"schemes\", new[]\n {\n \"https\",\n } },\n { \"definitions\", \n {\n { \"empty\", \n {\n { \"type\", \"object\" },\n } },\n } },\n },\n Name = \"myApi\",\n Parameters = \n {\n { \"endpointConfigurationTypes\", \"REGIONAL\" },\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/apigateway\"\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 := apigateway.NewRestApi(ctx, \"restApi\", \u0026apigateway.RestApiArgs{\n\t\t\tBody: pulumi.Any{\n\t\t\t\tSwagger: 2,\n\t\t\t\tInfo: map[string]interface{}{\n\t\t\t\t\t\"version\": \"0.0.1\",\n\t\t\t\t\t\"title\": \"test\",\n\t\t\t\t},\n\t\t\t\tBasePath: \"/pete\",\n\t\t\t\tSchemes: []string{\n\t\t\t\t\t\"https\",\n\t\t\t\t},\n\t\t\t\tDefinitions: map[string]interface{}{\n\t\t\t\t\t\"empty\": map[string]interface{}{\n\t\t\t\t\t\t\"type\": \"object\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tName: pulumi.String(\"myApi\"),\n\t\t\tParameters: pulumi.Any{\n\t\t\t\tEndpointConfigurationTypes: \"REGIONAL\",\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 restApi = new aws_native.apigateway.RestApi(\"restApi\", {\n body: {\n swagger: 2,\n info: {\n version: \"0.0.1\",\n title: \"test\",\n },\n basePath: \"/pete\",\n schemes: [\"https\"],\n definitions: {\n empty: {\n type: \"object\",\n },\n },\n },\n name: \"myApi\",\n parameters: {\n endpointConfigurationTypes: \"REGIONAL\",\n },\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nrest_api = aws_native.apigateway.RestApi(\"restApi\",\n body={\n \"swagger\": 2,\n \"info\": {\n \"version\": \"0.0.1\",\n \"title\": \"test\",\n },\n \"basePath\": \"/pete\",\n \"schemes\": [\"https\"],\n \"definitions\": {\n \"empty\": {\n \"type\": \"object\",\n },\n },\n },\n name=\"myApi\",\n parameters={\n \"endpointConfigurationTypes\": \"REGIONAL\",\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 restApi = new AwsNative.ApiGateway.RestApi(\"restApi\", new()\n {\n Body = \n {\n { \"swagger\", 2 },\n { \"info\", \n {\n { \"version\", \"0.0.1\" },\n { \"title\", \"test\" },\n } },\n { \"basePath\", \"/pete\" },\n { \"schemes\", new[]\n {\n \"https\",\n } },\n { \"definitions\", \n {\n { \"empty\", \n {\n { \"type\", \"object\" },\n } },\n } },\n },\n Name = \"myApi\",\n Parameters = \n {\n { \"endpointConfigurationTypes\", \"REGIONAL\" },\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/apigateway\"\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 := apigateway.NewRestApi(ctx, \"restApi\", \u0026apigateway.RestApiArgs{\n\t\t\tBody: pulumi.Any{\n\t\t\t\tSwagger: 2,\n\t\t\t\tInfo: map[string]interface{}{\n\t\t\t\t\t\"version\": \"0.0.1\",\n\t\t\t\t\t\"title\": \"test\",\n\t\t\t\t},\n\t\t\t\tBasePath: \"/pete\",\n\t\t\t\tSchemes: []string{\n\t\t\t\t\t\"https\",\n\t\t\t\t},\n\t\t\t\tDefinitions: map[string]interface{}{\n\t\t\t\t\t\"empty\": map[string]interface{}{\n\t\t\t\t\t\t\"type\": \"object\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tName: pulumi.String(\"myApi\"),\n\t\t\tParameters: pulumi.Any{\n\t\t\t\tEndpointConfigurationTypes: \"REGIONAL\",\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 restApi = new aws_native.apigateway.RestApi(\"restApi\", {\n body: {\n swagger: 2,\n info: {\n version: \"0.0.1\",\n title: \"test\",\n },\n basePath: \"/pete\",\n schemes: [\"https\"],\n definitions: {\n empty: {\n type: \"object\",\n },\n },\n },\n name: \"myApi\",\n parameters: {\n endpointConfigurationTypes: \"REGIONAL\",\n },\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nrest_api = aws_native.apigateway.RestApi(\"restApi\",\n body={\n \"swagger\": 2,\n \"info\": {\n \"version\": \"0.0.1\",\n \"title\": \"test\",\n },\n \"basePath\": \"/pete\",\n \"schemes\": [\"https\"],\n \"definitions\": {\n \"empty\": {\n \"type\": \"object\",\n },\n },\n },\n name=\"myApi\",\n parameters={\n \"endpointConfigurationTypes\": \"REGIONAL\",\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 config = new Config();\n var apiKeySourceType = config.Require(\"apiKeySourceType\");\n var apiName = config.Require(\"apiName\");\n var binaryMediaType1 = config.Require(\"binaryMediaType1\");\n var binaryMediaType2 = config.Require(\"binaryMediaType2\");\n var minimumCompressionSize = config.Require(\"minimumCompressionSize\");\n var myRestApi = new AwsNative.ApiGateway.RestApi(\"myRestApi\", new()\n {\n ApiKeySourceType = apiKeySourceType,\n BinaryMediaTypes = new[]\n {\n binaryMediaType1,\n binaryMediaType2,\n },\n MinimumCompressionSize = minimumCompressionSize,\n Name = apiName,\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tapiKeySourceType := cfg.Require(\"apiKeySourceType\")\n\t\tapiName := cfg.Require(\"apiName\")\n\t\tbinaryMediaType1 := cfg.Require(\"binaryMediaType1\")\n\t\tbinaryMediaType2 := cfg.Require(\"binaryMediaType2\")\n\t\tminimumCompressionSize := cfg.Require(\"minimumCompressionSize\")\n\t\t_, err := apigateway.NewRestApi(ctx, \"myRestApi\", \u0026apigateway.RestApiArgs{\n\t\t\tApiKeySourceType: pulumi.String(apiKeySourceType),\n\t\t\tBinaryMediaTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(binaryMediaType1),\n\t\t\t\tpulumi.String(binaryMediaType2),\n\t\t\t},\n\t\t\tMinimumCompressionSize: pulumi.String(minimumCompressionSize),\n\t\t\tName: pulumi.String(apiName),\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 config = new pulumi.Config();\nconst apiKeySourceType = config.require(\"apiKeySourceType\");\nconst apiName = config.require(\"apiName\");\nconst binaryMediaType1 = config.require(\"binaryMediaType1\");\nconst binaryMediaType2 = config.require(\"binaryMediaType2\");\nconst minimumCompressionSize = config.require(\"minimumCompressionSize\");\nconst myRestApi = new aws_native.apigateway.RestApi(\"myRestApi\", {\n apiKeySourceType: apiKeySourceType,\n binaryMediaTypes: [\n binaryMediaType1,\n binaryMediaType2,\n ],\n minimumCompressionSize: minimumCompressionSize,\n name: apiName,\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nconfig = pulumi.Config()\napi_key_source_type = config.require(\"apiKeySourceType\")\napi_name = config.require(\"apiName\")\nbinary_media_type1 = config.require(\"binaryMediaType1\")\nbinary_media_type2 = config.require(\"binaryMediaType2\")\nminimum_compression_size = config.require(\"minimumCompressionSize\")\nmy_rest_api = aws_native.apigateway.RestApi(\"myRestApi\",\n api_key_source_type=api_key_source_type,\n binary_media_types=[\n binary_media_type1,\n binary_media_type2,\n ],\n minimum_compression_size=minimum_compression_size,\n name=api_name)\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 config = new Config();\n var apiKeySourceType = config.Require(\"apiKeySourceType\");\n var apiName = config.Require(\"apiName\");\n var binaryMediaType1 = config.Require(\"binaryMediaType1\");\n var binaryMediaType2 = config.Require(\"binaryMediaType2\");\n var minimumCompressionSize = config.Require(\"minimumCompressionSize\");\n var myRestApi = new AwsNative.ApiGateway.RestApi(\"myRestApi\", new()\n {\n ApiKeySourceType = apiKeySourceType,\n BinaryMediaTypes = new[]\n {\n binaryMediaType1,\n binaryMediaType2,\n },\n MinimumCompressionSize = minimumCompressionSize,\n Name = apiName,\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tapiKeySourceType := cfg.Require(\"apiKeySourceType\")\n\t\tapiName := cfg.Require(\"apiName\")\n\t\tbinaryMediaType1 := cfg.Require(\"binaryMediaType1\")\n\t\tbinaryMediaType2 := cfg.Require(\"binaryMediaType2\")\n\t\tminimumCompressionSize := cfg.Require(\"minimumCompressionSize\")\n\t\t_, err := apigateway.NewRestApi(ctx, \"myRestApi\", \u0026apigateway.RestApiArgs{\n\t\t\tApiKeySourceType: pulumi.String(apiKeySourceType),\n\t\t\tBinaryMediaTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(binaryMediaType1),\n\t\t\t\tpulumi.String(binaryMediaType2),\n\t\t\t},\n\t\t\tMinimumCompressionSize: pulumi.String(minimumCompressionSize),\n\t\t\tName: pulumi.String(apiName),\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 config = new pulumi.Config();\nconst apiKeySourceType = config.require(\"apiKeySourceType\");\nconst apiName = config.require(\"apiName\");\nconst binaryMediaType1 = config.require(\"binaryMediaType1\");\nconst binaryMediaType2 = config.require(\"binaryMediaType2\");\nconst minimumCompressionSize = config.require(\"minimumCompressionSize\");\nconst myRestApi = new aws_native.apigateway.RestApi(\"myRestApi\", {\n apiKeySourceType: apiKeySourceType,\n binaryMediaTypes: [\n binaryMediaType1,\n binaryMediaType2,\n ],\n minimumCompressionSize: minimumCompressionSize,\n name: apiName,\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nconfig = pulumi.Config()\napi_key_source_type = config.require(\"apiKeySourceType\")\napi_name = config.require(\"apiName\")\nbinary_media_type1 = config.require(\"binaryMediaType1\")\nbinary_media_type2 = config.require(\"binaryMediaType2\")\nminimum_compression_size = config.require(\"minimumCompressionSize\")\nmy_rest_api = aws_native.apigateway.RestApi(\"myRestApi\",\n api_key_source_type=api_key_source_type,\n binary_media_types=[\n binary_media_type1,\n binary_media_type2,\n ],\n minimum_compression_size=minimum_compression_size,\n name=api_name)\n\n```\n\n{{% /example %}}\n{{% /examples %}}\n", + "description": "The ``AWS::ApiGateway::RestApi`` resource creates a REST API. For more information, see [restapi:create](https://docs.aws.amazon.com/apigateway/latest/api/API_CreateRestApi.html) in the *Amazon API Gateway REST API Reference*.\n On January 1, 2016, the Swagger Specification was donated to the [OpenAPI initiative](https://docs.aws.amazon.com/https://www.openapis.org/), becoming the foundation of the OpenAPI Specification.\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 config = new Config();\n var apiName = config.Require(\"apiName\");\n var description = config.Require(\"description\");\n var version = config.Require(\"version\");\n var type = config.Require(\"type\");\n var property = config.Require(\"property\");\n var restApi = new AwsNative.ApiGateway.RestApi(\"restApi\", new()\n {\n Name = apiName,\n });\n\n var documentationPart = new AwsNative.ApiGateway.DocumentationPart(\"documentationPart\", new()\n {\n Location = new AwsNative.ApiGateway.Inputs.DocumentationPartLocationArgs\n {\n Type = System.Enum.Parse\u003cAwsNative.ApiGateway.DocumentationPartLocationType\u003e(type),\n },\n RestApiId = restApi.Id,\n Properties = property,\n });\n\n var documentationVersion = new AwsNative.ApiGateway.DocumentationVersion(\"documentationVersion\", new()\n {\n Description = description,\n DocumentationVersionValue = version,\n RestApiId = restApi.Id,\n }, new CustomResourceOptions\n {\n DependsOn = new[]\n {\n documentationPart,\n },\n });\n\n});\n\n\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws_native from \"@pulumi/aws-native\";\n\nconst config = new pulumi.Config();\nconst apiName = config.require(\"apiName\");\nconst description = config.require(\"description\");\nconst version = config.require(\"version\");\nconst type = config.require(\"type\");\nconst property = config.require(\"property\");\nconst restApi = new aws_native.apigateway.RestApi(\"restApi\", {name: apiName});\nconst documentationPart = new aws_native.apigateway.DocumentationPart(\"documentationPart\", {\n location: {\n type: aws_native.apigateway.DocumentationPartLocationType[type],\n },\n restApiId: restApi.id,\n properties: property,\n});\nconst documentationVersion = new aws_native.apigateway.DocumentationVersion(\"documentationVersion\", {\n description: description,\n documentationVersion: version,\n restApiId: restApi.id,\n}, {\n dependsOn: [documentationPart],\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nconfig = pulumi.Config()\napi_name = config.require(\"apiName\")\ndescription = config.require(\"description\")\nversion = config.require(\"version\")\ntype = config.require(\"type\")\nproperty = config.require(\"property\")\nrest_api = aws_native.apigateway.RestApi(\"restApi\", name=api_name)\ndocumentation_part = aws_native.apigateway.DocumentationPart(\"documentationPart\",\n location=aws_native.apigateway.DocumentationPartLocationArgs(\n type=aws_native.apigateway.DocumentationPartLocationType(type),\n ),\n rest_api_id=rest_api.id,\n properties=property)\ndocumentation_version = aws_native.apigateway.DocumentationVersion(\"documentationVersion\",\n description=description,\n documentation_version=version,\n rest_api_id=rest_api.id,\n opts=pulumi.ResourceOptions(depends_on=[documentation_part]))\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 config = new Config();\n var apiName = config.Require(\"apiName\");\n var description = config.Require(\"description\");\n var version = config.Require(\"version\");\n var type = config.Require(\"type\");\n var property = config.Require(\"property\");\n var restApi = new AwsNative.ApiGateway.RestApi(\"restApi\", new()\n {\n Name = apiName,\n });\n\n var documentationPart = new AwsNative.ApiGateway.DocumentationPart(\"documentationPart\", new()\n {\n Location = new AwsNative.ApiGateway.Inputs.DocumentationPartLocationArgs\n {\n Type = System.Enum.Parse\u003cAwsNative.ApiGateway.DocumentationPartLocationType\u003e(type),\n },\n RestApiId = restApi.Id,\n Properties = property,\n });\n\n var documentationVersion = new AwsNative.ApiGateway.DocumentationVersion(\"documentationVersion\", new()\n {\n Description = description,\n DocumentationVersionValue = version,\n RestApiId = restApi.Id,\n }, new CustomResourceOptions\n {\n DependsOn = new[]\n {\n documentationPart,\n },\n });\n\n});\n\n\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws_native from \"@pulumi/aws-native\";\n\nconst config = new pulumi.Config();\nconst apiName = config.require(\"apiName\");\nconst description = config.require(\"description\");\nconst version = config.require(\"version\");\nconst type = config.require(\"type\");\nconst property = config.require(\"property\");\nconst restApi = new aws_native.apigateway.RestApi(\"restApi\", {name: apiName});\nconst documentationPart = new aws_native.apigateway.DocumentationPart(\"documentationPart\", {\n location: {\n type: aws_native.apigateway.DocumentationPartLocationType[type],\n },\n restApiId: restApi.id,\n properties: property,\n});\nconst documentationVersion = new aws_native.apigateway.DocumentationVersion(\"documentationVersion\", {\n description: description,\n documentationVersion: version,\n restApiId: restApi.id,\n}, {\n dependsOn: [documentationPart],\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nconfig = pulumi.Config()\napi_name = config.require(\"apiName\")\ndescription = config.require(\"description\")\nversion = config.require(\"version\")\ntype = config.require(\"type\")\nproperty = config.require(\"property\")\nrest_api = aws_native.apigateway.RestApi(\"restApi\", name=api_name)\ndocumentation_part = aws_native.apigateway.DocumentationPart(\"documentationPart\",\n location=aws_native.apigateway.DocumentationPartLocationArgs(\n type=aws_native.apigateway.DocumentationPartLocationType(type),\n ),\n rest_api_id=rest_api.id,\n properties=property)\ndocumentation_version = aws_native.apigateway.DocumentationVersion(\"documentationVersion\",\n description=description,\n documentation_version=version,\n rest_api_id=rest_api.id,\n opts=pulumi.ResourceOptions(depends_on=[documentation_part]))\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 config = new Config();\n var contentHandling = config.Require(\"contentHandling\");\n var operationName = config.Get(\"operationName\") ?? \"testoperationName\";\n var restApiName = config.Get(\"restApiName\") ?? \"testrestApiName\";\n var validatorName = config.Get(\"validatorName\") ?? \"testvalidatorName\";\n var validateRequestBody = config.Get(\"validateRequestBody\") ?? \"testvalidateRequestBody\";\n var validateRequestParameters = config.Get(\"validateRequestParameters\") ?? true;\n var restApi = new AwsNative.ApiGateway.RestApi(\"restApi\", new()\n {\n Name = restApiName,\n });\n\n var requestValidator = new AwsNative.ApiGateway.RequestValidator(\"requestValidator\", new()\n {\n Name = validatorName,\n RestApiId = restApi.Id,\n ValidateRequestBody = validateRequestBody,\n ValidateRequestParameters = validateRequestParameters,\n });\n\n var method = new AwsNative.ApiGateway.Method(\"method\", new()\n {\n HttpMethod = \"POST\",\n ResourceId = restApi.RootResourceId,\n RestApiId = restApi.Id,\n AuthorizationType = AwsNative.ApiGateway.MethodAuthorizationType.None,\n Integration = new AwsNative.ApiGateway.Inputs.MethodIntegrationArgs\n {\n Type = AwsNative.ApiGateway.MethodIntegrationType.Mock,\n ContentHandling = System.Enum.Parse\u003cAwsNative.ApiGateway.MethodIntegrationContentHandling\u003e(contentHandling),\n IntegrationResponses = new[]\n {\n new AwsNative.ApiGateway.Inputs.MethodIntegrationResponseArgs\n {\n ContentHandling = System.Enum.Parse\u003cAwsNative.ApiGateway.MethodIntegrationResponseContentHandling\u003e(contentHandling),\n StatusCode = \"400\",\n },\n },\n },\n RequestValidatorId = requestValidator.Id,\n OperationName = operationName,\n });\n\n return new Dictionary\u003cstring, object?\u003e\n {\n [\"rootResourceId\"] = restApi.RootResourceId,\n };\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\ncfg := config.New(ctx, \"\")\ncontentHandling := cfg.Require(\"contentHandling\")\noperationName := \"testoperationName\";\nif param := cfg.Get(\"operationName\"); param != \"\"{\noperationName = param\n}\nrestApiName := \"testrestApiName\";\nif param := cfg.Get(\"restApiName\"); param != \"\"{\nrestApiName = param\n}\nvalidatorName := \"testvalidatorName\";\nif param := cfg.Get(\"validatorName\"); param != \"\"{\nvalidatorName = param\n}\nvalidateRequestBody := \"testvalidateRequestBody\";\nif param := cfg.Get(\"validateRequestBody\"); param != \"\"{\nvalidateRequestBody = param\n}\nvalidateRequestParameters := true;\nif param := cfg.Get(\"validateRequestParameters\"); param != \"\"{\nvalidateRequestParameters = param\n}\nrestApi, err := apigateway.NewRestApi(ctx, \"restApi\", \u0026apigateway.RestApiArgs{\nName: pulumi.String(restApiName),\n})\nif err != nil {\nreturn err\n}\nrequestValidator, err := apigateway.NewRequestValidator(ctx, \"requestValidator\", \u0026apigateway.RequestValidatorArgs{\nName: pulumi.String(validatorName),\nRestApiId: restApi.ID(),\nValidateRequestBody: pulumi.String(validateRequestBody),\nValidateRequestParameters: pulumi.String(validateRequestParameters),\n})\nif err != nil {\nreturn err\n}\n_, err = apigateway.NewMethod(ctx, \"method\", \u0026apigateway.MethodArgs{\nHttpMethod: pulumi.String(\"POST\"),\nResourceId: restApi.RootResourceId,\nRestApiId: restApi.ID(),\nAuthorizationType: apigateway.MethodAuthorizationTypeNone,\nIntegration: interface{}{\nType: apigateway.MethodIntegrationTypeMock,\nContentHandling: apigateway.MethodIntegrationContentHandling(contentHandling),\nIntegrationResponses: apigateway.MethodIntegrationResponseArray{\n\u0026apigateway.MethodIntegrationResponseArgs{\nContentHandling: apigateway.MethodIntegrationResponseContentHandling(contentHandling),\nStatusCode: pulumi.String(\"400\"),\n},\n},\n},\nRequestValidatorId: requestValidator.ID(),\nOperationName: pulumi.String(operationName),\n})\nif err != nil {\nreturn err\n}\nctx.Export(\"rootResourceId\", restApi.RootResourceId)\nreturn nil\n})\n}\n\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws_native from \"@pulumi/aws-native\";\n\nconst config = new pulumi.Config();\nconst contentHandling = config.require(\"contentHandling\");\nconst operationName = config.get(\"operationName\") || \"testoperationName\";\nconst restApiName = config.get(\"restApiName\") || \"testrestApiName\";\nconst validatorName = config.get(\"validatorName\") || \"testvalidatorName\";\nconst validateRequestBody = config.get(\"validateRequestBody\") || \"testvalidateRequestBody\";\nconst validateRequestParameters = config.get(\"validateRequestParameters\") || true;\nconst restApi = new aws_native.apigateway.RestApi(\"restApi\", {name: restApiName});\nconst requestValidator = new aws_native.apigateway.RequestValidator(\"requestValidator\", {\n name: validatorName,\n restApiId: restApi.id,\n validateRequestBody: validateRequestBody,\n validateRequestParameters: validateRequestParameters,\n});\nconst method = new aws_native.apigateway.Method(\"method\", {\n httpMethod: \"POST\",\n resourceId: restApi.rootResourceId,\n restApiId: restApi.id,\n authorizationType: aws_native.apigateway.MethodAuthorizationType.None,\n integration: {\n type: aws_native.apigateway.MethodIntegrationType.Mock,\n contentHandling: aws_native.apigateway.MethodIntegrationContentHandling[contentHandling],\n integrationResponses: [{\n contentHandling: aws_native.apigateway.MethodIntegrationResponseContentHandling[contentHandling],\n statusCode: \"400\",\n }],\n },\n requestValidatorId: requestValidator.id,\n operationName: operationName,\n});\nexport const rootResourceId = restApi.rootResourceId;\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nconfig = pulumi.Config()\ncontent_handling = config.require(\"contentHandling\")\noperation_name = config.get(\"operationName\")\nif operation_name is None:\n operation_name = \"testoperationName\"\nrest_api_name = config.get(\"restApiName\")\nif rest_api_name is None:\n rest_api_name = \"testrestApiName\"\nvalidator_name = config.get(\"validatorName\")\nif validator_name is None:\n validator_name = \"testvalidatorName\"\nvalidate_request_body = config.get(\"validateRequestBody\")\nif validate_request_body is None:\n validate_request_body = \"testvalidateRequestBody\"\nvalidate_request_parameters = config.get(\"validateRequestParameters\")\nif validate_request_parameters is None:\n validate_request_parameters = True\nrest_api = aws_native.apigateway.RestApi(\"restApi\", name=rest_api_name)\nrequest_validator = aws_native.apigateway.RequestValidator(\"requestValidator\",\n name=validator_name,\n rest_api_id=rest_api.id,\n validate_request_body=validate_request_body,\n validate_request_parameters=validate_request_parameters)\nmethod = aws_native.apigateway.Method(\"method\",\n http_method=\"POST\",\n resource_id=rest_api.root_resource_id,\n rest_api_id=rest_api.id,\n authorization_type=aws_native.apigateway.MethodAuthorizationType.NONE,\n integration=aws_native.apigateway.MethodIntegrationArgs(\n type=aws_native.apigateway.MethodIntegrationType.MOCK,\n content_handling=aws_native.apigateway.MethodIntegrationContentHandling(content_handling),\n integration_responses=[aws_native.apigateway.MethodIntegrationResponseArgs(\n content_handling=aws_native.apigateway.MethodIntegrationResponseContentHandling(content_handling),\n status_code=\"400\",\n )],\n ),\n request_validator_id=request_validator.id,\n operation_name=operation_name)\npulumi.export(\"rootResourceId\", rest_api.root_resource_id)\n\n```\n\n{{% /example %}}\n{{% example %}}\n### Example\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AwsNative = Pulumi.AwsNative;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var contentHandling = config.Require(\"contentHandling\");\n var operationName = config.Get(\"operationName\") ?? \"testoperationName\";\n var restApiName = config.Get(\"restApiName\") ?? \"testrestApiName\";\n var validatorName = config.Get(\"validatorName\") ?? \"testvalidatorName\";\n var validateRequestBody = config.Get(\"validateRequestBody\") ?? \"testvalidateRequestBody\";\n var validateRequestParameters = config.Get(\"validateRequestParameters\") ?? true;\n var restApi = new AwsNative.ApiGateway.RestApi(\"restApi\", new()\n {\n Name = restApiName,\n });\n\n var requestValidator = new AwsNative.ApiGateway.RequestValidator(\"requestValidator\", new()\n {\n Name = validatorName,\n RestApiId = restApi.Id,\n ValidateRequestBody = validateRequestBody,\n ValidateRequestParameters = validateRequestParameters,\n });\n\n var method = new AwsNative.ApiGateway.Method(\"method\", new()\n {\n HttpMethod = \"POST\",\n ResourceId = restApi.RootResourceId,\n RestApiId = restApi.Id,\n AuthorizationType = AwsNative.ApiGateway.MethodAuthorizationType.None,\n Integration = new AwsNative.ApiGateway.Inputs.MethodIntegrationArgs\n {\n Type = AwsNative.ApiGateway.MethodIntegrationType.Mock,\n ContentHandling = System.Enum.Parse\u003cAwsNative.ApiGateway.MethodIntegrationContentHandling\u003e(contentHandling),\n IntegrationResponses = new[]\n {\n new AwsNative.ApiGateway.Inputs.MethodIntegrationResponseArgs\n {\n ContentHandling = System.Enum.Parse\u003cAwsNative.ApiGateway.MethodIntegrationResponseContentHandling\u003e(contentHandling),\n StatusCode = \"400\",\n },\n },\n },\n RequestValidatorId = requestValidator.Id,\n OperationName = operationName,\n });\n\n return new Dictionary\u003cstring, object?\u003e\n {\n [\"rootResourceId\"] = restApi.RootResourceId,\n };\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\ncfg := config.New(ctx, \"\")\ncontentHandling := cfg.Require(\"contentHandling\")\noperationName := \"testoperationName\";\nif param := cfg.Get(\"operationName\"); param != \"\"{\noperationName = param\n}\nrestApiName := \"testrestApiName\";\nif param := cfg.Get(\"restApiName\"); param != \"\"{\nrestApiName = param\n}\nvalidatorName := \"testvalidatorName\";\nif param := cfg.Get(\"validatorName\"); param != \"\"{\nvalidatorName = param\n}\nvalidateRequestBody := \"testvalidateRequestBody\";\nif param := cfg.Get(\"validateRequestBody\"); param != \"\"{\nvalidateRequestBody = param\n}\nvalidateRequestParameters := true;\nif param := cfg.Get(\"validateRequestParameters\"); param != \"\"{\nvalidateRequestParameters = param\n}\nrestApi, err := apigateway.NewRestApi(ctx, \"restApi\", \u0026apigateway.RestApiArgs{\nName: pulumi.String(restApiName),\n})\nif err != nil {\nreturn err\n}\nrequestValidator, err := apigateway.NewRequestValidator(ctx, \"requestValidator\", \u0026apigateway.RequestValidatorArgs{\nName: pulumi.String(validatorName),\nRestApiId: restApi.ID(),\nValidateRequestBody: pulumi.String(validateRequestBody),\nValidateRequestParameters: pulumi.String(validateRequestParameters),\n})\nif err != nil {\nreturn err\n}\n_, err = apigateway.NewMethod(ctx, \"method\", \u0026apigateway.MethodArgs{\nHttpMethod: pulumi.String(\"POST\"),\nResourceId: restApi.RootResourceId,\nRestApiId: restApi.ID(),\nAuthorizationType: apigateway.MethodAuthorizationTypeNone,\nIntegration: interface{}{\nType: apigateway.MethodIntegrationTypeMock,\nContentHandling: apigateway.MethodIntegrationContentHandling(contentHandling),\nIntegrationResponses: apigateway.MethodIntegrationResponseArray{\n\u0026apigateway.MethodIntegrationResponseArgs{\nContentHandling: apigateway.MethodIntegrationResponseContentHandling(contentHandling),\nStatusCode: pulumi.String(\"400\"),\n},\n},\n},\nRequestValidatorId: requestValidator.ID(),\nOperationName: pulumi.String(operationName),\n})\nif err != nil {\nreturn err\n}\nctx.Export(\"rootResourceId\", restApi.RootResourceId)\nreturn nil\n})\n}\n\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws_native from \"@pulumi/aws-native\";\n\nconst config = new pulumi.Config();\nconst contentHandling = config.require(\"contentHandling\");\nconst operationName = config.get(\"operationName\") || \"testoperationName\";\nconst restApiName = config.get(\"restApiName\") || \"testrestApiName\";\nconst validatorName = config.get(\"validatorName\") || \"testvalidatorName\";\nconst validateRequestBody = config.get(\"validateRequestBody\") || \"testvalidateRequestBody\";\nconst validateRequestParameters = config.get(\"validateRequestParameters\") || true;\nconst restApi = new aws_native.apigateway.RestApi(\"restApi\", {name: restApiName});\nconst requestValidator = new aws_native.apigateway.RequestValidator(\"requestValidator\", {\n name: validatorName,\n restApiId: restApi.id,\n validateRequestBody: validateRequestBody,\n validateRequestParameters: validateRequestParameters,\n});\nconst method = new aws_native.apigateway.Method(\"method\", {\n httpMethod: \"POST\",\n resourceId: restApi.rootResourceId,\n restApiId: restApi.id,\n authorizationType: aws_native.apigateway.MethodAuthorizationType.None,\n integration: {\n type: aws_native.apigateway.MethodIntegrationType.Mock,\n contentHandling: aws_native.apigateway.MethodIntegrationContentHandling[contentHandling],\n integrationResponses: [{\n contentHandling: aws_native.apigateway.MethodIntegrationResponseContentHandling[contentHandling],\n statusCode: \"400\",\n }],\n },\n requestValidatorId: requestValidator.id,\n operationName: operationName,\n});\nexport const rootResourceId = restApi.rootResourceId;\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nconfig = pulumi.Config()\ncontent_handling = config.require(\"contentHandling\")\noperation_name = config.get(\"operationName\")\nif operation_name is None:\n operation_name = \"testoperationName\"\nrest_api_name = config.get(\"restApiName\")\nif rest_api_name is None:\n rest_api_name = \"testrestApiName\"\nvalidator_name = config.get(\"validatorName\")\nif validator_name is None:\n validator_name = \"testvalidatorName\"\nvalidate_request_body = config.get(\"validateRequestBody\")\nif validate_request_body is None:\n validate_request_body = \"testvalidateRequestBody\"\nvalidate_request_parameters = config.get(\"validateRequestParameters\")\nif validate_request_parameters is None:\n validate_request_parameters = True\nrest_api = aws_native.apigateway.RestApi(\"restApi\", name=rest_api_name)\nrequest_validator = aws_native.apigateway.RequestValidator(\"requestValidator\",\n name=validator_name,\n rest_api_id=rest_api.id,\n validate_request_body=validate_request_body,\n validate_request_parameters=validate_request_parameters)\nmethod = aws_native.apigateway.Method(\"method\",\n http_method=\"POST\",\n resource_id=rest_api.root_resource_id,\n rest_api_id=rest_api.id,\n authorization_type=aws_native.apigateway.MethodAuthorizationType.NONE,\n integration=aws_native.apigateway.MethodIntegrationArgs(\n type=aws_native.apigateway.MethodIntegrationType.MOCK,\n content_handling=aws_native.apigateway.MethodIntegrationContentHandling(content_handling),\n integration_responses=[aws_native.apigateway.MethodIntegrationResponseArgs(\n content_handling=aws_native.apigateway.MethodIntegrationResponseContentHandling(content_handling),\n status_code=\"400\",\n )],\n ),\n request_validator_id=request_validator.id,\n operation_name=operation_name)\npulumi.export(\"rootResourceId\", rest_api.root_resource_id)\n\n```\n\n{{% /example %}}\n{{% example %}}\n### Example\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AwsNative = Pulumi.AwsNative;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var apiName = config.Require(\"apiName\");\n var validatorName = config.Require(\"validatorName\");\n var validateRequestBody = config.Require(\"validateRequestBody\");\n var validateRequestParameters = config.Require(\"validateRequestParameters\");\n var restApi = new AwsNative.ApiGateway.RestApi(\"restApi\", new()\n {\n Name = apiName,\n });\n\n var requestValidator = new AwsNative.ApiGateway.RequestValidator(\"requestValidator\", new()\n {\n Name = validatorName,\n RestApiId = restApi.Id,\n ValidateRequestBody = validateRequestBody,\n ValidateRequestParameters = validateRequestParameters,\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tapiName := cfg.Require(\"apiName\")\n\t\tvalidatorName := cfg.Require(\"validatorName\")\n\t\tvalidateRequestBody := cfg.Require(\"validateRequestBody\")\n\t\tvalidateRequestParameters := cfg.Require(\"validateRequestParameters\")\n\t\trestApi, err := apigateway.NewRestApi(ctx, \"restApi\", \u0026apigateway.RestApiArgs{\n\t\t\tName: pulumi.String(apiName),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = apigateway.NewRequestValidator(ctx, \"requestValidator\", \u0026apigateway.RequestValidatorArgs{\n\t\t\tName: pulumi.String(validatorName),\n\t\t\tRestApiId: restApi.ID(),\n\t\t\tValidateRequestBody: pulumi.String(validateRequestBody),\n\t\t\tValidateRequestParameters: pulumi.String(validateRequestParameters),\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 config = new pulumi.Config();\nconst apiName = config.require(\"apiName\");\nconst validatorName = config.require(\"validatorName\");\nconst validateRequestBody = config.require(\"validateRequestBody\");\nconst validateRequestParameters = config.require(\"validateRequestParameters\");\nconst restApi = new aws_native.apigateway.RestApi(\"restApi\", {name: apiName});\nconst requestValidator = new aws_native.apigateway.RequestValidator(\"requestValidator\", {\n name: validatorName,\n restApiId: restApi.id,\n validateRequestBody: validateRequestBody,\n validateRequestParameters: validateRequestParameters,\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nconfig = pulumi.Config()\napi_name = config.require(\"apiName\")\nvalidator_name = config.require(\"validatorName\")\nvalidate_request_body = config.require(\"validateRequestBody\")\nvalidate_request_parameters = config.require(\"validateRequestParameters\")\nrest_api = aws_native.apigateway.RestApi(\"restApi\", name=api_name)\nrequest_validator = aws_native.apigateway.RequestValidator(\"requestValidator\",\n name=validator_name,\n rest_api_id=rest_api.id,\n validate_request_body=validate_request_body,\n validate_request_parameters=validate_request_parameters)\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 config = new Config();\n var apiName = config.Require(\"apiName\");\n var validatorName = config.Require(\"validatorName\");\n var validateRequestBody = config.Require(\"validateRequestBody\");\n var validateRequestParameters = config.Require(\"validateRequestParameters\");\n var restApi = new AwsNative.ApiGateway.RestApi(\"restApi\", new()\n {\n Name = apiName,\n });\n\n var requestValidator = new AwsNative.ApiGateway.RequestValidator(\"requestValidator\", new()\n {\n Name = validatorName,\n RestApiId = restApi.Id,\n ValidateRequestBody = validateRequestBody,\n ValidateRequestParameters = validateRequestParameters,\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tapiName := cfg.Require(\"apiName\")\n\t\tvalidatorName := cfg.Require(\"validatorName\")\n\t\tvalidateRequestBody := cfg.Require(\"validateRequestBody\")\n\t\tvalidateRequestParameters := cfg.Require(\"validateRequestParameters\")\n\t\trestApi, err := apigateway.NewRestApi(ctx, \"restApi\", \u0026apigateway.RestApiArgs{\n\t\t\tName: pulumi.String(apiName),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = apigateway.NewRequestValidator(ctx, \"requestValidator\", \u0026apigateway.RequestValidatorArgs{\n\t\t\tName: pulumi.String(validatorName),\n\t\t\tRestApiId: restApi.ID(),\n\t\t\tValidateRequestBody: pulumi.String(validateRequestBody),\n\t\t\tValidateRequestParameters: pulumi.String(validateRequestParameters),\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 config = new pulumi.Config();\nconst apiName = config.require(\"apiName\");\nconst validatorName = config.require(\"validatorName\");\nconst validateRequestBody = config.require(\"validateRequestBody\");\nconst validateRequestParameters = config.require(\"validateRequestParameters\");\nconst restApi = new aws_native.apigateway.RestApi(\"restApi\", {name: apiName});\nconst requestValidator = new aws_native.apigateway.RequestValidator(\"requestValidator\", {\n name: validatorName,\n restApiId: restApi.id,\n validateRequestBody: validateRequestBody,\n validateRequestParameters: validateRequestParameters,\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nconfig = pulumi.Config()\napi_name = config.require(\"apiName\")\nvalidator_name = config.require(\"validatorName\")\nvalidate_request_body = config.require(\"validateRequestBody\")\nvalidate_request_parameters = config.require(\"validateRequestParameters\")\nrest_api = aws_native.apigateway.RestApi(\"restApi\", name=api_name)\nrequest_validator = aws_native.apigateway.RequestValidator(\"requestValidator\",\n name=validator_name,\n rest_api_id=rest_api.id,\n validate_request_body=validate_request_body,\n validate_request_parameters=validate_request_parameters)\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 config = new Config();\n var apiName = config.Require(\"apiName\");\n var type = config.Require(\"type\");\n var myRestApi = new AwsNative.ApiGateway.RestApi(\"myRestApi\", new()\n {\n EndpointConfiguration = new AwsNative.ApiGateway.Inputs.RestApiEndpointConfigurationArgs\n {\n Types = new[]\n {\n type,\n },\n },\n Name = apiName,\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tapiName := cfg.Require(\"apiName\")\n\t\t_type := cfg.Require(\"type\")\n\t\t_, err := apigateway.NewRestApi(ctx, \"myRestApi\", \u0026apigateway.RestApiArgs{\n\t\t\tEndpointConfiguration: \u0026apigateway.RestApiEndpointConfigurationArgs{\n\t\t\t\tTypes: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(_type),\n\t\t\t\t},\n\t\t\t},\n\t\t\tName: pulumi.String(apiName),\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 config = new pulumi.Config();\nconst apiName = config.require(\"apiName\");\nconst type = config.require(\"type\");\nconst myRestApi = new aws_native.apigateway.RestApi(\"myRestApi\", {\n endpointConfiguration: {\n types: [type],\n },\n name: apiName,\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nconfig = pulumi.Config()\napi_name = config.require(\"apiName\")\ntype = config.require(\"type\")\nmy_rest_api = aws_native.apigateway.RestApi(\"myRestApi\",\n endpoint_configuration=aws_native.apigateway.RestApiEndpointConfigurationArgs(\n types=[type],\n ),\n name=api_name)\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 config = new Config();\n var apiName = config.Require(\"apiName\");\n var type = config.Require(\"type\");\n var myRestApi = new AwsNative.ApiGateway.RestApi(\"myRestApi\", new()\n {\n EndpointConfiguration = new AwsNative.ApiGateway.Inputs.RestApiEndpointConfigurationArgs\n {\n Types = new[]\n {\n type,\n },\n },\n Name = apiName,\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tapiName := cfg.Require(\"apiName\")\n\t\t_type := cfg.Require(\"type\")\n\t\t_, err := apigateway.NewRestApi(ctx, \"myRestApi\", \u0026apigateway.RestApiArgs{\n\t\t\tEndpointConfiguration: \u0026apigateway.RestApiEndpointConfigurationArgs{\n\t\t\t\tTypes: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(_type),\n\t\t\t\t},\n\t\t\t},\n\t\t\tName: pulumi.String(apiName),\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 config = new pulumi.Config();\nconst apiName = config.require(\"apiName\");\nconst type = config.require(\"type\");\nconst myRestApi = new aws_native.apigateway.RestApi(\"myRestApi\", {\n endpointConfiguration: {\n types: [type],\n },\n name: apiName,\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nconfig = pulumi.Config()\napi_name = config.require(\"apiName\")\ntype = config.require(\"type\")\nmy_rest_api = aws_native.apigateway.RestApi(\"myRestApi\",\n endpoint_configuration=aws_native.apigateway.RestApiEndpointConfigurationArgs(\n types=[type],\n ),\n name=api_name)\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 restApi = new AwsNative.ApiGateway.RestApi(\"restApi\", new()\n {\n Body = \n {\n { \"swagger\", 2 },\n { \"info\", \n {\n { \"version\", \"0.0.1\" },\n { \"title\", \"test\" },\n } },\n { \"basePath\", \"/pete\" },\n { \"schemes\", new[]\n {\n \"https\",\n } },\n { \"definitions\", \n {\n { \"empty\", \n {\n { \"type\", \"object\" },\n } },\n } },\n },\n Name = \"myApi\",\n Parameters = \n {\n { \"endpointConfigurationTypes\", \"REGIONAL\" },\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/apigateway\"\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 := apigateway.NewRestApi(ctx, \"restApi\", \u0026apigateway.RestApiArgs{\n\t\t\tBody: pulumi.Any{\n\t\t\t\tSwagger: 2,\n\t\t\t\tInfo: map[string]interface{}{\n\t\t\t\t\t\"version\": \"0.0.1\",\n\t\t\t\t\t\"title\": \"test\",\n\t\t\t\t},\n\t\t\t\tBasePath: \"/pete\",\n\t\t\t\tSchemes: []string{\n\t\t\t\t\t\"https\",\n\t\t\t\t},\n\t\t\t\tDefinitions: map[string]interface{}{\n\t\t\t\t\t\"empty\": map[string]interface{}{\n\t\t\t\t\t\t\"type\": \"object\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tName: pulumi.String(\"myApi\"),\n\t\t\tParameters: pulumi.Any{\n\t\t\t\tEndpointConfigurationTypes: \"REGIONAL\",\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 restApi = new aws_native.apigateway.RestApi(\"restApi\", {\n body: {\n swagger: 2,\n info: {\n version: \"0.0.1\",\n title: \"test\",\n },\n basePath: \"/pete\",\n schemes: [\"https\"],\n definitions: {\n empty: {\n type: \"object\",\n },\n },\n },\n name: \"myApi\",\n parameters: {\n endpointConfigurationTypes: \"REGIONAL\",\n },\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nrest_api = aws_native.apigateway.RestApi(\"restApi\",\n body={\n \"swagger\": 2,\n \"info\": {\n \"version\": \"0.0.1\",\n \"title\": \"test\",\n },\n \"basePath\": \"/pete\",\n \"schemes\": [\"https\"],\n \"definitions\": {\n \"empty\": {\n \"type\": \"object\",\n },\n },\n },\n name=\"myApi\",\n parameters={\n \"endpointConfigurationTypes\": \"REGIONAL\",\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 restApi = new AwsNative.ApiGateway.RestApi(\"restApi\", new()\n {\n Body = \n {\n { \"swagger\", 2 },\n { \"info\", \n {\n { \"version\", \"0.0.1\" },\n { \"title\", \"test\" },\n } },\n { \"basePath\", \"/pete\" },\n { \"schemes\", new[]\n {\n \"https\",\n } },\n { \"definitions\", \n {\n { \"empty\", \n {\n { \"type\", \"object\" },\n } },\n } },\n },\n Name = \"myApi\",\n Parameters = \n {\n { \"endpointConfigurationTypes\", \"REGIONAL\" },\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/apigateway\"\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 := apigateway.NewRestApi(ctx, \"restApi\", \u0026apigateway.RestApiArgs{\n\t\t\tBody: pulumi.Any{\n\t\t\t\tSwagger: 2,\n\t\t\t\tInfo: map[string]interface{}{\n\t\t\t\t\t\"version\": \"0.0.1\",\n\t\t\t\t\t\"title\": \"test\",\n\t\t\t\t},\n\t\t\t\tBasePath: \"/pete\",\n\t\t\t\tSchemes: []string{\n\t\t\t\t\t\"https\",\n\t\t\t\t},\n\t\t\t\tDefinitions: map[string]interface{}{\n\t\t\t\t\t\"empty\": map[string]interface{}{\n\t\t\t\t\t\t\"type\": \"object\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tName: pulumi.String(\"myApi\"),\n\t\t\tParameters: pulumi.Any{\n\t\t\t\tEndpointConfigurationTypes: \"REGIONAL\",\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 restApi = new aws_native.apigateway.RestApi(\"restApi\", {\n body: {\n swagger: 2,\n info: {\n version: \"0.0.1\",\n title: \"test\",\n },\n basePath: \"/pete\",\n schemes: [\"https\"],\n definitions: {\n empty: {\n type: \"object\",\n },\n },\n },\n name: \"myApi\",\n parameters: {\n endpointConfigurationTypes: \"REGIONAL\",\n },\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nrest_api = aws_native.apigateway.RestApi(\"restApi\",\n body={\n \"swagger\": 2,\n \"info\": {\n \"version\": \"0.0.1\",\n \"title\": \"test\",\n },\n \"basePath\": \"/pete\",\n \"schemes\": [\"https\"],\n \"definitions\": {\n \"empty\": {\n \"type\": \"object\",\n },\n },\n },\n name=\"myApi\",\n parameters={\n \"endpointConfigurationTypes\": \"REGIONAL\",\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 config = new Config();\n var apiKeySourceType = config.Require(\"apiKeySourceType\");\n var apiName = config.Require(\"apiName\");\n var binaryMediaType1 = config.Require(\"binaryMediaType1\");\n var binaryMediaType2 = config.Require(\"binaryMediaType2\");\n var minimumCompressionSize = config.Require(\"minimumCompressionSize\");\n var myRestApi = new AwsNative.ApiGateway.RestApi(\"myRestApi\", new()\n {\n ApiKeySourceType = apiKeySourceType,\n BinaryMediaTypes = new[]\n {\n binaryMediaType1,\n binaryMediaType2,\n },\n MinimumCompressionSize = minimumCompressionSize,\n Name = apiName,\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tapiKeySourceType := cfg.Require(\"apiKeySourceType\")\n\t\tapiName := cfg.Require(\"apiName\")\n\t\tbinaryMediaType1 := cfg.Require(\"binaryMediaType1\")\n\t\tbinaryMediaType2 := cfg.Require(\"binaryMediaType2\")\n\t\tminimumCompressionSize := cfg.Require(\"minimumCompressionSize\")\n\t\t_, err := apigateway.NewRestApi(ctx, \"myRestApi\", \u0026apigateway.RestApiArgs{\n\t\t\tApiKeySourceType: pulumi.String(apiKeySourceType),\n\t\t\tBinaryMediaTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(binaryMediaType1),\n\t\t\t\tpulumi.String(binaryMediaType2),\n\t\t\t},\n\t\t\tMinimumCompressionSize: pulumi.String(minimumCompressionSize),\n\t\t\tName: pulumi.String(apiName),\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 config = new pulumi.Config();\nconst apiKeySourceType = config.require(\"apiKeySourceType\");\nconst apiName = config.require(\"apiName\");\nconst binaryMediaType1 = config.require(\"binaryMediaType1\");\nconst binaryMediaType2 = config.require(\"binaryMediaType2\");\nconst minimumCompressionSize = config.require(\"minimumCompressionSize\");\nconst myRestApi = new aws_native.apigateway.RestApi(\"myRestApi\", {\n apiKeySourceType: apiKeySourceType,\n binaryMediaTypes: [\n binaryMediaType1,\n binaryMediaType2,\n ],\n minimumCompressionSize: minimumCompressionSize,\n name: apiName,\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nconfig = pulumi.Config()\napi_key_source_type = config.require(\"apiKeySourceType\")\napi_name = config.require(\"apiName\")\nbinary_media_type1 = config.require(\"binaryMediaType1\")\nbinary_media_type2 = config.require(\"binaryMediaType2\")\nminimum_compression_size = config.require(\"minimumCompressionSize\")\nmy_rest_api = aws_native.apigateway.RestApi(\"myRestApi\",\n api_key_source_type=api_key_source_type,\n binary_media_types=[\n binary_media_type1,\n binary_media_type2,\n ],\n minimum_compression_size=minimum_compression_size,\n name=api_name)\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 config = new Config();\n var apiKeySourceType = config.Require(\"apiKeySourceType\");\n var apiName = config.Require(\"apiName\");\n var binaryMediaType1 = config.Require(\"binaryMediaType1\");\n var binaryMediaType2 = config.Require(\"binaryMediaType2\");\n var minimumCompressionSize = config.Require(\"minimumCompressionSize\");\n var myRestApi = new AwsNative.ApiGateway.RestApi(\"myRestApi\", new()\n {\n ApiKeySourceType = apiKeySourceType,\n BinaryMediaTypes = new[]\n {\n binaryMediaType1,\n binaryMediaType2,\n },\n MinimumCompressionSize = minimumCompressionSize,\n Name = apiName,\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tapiKeySourceType := cfg.Require(\"apiKeySourceType\")\n\t\tapiName := cfg.Require(\"apiName\")\n\t\tbinaryMediaType1 := cfg.Require(\"binaryMediaType1\")\n\t\tbinaryMediaType2 := cfg.Require(\"binaryMediaType2\")\n\t\tminimumCompressionSize := cfg.Require(\"minimumCompressionSize\")\n\t\t_, err := apigateway.NewRestApi(ctx, \"myRestApi\", \u0026apigateway.RestApiArgs{\n\t\t\tApiKeySourceType: pulumi.String(apiKeySourceType),\n\t\t\tBinaryMediaTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(binaryMediaType1),\n\t\t\t\tpulumi.String(binaryMediaType2),\n\t\t\t},\n\t\t\tMinimumCompressionSize: pulumi.String(minimumCompressionSize),\n\t\t\tName: pulumi.String(apiName),\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 config = new pulumi.Config();\nconst apiKeySourceType = config.require(\"apiKeySourceType\");\nconst apiName = config.require(\"apiName\");\nconst binaryMediaType1 = config.require(\"binaryMediaType1\");\nconst binaryMediaType2 = config.require(\"binaryMediaType2\");\nconst minimumCompressionSize = config.require(\"minimumCompressionSize\");\nconst myRestApi = new aws_native.apigateway.RestApi(\"myRestApi\", {\n apiKeySourceType: apiKeySourceType,\n binaryMediaTypes: [\n binaryMediaType1,\n binaryMediaType2,\n ],\n minimumCompressionSize: minimumCompressionSize,\n name: apiName,\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nconfig = pulumi.Config()\napi_key_source_type = config.require(\"apiKeySourceType\")\napi_name = config.require(\"apiName\")\nbinary_media_type1 = config.require(\"binaryMediaType1\")\nbinary_media_type2 = config.require(\"binaryMediaType2\")\nminimum_compression_size = config.require(\"minimumCompressionSize\")\nmy_rest_api = aws_native.apigateway.RestApi(\"myRestApi\",\n api_key_source_type=api_key_source_type,\n binary_media_types=[\n binary_media_type1,\n binary_media_type2,\n ],\n minimum_compression_size=minimum_compression_size,\n name=api_name)\n\n```\n\n{{% /example %}}\n{{% /examples %}}\n", "properties": { "apiKeySourceType": { - "type": "string" + "type": "string", + "description": "The source of the API key for metering requests according to a usage plan. Valid values are: ``HEADER`` to read the API key from the ``X-API-Key`` header of a request. ``AUTHORIZER`` to read the API key from the ``UsageIdentifierKey`` from a custom authorizer." }, "binaryMediaTypes": { "type": "array", "items": { "type": "string" - } + }, + "description": "The list of binary media types supported by the RestApi. By default, the RestApi supports only UTF-8-encoded text payloads." }, "body": { - "$ref": "pulumi.json#/Any" + "$ref": "pulumi.json#/Any", + "description": "An OpenAPI specification that defines a set of RESTful APIs in JSON format. For YAML templates, you can also provide the specification in YAML format." }, "bodyS3Location": { - "$ref": "#/types/aws-native:apigateway:RestApiS3Location" + "$ref": "#/types/aws-native:apigateway:RestApiS3Location", + "description": "The Amazon Simple Storage Service (Amazon S3) location that points to an OpenAPI file, which defines a set of RESTful APIs in JSON or YAML format." }, "cloneFrom": { - "type": "string" + "type": "string", + "description": "The ID of the RestApi that you want to clone from." }, "description": { - "type": "string" + "type": "string", + "description": "The description of the RestApi." }, "disableExecuteApiEndpoint": { - "type": "boolean" + "type": "boolean", + "description": "Specifies whether clients can invoke your API by using the default ``execute-api`` endpoint. By default, clients can invoke your API with the default ``https://{api_id}.execute-api.{region}.amazonaws.com`` endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint" }, "endpointConfiguration": { - "$ref": "#/types/aws-native:apigateway:RestApiEndpointConfiguration" + "$ref": "#/types/aws-native:apigateway:RestApiEndpointConfiguration", + "description": "A list of the endpoint types of the API. Use this property when creating an API. When importing an existing API, specify the endpoint configuration types using the ``Parameters`` property." }, "failOnWarnings": { - "type": "boolean" + "type": "boolean", + "description": "A query parameter to indicate whether to rollback the API update (``true``) or not (``false``) when a warning is encountered. The default value is ``false``." }, "minimumCompressionSize": { - "type": "integer" + "type": "integer", + "description": "A nullable integer that is used to enable compression (with non-negative between 0 and 10485760 (10M) bytes, inclusive) or disable compression (with a null value) on an API. When compression is enabled, compression or decompression is not applied on the payload if the payload size is smaller than this value. Setting it to zero allows compression for any payload size." }, "mode": { - "type": "string" + "type": "string", + "description": "This property applies only when you use OpenAPI to define your REST API. The ``Mode`` determines how API Gateway handles resource updates.\n Valid values are ``overwrite`` or ``merge``. \n For ``overwrite``, the new API definition replaces the existing one. The existing API identifier remains unchanged.\n For ``merge``, the new API definition is merged with the existing API.\n If you don't specify this property, a default value is chosen. For REST APIs created before March 29, 2021, the default is ``overwrite``. For REST APIs created after March 29, 2021, the new API definition takes precedence, but any container types such as endpoint configurations and binary media types are merged with the existing API. \n Use the default mode to define top-level ``RestApi`` properties in addition to using OpenAPI. Generally, it's preferred to use API Gateway's OpenAPI extensions to model these properties." }, "name": { - "type": "string" + "type": "string", + "description": "The name of the RestApi. A name is required if the REST API is not based on an OpenAPI specification." }, "parameters": { - "$ref": "pulumi.json#/Any" + "$ref": "pulumi.json#/Any", + "description": "Custom header parameters as part of the request. For example, to exclude DocumentationParts from an imported API, set ``ignore=documentation`` as a ``parameters`` value, as in the AWS CLI command of ``aws apigateway import-rest-api --parameters ignore=documentation --body 'file:///path/to/imported-api-body.json'``." }, "policy": { - "$ref": "pulumi.json#/Any" + "$ref": "pulumi.json#/Any", + "description": "A policy document that contains the permissions for the ``RestApi`` resource. To set the ARN for the policy, use the ``!Join`` intrinsic function with ``\"\"`` as delimiter and values of ``\"execute-api:/\"`` and ``\"*\"``." }, "restApiId": { "type": "string" @@ -123709,7 +124172,8 @@ "type": "array", "items": { "$ref": "#/types/aws-native:apigateway:RestApiTag" - } + }, + "description": "The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with ``aws:``. The tag value can be up to 256 characters." } }, "type": "object", @@ -123719,108 +124183,123 @@ ], "inputProperties": { "apiKeySourceType": { - "type": "string" + "type": "string", + "description": "The source of the API key for metering requests according to a usage plan. Valid values are: ``HEADER`` to read the API key from the ``X-API-Key`` header of a request. ``AUTHORIZER`` to read the API key from the ``UsageIdentifierKey`` from a custom authorizer." }, "binaryMediaTypes": { "type": "array", "items": { "type": "string" - } + }, + "description": "The list of binary media types supported by the RestApi. By default, the RestApi supports only UTF-8-encoded text payloads." }, "body": { - "$ref": "pulumi.json#/Any" + "$ref": "pulumi.json#/Any", + "description": "An OpenAPI specification that defines a set of RESTful APIs in JSON format. For YAML templates, you can also provide the specification in YAML format." }, "bodyS3Location": { - "$ref": "#/types/aws-native:apigateway:RestApiS3Location" + "$ref": "#/types/aws-native:apigateway:RestApiS3Location", + "description": "The Amazon Simple Storage Service (Amazon S3) location that points to an OpenAPI file, which defines a set of RESTful APIs in JSON or YAML format." }, "cloneFrom": { - "type": "string" + "type": "string", + "description": "The ID of the RestApi that you want to clone from." }, "description": { - "type": "string" + "type": "string", + "description": "The description of the RestApi." }, "disableExecuteApiEndpoint": { - "type": "boolean" + "type": "boolean", + "description": "Specifies whether clients can invoke your API by using the default ``execute-api`` endpoint. By default, clients can invoke your API with the default ``https://{api_id}.execute-api.{region}.amazonaws.com`` endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint" }, "endpointConfiguration": { - "$ref": "#/types/aws-native:apigateway:RestApiEndpointConfiguration" + "$ref": "#/types/aws-native:apigateway:RestApiEndpointConfiguration", + "description": "A list of the endpoint types of the API. Use this property when creating an API. When importing an existing API, specify the endpoint configuration types using the ``Parameters`` property." }, "failOnWarnings": { - "type": "boolean" + "type": "boolean", + "description": "A query parameter to indicate whether to rollback the API update (``true``) or not (``false``) when a warning is encountered. The default value is ``false``." }, "minimumCompressionSize": { - "type": "integer" + "type": "integer", + "description": "A nullable integer that is used to enable compression (with non-negative between 0 and 10485760 (10M) bytes, inclusive) or disable compression (with a null value) on an API. When compression is enabled, compression or decompression is not applied on the payload if the payload size is smaller than this value. Setting it to zero allows compression for any payload size." }, "mode": { - "type": "string" + "type": "string", + "description": "This property applies only when you use OpenAPI to define your REST API. The ``Mode`` determines how API Gateway handles resource updates.\n Valid values are ``overwrite`` or ``merge``. \n For ``overwrite``, the new API definition replaces the existing one. The existing API identifier remains unchanged.\n For ``merge``, the new API definition is merged with the existing API.\n If you don't specify this property, a default value is chosen. For REST APIs created before March 29, 2021, the default is ``overwrite``. For REST APIs created after March 29, 2021, the new API definition takes precedence, but any container types such as endpoint configurations and binary media types are merged with the existing API. \n Use the default mode to define top-level ``RestApi`` properties in addition to using OpenAPI. Generally, it's preferred to use API Gateway's OpenAPI extensions to model these properties." }, "name": { - "type": "string" + "type": "string", + "description": "The name of the RestApi. A name is required if the REST API is not based on an OpenAPI specification." }, "parameters": { - "$ref": "pulumi.json#/Any" + "$ref": "pulumi.json#/Any", + "description": "Custom header parameters as part of the request. For example, to exclude DocumentationParts from an imported API, set ``ignore=documentation`` as a ``parameters`` value, as in the AWS CLI command of ``aws apigateway import-rest-api --parameters ignore=documentation --body 'file:///path/to/imported-api-body.json'``." }, "policy": { - "$ref": "pulumi.json#/Any" + "$ref": "pulumi.json#/Any", + "description": "A policy document that contains the permissions for the ``RestApi`` resource. To set the ARN for the policy, use the ``!Join`` intrinsic function with ``\"\"`` as delimiter and values of ``\"execute-api:/\"`` and ``\"*\"``." }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:apigateway:RestApiTag" - } + }, + "description": "The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with ``aws:``. The tag value can be up to 256 characters." } } }, "aws-native:apigateway:Stage": { - "description": "Resource Type definition for AWS::ApiGateway::Stage", + "description": "The ``AWS::ApiGateway::Stage`` resource creates a stage for a deployment.", "properties": { "accessLogSetting": { "$ref": "#/types/aws-native:apigateway:StageAccessLogSetting", - "description": "Specifies settings for logging access in this stage." + "description": "Access log settings, including the access log format and access log destination ARN." }, "cacheClusterEnabled": { "type": "boolean", - "description": "Indicates whether cache clustering is enabled for the stage." + "description": "Specifies whether a cache cluster is enabled for the stage." }, "cacheClusterSize": { "type": "string", - "description": "The stage's cache cluster size." + "description": "The stage's cache capacity in GB. For more information about choosing a cache size, see [Enabling API caching to enhance responsiveness](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html)." }, "canarySetting": { "$ref": "#/types/aws-native:apigateway:StageCanarySetting", - "description": "Specifies settings for the canary deployment in this stage." + "description": "Settings for the canary deployment in this stage." }, "clientCertificateId": { "type": "string", - "description": "The ID of the client certificate that API Gateway uses to call your integration endpoints in the stage. " + "description": "The identifier of a client certificate for an API stage." }, "deploymentId": { "type": "string", - "description": "The ID of the deployment that the stage is associated with. This parameter is required to create a stage. " + "description": "The identifier of the Deployment that the stage points to." }, "description": { "type": "string", - "description": "A description of the stage." + "description": "The stage's description." }, "documentationVersion": { "type": "string", - "description": "The version ID of the API documentation snapshot." + "description": "The version of the associated API documentation." }, "methodSettings": { "type": "array", "items": { "$ref": "#/types/aws-native:apigateway:StageMethodSetting" }, - "description": "Settings for all methods in the stage." + "description": "A map that defines the method settings for a Stage resource. Keys (designated as ``/{method_setting_key`` below) are method paths defined as ``{resource_path}/{http_method}`` for an individual method override, or ``/\\*/\\*`` for overriding all methods in the stage." }, "restApiId": { "type": "string", - "description": "The ID of the RestApi resource that you're deploying with this stage.", + "description": "The string identifier of the associated RestApi.", "replaceOnChanges": true }, "stageName": { "type": "string", - "description": "The name of the stage, which API Gateway uses as the first path segment in the invoked Uniform Resource Identifier (URI).", + "description": "The name of the stage is the first path segment in the Uniform Resource Identifier (URI) of a call to API Gateway. Stage names can only contain alphanumeric characters, hyphens, and underscores. Maximum length is 128 characters.", "replaceOnChanges": true }, "tags": { @@ -123828,15 +124307,15 @@ "items": { "$ref": "#/types/aws-native:apigateway:StageTag" }, - "description": "An array of arbitrary tags (key-value pairs) to associate with the stage." + "description": "The collection of tags. Each tag element is associated with a given resource." }, "tracingEnabled": { "type": "boolean", - "description": "Specifies whether active X-Ray tracing is enabled for this stage." + "description": "Specifies whether active tracing with X-ray is enabled for the Stage." }, "variables": { "$ref": "pulumi.json#/Any", - "description": "A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value." + "description": "A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value. Variable names are limited to alphanumeric characters. Values must match the following regular expression: ``[A-Za-z0-9-._~:/?#\u0026=,]+``." } }, "type": "object", @@ -123846,65 +124325,65 @@ "inputProperties": { "accessLogSetting": { "$ref": "#/types/aws-native:apigateway:StageAccessLogSetting", - "description": "Specifies settings for logging access in this stage." + "description": "Access log settings, including the access log format and access log destination ARN." }, "cacheClusterEnabled": { "type": "boolean", - "description": "Indicates whether cache clustering is enabled for the stage." + "description": "Specifies whether a cache cluster is enabled for the stage." }, "cacheClusterSize": { "type": "string", - "description": "The stage's cache cluster size." + "description": "The stage's cache capacity in GB. For more information about choosing a cache size, see [Enabling API caching to enhance responsiveness](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html)." }, "canarySetting": { "$ref": "#/types/aws-native:apigateway:StageCanarySetting", - "description": "Specifies settings for the canary deployment in this stage." + "description": "Settings for the canary deployment in this stage." }, "clientCertificateId": { "type": "string", - "description": "The ID of the client certificate that API Gateway uses to call your integration endpoints in the stage. " + "description": "The identifier of a client certificate for an API stage." }, "deploymentId": { "type": "string", - "description": "The ID of the deployment that the stage is associated with. This parameter is required to create a stage. " + "description": "The identifier of the Deployment that the stage points to." }, "description": { "type": "string", - "description": "A description of the stage." + "description": "The stage's description." }, "documentationVersion": { "type": "string", - "description": "The version ID of the API documentation snapshot." + "description": "The version of the associated API documentation." }, "methodSettings": { "type": "array", "items": { "$ref": "#/types/aws-native:apigateway:StageMethodSetting" }, - "description": "Settings for all methods in the stage." + "description": "A map that defines the method settings for a Stage resource. Keys (designated as ``/{method_setting_key`` below) are method paths defined as ``{resource_path}/{http_method}`` for an individual method override, or ``/\\*/\\*`` for overriding all methods in the stage." }, "restApiId": { "type": "string", - "description": "The ID of the RestApi resource that you're deploying with this stage." + "description": "The string identifier of the associated RestApi." }, "stageName": { "type": "string", - "description": "The name of the stage, which API Gateway uses as the first path segment in the invoked Uniform Resource Identifier (URI)." + "description": "The name of the stage is the first path segment in the Uniform Resource Identifier (URI) of a call to API Gateway. Stage names can only contain alphanumeric characters, hyphens, and underscores. Maximum length is 128 characters." }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:apigateway:StageTag" }, - "description": "An array of arbitrary tags (key-value pairs) to associate with the stage." + "description": "The collection of tags. Each tag element is associated with a given resource." }, "tracingEnabled": { "type": "boolean", - "description": "Specifies whether active X-Ray tracing is enabled for this stage." + "description": "Specifies whether active tracing with X-ray is enabled for the Stage." }, "variables": { "$ref": "pulumi.json#/Any", - "description": "A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value." + "description": "A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value. Variable names are limited to alphanumeric characters. Values must match the following regular expression: ``[A-Za-z0-9-._~:/?#\u0026=,]+``." } }, "requiredInputs": [ @@ -123980,21 +124459,21 @@ } }, "aws-native:apigateway:UsagePlanKey": { - "description": "Resource Type definition for AWS::ApiGateway::UsagePlanKey", + "description": "The ``AWS::ApiGateway::UsagePlanKey`` resource associates an API key with a usage plan. This association determines which users the usage plan is applied to.", "properties": { "keyId": { "type": "string", - "description": "The ID of the usage plan key.", + "description": "The Id of the UsagePlanKey resource.", "replaceOnChanges": true }, "keyType": { "$ref": "#/types/aws-native:apigateway:UsagePlanKeyKeyType", - "description": "The type of usage plan key. Currently, the only valid key type is API_KEY.", + "description": "The type of a UsagePlanKey resource for a plan customer.", "replaceOnChanges": true }, "usagePlanId": { "type": "string", - "description": "The ID of the usage plan.", + "description": "The Id of the UsagePlan resource representing the usage plan containing the UsagePlanKey resource representing a plan customer.", "replaceOnChanges": true } }, @@ -124007,15 +124486,15 @@ "inputProperties": { "keyId": { "type": "string", - "description": "The ID of the usage plan key." + "description": "The Id of the UsagePlanKey resource." }, "keyType": { "$ref": "#/types/aws-native:apigateway:UsagePlanKeyKeyType", - "description": "The type of usage plan key. Currently, the only valid key type is API_KEY." + "description": "The type of a UsagePlanKey resource for a plan customer." }, "usagePlanId": { "type": "string", - "description": "The ID of the usage plan." + "description": "The Id of the UsagePlan resource representing the usage plan containing the UsagePlanKey resource representing a plan customer." } }, "requiredInputs": [ @@ -124907,6 +125386,52 @@ "subnetIds" ] }, + "aws-native:appconfig:Application": { + "description": "Resource Type definition for AWS::AppConfig::Application", + "properties": { + "applicationId": { + "type": "string", + "description": "The application Id" + }, + "description": { + "type": "string", + "description": "A description of the application." + }, + "name": { + "type": "string", + "description": "A name for the application." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:appconfig:ApplicationTags" + }, + "description": "Metadata to assign to the application. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define." + } + }, + "type": "object", + "required": [ + "applicationId", + "name" + ], + "inputProperties": { + "description": { + "type": "string", + "description": "A description of the application." + }, + "name": { + "type": "string", + "description": "A name for the application." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:appconfig:ApplicationTags" + }, + "description": "Metadata to assign to the application. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define." + } + } + }, "aws-native:appconfig:Extension": { "description": "Resource Type definition for AWS::AppConfig::Extension\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 basicExtension = new AwsNative.AppConfig.Extension(\"basicExtension\", new()\n {\n Name = \"My Test Extension\",\n Description = \"My test extension\",\n LatestVersionNumber = 0,\n Actions = \n {\n { \"pre_create_hosted_configuration_version\", new[]\n {\n \n {\n { \"name\", \"My Test Action\" },\n { \"uri\", \"DependentLambda.Arn\" },\n { \"roleArn\", \"DependentRole.Arn\" },\n { \"description\", \"My test action point\" },\n },\n } },\n },\n Parameters = \n {\n { \"myTestParam\", \n {\n { \"required\", false },\n { \"description\", \"My test parameter\" },\n } },\n },\n Tags = new[]\n {\n new AwsNative.AppConfig.Inputs.ExtensionTagArgs\n {\n Key = \"Ext\",\n Value = \"Test\",\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/appconfig\"\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 := appconfig.NewExtension(ctx, \"basicExtension\", \u0026appconfig.ExtensionArgs{\n\t\t\tName: pulumi.String(\"My Test Extension\"),\n\t\t\tDescription: pulumi.String(\"My test extension\"),\n\t\t\tLatestVersionNumber: pulumi.Int(0),\n\t\t\tActions: pulumi.Any{\n\t\t\t\tPre_create_hosted_configuration_version: []map[string]interface{}{\n\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\"name\": \"My Test Action\",\n\t\t\t\t\t\t\"uri\": \"DependentLambda.Arn\",\n\t\t\t\t\t\t\"roleArn\": \"DependentRole.Arn\",\n\t\t\t\t\t\t\"description\": \"My test action point\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tParameters: pulumi.Any{\n\t\t\t\tMyTestParam: map[string]interface{}{\n\t\t\t\t\t\"required\": false,\n\t\t\t\t\t\"description\": \"My test parameter\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tTags: []appconfig.ExtensionTagArgs{\n\t\t\t\t{\n\t\t\t\t\tKey: pulumi.String(\"Ext\"),\n\t\t\t\t\tValue: pulumi.String(\"Test\"),\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 basicExtension = new aws_native.appconfig.Extension(\"basicExtension\", {\n name: \"My Test Extension\",\n description: \"My test extension\",\n latestVersionNumber: 0,\n actions: {\n pre_create_hosted_configuration_version: [{\n name: \"My Test Action\",\n uri: \"DependentLambda.Arn\",\n roleArn: \"DependentRole.Arn\",\n description: \"My test action point\",\n }],\n },\n parameters: {\n myTestParam: {\n required: false,\n description: \"My test parameter\",\n },\n },\n tags: [{\n key: \"Ext\",\n value: \"Test\",\n }],\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nbasic_extension = aws_native.appconfig.Extension(\"basicExtension\",\n name=\"My Test Extension\",\n description=\"My test extension\",\n latest_version_number=0,\n actions={\n \"pre_create_hosted_configuration_version\": [{\n \"name\": \"My Test Action\",\n \"uri\": \"DependentLambda.Arn\",\n \"roleArn\": \"DependentRole.Arn\",\n \"description\": \"My test action point\",\n }],\n },\n parameters={\n \"myTestParam\": {\n \"required\": False,\n \"description\": \"My test parameter\",\n },\n },\n tags=[aws_native.appconfig.ExtensionTagArgs(\n key=\"Ext\",\n value=\"Test\",\n )])\n\n```\n\n{{% /example %}}\n{{% /examples %}}\n", "properties": { @@ -126802,6 +127327,146 @@ "domainName" ] }, + "aws-native:appsync:FunctionConfiguration": { + "description": "An example resource schema demonstrating some basic constructs and validation rules.\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 config = new Config();\n var graphQlApiId = config.Require(\"graphQlApiId\");\n var name = config.Require(\"name\");\n var description = config.Require(\"description\");\n var dataSourceName = config.Require(\"dataSourceName\");\n var functionVersion = config.Require(\"functionVersion\");\n var requestMappingTemplateS3LocationInput = config.Require(\"requestMappingTemplateS3LocationInput\");\n var responseMappingTemplateS3LocationInput = config.Require(\"responseMappingTemplateS3LocationInput\");\n var functionConfiguration = new AwsNative.AppSync.FunctionConfiguration(\"functionConfiguration\", new()\n {\n ApiId = graphQlApiId,\n Name = name,\n Description = description,\n FunctionVersion = functionVersion,\n DataSourceName = dataSourceName,\n RequestMappingTemplateS3Location = requestMappingTemplateS3LocationInput,\n ResponseMappingTemplateS3Location = responseMappingTemplateS3LocationInput,\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/appsync\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tgraphQlApiId := cfg.Require(\"graphQlApiId\")\n\t\tname := cfg.Require(\"name\")\n\t\tdescription := cfg.Require(\"description\")\n\t\tdataSourceName := cfg.Require(\"dataSourceName\")\n\t\tfunctionVersion := cfg.Require(\"functionVersion\")\n\t\trequestMappingTemplateS3LocationInput := cfg.Require(\"requestMappingTemplateS3LocationInput\")\n\t\tresponseMappingTemplateS3LocationInput := cfg.Require(\"responseMappingTemplateS3LocationInput\")\n\t\t_, err := appsync.NewFunctionConfiguration(ctx, \"functionConfiguration\", \u0026appsync.FunctionConfigurationArgs{\n\t\t\tApiId: pulumi.String(graphQlApiId),\n\t\t\tName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(description),\n\t\t\tFunctionVersion: pulumi.String(functionVersion),\n\t\t\tDataSourceName: pulumi.String(dataSourceName),\n\t\t\tRequestMappingTemplateS3Location: pulumi.String(requestMappingTemplateS3LocationInput),\n\t\t\tResponseMappingTemplateS3Location: pulumi.String(responseMappingTemplateS3LocationInput),\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 config = new pulumi.Config();\nconst graphQlApiId = config.require(\"graphQlApiId\");\nconst name = config.require(\"name\");\nconst description = config.require(\"description\");\nconst dataSourceName = config.require(\"dataSourceName\");\nconst functionVersion = config.require(\"functionVersion\");\nconst requestMappingTemplateS3LocationInput = config.require(\"requestMappingTemplateS3LocationInput\");\nconst responseMappingTemplateS3LocationInput = config.require(\"responseMappingTemplateS3LocationInput\");\nconst functionConfiguration = new aws_native.appsync.FunctionConfiguration(\"functionConfiguration\", {\n apiId: graphQlApiId,\n name: name,\n description: description,\n functionVersion: functionVersion,\n dataSourceName: dataSourceName,\n requestMappingTemplateS3Location: requestMappingTemplateS3LocationInput,\n responseMappingTemplateS3Location: responseMappingTemplateS3LocationInput,\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nconfig = pulumi.Config()\ngraph_ql_api_id = config.require(\"graphQlApiId\")\nname = config.require(\"name\")\ndescription = config.require(\"description\")\ndata_source_name = config.require(\"dataSourceName\")\nfunction_version = config.require(\"functionVersion\")\nrequest_mapping_template_s3_location_input = config.require(\"requestMappingTemplateS3LocationInput\")\nresponse_mapping_template_s3_location_input = config.require(\"responseMappingTemplateS3LocationInput\")\nfunction_configuration = aws_native.appsync.FunctionConfiguration(\"functionConfiguration\",\n api_id=graph_ql_api_id,\n name=name,\n description=description,\n function_version=function_version,\n data_source_name=data_source_name,\n request_mapping_template_s3_location=request_mapping_template_s3_location_input,\n response_mapping_template_s3_location=response_mapping_template_s3_location_input)\n\n```\n\n{{% /example %}}\n{{% /examples %}}\n", + "properties": { + "apiId": { + "type": "string", + "description": "The AWS AppSync GraphQL API that you want to attach using this function.", + "replaceOnChanges": true + }, + "code": { + "type": "string", + "description": "The resolver code that contains the request and response functions. When code is used, the runtime is required. The runtime value must be APPSYNC_JS." + }, + "codeS3Location": { + "type": "string", + "description": "The Amazon S3 endpoint (where the code is located??)." + }, + "dataSourceName": { + "type": "string", + "description": "The name of data source this function will attach." + }, + "description": { + "type": "string", + "description": "The function description." + }, + "functionArn": { + "type": "string", + "description": "The ARN for the function generated by the service" + }, + "functionId": { + "type": "string", + "description": "The unique identifier for the function generated by the service" + }, + "functionVersion": { + "type": "string", + "description": "The version of the request mapping template. Currently, only the 2018-05-29 version of the template is supported." + }, + "maxBatchSize": { + "type": "integer", + "description": "The maximum number of resolver request inputs that will be sent to a single AWS Lambda function in a BatchInvoke operation." + }, + "name": { + "type": "string", + "description": "The name of the function." + }, + "requestMappingTemplate": { + "type": "string", + "description": "The Function request mapping template. Functions support only the 2018-05-29 version of the request mapping template." + }, + "requestMappingTemplateS3Location": { + "type": "string", + "description": "Describes a Sync configuration for a resolver. Contains information on which Conflict Detection, as well as Resolution strategy, should be performed when the resolver is invoked." + }, + "responseMappingTemplate": { + "type": "string", + "description": "The Function response mapping template." + }, + "responseMappingTemplateS3Location": { + "type": "string", + "description": "The location of a response mapping template in an Amazon S3 bucket. Use this if you want to provision with a template file in Amazon S3 rather than embedding it in your CloudFormation template." + }, + "runtime": { + "$ref": "#/types/aws-native:appsync:FunctionConfigurationAppSyncRuntime", + "description": "Describes a runtime used by an AWS AppSync pipeline resolver or AWS AppSync function. Specifies the name and version of the runtime to use. Note that if a runtime is specified, code must also be specified." + }, + "syncConfig": { + "$ref": "#/types/aws-native:appsync:FunctionConfigurationSyncConfig", + "description": "Describes a Sync configuration for a resolver. Specifies which Conflict Detection strategy and Resolution strategy to use when the resolver is invoked." + } + }, + "type": "object", + "required": [ + "apiId", + "dataSourceName", + "functionArn", + "functionId", + "name" + ], + "inputProperties": { + "apiId": { + "type": "string", + "description": "The AWS AppSync GraphQL API that you want to attach using this function." + }, + "code": { + "type": "string", + "description": "The resolver code that contains the request and response functions. When code is used, the runtime is required. The runtime value must be APPSYNC_JS." + }, + "codeS3Location": { + "type": "string", + "description": "The Amazon S3 endpoint (where the code is located??)." + }, + "dataSourceName": { + "type": "string", + "description": "The name of data source this function will attach." + }, + "description": { + "type": "string", + "description": "The function description." + }, + "functionVersion": { + "type": "string", + "description": "The version of the request mapping template. Currently, only the 2018-05-29 version of the template is supported." + }, + "maxBatchSize": { + "type": "integer", + "description": "The maximum number of resolver request inputs that will be sent to a single AWS Lambda function in a BatchInvoke operation." + }, + "name": { + "type": "string", + "description": "The name of the function." + }, + "requestMappingTemplate": { + "type": "string", + "description": "The Function request mapping template. Functions support only the 2018-05-29 version of the request mapping template." + }, + "requestMappingTemplateS3Location": { + "type": "string", + "description": "Describes a Sync configuration for a resolver. Contains information on which Conflict Detection, as well as Resolution strategy, should be performed when the resolver is invoked." + }, + "responseMappingTemplate": { + "type": "string", + "description": "The Function response mapping template." + }, + "responseMappingTemplateS3Location": { + "type": "string", + "description": "The location of a response mapping template in an Amazon S3 bucket. Use this if you want to provision with a template file in Amazon S3 rather than embedding it in your CloudFormation template." + }, + "runtime": { + "$ref": "#/types/aws-native:appsync:FunctionConfigurationAppSyncRuntime", + "description": "Describes a runtime used by an AWS AppSync pipeline resolver or AWS AppSync function. Specifies the name and version of the runtime to use. Note that if a runtime is specified, code must also be specified." + }, + "syncConfig": { + "$ref": "#/types/aws-native:appsync:FunctionConfigurationSyncConfig", + "description": "Describes a Sync configuration for a resolver. Specifies which Conflict Detection strategy and Resolution strategy to use when the resolver is invoked." + } + }, + "requiredInputs": [ + "apiId", + "dataSourceName" + ] + }, "aws-native:appsync:SourceApiAssociation": { "description": "Resource Type definition for AWS::AppSync::SourceApiAssociation", "properties": { @@ -132652,13 +133317,6 @@ "identityPoolName": { "type": "string" }, - "identityPoolTags": { - "type": "array", - "items": { - "$ref": "#/types/aws-native:cognito:IdentityPoolTag" - }, - "description": "An array of key-value pairs to apply to this resource." - }, "name": { "type": "string" }, @@ -132711,13 +133369,6 @@ "identityPoolName": { "type": "string" }, - "identityPoolTags": { - "type": "array", - "items": { - "$ref": "#/types/aws-native:cognito:IdentityPoolTag" - }, - "description": "An array of key-value pairs to apply to this resource." - }, "openIdConnectProviderArns": { "type": "array", "items": { @@ -132816,6 +133467,252 @@ "userPoolId" ] }, + "aws-native:cognito:UserPool": { + "description": "Resource Type definition for AWS::Cognito::UserPool", + "properties": { + "accountRecoverySetting": { + "$ref": "#/types/aws-native:cognito:UserPoolAccountRecoverySetting" + }, + "adminCreateUserConfig": { + "$ref": "#/types/aws-native:cognito:UserPoolAdminCreateUserConfig" + }, + "aliasAttributes": { + "type": "array", + "items": { + "type": "string" + } + }, + "arn": { + "type": "string" + }, + "autoVerifiedAttributes": { + "type": "array", + "items": { + "type": "string" + } + }, + "deletionProtection": { + "type": "string" + }, + "deviceConfiguration": { + "$ref": "#/types/aws-native:cognito:UserPoolDeviceConfiguration" + }, + "emailConfiguration": { + "$ref": "#/types/aws-native:cognito:UserPoolEmailConfiguration" + }, + "emailVerificationMessage": { + "type": "string" + }, + "emailVerificationSubject": { + "type": "string" + }, + "enabledMfas": { + "type": "array", + "items": { + "type": "string" + } + }, + "lambdaConfig": { + "$ref": "#/types/aws-native:cognito:UserPoolLambdaConfig" + }, + "mfaConfiguration": { + "type": "string" + }, + "policies": { + "$ref": "#/types/aws-native:cognito:UserPoolPolicies" + }, + "providerName": { + "type": "string" + }, + "providerUrl": { + "type": "string" + }, + "schema": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:cognito:UserPoolSchemaAttribute" + } + }, + "smsAuthenticationMessage": { + "type": "string" + }, + "smsConfiguration": { + "$ref": "#/types/aws-native:cognito:UserPoolSmsConfiguration" + }, + "smsVerificationMessage": { + "type": "string" + }, + "userAttributeUpdateSettings": { + "$ref": "#/types/aws-native:cognito:UserPoolUserAttributeUpdateSettings" + }, + "userPoolAddOns": { + "$ref": "#/types/aws-native:cognito:UserPoolAddOns" + }, + "userPoolId": { + "type": "string" + }, + "userPoolName": { + "type": "string" + }, + "userPoolTags": { + "$ref": "pulumi.json#/Any" + }, + "usernameAttributes": { + "type": "array", + "items": { + "type": "string" + } + }, + "usernameConfiguration": { + "$ref": "#/types/aws-native:cognito:UserPoolUsernameConfiguration" + }, + "verificationMessageTemplate": { + "$ref": "#/types/aws-native:cognito:UserPoolVerificationMessageTemplate" + } + }, + "type": "object", + "required": [ + "arn", + "providerName", + "providerUrl", + "userPoolId" + ], + "inputProperties": { + "accountRecoverySetting": { + "$ref": "#/types/aws-native:cognito:UserPoolAccountRecoverySetting" + }, + "adminCreateUserConfig": { + "$ref": "#/types/aws-native:cognito:UserPoolAdminCreateUserConfig" + }, + "aliasAttributes": { + "type": "array", + "items": { + "type": "string" + } + }, + "autoVerifiedAttributes": { + "type": "array", + "items": { + "type": "string" + } + }, + "deletionProtection": { + "type": "string" + }, + "deviceConfiguration": { + "$ref": "#/types/aws-native:cognito:UserPoolDeviceConfiguration" + }, + "emailConfiguration": { + "$ref": "#/types/aws-native:cognito:UserPoolEmailConfiguration" + }, + "emailVerificationMessage": { + "type": "string" + }, + "emailVerificationSubject": { + "type": "string" + }, + "enabledMfas": { + "type": "array", + "items": { + "type": "string" + } + }, + "lambdaConfig": { + "$ref": "#/types/aws-native:cognito:UserPoolLambdaConfig" + }, + "mfaConfiguration": { + "type": "string" + }, + "policies": { + "$ref": "#/types/aws-native:cognito:UserPoolPolicies" + }, + "schema": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:cognito:UserPoolSchemaAttribute" + } + }, + "smsAuthenticationMessage": { + "type": "string" + }, + "smsConfiguration": { + "$ref": "#/types/aws-native:cognito:UserPoolSmsConfiguration" + }, + "smsVerificationMessage": { + "type": "string" + }, + "userAttributeUpdateSettings": { + "$ref": "#/types/aws-native:cognito:UserPoolUserAttributeUpdateSettings" + }, + "userPoolAddOns": { + "$ref": "#/types/aws-native:cognito:UserPoolAddOns" + }, + "userPoolName": { + "type": "string" + }, + "userPoolTags": { + "$ref": "pulumi.json#/Any" + }, + "usernameAttributes": { + "type": "array", + "items": { + "type": "string" + } + }, + "usernameConfiguration": { + "$ref": "#/types/aws-native:cognito:UserPoolUsernameConfiguration" + }, + "verificationMessageTemplate": { + "$ref": "#/types/aws-native:cognito:UserPoolVerificationMessageTemplate" + } + } + }, + "aws-native:cognito:UserPoolGroup": { + "description": "Resource Type definition for AWS::Cognito::UserPoolGroup", + "properties": { + "description": { + "type": "string" + }, + "groupName": { + "type": "string", + "replaceOnChanges": true + }, + "precedence": { + "type": "integer" + }, + "roleArn": { + "type": "string" + }, + "userPoolId": { + "type": "string", + "replaceOnChanges": true + } + }, + "type": "object", + "required": [ + "userPoolId" + ], + "inputProperties": { + "description": { + "type": "string" + }, + "groupName": { + "type": "string" + }, + "precedence": { + "type": "integer" + }, + "roleArn": { + "type": "string" + }, + "userPoolId": { + "type": "string" + } + }, + "requiredInputs": [ + "userPoolId" + ] + }, "aws-native:cognito:UserPoolUser": { "description": "Resource Type definition for AWS::Cognito::UserPoolUser", "properties": { @@ -133650,11 +134547,11 @@ "description": "The name of the contact flow module." }, "state": { - "$ref": "#/types/aws-native:connect:ContactFlowModuleState", + "type": "string", "description": "The state of the contact flow module." }, "status": { - "$ref": "#/types/aws-native:connect:ContactFlowModuleStatus", + "type": "string", "description": "The status of the contact flow module." }, "tags": { @@ -133691,7 +134588,7 @@ "description": "The name of the contact flow module." }, "state": { - "$ref": "#/types/aws-native:connect:ContactFlowModuleState", + "type": "string", "description": "The state of the contact flow module." }, "tags": { @@ -135457,6 +136354,15 @@ "type": "string", "description": "The time of this integration got last updated at" }, + "matching": { + "$ref": "#/types/aws-native:customerprofiles:DomainMatching" + }, + "ruleBasedMatching": { + "$ref": "#/types/aws-native:customerprofiles:DomainRuleBasedMatching" + }, + "stats": { + "$ref": "#/types/aws-native:customerprofiles:DomainStats" + }, "tags": { "type": "array", "items": { @@ -135469,7 +136375,8 @@ "required": [ "createdAt", "domainName", - "lastUpdatedAt" + "lastUpdatedAt", + "stats" ], "inputProperties": { "deadLetterQueueUrl": { @@ -135488,6 +136395,12 @@ "type": "string", "description": "The unique name of the domain." }, + "matching": { + "$ref": "#/types/aws-native:customerprofiles:DomainMatching" + }, + "ruleBasedMatching": { + "$ref": "#/types/aws-native:customerprofiles:DomainRuleBasedMatching" + }, "tags": { "type": "array", "items": { @@ -142200,6 +143113,10 @@ "enableDns64": { "type": "boolean" }, + "ipv4NetmaskLength": { + "type": "integer", + "description": "The netmask length of the IPv4 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool" + }, "ipv6CidrBlock": { "type": "string" }, @@ -142213,6 +143130,10 @@ "type": "boolean", "replaceOnChanges": true }, + "ipv6NetmaskLength": { + "type": "integer", + "description": "The netmask length of the IPv6 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool" + }, "mapPublicIpOnLaunch": { "type": "boolean" }, @@ -142263,12 +143184,20 @@ "enableDns64": { "type": "boolean" }, + "ipv4NetmaskLength": { + "type": "integer", + "description": "The netmask length of the IPv4 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool" + }, "ipv6CidrBlock": { "type": "string" }, "ipv6Native": { "type": "boolean" }, + "ipv6NetmaskLength": { + "type": "integer", + "description": "The netmask length of the IPv6 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool" + }, "mapPublicIpOnLaunch": { "type": "boolean" }, @@ -147714,6 +148643,105 @@ "type" ] }, + "aws-native:entityresolution:IdMappingWorkflow": { + "description": "IdMappingWorkflow defined in AWS Entity Resolution service", + "properties": { + "createdAt": { + "type": "string" + }, + "description": { + "type": "string", + "description": "The description of the IdMappingWorkflow" + }, + "idMappingTechniques": { + "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowIdMappingTechniques" + }, + "inputSourceConfig": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowInputSource" + } + }, + "outputSourceConfig": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowOutputSource" + } + }, + "roleArn": { + "type": "string" + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowTag" + } + }, + "updatedAt": { + "type": "string" + }, + "workflowArn": { + "type": "string" + }, + "workflowName": { + "type": "string", + "description": "The name of the IdMappingWorkflow", + "replaceOnChanges": true + } + }, + "type": "object", + "required": [ + "createdAt", + "idMappingTechniques", + "inputSourceConfig", + "outputSourceConfig", + "roleArn", + "updatedAt", + "workflowArn", + "workflowName" + ], + "inputProperties": { + "description": { + "type": "string", + "description": "The description of the IdMappingWorkflow" + }, + "idMappingTechniques": { + "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowIdMappingTechniques" + }, + "inputSourceConfig": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowInputSource" + } + }, + "outputSourceConfig": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowOutputSource" + } + }, + "roleArn": { + "type": "string" + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowTag" + } + }, + "workflowName": { + "type": "string", + "description": "The name of the IdMappingWorkflow" + } + }, + "requiredInputs": [ + "idMappingTechniques", + "inputSourceConfig", + "outputSourceConfig", + "roleArn", + "workflowName" + ] + }, "aws-native:entityresolution:MatchingWorkflow": { "description": "MatchingWorkflow defined in AWS Entity Resolution service", "properties": { @@ -148195,44 +149223,36 @@ "description": "Resource Type definition for AWS::Events::Rule", "properties": { "arn": { - "type": "string", - "description": "The ARN of the rule, such as arn:aws:events:us-east-2:123456789012:rule/example." + "type": "string" }, "description": { - "type": "string", - "description": "The description of the rule." + "type": "string" }, "eventBusName": { "type": "string", - "description": "The name or ARN of the event bus associated with the rule. If you omit this, the default event bus is used." + "replaceOnChanges": true }, "eventPattern": { - "type": "string", - "description": "The event pattern of the rule. For more information, see Events and Event Patterns in the Amazon EventBridge User Guide." + "$ref": "pulumi.json#/Any" }, "name": { "type": "string", - "description": "The name of the rule.", "replaceOnChanges": true }, "roleArn": { - "type": "string", - "description": "The Amazon Resource Name (ARN) of the role that is used for target invocation." + "type": "string" }, "scheduleExpression": { - "type": "string", - "description": "The scheduling expression. For example, \"cron(0 20 * * ? *)\", \"rate(5 minutes)\". For more information, see Creating an Amazon EventBridge rule that runs on a schedule." + "type": "string" }, "state": { - "$ref": "#/types/aws-native:events:RuleState", - "description": "The state of the rule." + "type": "string" }, "targets": { "type": "array", "items": { "$ref": "#/types/aws-native:events:RuleTarget" - }, - "description": "Adds the specified targets to the specified rule, or updates the targets if they are already associated with the rule.\nTargets are the resources that are invoked when a rule is triggered." + } } }, "type": "object", @@ -148241,39 +149261,31 @@ ], "inputProperties": { "description": { - "type": "string", - "description": "The description of the rule." + "type": "string" }, "eventBusName": { - "type": "string", - "description": "The name or ARN of the event bus associated with the rule. If you omit this, the default event bus is used." + "type": "string" }, "eventPattern": { - "type": "string", - "description": "The event pattern of the rule. For more information, see Events and Event Patterns in the Amazon EventBridge User Guide." + "$ref": "pulumi.json#/Any" }, "name": { - "type": "string", - "description": "The name of the rule." + "type": "string" }, "roleArn": { - "type": "string", - "description": "The Amazon Resource Name (ARN) of the role that is used for target invocation." + "type": "string" }, "scheduleExpression": { - "type": "string", - "description": "The scheduling expression. For example, \"cron(0 20 * * ? *)\", \"rate(5 minutes)\". For more information, see Creating an Amazon EventBridge rule that runs on a schedule." + "type": "string" }, "state": { - "$ref": "#/types/aws-native:events:RuleState", - "description": "The state of the rule." + "type": "string" }, "targets": { "type": "array", "items": { "$ref": "#/types/aws-native:events:RuleTarget" - }, - "description": "Adds the specified targets to the specified rule, or updates the targets if they are already associated with the rule.\nTargets are the resources that are invoked when a rule is triggered." + } } } }, @@ -150109,6 +151121,11 @@ "description": "A unique identifier for an AWS IAM role that manages access to your AWS services. With an instance role ARN set, any application that runs on an instance in this fleet can assume the role, including install scripts, server processes, and daemons (background processes). Create a role or look up a role's ARN from the IAM dashboard in the AWS Management Console.", "replaceOnChanges": true }, + "instanceRoleCredentialsProvider": { + "$ref": "#/types/aws-native:gamelift:FleetInstanceRoleCredentialsProvider", + "description": "Credentials provider implementation that loads credentials from the Amazon EC2 Instance Metadata Service.", + "replaceOnChanges": true + }, "locations": { "type": "array", "items": { @@ -150229,6 +151246,10 @@ "type": "string", "description": "A unique identifier for an AWS IAM role that manages access to your AWS services. With an instance role ARN set, any application that runs on an instance in this fleet can assume the role, including install scripts, server processes, and daemons (background processes). Create a role or look up a role's ARN from the IAM dashboard in the AWS Management Console." }, + "instanceRoleCredentialsProvider": { + "$ref": "#/types/aws-native:gamelift:FleetInstanceRoleCredentialsProvider", + "description": "Credentials provider implementation that loads credentials from the Amazon EC2 Instance Metadata Service." + }, "locations": { "type": "array", "items": { @@ -151663,6 +152684,66 @@ "datastoreTypeVersion" ] }, + "aws-native:iam:Group": { + "description": "Resource Type definition for AWS::IAM::Group", + "properties": { + "arn": { + "type": "string", + "description": "The Arn of the group to create" + }, + "groupName": { + "type": "string", + "description": "The name of the group to create", + "replaceOnChanges": true + }, + "managedPolicyArns": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of Amazon Resource Names (ARNs) of the IAM managed policies that you want to attach to the role. " + }, + "path": { + "type": "string", + "description": "The path to the group" + }, + "policies": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:iam:GroupPolicy" + }, + "description": "Adds or updates an inline policy document that is embedded in the specified IAM group" + } + }, + "type": "object", + "required": [ + "arn" + ], + "inputProperties": { + "groupName": { + "type": "string", + "description": "The name of the group to create" + }, + "managedPolicyArns": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of Amazon Resource Names (ARNs) of the IAM managed policies that you want to attach to the role. " + }, + "path": { + "type": "string", + "description": "The path to the group" + }, + "policies": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:iam:GroupPolicy" + }, + "description": "Adds or updates an inline policy document that is embedded in the specified IAM group" + } + } + }, "aws-native:iam:GroupPolicy": { "description": "Schema for IAM Group Policy", "properties": { @@ -154240,7 +155321,8 @@ "type": "array", "items": { "type": "string" - } + }, + "replaceOnChanges": true }, "document": { "type": "string", @@ -154258,7 +155340,8 @@ "replaceOnChanges": true }, "jobExecutionsRetryConfig": { - "$ref": "#/types/aws-native:iot:JobExecutionsRetryConfigProperties" + "$ref": "#/types/aws-native:iot:JobExecutionsRetryConfigProperties", + "replaceOnChanges": true }, "jobExecutionsRolloutConfig": { "$ref": "#/types/aws-native:iot:JobExecutionsRolloutConfigProperties", @@ -154273,7 +155356,8 @@ "type": "array", "items": { "$ref": "#/types/aws-native:iot:JobTemplateMaintenanceWindow" - } + }, + "replaceOnChanges": true }, "presignedUrlConfig": { "$ref": "#/types/aws-native:iot:PresignedUrlConfigProperties", @@ -154478,6 +155562,12 @@ "policyName": { "type": "string", "replaceOnChanges": true + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:iot:PolicyTag" + } } }, "type": "object", @@ -154491,6 +155581,12 @@ }, "policyName": { "type": "string" + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:iot:PolicyTag" + } } }, "requiredInputs": [ @@ -159654,6 +160750,10 @@ "$ref": "#/types/aws-native:lambda:FunctionPackageType", "description": "PackageType." }, + "policy": { + "$ref": "pulumi.json#/Any", + "description": "The resource policy of your function" + }, "reservedConcurrentExecutions": { "type": "integer", "description": "The number of simultaneous executions to reserve for the function." @@ -159774,6 +160874,10 @@ "$ref": "#/types/aws-native:lambda:FunctionPackageType", "description": "PackageType." }, + "policy": { + "$ref": "pulumi.json#/Any", + "description": "The resource policy of your function" + }, "reservedConcurrentExecutions": { "type": "integer", "description": "The number of simultaneous executions to reserve for the function." @@ -165910,6 +167014,108 @@ "serverProperties" ] }, + "aws-native:msk:Replicator": { + "description": "Resource Type definition for AWS::MSK::Replicator", + "properties": { + "currentVersion": { + "type": "string", + "description": "The current version of the MSK replicator." + }, + "description": { + "type": "string", + "description": "A summary description of the replicator.", + "replaceOnChanges": true + }, + "kafkaClusters": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:msk:ReplicatorKafkaCluster" + }, + "description": "Specifies a list of Kafka clusters which are targets of the replicator.", + "replaceOnChanges": true + }, + "replicationInfoList": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:msk:ReplicatorReplicationInfo" + }, + "description": "A list of replication configurations, where each configuration targets a given source cluster to target cluster replication flow." + }, + "replicatorArn": { + "type": "string", + "description": "Amazon Resource Name for the created replicator." + }, + "replicatorName": { + "type": "string", + "description": "The name of the replicator.", + "replaceOnChanges": true + }, + "serviceExecutionRoleArn": { + "type": "string", + "description": "The Amazon Resource Name (ARN) of the IAM role used by the replicator to access external resources.", + "replaceOnChanges": true + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:msk:ReplicatorTag" + }, + "description": "A collection of tags associated with a resource" + } + }, + "type": "object", + "required": [ + "kafkaClusters", + "replicationInfoList", + "replicatorArn", + "replicatorName", + "serviceExecutionRoleArn" + ], + "inputProperties": { + "currentVersion": { + "type": "string", + "description": "The current version of the MSK replicator." + }, + "description": { + "type": "string", + "description": "A summary description of the replicator." + }, + "kafkaClusters": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:msk:ReplicatorKafkaCluster" + }, + "description": "Specifies a list of Kafka clusters which are targets of the replicator." + }, + "replicationInfoList": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:msk:ReplicatorReplicationInfo" + }, + "description": "A list of replication configurations, where each configuration targets a given source cluster to target cluster replication flow." + }, + "replicatorName": { + "type": "string", + "description": "The name of the replicator." + }, + "serviceExecutionRoleArn": { + "type": "string", + "description": "The Amazon Resource Name (ARN) of the IAM role used by the replicator to access external resources." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:msk:ReplicatorTag" + }, + "description": "A collection of tags associated with a resource" + } + }, + "requiredInputs": [ + "kafkaClusters", + "replicationInfoList", + "serviceExecutionRoleArn" + ] + }, "aws-native:msk:ServerlessCluster": { "description": "Resource Type definition for AWS::MSK::ServerlessCluster", "properties": { @@ -171253,6 +172459,9 @@ }, "themeArn": { "type": "string" + }, + "validationStrategy": { + "$ref": "#/types/aws-native:quicksight:AnalysisValidationStrategy" } }, "type": "object", @@ -171303,6 +172512,9 @@ }, "themeArn": { "type": "string" + }, + "validationStrategy": { + "$ref": "#/types/aws-native:quicksight:AnalysisValidationStrategy" } }, "requiredInputs": [ @@ -171363,6 +172575,9 @@ "themeArn": { "type": "string" }, + "validationStrategy": { + "$ref": "#/types/aws-native:quicksight:DashboardValidationStrategy" + }, "version": { "$ref": "#/types/aws-native:quicksight:DashboardVersion" }, @@ -171418,6 +172633,9 @@ "themeArn": { "type": "string" }, + "validationStrategy": { + "$ref": "#/types/aws-native:quicksight:DashboardValidationStrategy" + }, "versionDescription": { "type": "string" } @@ -171815,6 +173033,9 @@ "type": "string", "replaceOnChanges": true }, + "validationStrategy": { + "$ref": "#/types/aws-native:quicksight:TemplateValidationStrategy" + }, "version": { "$ref": "#/types/aws-native:quicksight:TemplateVersion" }, @@ -171859,6 +173080,9 @@ "templateId": { "type": "string" }, + "validationStrategy": { + "$ref": "#/types/aws-native:quicksight:TemplateValidationStrategy" + }, "versionDescription": { "type": "string" } @@ -178443,107 +179667,87 @@ "description": "Resource Type definition for AWS::S3::Bucket\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 s3Bucket = new AwsNative.S3.Bucket(\"s3Bucket\");\n\n var recordingConfiguration = new AwsNative.Ivs.RecordingConfiguration(\"recordingConfiguration\", new()\n {\n Name = \"“MyRecordingConfiguration”\",\n DestinationConfiguration = new AwsNative.Ivs.Inputs.RecordingConfigurationDestinationConfigurationArgs\n {\n S3 = new AwsNative.Ivs.Inputs.RecordingConfigurationS3DestinationConfigurationArgs\n {\n BucketName = s3Bucket.Id,\n },\n },\n ThumbnailConfiguration = new AwsNative.Ivs.Inputs.RecordingConfigurationThumbnailConfigurationArgs\n {\n RecordingMode = AwsNative.Ivs.RecordingConfigurationThumbnailConfigurationRecordingMode.Interval,\n TargetIntervalSeconds = 60,\n Storage = new[]\n {\n AwsNative.Ivs.RecordingConfigurationThumbnailConfigurationStorageItem.Sequential,\n AwsNative.Ivs.RecordingConfigurationThumbnailConfigurationStorageItem.Latest,\n },\n Resolution = AwsNative.Ivs.RecordingConfigurationThumbnailConfigurationResolution.Hd,\n },\n RenditionConfiguration = new AwsNative.Ivs.Inputs.RecordingConfigurationRenditionConfigurationArgs\n {\n RenditionSelection = AwsNative.Ivs.RecordingConfigurationRenditionConfigurationRenditionSelection.Custom,\n Renditions = new[]\n {\n AwsNative.Ivs.RecordingConfigurationRenditionConfigurationRenditionsItem.Hd,\n AwsNative.Ivs.RecordingConfigurationRenditionConfigurationRenditionsItem.Sd,\n },\n },\n }, new CustomResourceOptions\n {\n DependsOn = new[]\n {\n s3Bucket,\n },\n });\n\n var channel = new AwsNative.Ivs.Channel(\"channel\", new()\n {\n Name = \"MyRecordedChannel\",\n RecordingConfigurationArn = recordingConfiguration.Id,\n }, new CustomResourceOptions\n {\n DependsOn = new[]\n {\n recordingConfiguration,\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/ivs\"\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/s3\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ts3Bucket, err := s3.NewBucket(ctx, \"s3Bucket\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\trecordingConfiguration, err := ivs.NewRecordingConfiguration(ctx, \"recordingConfiguration\", \u0026ivs.RecordingConfigurationArgs{\n\t\t\tName: pulumi.String(\"“MyRecordingConfiguration”\"),\n\t\t\tDestinationConfiguration: \u0026ivs.RecordingConfigurationDestinationConfigurationArgs{\n\t\t\t\tS3: \u0026ivs.RecordingConfigurationS3DestinationConfigurationArgs{\n\t\t\t\t\tBucketName: s3Bucket.ID(),\n\t\t\t\t},\n\t\t\t},\n\t\t\tThumbnailConfiguration: \u0026ivs.RecordingConfigurationThumbnailConfigurationArgs{\n\t\t\t\tRecordingMode: ivs.RecordingConfigurationThumbnailConfigurationRecordingModeInterval,\n\t\t\t\tTargetIntervalSeconds: pulumi.Int(60),\n\t\t\t\tStorage: ivs.RecordingConfigurationThumbnailConfigurationStorageItemArray{\n\t\t\t\t\tivs.RecordingConfigurationThumbnailConfigurationStorageItemSequential,\n\t\t\t\t\tivs.RecordingConfigurationThumbnailConfigurationStorageItemLatest,\n\t\t\t\t},\n\t\t\t\tResolution: ivs.RecordingConfigurationThumbnailConfigurationResolutionHd,\n\t\t\t},\n\t\t\tRenditionConfiguration: \u0026ivs.RecordingConfigurationRenditionConfigurationArgs{\n\t\t\t\tRenditionSelection: ivs.RecordingConfigurationRenditionConfigurationRenditionSelectionCustom,\n\t\t\t\tRenditions: ivs.RecordingConfigurationRenditionConfigurationRenditionsItemArray{\n\t\t\t\t\tivs.RecordingConfigurationRenditionConfigurationRenditionsItemHd,\n\t\t\t\t\tivs.RecordingConfigurationRenditionConfigurationRenditionsItemSd,\n\t\t\t\t},\n\t\t\t},\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\ts3Bucket,\n\t\t}))\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ivs.NewChannel(ctx, \"channel\", \u0026ivs.ChannelArgs{\n\t\t\tName: pulumi.String(\"MyRecordedChannel\"),\n\t\t\tRecordingConfigurationArn: recordingConfiguration.ID(),\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\trecordingConfiguration,\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 s3Bucket = new aws_native.s3.Bucket(\"s3Bucket\", {});\nconst recordingConfiguration = new aws_native.ivs.RecordingConfiguration(\"recordingConfiguration\", {\n name: \"“MyRecordingConfiguration”\",\n destinationConfiguration: {\n s3: {\n bucketName: s3Bucket.id,\n },\n },\n thumbnailConfiguration: {\n recordingMode: aws_native.ivs.RecordingConfigurationThumbnailConfigurationRecordingMode.Interval,\n targetIntervalSeconds: 60,\n storage: [\n aws_native.ivs.RecordingConfigurationThumbnailConfigurationStorageItem.Sequential,\n aws_native.ivs.RecordingConfigurationThumbnailConfigurationStorageItem.Latest,\n ],\n resolution: aws_native.ivs.RecordingConfigurationThumbnailConfigurationResolution.Hd,\n },\n renditionConfiguration: {\n renditionSelection: aws_native.ivs.RecordingConfigurationRenditionConfigurationRenditionSelection.Custom,\n renditions: [\n aws_native.ivs.RecordingConfigurationRenditionConfigurationRenditionsItem.Hd,\n aws_native.ivs.RecordingConfigurationRenditionConfigurationRenditionsItem.Sd,\n ],\n },\n}, {\n dependsOn: [s3Bucket],\n});\nconst channel = new aws_native.ivs.Channel(\"channel\", {\n name: \"MyRecordedChannel\",\n recordingConfigurationArn: recordingConfiguration.id,\n}, {\n dependsOn: [recordingConfiguration],\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\ns3_bucket = aws_native.s3.Bucket(\"s3Bucket\")\nrecording_configuration = aws_native.ivs.RecordingConfiguration(\"recordingConfiguration\",\n name=\"“MyRecordingConfiguration”\",\n destination_configuration=aws_native.ivs.RecordingConfigurationDestinationConfigurationArgs(\n s3=aws_native.ivs.RecordingConfigurationS3DestinationConfigurationArgs(\n bucket_name=s3_bucket.id,\n ),\n ),\n thumbnail_configuration=aws_native.ivs.RecordingConfigurationThumbnailConfigurationArgs(\n recording_mode=aws_native.ivs.RecordingConfigurationThumbnailConfigurationRecordingMode.INTERVAL,\n target_interval_seconds=60,\n storage=[\n aws_native.ivs.RecordingConfigurationThumbnailConfigurationStorageItem.SEQUENTIAL,\n aws_native.ivs.RecordingConfigurationThumbnailConfigurationStorageItem.LATEST,\n ],\n resolution=aws_native.ivs.RecordingConfigurationThumbnailConfigurationResolution.HD,\n ),\n rendition_configuration=aws_native.ivs.RecordingConfigurationRenditionConfigurationArgs(\n rendition_selection=aws_native.ivs.RecordingConfigurationRenditionConfigurationRenditionSelection.CUSTOM,\n renditions=[\n aws_native.ivs.RecordingConfigurationRenditionConfigurationRenditionsItem.HD,\n aws_native.ivs.RecordingConfigurationRenditionConfigurationRenditionsItem.SD,\n ],\n ),\n opts=pulumi.ResourceOptions(depends_on=[s3_bucket]))\nchannel = aws_native.ivs.Channel(\"channel\",\n name=\"MyRecordedChannel\",\n recording_configuration_arn=recording_configuration.id,\n opts=pulumi.ResourceOptions(depends_on=[recording_configuration]))\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 s3Bucket = new AwsNative.S3.Bucket(\"s3Bucket\");\n\n var recordingConfiguration = new AwsNative.Ivs.RecordingConfiguration(\"recordingConfiguration\", new()\n {\n Name = \"MyRecordingConfiguration\",\n DestinationConfiguration = new AwsNative.Ivs.Inputs.RecordingConfigurationDestinationConfigurationArgs\n {\n S3 = new AwsNative.Ivs.Inputs.RecordingConfigurationS3DestinationConfigurationArgs\n {\n BucketName = s3Bucket.Id,\n },\n },\n ThumbnailConfiguration = new AwsNative.Ivs.Inputs.RecordingConfigurationThumbnailConfigurationArgs\n {\n RecordingMode = AwsNative.Ivs.RecordingConfigurationThumbnailConfigurationRecordingMode.Interval,\n TargetIntervalSeconds = 60,\n Resolution = AwsNative.Ivs.RecordingConfigurationThumbnailConfigurationResolution.Hd,\n Storage = new[]\n {\n AwsNative.Ivs.RecordingConfigurationThumbnailConfigurationStorageItem.Sequential,\n AwsNative.Ivs.RecordingConfigurationThumbnailConfigurationStorageItem.Latest,\n },\n },\n RenditionConfiguration = new AwsNative.Ivs.Inputs.RecordingConfigurationRenditionConfigurationArgs\n {\n RenditionSelection = AwsNative.Ivs.RecordingConfigurationRenditionConfigurationRenditionSelection.Custom,\n Renditions = new[]\n {\n AwsNative.Ivs.RecordingConfigurationRenditionConfigurationRenditionsItem.Hd,\n AwsNative.Ivs.RecordingConfigurationRenditionConfigurationRenditionsItem.Sd,\n },\n },\n }, new CustomResourceOptions\n {\n DependsOn = new[]\n {\n s3Bucket,\n },\n });\n\n var channel = new AwsNative.Ivs.Channel(\"channel\", new()\n {\n Name = \"MyRecordedChannel\",\n RecordingConfigurationArn = recordingConfiguration.Id,\n }, new CustomResourceOptions\n {\n DependsOn = new[]\n {\n recordingConfiguration,\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/ivs\"\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/s3\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ts3Bucket, err := s3.NewBucket(ctx, \"s3Bucket\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\trecordingConfiguration, err := ivs.NewRecordingConfiguration(ctx, \"recordingConfiguration\", \u0026ivs.RecordingConfigurationArgs{\n\t\t\tName: pulumi.String(\"MyRecordingConfiguration\"),\n\t\t\tDestinationConfiguration: \u0026ivs.RecordingConfigurationDestinationConfigurationArgs{\n\t\t\t\tS3: \u0026ivs.RecordingConfigurationS3DestinationConfigurationArgs{\n\t\t\t\t\tBucketName: s3Bucket.ID(),\n\t\t\t\t},\n\t\t\t},\n\t\t\tThumbnailConfiguration: \u0026ivs.RecordingConfigurationThumbnailConfigurationArgs{\n\t\t\t\tRecordingMode: ivs.RecordingConfigurationThumbnailConfigurationRecordingModeInterval,\n\t\t\t\tTargetIntervalSeconds: pulumi.Int(60),\n\t\t\t\tResolution: ivs.RecordingConfigurationThumbnailConfigurationResolutionHd,\n\t\t\t\tStorage: ivs.RecordingConfigurationThumbnailConfigurationStorageItemArray{\n\t\t\t\t\tivs.RecordingConfigurationThumbnailConfigurationStorageItemSequential,\n\t\t\t\t\tivs.RecordingConfigurationThumbnailConfigurationStorageItemLatest,\n\t\t\t\t},\n\t\t\t},\n\t\t\tRenditionConfiguration: \u0026ivs.RecordingConfigurationRenditionConfigurationArgs{\n\t\t\t\tRenditionSelection: ivs.RecordingConfigurationRenditionConfigurationRenditionSelectionCustom,\n\t\t\t\tRenditions: ivs.RecordingConfigurationRenditionConfigurationRenditionsItemArray{\n\t\t\t\t\tivs.RecordingConfigurationRenditionConfigurationRenditionsItemHd,\n\t\t\t\t\tivs.RecordingConfigurationRenditionConfigurationRenditionsItemSd,\n\t\t\t\t},\n\t\t\t},\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\ts3Bucket,\n\t\t}))\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ivs.NewChannel(ctx, \"channel\", \u0026ivs.ChannelArgs{\n\t\t\tName: pulumi.String(\"MyRecordedChannel\"),\n\t\t\tRecordingConfigurationArn: recordingConfiguration.ID(),\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\trecordingConfiguration,\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 s3Bucket = new aws_native.s3.Bucket(\"s3Bucket\", {});\nconst recordingConfiguration = new aws_native.ivs.RecordingConfiguration(\"recordingConfiguration\", {\n name: \"MyRecordingConfiguration\",\n destinationConfiguration: {\n s3: {\n bucketName: s3Bucket.id,\n },\n },\n thumbnailConfiguration: {\n recordingMode: aws_native.ivs.RecordingConfigurationThumbnailConfigurationRecordingMode.Interval,\n targetIntervalSeconds: 60,\n resolution: aws_native.ivs.RecordingConfigurationThumbnailConfigurationResolution.Hd,\n storage: [\n aws_native.ivs.RecordingConfigurationThumbnailConfigurationStorageItem.Sequential,\n aws_native.ivs.RecordingConfigurationThumbnailConfigurationStorageItem.Latest,\n ],\n },\n renditionConfiguration: {\n renditionSelection: aws_native.ivs.RecordingConfigurationRenditionConfigurationRenditionSelection.Custom,\n renditions: [\n aws_native.ivs.RecordingConfigurationRenditionConfigurationRenditionsItem.Hd,\n aws_native.ivs.RecordingConfigurationRenditionConfigurationRenditionsItem.Sd,\n ],\n },\n}, {\n dependsOn: [s3Bucket],\n});\nconst channel = new aws_native.ivs.Channel(\"channel\", {\n name: \"MyRecordedChannel\",\n recordingConfigurationArn: recordingConfiguration.id,\n}, {\n dependsOn: [recordingConfiguration],\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\ns3_bucket = aws_native.s3.Bucket(\"s3Bucket\")\nrecording_configuration = aws_native.ivs.RecordingConfiguration(\"recordingConfiguration\",\n name=\"MyRecordingConfiguration\",\n destination_configuration=aws_native.ivs.RecordingConfigurationDestinationConfigurationArgs(\n s3=aws_native.ivs.RecordingConfigurationS3DestinationConfigurationArgs(\n bucket_name=s3_bucket.id,\n ),\n ),\n thumbnail_configuration=aws_native.ivs.RecordingConfigurationThumbnailConfigurationArgs(\n recording_mode=aws_native.ivs.RecordingConfigurationThumbnailConfigurationRecordingMode.INTERVAL,\n target_interval_seconds=60,\n resolution=aws_native.ivs.RecordingConfigurationThumbnailConfigurationResolution.HD,\n storage=[\n aws_native.ivs.RecordingConfigurationThumbnailConfigurationStorageItem.SEQUENTIAL,\n aws_native.ivs.RecordingConfigurationThumbnailConfigurationStorageItem.LATEST,\n ],\n ),\n rendition_configuration=aws_native.ivs.RecordingConfigurationRenditionConfigurationArgs(\n rendition_selection=aws_native.ivs.RecordingConfigurationRenditionConfigurationRenditionSelection.CUSTOM,\n renditions=[\n aws_native.ivs.RecordingConfigurationRenditionConfigurationRenditionsItem.HD,\n aws_native.ivs.RecordingConfigurationRenditionConfigurationRenditionsItem.SD,\n ],\n ),\n opts=pulumi.ResourceOptions(depends_on=[s3_bucket]))\nchannel = aws_native.ivs.Channel(\"channel\",\n name=\"MyRecordedChannel\",\n recording_configuration_arn=recording_configuration.id,\n opts=pulumi.ResourceOptions(depends_on=[recording_configuration]))\n\n```\n\n{{% /example %}}\n{{% /examples %}}\n", "properties": { "accelerateConfiguration": { - "$ref": "#/types/aws-native:s3:BucketAccelerateConfiguration", - "description": "Configuration for the transfer acceleration state." + "$ref": "#/types/aws-native:s3:BucketAccelerateConfiguration" }, "accessControl": { - "$ref": "#/types/aws-native:s3:BucketAccessControl", - "description": "A canned access control list (ACL) that grants predefined permissions to the bucket." + "type": "string" }, "analyticsConfigurations": { "type": "array", "items": { "$ref": "#/types/aws-native:s3:BucketAnalyticsConfiguration" - }, - "description": "The configuration and any analyses for the analytics filter of an Amazon S3 bucket." + } }, "arn": { - "type": "string", - "description": "The Amazon Resource Name (ARN) of the specified bucket." + "type": "string" }, "bucketEncryption": { "$ref": "#/types/aws-native:s3:BucketEncryption" }, "bucketName": { "type": "string", - "description": "A name for the bucket. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name.", "replaceOnChanges": true }, "corsConfiguration": { - "$ref": "#/types/aws-native:s3:BucketCorsConfiguration", - "description": "Rules that define cross-origin resource sharing of objects in this bucket." + "$ref": "#/types/aws-native:s3:BucketCorsConfiguration" }, "domainName": { - "type": "string", - "description": "The IPv4 DNS name of the specified bucket." + "type": "string" }, "dualStackDomainName": { - "type": "string", - "description": "The IPv6 DNS name of the specified bucket. For more information about dual-stack endpoints, see [Using Amazon S3 Dual-Stack Endpoints](https://docs.aws.amazon.com/AmazonS3/latest/dev/dual-stack-endpoints.html)." + "type": "string" }, "intelligentTieringConfigurations": { "type": "array", "items": { "$ref": "#/types/aws-native:s3:BucketIntelligentTieringConfiguration" - }, - "description": "Specifies the S3 Intelligent-Tiering configuration for an Amazon S3 bucket." + } }, "inventoryConfigurations": { "type": "array", "items": { "$ref": "#/types/aws-native:s3:BucketInventoryConfiguration" - }, - "description": "The inventory configuration for an Amazon S3 bucket." + } }, "lifecycleConfiguration": { - "$ref": "#/types/aws-native:s3:BucketLifecycleConfiguration", - "description": "Rules that define how Amazon S3 manages objects during their lifetime." + "$ref": "#/types/aws-native:s3:BucketLifecycleConfiguration" }, "loggingConfiguration": { - "$ref": "#/types/aws-native:s3:BucketLoggingConfiguration", - "description": "Settings that define where logs are stored." + "$ref": "#/types/aws-native:s3:BucketLoggingConfiguration" }, "metricsConfigurations": { "type": "array", "items": { "$ref": "#/types/aws-native:s3:BucketMetricsConfiguration" - }, - "description": "Settings that define a metrics configuration for the CloudWatch request metrics from the bucket." + } }, "notificationConfiguration": { - "$ref": "#/types/aws-native:s3:BucketNotificationConfiguration", - "description": "Configuration that defines how Amazon S3 handles bucket notifications." + "$ref": "#/types/aws-native:s3:BucketNotificationConfiguration" }, "objectLockConfiguration": { - "$ref": "#/types/aws-native:s3:BucketObjectLockConfiguration", - "description": "Places an Object Lock configuration on the specified bucket." + "$ref": "#/types/aws-native:s3:BucketObjectLockConfiguration" }, "objectLockEnabled": { "type": "boolean", - "description": "Indicates whether this bucket has an Object Lock configuration enabled.", "replaceOnChanges": true }, "ownershipControls": { - "$ref": "#/types/aws-native:s3:BucketOwnershipControls", - "description": "Specifies the container element for object ownership rules." + "$ref": "#/types/aws-native:s3:BucketOwnershipControls" }, "publicAccessBlockConfiguration": { "$ref": "#/types/aws-native:s3:BucketPublicAccessBlockConfiguration" }, "regionalDomainName": { - "type": "string", - "description": "Returns the regional domain name of the specified bucket." + "type": "string" }, "replicationConfiguration": { - "$ref": "#/types/aws-native:s3:BucketReplicationConfiguration", - "description": "Configuration for replicating objects in an S3 bucket." + "$ref": "#/types/aws-native:s3:BucketReplicationConfiguration" }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:s3:BucketTag" - }, - "description": "An arbitrary set of tags (key-value pairs) for this S3 bucket." + } }, "versioningConfiguration": { "$ref": "#/types/aws-native:s3:BucketVersioningConfiguration" @@ -178552,8 +179756,7 @@ "$ref": "#/types/aws-native:s3:BucketWebsiteConfiguration" }, "websiteUrl": { - "type": "string", - "description": "The Amazon S3 website endpoint for the specified bucket." + "type": "string" } }, "type": "object", @@ -178566,89 +179769,73 @@ ], "inputProperties": { "accelerateConfiguration": { - "$ref": "#/types/aws-native:s3:BucketAccelerateConfiguration", - "description": "Configuration for the transfer acceleration state." + "$ref": "#/types/aws-native:s3:BucketAccelerateConfiguration" }, "accessControl": { - "$ref": "#/types/aws-native:s3:BucketAccessControl", - "description": "A canned access control list (ACL) that grants predefined permissions to the bucket." + "type": "string" }, "analyticsConfigurations": { "type": "array", "items": { "$ref": "#/types/aws-native:s3:BucketAnalyticsConfiguration" - }, - "description": "The configuration and any analyses for the analytics filter of an Amazon S3 bucket." + } }, "bucketEncryption": { "$ref": "#/types/aws-native:s3:BucketEncryption" }, "bucketName": { - "type": "string", - "description": "A name for the bucket. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name." + "type": "string" }, "corsConfiguration": { - "$ref": "#/types/aws-native:s3:BucketCorsConfiguration", - "description": "Rules that define cross-origin resource sharing of objects in this bucket." + "$ref": "#/types/aws-native:s3:BucketCorsConfiguration" }, "intelligentTieringConfigurations": { "type": "array", "items": { "$ref": "#/types/aws-native:s3:BucketIntelligentTieringConfiguration" - }, - "description": "Specifies the S3 Intelligent-Tiering configuration for an Amazon S3 bucket." + } }, "inventoryConfigurations": { "type": "array", "items": { "$ref": "#/types/aws-native:s3:BucketInventoryConfiguration" - }, - "description": "The inventory configuration for an Amazon S3 bucket." + } }, "lifecycleConfiguration": { - "$ref": "#/types/aws-native:s3:BucketLifecycleConfiguration", - "description": "Rules that define how Amazon S3 manages objects during their lifetime." + "$ref": "#/types/aws-native:s3:BucketLifecycleConfiguration" }, "loggingConfiguration": { - "$ref": "#/types/aws-native:s3:BucketLoggingConfiguration", - "description": "Settings that define where logs are stored." + "$ref": "#/types/aws-native:s3:BucketLoggingConfiguration" }, "metricsConfigurations": { "type": "array", "items": { "$ref": "#/types/aws-native:s3:BucketMetricsConfiguration" - }, - "description": "Settings that define a metrics configuration for the CloudWatch request metrics from the bucket." + } }, "notificationConfiguration": { - "$ref": "#/types/aws-native:s3:BucketNotificationConfiguration", - "description": "Configuration that defines how Amazon S3 handles bucket notifications." + "$ref": "#/types/aws-native:s3:BucketNotificationConfiguration" }, "objectLockConfiguration": { - "$ref": "#/types/aws-native:s3:BucketObjectLockConfiguration", - "description": "Places an Object Lock configuration on the specified bucket." + "$ref": "#/types/aws-native:s3:BucketObjectLockConfiguration" }, "objectLockEnabled": { - "type": "boolean", - "description": "Indicates whether this bucket has an Object Lock configuration enabled." + "type": "boolean" }, "ownershipControls": { - "$ref": "#/types/aws-native:s3:BucketOwnershipControls", - "description": "Specifies the container element for object ownership rules." + "$ref": "#/types/aws-native:s3:BucketOwnershipControls" }, "publicAccessBlockConfiguration": { "$ref": "#/types/aws-native:s3:BucketPublicAccessBlockConfiguration" }, "replicationConfiguration": { - "$ref": "#/types/aws-native:s3:BucketReplicationConfiguration", - "description": "Configuration for replicating objects in an S3 bucket." + "$ref": "#/types/aws-native:s3:BucketReplicationConfiguration" }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:s3:BucketTag" - }, - "description": "An arbitrary set of tags (key-value pairs) for this S3 bucket." + } }, "versioningConfiguration": { "$ref": "#/types/aws-native:s3:BucketVersioningConfiguration" @@ -182716,6 +183903,10 @@ "aws-native:sns:Topic": { "description": "Resource Type definition for AWS::SNS::Topic", "properties": { + "archivePolicy": { + "$ref": "pulumi.json#/Any", + "description": "The archive policy determines the number of days Amazon SNS retains messages. You can set a retention period from 1 to 365 days." + }, "contentBasedDeduplication": { "type": "boolean", "description": "Enables content-based deduplication for FIFO topics. By default, ContentBasedDeduplication is set to false. If you create a FIFO topic and this attribute is false, you must specify a value for the MessageDeduplicationId parameter for the Publish action.\n\nWhen you set ContentBasedDeduplication to true, Amazon SNS uses a SHA-256 hash to generate the MessageDeduplicationId using the body of the message (but not the attributes of the message).\n\n(Optional) To override the generated value, you can specify a value for the the MessageDeduplicationId parameter for the Publish action.\n\n" @@ -182772,6 +183963,10 @@ "topicArn" ], "inputProperties": { + "archivePolicy": { + "$ref": "pulumi.json#/Any", + "description": "The archive policy determines the number of days Amazon SNS retains messages. You can set a retention period from 1 to 365 days." + }, "contentBasedDeduplication": { "type": "boolean", "description": "Enables content-based deduplication for FIFO topics. By default, ContentBasedDeduplication is set to false. If you create a FIFO topic and this attribute is false, you must specify a value for the MessageDeduplicationId parameter for the Publish action.\n\nWhen you set ContentBasedDeduplication to true, Amazon SNS uses a SHA-256 hash to generate the MessageDeduplicationId using the body of the message (but not the attributes of the message).\n\n(Optional) To override the generated value, you can specify a value for the the MessageDeduplicationId parameter for the Publish action.\n\n" @@ -188346,7 +189541,7 @@ } }, "aws-native:apigateway:getAccount": { - "description": "Resource Type definition for AWS::ApiGateway::Account", + "description": "The ``AWS::ApiGateway::Account`` resource specifies the IAM role that Amazon API Gateway uses to write API logs to Amazon CloudWatch Logs. To avoid overwriting other roles, you should only have one ``AWS::ApiGateway::Account`` resource per region per account.", "inputs": { "properties": { "id": { @@ -188362,7 +189557,7 @@ "properties": { "cloudWatchRoleArn": { "type": "string", - "description": "The Amazon Resource Name (ARN) of an IAM role that has write access to CloudWatch Logs in your account." + "description": "The ARN of an Amazon CloudWatch role for the current Account." }, "id": { "type": "string", @@ -188420,7 +189615,7 @@ } }, "aws-native:apigateway:getAuthorizer": { - "description": "Represents an authorization layer for methods. If enabled on a method, API Gateway will activate the authorizer when a client calls the method.", + "description": "The ``AWS::ApiGateway::Authorizer`` resource creates an authorization layer that API Gateway activates for methods that have authorization enabled. API Gateway activates the authorizer when a client calls those methods.", "inputs": { "properties": { "authorizerId": { @@ -188428,7 +189623,7 @@ }, "restApiId": { "type": "string", - "description": "The identifier of the API." + "description": "The string identifier of the associated RestApi." } }, "required": [ @@ -188444,26 +189639,26 @@ }, "authorizerCredentials": { "type": "string", - "description": "Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer." + "description": "Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. To specify an IAM role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To use resource-based permissions on the Lambda function, specify null." }, "authorizerId": { "type": "string" }, "authorizerResultTtlInSeconds": { "type": "integer", - "description": "The TTL in seconds of cached authorizer results." + "description": "The TTL in seconds of cached authorizer results. If it equals 0, authorization caching is disabled. If it is greater than 0, API Gateway will cache authorizer responses. If this field is not set, the default value is 300. The maximum value is 3600, or 1 hour." }, "authorizerUri": { "type": "string", - "description": "Specifies the authorizer's Uniform Resource Identifier (URI)." + "description": "Specifies the authorizer's Uniform Resource Identifier (URI). For ``TOKEN`` or ``REQUEST`` authorizers, this must be a well-formed Lambda function URI, for example, ``arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:{account_id}:function:{lambda_function_name}/invocations``. In general, the URI has this form ``arn:aws:apigateway:{region}:lambda:path/{service_api}``, where ``{region}`` is the same as the region hosting the Lambda function, ``path`` indicates that the remaining substring in the URI should be treated as the path to the resource, including the initial ``/``. For Lambda functions, this is usually of the form ``/2015-03-31/functions/[FunctionARN]/invocations``." }, "identitySource": { "type": "string", - "description": "The identity source for which authorization is requested." + "description": "The identity source for which authorization is requested. For a ``TOKEN`` or ``COGNITO_USER_POOLS`` authorizer, this is required and specifies the request header mapping expression for the custom header holding the authorization token submitted by the client. For example, if the token header name is ``Auth``, the header mapping expression is ``method.request.header.Auth``. For the ``REQUEST`` authorizer, this is required when authorization caching is enabled. The value is a comma-separated string of one or more mapping expressions of the specified request parameters. For example, if an ``Auth`` header, a ``Name`` query string parameter are defined as identity sources, this value is ``method.request.header.Auth, method.request.querystring.Name``. These parameters will be used to derive the authorization caching key and to perform runtime validation of the ``REQUEST`` authorizer by verifying all of the identity-related request parameters are present, not null and non-empty. Only when this is true does the authorizer invoke the authorizer Lambda function, otherwise, it returns a 401 Unauthorized response without calling the Lambda function. The valid value is a string of comma-separated mapping expressions of the specified request parameters. When the authorization caching is not enabled, this property is optional." }, "identityValidationExpression": { "type": "string", - "description": "A validation expression for the incoming identity token." + "description": "A validation expression for the incoming identity token. For ``TOKEN`` authorizers, this value is a regular expression. For ``COGNITO_USER_POOLS`` authorizers, API Gateway will match the ``aud`` field of the incoming token from the client against the specified regular expression. It will invoke the authorizer's Lambda function when there is a match. Otherwise, it will return a 401 Unauthorized response without calling the Lambda function. The validation expression does not apply to the ``REQUEST`` authorizer." }, "name": { "type": "string", @@ -188474,11 +189669,11 @@ "items": { "type": "string" }, - "description": "A list of the Amazon Cognito user pool ARNs for the COGNITO_USER_POOLS authorizer." + "description": "A list of the Amazon Cognito user pool ARNs for the ``COGNITO_USER_POOLS`` authorizer. Each element is of this format: ``arn:aws:cognito-idp:{region}:{account_id}:userpool/{user_pool_id}``. For a ``TOKEN`` or ``REQUEST`` authorizer, this is not defined." }, "type": { "type": "string", - "description": "The authorizer type." + "description": "The authorizer type. Valid values are ``TOKEN`` for a Lambda function using a single authorization token submitted in a custom header, ``REQUEST`` for a Lambda function using incoming request parameters, and ``COGNITO_USER_POOLS`` for using an Amazon Cognito user pool." } } } @@ -188548,7 +189743,7 @@ } }, "aws-native:apigateway:getDeployment": { - "description": "Resource Type definition for AWS::ApiGateway::Deployment", + "description": "The ``AWS::ApiGateway::Deployment`` resource deploys an API Gateway ``RestApi`` resource to a stage so that clients can call the API over the internet. The stage acts as an environment.", "inputs": { "properties": { "deploymentId": { @@ -188557,7 +189752,7 @@ }, "restApiId": { "type": "string", - "description": "The ID of the RestApi resource to deploy. " + "description": "The string identifier of the associated RestApi." } }, "required": [ @@ -188573,13 +189768,13 @@ }, "description": { "type": "string", - "description": "A description of the purpose of the API Gateway deployment." + "description": "The description for the Deployment resource to create." } } } }, "aws-native:apigateway:getDocumentationPart": { - "description": "Resource Type definition for AWS::ApiGateway::DocumentationPart", + "description": "The ``AWS::ApiGateway::DocumentationPart`` resource creates a documentation part for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*.", "inputs": { "properties": { "documentationPartId": { @@ -188588,7 +189783,7 @@ }, "restApiId": { "type": "string", - "description": "Identifier of the targeted API entity" + "description": "The string identifier of the associated RestApi." } }, "required": [ @@ -188604,18 +189799,18 @@ }, "properties": { "type": "string", - "description": "The documentation content map of the targeted API entity." + "description": "The new documentation content map of the targeted API entity. Enclosed key-value pairs are API-specific, but only OpenAPI-compliant key-value pairs can be exported and, hence, published." } } } }, "aws-native:apigateway:getDocumentationVersion": { - "description": "A snapshot of the documentation of an API.", + "description": "The ``AWS::ApiGateway::DocumentationVersion`` resource creates a snapshot of the documentation for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*.", "inputs": { "properties": { "documentationVersion": { "type": "string", - "description": "The version identifier of the API documentation snapshot.", + "description": "The version identifier of the to-be-updated documentation version.", "language": { "csharp": { "name": "DocumentationVersionValue" @@ -188624,7 +189819,7 @@ }, "restApiId": { "type": "string", - "description": "The identifier of the API." + "description": "The string identifier of the associated RestApi." } }, "required": [ @@ -188636,7 +189831,7 @@ "properties": { "description": { "type": "string", - "description": "The description of the API documentation snapshot." + "description": "A description about the new documentation snapshot." } } } @@ -188700,20 +189895,20 @@ } }, "aws-native:apigateway:getMethod": { - "description": "Resource Type definition for AWS::ApiGateway::Method", + "description": "The ``AWS::ApiGateway::Method`` resource creates API Gateway methods that define the parameters and body that clients must send in their requests.", "inputs": { "properties": { "httpMethod": { "type": "string", - "description": "The backend system that the method calls when it receives a request." + "description": "The method's HTTP verb." }, "resourceId": { "type": "string", - "description": "The ID of an API Gateway resource." + "description": "The Resource identifier for the MethodResponse resource." }, "restApiId": { "type": "string", - "description": "The ID of the RestApi resource in which API Gateway creates the method." + "description": "The string identifier of the associated RestApi." } }, "required": [ @@ -188726,64 +189921,64 @@ "properties": { "apiKeyRequired": { "type": "boolean", - "description": "Indicates whether the method requires clients to submit a valid API key." + "description": "A boolean flag specifying whether a valid ApiKey is required to invoke this method." }, "authorizationScopes": { "type": "array", "items": { "type": "string" }, - "description": "A list of authorization scopes configured on the method." + "description": "A list of authorization scopes configured on the method. The scopes are used with a ``COGNITO_USER_POOLS`` authorizer to authorize the method invocation. The authorization works by matching the method scopes against the scopes parsed from the access token in the incoming request. The method invocation is authorized if any method scopes matches a claimed scope in the access token. Otherwise, the invocation is not authorized. When the method scope is configured, the client must provide an access token instead of an identity token for authorization purposes." }, "authorizationType": { "$ref": "#/types/aws-native:apigateway:MethodAuthorizationType", - "description": "The method's authorization type." + "description": "The method's authorization type. This parameter is required. For valid values, see [Method](https://docs.aws.amazon.com/apigateway/latest/api/API_Method.html) in the *API Gateway API Reference*.\n If you specify the ``AuthorizerId`` property, specify ``CUSTOM`` or ``COGNITO_USER_POOLS`` for this property." }, "authorizerId": { "type": "string", - "description": "The identifier of the authorizer to use on this method." + "description": "The identifier of an authorizer to use on this method. The method's authorization type must be ``CUSTOM`` or ``COGNITO_USER_POOLS``." }, "integration": { "$ref": "#/types/aws-native:apigateway:MethodIntegration", - "description": "The backend system that the method calls when it receives a request." + "description": "Represents an ``HTTP``, ``HTTP_PROXY``, ``AWS``, ``AWS_PROXY``, or Mock integration." }, "methodResponses": { "type": "array", "items": { "$ref": "#/types/aws-native:apigateway:MethodResponse" }, - "description": "The responses that can be sent to the client who calls the method." + "description": "Gets a method response associated with a given HTTP status code." }, "operationName": { "type": "string", - "description": "A friendly operation name for the method." + "description": "A human-friendly operation identifier for the method. For example, you can assign the ``operationName`` of ``ListPets`` for the ``GET /pets`` method in the ``PetStore`` example." }, "requestModels": { "$ref": "pulumi.json#/Any", - "description": "The resources that are used for the request's content type. Specify request models as key-value pairs (string-to-string mapping), with a content type as the key and a Model resource name as the value." + "description": "A key-value map specifying data schemas, represented by Model resources, (as the mapped value) of the request payloads of given content types (as the mapping key)." }, "requestParameters": { "$ref": "pulumi.json#/Any", - "description": "The request parameters that API Gateway accepts. Specify request parameters as key-value pairs (string-to-Boolean mapping), with a source as the key and a Boolean as the value." + "description": "A key-value map defining required or optional method request parameters that can be accepted by API Gateway. A key is a method request parameter name matching the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and ``name`` is a valid and unique parameter name. The value associated with the key is a Boolean flag indicating whether the parameter is required (``true``) or optional (``false``). The method request parameter names defined here are available in Integration to be mapped to integration request parameters or templates." }, "requestValidatorId": { "type": "string", - "description": "The ID of the associated request validator." + "description": "The identifier of a RequestValidator for request validation." } } } }, "aws-native:apigateway:getModel": { - "description": "Resource Type definition for AWS::ApiGateway::Model", + "description": "The ``AWS::ApiGateway::Model`` resource defines the structure of a request or response payload for an API method.", "inputs": { "properties": { "name": { "type": "string", - "description": "A name for the model. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the model name." + "description": "A name for the model. If you don't specify a name, CFN generates a unique physical ID and uses that ID for the model name. For more information, see [Name Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html).\n If you specify a name, you cannot perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name." }, "restApiId": { "type": "string", - "description": "The ID of a REST API with which to associate this model." + "description": "The string identifier of the associated RestApi." } }, "required": [ @@ -188795,11 +189990,11 @@ "properties": { "description": { "type": "string", - "description": "A description that identifies this model." + "description": "The description of the model." }, "schema": { "$ref": "pulumi.json#/Any", - "description": "The schema to use to transform data to one or more output formats. Specify null ({}) if you don't want to specify a schema." + "description": "The schema for the model. For ``application/json`` models, this should be JSON schema draft 4 model. Do not include \"\\*/\" characters in the description of any properties because such \"\\*/\" characters may be interpreted as the closing marker for comments in some languages, such as Java or JavaScript, causing the installation of your API's SDK generated by API Gateway to fail." } } } @@ -188840,7 +190035,7 @@ } }, "aws-native:apigateway:getResource": { - "description": "Resource Type definition for AWS::ApiGateway::Resource", + "description": "The ``AWS::ApiGateway::Resource`` resource creates a resource in an API.", "inputs": { "properties": { "resourceId": { @@ -188849,7 +190044,7 @@ }, "restApiId": { "type": "string", - "description": "The ID of the RestApi resource in which you want to create this resource.." + "description": "The string identifier of the associated RestApi." } }, "required": [ @@ -188867,7 +190062,7 @@ } }, "aws-native:apigateway:getRestApi": { - "description": "Resource Type definition for AWS::ApiGateway::RestApi.", + "description": "The ``AWS::ApiGateway::RestApi`` resource creates a REST API. For more information, see [restapi:create](https://docs.aws.amazon.com/apigateway/latest/api/API_CreateRestApi.html) in the *Amazon API Gateway REST API Reference*.\n On January 1, 2016, the Swagger Specification was donated to the [OpenAPI initiative](https://docs.aws.amazon.com/https://www.openapis.org/), becoming the foundation of the OpenAPI Specification.", "inputs": { "properties": { "restApiId": { @@ -188881,31 +190076,39 @@ "outputs": { "properties": { "apiKeySourceType": { - "type": "string" + "type": "string", + "description": "The source of the API key for metering requests according to a usage plan. Valid values are: ``HEADER`` to read the API key from the ``X-API-Key`` header of a request. ``AUTHORIZER`` to read the API key from the ``UsageIdentifierKey`` from a custom authorizer." }, "binaryMediaTypes": { "type": "array", "items": { "type": "string" - } + }, + "description": "The list of binary media types supported by the RestApi. By default, the RestApi supports only UTF-8-encoded text payloads." }, "description": { - "type": "string" + "type": "string", + "description": "The description of the RestApi." }, "disableExecuteApiEndpoint": { - "type": "boolean" + "type": "boolean", + "description": "Specifies whether clients can invoke your API by using the default ``execute-api`` endpoint. By default, clients can invoke your API with the default ``https://{api_id}.execute-api.{region}.amazonaws.com`` endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint" }, "endpointConfiguration": { - "$ref": "#/types/aws-native:apigateway:RestApiEndpointConfiguration" + "$ref": "#/types/aws-native:apigateway:RestApiEndpointConfiguration", + "description": "A list of the endpoint types of the API. Use this property when creating an API. When importing an existing API, specify the endpoint configuration types using the ``Parameters`` property." }, "minimumCompressionSize": { - "type": "integer" + "type": "integer", + "description": "A nullable integer that is used to enable compression (with non-negative between 0 and 10485760 (10M) bytes, inclusive) or disable compression (with a null value) on an API. When compression is enabled, compression or decompression is not applied on the payload if the payload size is smaller than this value. Setting it to zero allows compression for any payload size." }, "name": { - "type": "string" + "type": "string", + "description": "The name of the RestApi. A name is required if the REST API is not based on an OpenAPI specification." }, "policy": { - "$ref": "pulumi.json#/Any" + "$ref": "pulumi.json#/Any", + "description": "A policy document that contains the permissions for the ``RestApi`` resource. To set the ARN for the policy, use the ``!Join`` intrinsic function with ``\"\"`` as delimiter and values of ``\"execute-api:/\"`` and ``\"*\"``." }, "restApiId": { "type": "string" @@ -188917,22 +190120,23 @@ "type": "array", "items": { "$ref": "#/types/aws-native:apigateway:RestApiTag" - } + }, + "description": "The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with ``aws:``. The tag value can be up to 256 characters." } } } }, "aws-native:apigateway:getStage": { - "description": "Resource Type definition for AWS::ApiGateway::Stage", + "description": "The ``AWS::ApiGateway::Stage`` resource creates a stage for a deployment.", "inputs": { "properties": { "restApiId": { "type": "string", - "description": "The ID of the RestApi resource that you're deploying with this stage." + "description": "The string identifier of the associated RestApi." }, "stageName": { "type": "string", - "description": "The name of the stage, which API Gateway uses as the first path segment in the invoked Uniform Resource Identifier (URI)." + "description": "The name of the stage is the first path segment in the Uniform Resource Identifier (URI) of a call to API Gateway. Stage names can only contain alphanumeric characters, hyphens, and underscores. Maximum length is 128 characters." } }, "required": [ @@ -188944,57 +190148,57 @@ "properties": { "accessLogSetting": { "$ref": "#/types/aws-native:apigateway:StageAccessLogSetting", - "description": "Specifies settings for logging access in this stage." + "description": "Access log settings, including the access log format and access log destination ARN." }, "cacheClusterEnabled": { "type": "boolean", - "description": "Indicates whether cache clustering is enabled for the stage." + "description": "Specifies whether a cache cluster is enabled for the stage." }, "cacheClusterSize": { "type": "string", - "description": "The stage's cache cluster size." + "description": "The stage's cache capacity in GB. For more information about choosing a cache size, see [Enabling API caching to enhance responsiveness](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html)." }, "canarySetting": { "$ref": "#/types/aws-native:apigateway:StageCanarySetting", - "description": "Specifies settings for the canary deployment in this stage." + "description": "Settings for the canary deployment in this stage." }, "clientCertificateId": { "type": "string", - "description": "The ID of the client certificate that API Gateway uses to call your integration endpoints in the stage. " + "description": "The identifier of a client certificate for an API stage." }, "deploymentId": { "type": "string", - "description": "The ID of the deployment that the stage is associated with. This parameter is required to create a stage. " + "description": "The identifier of the Deployment that the stage points to." }, "description": { "type": "string", - "description": "A description of the stage." + "description": "The stage's description." }, "documentationVersion": { "type": "string", - "description": "The version ID of the API documentation snapshot." + "description": "The version of the associated API documentation." }, "methodSettings": { "type": "array", "items": { "$ref": "#/types/aws-native:apigateway:StageMethodSetting" }, - "description": "Settings for all methods in the stage." + "description": "A map that defines the method settings for a Stage resource. Keys (designated as ``/{method_setting_key`` below) are method paths defined as ``{resource_path}/{http_method}`` for an individual method override, or ``/\\*/\\*`` for overriding all methods in the stage." }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:apigateway:StageTag" }, - "description": "An array of arbitrary tags (key-value pairs) to associate with the stage." + "description": "The collection of tags. Each tag element is associated with a given resource." }, "tracingEnabled": { "type": "boolean", - "description": "Specifies whether active X-Ray tracing is enabled for this stage." + "description": "Specifies whether active tracing with X-ray is enabled for the Stage." }, "variables": { "$ref": "pulumi.json#/Any", - "description": "A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value." + "description": "A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value. Variable names are limited to alphanumeric characters. Values must match the following regular expression: ``[A-Za-z0-9-._~:/?#\u0026=,]+``." } } } @@ -189052,7 +190256,7 @@ } }, "aws-native:apigateway:getUsagePlanKey": { - "description": "Resource Type definition for AWS::ApiGateway::UsagePlanKey", + "description": "The ``AWS::ApiGateway::UsagePlanKey`` resource associates an API key with a usage plan. This association determines which users the usage plan is applied to.", "inputs": { "properties": { "id": { @@ -189566,6 +190770,43 @@ } } }, + "aws-native:appconfig:getApplication": { + "description": "Resource Type definition for AWS::AppConfig::Application", + "inputs": { + "properties": { + "applicationId": { + "type": "string", + "description": "The application Id" + } + }, + "required": [ + "applicationId" + ] + }, + "outputs": { + "properties": { + "applicationId": { + "type": "string", + "description": "The application Id" + }, + "description": { + "type": "string", + "description": "A description of the application." + }, + "name": { + "type": "string", + "description": "A name for the application." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:appconfig:ApplicationTags" + }, + "description": "Metadata to assign to the application. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define." + } + } + } + }, "aws-native:appconfig:getExtension": { "description": "Resource Type definition for AWS::AppConfig::Extension", "inputs": { @@ -190407,6 +191648,72 @@ } } }, + "aws-native:appsync:getFunctionConfiguration": { + "description": "An example resource schema demonstrating some basic constructs and validation rules.", + "inputs": { + "properties": { + "functionArn": { + "type": "string", + "description": "The ARN for the function generated by the service" + } + }, + "required": [ + "functionArn" + ] + }, + "outputs": { + "properties": { + "code": { + "type": "string", + "description": "The resolver code that contains the request and response functions. When code is used, the runtime is required. The runtime value must be APPSYNC_JS." + }, + "dataSourceName": { + "type": "string", + "description": "The name of data source this function will attach." + }, + "description": { + "type": "string", + "description": "The function description." + }, + "functionArn": { + "type": "string", + "description": "The ARN for the function generated by the service" + }, + "functionId": { + "type": "string", + "description": "The unique identifier for the function generated by the service" + }, + "functionVersion": { + "type": "string", + "description": "The version of the request mapping template. Currently, only the 2018-05-29 version of the template is supported." + }, + "maxBatchSize": { + "type": "integer", + "description": "The maximum number of resolver request inputs that will be sent to a single AWS Lambda function in a BatchInvoke operation." + }, + "name": { + "type": "string", + "description": "The name of the function." + }, + "requestMappingTemplate": { + "type": "string", + "description": "The Function request mapping template. Functions support only the 2018-05-29 version of the request mapping template." + }, + "responseMappingTemplate": { + "type": "string", + "description": "The Function response mapping template." + }, + "runtime": { + "$ref": "#/types/aws-native:appsync:FunctionConfigurationAppSyncRuntime", + "description": "Describes a runtime used by an AWS AppSync pipeline resolver or AWS AppSync function. Specifies the name and version of the runtime to use. Note that if a runtime is specified, code must also be specified." + }, + "syncConfig": { + "$ref": "#/types/aws-native:appsync:FunctionConfigurationSyncConfig", + "description": "Describes a Sync configuration for a resolver. Specifies which Conflict Detection strategy and Resolution strategy to use when the resolver is invoked." + } + } + } + }, "aws-native:appsync:getSourceApiAssociation": { "description": "Resource Type definition for AWS::AppSync::SourceApiAssociation", "inputs": { @@ -193537,12 +194844,18 @@ "allowUnauthenticatedIdentities": { "type": "boolean" }, + "cognitoEvents": { + "$ref": "pulumi.json#/Any" + }, "cognitoIdentityProviders": { "type": "array", "items": { "$ref": "#/types/aws-native:cognito:IdentityPoolCognitoIdentityProvider" } }, + "cognitoStreams": { + "$ref": "#/types/aws-native:cognito:IdentityPoolCognitoStreams" + }, "developerProviderName": { "type": "string" }, @@ -193552,13 +194865,6 @@ "identityPoolName": { "type": "string" }, - "identityPoolTags": { - "type": "array", - "items": { - "$ref": "#/types/aws-native:cognito:IdentityPoolTag" - }, - "description": "An array of key-value pairs to apply to this resource." - }, "name": { "type": "string" }, @@ -193568,6 +194874,9 @@ "type": "string" } }, + "pushSync": { + "$ref": "#/types/aws-native:cognito:IdentityPoolPushSync" + }, "samlProviderArns": { "type": "array", "items": { @@ -193633,6 +194942,146 @@ } } }, + "aws-native:cognito:getUserPool": { + "description": "Resource Type definition for AWS::Cognito::UserPool", + "inputs": { + "properties": { + "userPoolId": { + "type": "string" + } + }, + "required": [ + "userPoolId" + ] + }, + "outputs": { + "properties": { + "accountRecoverySetting": { + "$ref": "#/types/aws-native:cognito:UserPoolAccountRecoverySetting" + }, + "adminCreateUserConfig": { + "$ref": "#/types/aws-native:cognito:UserPoolAdminCreateUserConfig" + }, + "aliasAttributes": { + "type": "array", + "items": { + "type": "string" + } + }, + "arn": { + "type": "string" + }, + "autoVerifiedAttributes": { + "type": "array", + "items": { + "type": "string" + } + }, + "deletionProtection": { + "type": "string" + }, + "deviceConfiguration": { + "$ref": "#/types/aws-native:cognito:UserPoolDeviceConfiguration" + }, + "emailConfiguration": { + "$ref": "#/types/aws-native:cognito:UserPoolEmailConfiguration" + }, + "emailVerificationMessage": { + "type": "string" + }, + "emailVerificationSubject": { + "type": "string" + }, + "lambdaConfig": { + "$ref": "#/types/aws-native:cognito:UserPoolLambdaConfig" + }, + "mfaConfiguration": { + "type": "string" + }, + "policies": { + "$ref": "#/types/aws-native:cognito:UserPoolPolicies" + }, + "providerName": { + "type": "string" + }, + "providerUrl": { + "type": "string" + }, + "schema": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:cognito:UserPoolSchemaAttribute" + } + }, + "smsAuthenticationMessage": { + "type": "string" + }, + "smsConfiguration": { + "$ref": "#/types/aws-native:cognito:UserPoolSmsConfiguration" + }, + "smsVerificationMessage": { + "type": "string" + }, + "userAttributeUpdateSettings": { + "$ref": "#/types/aws-native:cognito:UserPoolUserAttributeUpdateSettings" + }, + "userPoolAddOns": { + "$ref": "#/types/aws-native:cognito:UserPoolAddOns" + }, + "userPoolId": { + "type": "string" + }, + "userPoolName": { + "type": "string" + }, + "userPoolTags": { + "$ref": "pulumi.json#/Any" + }, + "usernameAttributes": { + "type": "array", + "items": { + "type": "string" + } + }, + "usernameConfiguration": { + "$ref": "#/types/aws-native:cognito:UserPoolUsernameConfiguration" + }, + "verificationMessageTemplate": { + "$ref": "#/types/aws-native:cognito:UserPoolVerificationMessageTemplate" + } + } + } + }, + "aws-native:cognito:getUserPoolGroup": { + "description": "Resource Type definition for AWS::Cognito::UserPoolGroup", + "inputs": { + "properties": { + "groupName": { + "type": "string" + }, + "userPoolId": { + "type": "string" + } + }, + "required": [ + "userPoolId", + "groupName" + ] + }, + "outputs": { + "properties": { + "description": { + "type": "string" + }, + "precedence": { + "type": "integer" + }, + "roleArn": { + "type": "string" + } + } + } + }, "aws-native:comprehend:getDocumentClassifier": { "description": "Document Classifier enables training document classifier models.", "inputs": { @@ -194020,11 +195469,11 @@ "description": "The name of the contact flow module." }, "state": { - "$ref": "#/types/aws-native:connect:ContactFlowModuleState", + "type": "string", "description": "The state of the contact flow module." }, "status": { - "$ref": "#/types/aws-native:connect:ContactFlowModuleStatus", + "type": "string", "description": "The status of the contact flow module." }, "tags": { @@ -195060,6 +196509,15 @@ "type": "string", "description": "The time of this integration got last updated at" }, + "matching": { + "$ref": "#/types/aws-native:customerprofiles:DomainMatching" + }, + "ruleBasedMatching": { + "$ref": "#/types/aws-native:customerprofiles:DomainRuleBasedMatching" + }, + "stats": { + "$ref": "#/types/aws-native:customerprofiles:DomainStats" + }, "tags": { "type": "array", "items": { @@ -198562,6 +200020,10 @@ "enableDns64": { "type": "boolean" }, + "ipv4NetmaskLength": { + "type": "integer", + "description": "The netmask length of the IPv4 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool" + }, "ipv6CidrBlock": { "type": "string" }, @@ -198571,6 +200033,10 @@ "type": "string" } }, + "ipv6NetmaskLength": { + "type": "integer", + "description": "The netmask length of the IPv6 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool" + }, "mapPublicIpOnLaunch": { "type": "boolean" }, @@ -201230,6 +202696,61 @@ } } }, + "aws-native:entityresolution:getIdMappingWorkflow": { + "description": "IdMappingWorkflow defined in AWS Entity Resolution service", + "inputs": { + "properties": { + "workflowName": { + "type": "string", + "description": "The name of the IdMappingWorkflow" + } + }, + "required": [ + "workflowName" + ] + }, + "outputs": { + "properties": { + "createdAt": { + "type": "string" + }, + "description": { + "type": "string", + "description": "The description of the IdMappingWorkflow" + }, + "idMappingTechniques": { + "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowIdMappingTechniques" + }, + "inputSourceConfig": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowInputSource" + } + }, + "outputSourceConfig": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowOutputSource" + } + }, + "roleArn": { + "type": "string" + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowTag" + } + }, + "updatedAt": { + "type": "string" + }, + "workflowArn": { + "type": "string" + } + } + } + }, "aws-native:entityresolution:getMatchingWorkflow": { "description": "MatchingWorkflow defined in AWS Entity Resolution service", "inputs": { @@ -201506,51 +203027,42 @@ "description": "Resource Type definition for AWS::Events::Rule", "inputs": { "properties": { - "arn": { - "type": "string", - "description": "The ARN of the rule, such as arn:aws:events:us-east-2:123456789012:rule/example." + "id": { + "type": "string" } }, "required": [ - "arn" + "id" ] }, "outputs": { "properties": { "arn": { - "type": "string", - "description": "The ARN of the rule, such as arn:aws:events:us-east-2:123456789012:rule/example." + "type": "string" }, "description": { - "type": "string", - "description": "The description of the rule." - }, - "eventBusName": { - "type": "string", - "description": "The name or ARN of the event bus associated with the rule. If you omit this, the default event bus is used." + "type": "string" }, "eventPattern": { - "type": "string", - "description": "The event pattern of the rule. For more information, see Events and Event Patterns in the Amazon EventBridge User Guide." + "$ref": "pulumi.json#/Any" + }, + "id": { + "type": "string" }, "roleArn": { - "type": "string", - "description": "The Amazon Resource Name (ARN) of the role that is used for target invocation." + "type": "string" }, "scheduleExpression": { - "type": "string", - "description": "The scheduling expression. For example, \"cron(0 20 * * ? *)\", \"rate(5 minutes)\". For more information, see Creating an Amazon EventBridge rule that runs on a schedule." + "type": "string" }, "state": { - "$ref": "#/types/aws-native:events:RuleState", - "description": "The state of the rule." + "type": "string" }, "targets": { "type": "array", "items": { "$ref": "#/types/aws-native:events:RuleTarget" - }, - "description": "Adds the specified targets to the specified rule, or updates the targets if they are already associated with the rule.\nTargets are the resources that are invoked when a rule is triggered." + } } } } @@ -203454,6 +204966,46 @@ } } }, + "aws-native:iam:getGroup": { + "description": "Resource Type definition for AWS::IAM::Group", + "inputs": { + "properties": { + "groupName": { + "type": "string", + "description": "The name of the group to create" + } + }, + "required": [ + "groupName" + ] + }, + "outputs": { + "properties": { + "arn": { + "type": "string", + "description": "The Arn of the group to create" + }, + "managedPolicyArns": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of Amazon Resource Names (ARNs) of the IAM managed policies that you want to attach to the role. " + }, + "path": { + "type": "string", + "description": "The path to the group" + }, + "policies": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:iam:GroupPolicy" + }, + "description": "Adds or updates an inline policy document that is embedded in the specified IAM group" + } + } + } + }, "aws-native:iam:getGroupPolicy": { "description": "Schema for IAM Group Policy", "inputs": { @@ -204925,21 +206477,6 @@ "properties": { "arn": { "type": "string" - }, - "destinationPackageVersions": { - "type": "array", - "items": { - "type": "string" - } - }, - "jobExecutionsRetryConfig": { - "$ref": "#/types/aws-native:iot:JobExecutionsRetryConfigProperties" - }, - "maintenanceWindows": { - "type": "array", - "items": { - "$ref": "#/types/aws-native:iot:JobTemplateMaintenanceWindow" - } } } } @@ -205029,6 +206566,12 @@ }, "policyDocument": { "$ref": "pulumi.json#/Any" + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:iot:PolicyTag" + } } } } @@ -211299,6 +212842,46 @@ } } }, + "aws-native:msk:getReplicator": { + "description": "Resource Type definition for AWS::MSK::Replicator", + "inputs": { + "properties": { + "replicatorArn": { + "type": "string", + "description": "Amazon Resource Name for the created replicator." + } + }, + "required": [ + "replicatorArn" + ] + }, + "outputs": { + "properties": { + "currentVersion": { + "type": "string", + "description": "The current version of the MSK replicator." + }, + "replicationInfoList": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:msk:ReplicatorReplicationInfo" + }, + "description": "A list of replication configurations, where each configuration targets a given source cluster to target cluster replication flow." + }, + "replicatorArn": { + "type": "string", + "description": "Amazon Resource Name for the created replicator." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:msk:ReplicatorTag" + }, + "description": "A collection of tags associated with a resource" + } + } + } + }, "aws-native:msk:getServerlessCluster": { "description": "Resource Type definition for AWS::MSK::ServerlessCluster", "inputs": { @@ -217753,105 +219336,93 @@ "description": "Resource Type definition for AWS::S3::Bucket", "inputs": { "properties": { - "bucketName": { - "type": "string", - "description": "A name for the bucket. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name." + "id": { + "type": "string" } }, "required": [ - "bucketName" + "id" ] }, "outputs": { "properties": { "accelerateConfiguration": { - "$ref": "#/types/aws-native:s3:BucketAccelerateConfiguration", - "description": "Configuration for the transfer acceleration state." + "$ref": "#/types/aws-native:s3:BucketAccelerateConfiguration" + }, + "accessControl": { + "type": "string" }, "analyticsConfigurations": { "type": "array", "items": { "$ref": "#/types/aws-native:s3:BucketAnalyticsConfiguration" - }, - "description": "The configuration and any analyses for the analytics filter of an Amazon S3 bucket." + } }, "arn": { - "type": "string", - "description": "The Amazon Resource Name (ARN) of the specified bucket." + "type": "string" }, "bucketEncryption": { "$ref": "#/types/aws-native:s3:BucketEncryption" }, "corsConfiguration": { - "$ref": "#/types/aws-native:s3:BucketCorsConfiguration", - "description": "Rules that define cross-origin resource sharing of objects in this bucket." + "$ref": "#/types/aws-native:s3:BucketCorsConfiguration" }, "domainName": { - "type": "string", - "description": "The IPv4 DNS name of the specified bucket." + "type": "string" }, "dualStackDomainName": { - "type": "string", - "description": "The IPv6 DNS name of the specified bucket. For more information about dual-stack endpoints, see [Using Amazon S3 Dual-Stack Endpoints](https://docs.aws.amazon.com/AmazonS3/latest/dev/dual-stack-endpoints.html)." + "type": "string" + }, + "id": { + "type": "string" }, "intelligentTieringConfigurations": { "type": "array", "items": { "$ref": "#/types/aws-native:s3:BucketIntelligentTieringConfiguration" - }, - "description": "Specifies the S3 Intelligent-Tiering configuration for an Amazon S3 bucket." + } }, "inventoryConfigurations": { "type": "array", "items": { "$ref": "#/types/aws-native:s3:BucketInventoryConfiguration" - }, - "description": "The inventory configuration for an Amazon S3 bucket." + } }, "lifecycleConfiguration": { - "$ref": "#/types/aws-native:s3:BucketLifecycleConfiguration", - "description": "Rules that define how Amazon S3 manages objects during their lifetime." + "$ref": "#/types/aws-native:s3:BucketLifecycleConfiguration" }, "loggingConfiguration": { - "$ref": "#/types/aws-native:s3:BucketLoggingConfiguration", - "description": "Settings that define where logs are stored." + "$ref": "#/types/aws-native:s3:BucketLoggingConfiguration" }, "metricsConfigurations": { "type": "array", "items": { "$ref": "#/types/aws-native:s3:BucketMetricsConfiguration" - }, - "description": "Settings that define a metrics configuration for the CloudWatch request metrics from the bucket." + } }, "notificationConfiguration": { - "$ref": "#/types/aws-native:s3:BucketNotificationConfiguration", - "description": "Configuration that defines how Amazon S3 handles bucket notifications." + "$ref": "#/types/aws-native:s3:BucketNotificationConfiguration" }, "objectLockConfiguration": { - "$ref": "#/types/aws-native:s3:BucketObjectLockConfiguration", - "description": "Places an Object Lock configuration on the specified bucket." + "$ref": "#/types/aws-native:s3:BucketObjectLockConfiguration" }, "ownershipControls": { - "$ref": "#/types/aws-native:s3:BucketOwnershipControls", - "description": "Specifies the container element for object ownership rules." + "$ref": "#/types/aws-native:s3:BucketOwnershipControls" }, "publicAccessBlockConfiguration": { "$ref": "#/types/aws-native:s3:BucketPublicAccessBlockConfiguration" }, "regionalDomainName": { - "type": "string", - "description": "Returns the regional domain name of the specified bucket." + "type": "string" }, "replicationConfiguration": { - "$ref": "#/types/aws-native:s3:BucketReplicationConfiguration", - "description": "Configuration for replicating objects in an S3 bucket." + "$ref": "#/types/aws-native:s3:BucketReplicationConfiguration" }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:s3:BucketTag" - }, - "description": "An arbitrary set of tags (key-value pairs) for this S3 bucket." + } }, "versioningConfiguration": { "$ref": "#/types/aws-native:s3:BucketVersioningConfiguration" @@ -217860,8 +219431,7 @@ "$ref": "#/types/aws-native:s3:BucketWebsiteConfiguration" }, "websiteUrl": { - "type": "string", - "description": "The Amazon S3 website endpoint for the specified bucket." + "type": "string" } } } @@ -219356,12 +220926,16 @@ "description": "Resource Schema for AWS::ServiceCatalogAppRegistry::AttributeGroupAssociation.", "inputs": { "properties": { - "id": { + "applicationArn": { + "type": "string" + }, + "attributeGroupArn": { "type": "string" } }, "required": [ - "id" + "applicationArn", + "attributeGroupArn" ] }, "outputs": { @@ -219371,9 +220945,6 @@ }, "attributeGroupArn": { "type": "string" - }, - "id": { - "type": "string" } } } @@ -219382,12 +220953,21 @@ "description": "Resource Schema for AWS::ServiceCatalogAppRegistry::ResourceAssociation", "inputs": { "properties": { - "id": { + "applicationArn": { + "type": "string" + }, + "resourceArn": { "type": "string" + }, + "resourceType": { + "$ref": "#/types/aws-native:servicecatalogappregistry:ResourceAssociationResourceType", + "description": "The type of the CFN Resource for now it's enum CFN_STACK." } }, "required": [ - "id" + "applicationArn", + "resourceArn", + "resourceType" ] }, "outputs": { @@ -219395,9 +220975,6 @@ "applicationArn": { "type": "string" }, - "id": { - "type": "string" - }, "resourceArn": { "type": "string" } @@ -219864,6 +221441,10 @@ }, "outputs": { "properties": { + "archivePolicy": { + "$ref": "pulumi.json#/Any", + "description": "The archive policy determines the number of days Amazon SNS retains messages. You can set a retention period from 1 to 365 days." + }, "contentBasedDeduplication": { "type": "boolean", "description": "Enables content-based deduplication for FIFO topics. By default, ContentBasedDeduplication is set to false. If you create a FIFO topic and this attribute is false, you must specify a value for the MessageDeduplicationId parameter for the Publish action.\n\nWhen you set ContentBasedDeduplication to true, Amazon SNS uses a SHA-256 hash to generate the MessageDeduplicationId using the body of the message (but not the attributes of the message).\n\n(Optional) To override the generated value, you can specify a value for the the MessageDeduplicationId parameter for the Publish action.\n\n" diff --git a/sdk/dotnet/ApiGateway/Account.cs b/sdk/dotnet/ApiGateway/Account.cs index e8cfcc084b..2f3600ae1a 100644 --- a/sdk/dotnet/ApiGateway/Account.cs +++ b/sdk/dotnet/ApiGateway/Account.cs @@ -10,13 +10,13 @@ namespace Pulumi.AwsNative.ApiGateway { /// - /// Resource Type definition for AWS::ApiGateway::Account + /// The ``AWS::ApiGateway::Account`` resource specifies the IAM role that Amazon API Gateway uses to write API logs to Amazon CloudWatch Logs. To avoid overwriting other roles, you should only have one ``AWS::ApiGateway::Account`` resource per region per account. /// [AwsNativeResourceType("aws-native:apigateway:Account")] public partial class Account : global::Pulumi.CustomResource { /// - /// The Amazon Resource Name (ARN) of an IAM role that has write access to CloudWatch Logs in your account. + /// The ARN of an Amazon CloudWatch role for the current Account. /// [Output("cloudWatchRoleArn")] public Output CloudWatchRoleArn { get; private set; } = null!; @@ -67,7 +67,7 @@ public static Account Get(string name, Input id, CustomResourceOptions? public sealed class AccountArgs : global::Pulumi.ResourceArgs { /// - /// The Amazon Resource Name (ARN) of an IAM role that has write access to CloudWatch Logs in your account. + /// The ARN of an Amazon CloudWatch role for the current Account. /// [Input("cloudWatchRoleArn")] public Input? CloudWatchRoleArn { get; set; } diff --git a/sdk/dotnet/ApiGateway/Authorizer.cs b/sdk/dotnet/ApiGateway/Authorizer.cs index 9086d33fac..c4cf123c41 100644 --- a/sdk/dotnet/ApiGateway/Authorizer.cs +++ b/sdk/dotnet/ApiGateway/Authorizer.cs @@ -10,7 +10,7 @@ namespace Pulumi.AwsNative.ApiGateway { /// - /// Represents an authorization layer for methods. If enabled on a method, API Gateway will activate the authorizer when a client calls the method. + /// The ``AWS::ApiGateway::Authorizer`` resource creates an authorization layer that API Gateway activates for methods that have authorization enabled. API Gateway activates the authorizer when a client calls those methods. /// [AwsNativeResourceType("aws-native:apigateway:Authorizer")] public partial class Authorizer : global::Pulumi.CustomResource @@ -22,7 +22,7 @@ public partial class Authorizer : global::Pulumi.CustomResource public Output AuthType { get; private set; } = null!; /// - /// Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. + /// Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. To specify an IAM role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To use resource-based permissions on the Lambda function, specify null. /// [Output("authorizerCredentials")] public Output AuthorizerCredentials { get; private set; } = null!; @@ -31,25 +31,25 @@ public partial class Authorizer : global::Pulumi.CustomResource public Output AuthorizerId { get; private set; } = null!; /// - /// The TTL in seconds of cached authorizer results. + /// The TTL in seconds of cached authorizer results. If it equals 0, authorization caching is disabled. If it is greater than 0, API Gateway will cache authorizer responses. If this field is not set, the default value is 300. The maximum value is 3600, or 1 hour. /// [Output("authorizerResultTtlInSeconds")] public Output AuthorizerResultTtlInSeconds { get; private set; } = null!; /// - /// Specifies the authorizer's Uniform Resource Identifier (URI). + /// Specifies the authorizer's Uniform Resource Identifier (URI). For ``TOKEN`` or ``REQUEST`` authorizers, this must be a well-formed Lambda function URI, for example, ``arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:{account_id}:function:{lambda_function_name}/invocations``. In general, the URI has this form ``arn:aws:apigateway:{region}:lambda:path/{service_api}``, where ``{region}`` is the same as the region hosting the Lambda function, ``path`` indicates that the remaining substring in the URI should be treated as the path to the resource, including the initial ``/``. For Lambda functions, this is usually of the form ``/2015-03-31/functions/[FunctionARN]/invocations``. /// [Output("authorizerUri")] public Output AuthorizerUri { get; private set; } = null!; /// - /// The identity source for which authorization is requested. + /// The identity source for which authorization is requested. For a ``TOKEN`` or ``COGNITO_USER_POOLS`` authorizer, this is required and specifies the request header mapping expression for the custom header holding the authorization token submitted by the client. For example, if the token header name is ``Auth``, the header mapping expression is ``method.request.header.Auth``. For the ``REQUEST`` authorizer, this is required when authorization caching is enabled. The value is a comma-separated string of one or more mapping expressions of the specified request parameters. For example, if an ``Auth`` header, a ``Name`` query string parameter are defined as identity sources, this value is ``method.request.header.Auth, method.request.querystring.Name``. These parameters will be used to derive the authorization caching key and to perform runtime validation of the ``REQUEST`` authorizer by verifying all of the identity-related request parameters are present, not null and non-empty. Only when this is true does the authorizer invoke the authorizer Lambda function, otherwise, it returns a 401 Unauthorized response without calling the Lambda function. The valid value is a string of comma-separated mapping expressions of the specified request parameters. When the authorization caching is not enabled, this property is optional. /// [Output("identitySource")] public Output IdentitySource { get; private set; } = null!; /// - /// A validation expression for the incoming identity token. + /// A validation expression for the incoming identity token. For ``TOKEN`` authorizers, this value is a regular expression. For ``COGNITO_USER_POOLS`` authorizers, API Gateway will match the ``aud`` field of the incoming token from the client against the specified regular expression. It will invoke the authorizer's Lambda function when there is a match. Otherwise, it will return a 401 Unauthorized response without calling the Lambda function. The validation expression does not apply to the ``REQUEST`` authorizer. /// [Output("identityValidationExpression")] public Output IdentityValidationExpression { get; private set; } = null!; @@ -61,19 +61,19 @@ public partial class Authorizer : global::Pulumi.CustomResource public Output Name { get; private set; } = null!; /// - /// A list of the Amazon Cognito user pool ARNs for the COGNITO_USER_POOLS authorizer. + /// A list of the Amazon Cognito user pool ARNs for the ``COGNITO_USER_POOLS`` authorizer. Each element is of this format: ``arn:aws:cognito-idp:{region}:{account_id}:userpool/{user_pool_id}``. For a ``TOKEN`` or ``REQUEST`` authorizer, this is not defined. /// [Output("providerArns")] public Output> ProviderArns { get; private set; } = null!; /// - /// The identifier of the API. + /// The string identifier of the associated RestApi. /// [Output("restApiId")] public Output RestApiId { get; private set; } = null!; /// - /// The authorizer type. + /// The authorizer type. Valid values are ``TOKEN`` for a Lambda function using a single authorization token submitted in a custom header, ``REQUEST`` for a Lambda function using incoming request parameters, and ``COGNITO_USER_POOLS`` for using an Amazon Cognito user pool. /// [Output("type")] public Output Type { get; private set; } = null!; @@ -134,31 +134,31 @@ public sealed class AuthorizerArgs : global::Pulumi.ResourceArgs public Input? AuthType { get; set; } /// - /// Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. + /// Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. To specify an IAM role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To use resource-based permissions on the Lambda function, specify null. /// [Input("authorizerCredentials")] public Input? AuthorizerCredentials { get; set; } /// - /// The TTL in seconds of cached authorizer results. + /// The TTL in seconds of cached authorizer results. If it equals 0, authorization caching is disabled. If it is greater than 0, API Gateway will cache authorizer responses. If this field is not set, the default value is 300. The maximum value is 3600, or 1 hour. /// [Input("authorizerResultTtlInSeconds")] public Input? AuthorizerResultTtlInSeconds { get; set; } /// - /// Specifies the authorizer's Uniform Resource Identifier (URI). + /// Specifies the authorizer's Uniform Resource Identifier (URI). For ``TOKEN`` or ``REQUEST`` authorizers, this must be a well-formed Lambda function URI, for example, ``arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:{account_id}:function:{lambda_function_name}/invocations``. In general, the URI has this form ``arn:aws:apigateway:{region}:lambda:path/{service_api}``, where ``{region}`` is the same as the region hosting the Lambda function, ``path`` indicates that the remaining substring in the URI should be treated as the path to the resource, including the initial ``/``. For Lambda functions, this is usually of the form ``/2015-03-31/functions/[FunctionARN]/invocations``. /// [Input("authorizerUri")] public Input? AuthorizerUri { get; set; } /// - /// The identity source for which authorization is requested. + /// The identity source for which authorization is requested. For a ``TOKEN`` or ``COGNITO_USER_POOLS`` authorizer, this is required and specifies the request header mapping expression for the custom header holding the authorization token submitted by the client. For example, if the token header name is ``Auth``, the header mapping expression is ``method.request.header.Auth``. For the ``REQUEST`` authorizer, this is required when authorization caching is enabled. The value is a comma-separated string of one or more mapping expressions of the specified request parameters. For example, if an ``Auth`` header, a ``Name`` query string parameter are defined as identity sources, this value is ``method.request.header.Auth, method.request.querystring.Name``. These parameters will be used to derive the authorization caching key and to perform runtime validation of the ``REQUEST`` authorizer by verifying all of the identity-related request parameters are present, not null and non-empty. Only when this is true does the authorizer invoke the authorizer Lambda function, otherwise, it returns a 401 Unauthorized response without calling the Lambda function. The valid value is a string of comma-separated mapping expressions of the specified request parameters. When the authorization caching is not enabled, this property is optional. /// [Input("identitySource")] public Input? IdentitySource { get; set; } /// - /// A validation expression for the incoming identity token. + /// A validation expression for the incoming identity token. For ``TOKEN`` authorizers, this value is a regular expression. For ``COGNITO_USER_POOLS`` authorizers, API Gateway will match the ``aud`` field of the incoming token from the client against the specified regular expression. It will invoke the authorizer's Lambda function when there is a match. Otherwise, it will return a 401 Unauthorized response without calling the Lambda function. The validation expression does not apply to the ``REQUEST`` authorizer. /// [Input("identityValidationExpression")] public Input? IdentityValidationExpression { get; set; } @@ -173,7 +173,7 @@ public sealed class AuthorizerArgs : global::Pulumi.ResourceArgs private InputList? _providerArns; /// - /// A list of the Amazon Cognito user pool ARNs for the COGNITO_USER_POOLS authorizer. + /// A list of the Amazon Cognito user pool ARNs for the ``COGNITO_USER_POOLS`` authorizer. Each element is of this format: ``arn:aws:cognito-idp:{region}:{account_id}:userpool/{user_pool_id}``. For a ``TOKEN`` or ``REQUEST`` authorizer, this is not defined. /// public InputList ProviderArns { @@ -182,13 +182,13 @@ public InputList ProviderArns } /// - /// The identifier of the API. + /// The string identifier of the associated RestApi. /// [Input("restApiId", required: true)] public Input RestApiId { get; set; } = null!; /// - /// The authorizer type. + /// The authorizer type. Valid values are ``TOKEN`` for a Lambda function using a single authorization token submitted in a custom header, ``REQUEST`` for a Lambda function using incoming request parameters, and ``COGNITO_USER_POOLS`` for using an Amazon Cognito user pool. /// [Input("type", required: true)] public Input Type { get; set; } = null!; diff --git a/sdk/dotnet/ApiGateway/Deployment.cs b/sdk/dotnet/ApiGateway/Deployment.cs index 1dc43859da..c8ab311418 100644 --- a/sdk/dotnet/ApiGateway/Deployment.cs +++ b/sdk/dotnet/ApiGateway/Deployment.cs @@ -10,13 +10,13 @@ namespace Pulumi.AwsNative.ApiGateway { /// - /// Resource Type definition for AWS::ApiGateway::Deployment + /// The ``AWS::ApiGateway::Deployment`` resource deploys an API Gateway ``RestApi`` resource to a stage so that clients can call the API over the internet. The stage acts as an environment. /// [AwsNativeResourceType("aws-native:apigateway:Deployment")] public partial class Deployment : global::Pulumi.CustomResource { /// - /// Specifies settings for the canary deployment. + /// The input configuration for a canary deployment. /// [Output("deploymentCanarySettings")] public Output DeploymentCanarySettings { get; private set; } = null!; @@ -28,25 +28,25 @@ public partial class Deployment : global::Pulumi.CustomResource public Output DeploymentId { get; private set; } = null!; /// - /// A description of the purpose of the API Gateway deployment. + /// The description for the Deployment resource to create. /// [Output("description")] public Output Description { get; private set; } = null!; /// - /// The ID of the RestApi resource to deploy. + /// The string identifier of the associated RestApi. /// [Output("restApiId")] public Output RestApiId { get; private set; } = null!; /// - /// Configures the stage that API Gateway creates with this deployment. + /// The description of the Stage resource for the Deployment resource to create. To specify a stage description, you must also provide a stage name. /// [Output("stageDescription")] public Output StageDescription { get; private set; } = null!; /// - /// A name for the stage that API Gateway creates with this deployment. Use only alphanumeric characters. + /// The name of the Stage resource for the Deployment resource to create. /// [Output("stageName")] public Output StageName { get; private set; } = null!; @@ -102,31 +102,31 @@ public static Deployment Get(string name, Input id, CustomResourceOption public sealed class DeploymentArgs : global::Pulumi.ResourceArgs { /// - /// Specifies settings for the canary deployment. + /// The input configuration for a canary deployment. /// [Input("deploymentCanarySettings")] public Input? DeploymentCanarySettings { get; set; } /// - /// A description of the purpose of the API Gateway deployment. + /// The description for the Deployment resource to create. /// [Input("description")] public Input? Description { get; set; } /// - /// The ID of the RestApi resource to deploy. + /// The string identifier of the associated RestApi. /// [Input("restApiId", required: true)] public Input RestApiId { get; set; } = null!; /// - /// Configures the stage that API Gateway creates with this deployment. + /// The description of the Stage resource for the Deployment resource to create. To specify a stage description, you must also provide a stage name. /// [Input("stageDescription")] public Input? StageDescription { get; set; } /// - /// A name for the stage that API Gateway creates with this deployment. Use only alphanumeric characters. + /// The name of the Stage resource for the Deployment resource to create. /// [Input("stageName")] public Input? StageName { get; set; } diff --git a/sdk/dotnet/ApiGateway/DocumentationPart.cs b/sdk/dotnet/ApiGateway/DocumentationPart.cs index f5cee101d9..25671ddc83 100644 --- a/sdk/dotnet/ApiGateway/DocumentationPart.cs +++ b/sdk/dotnet/ApiGateway/DocumentationPart.cs @@ -10,7 +10,7 @@ namespace Pulumi.AwsNative.ApiGateway { /// - /// Resource Type definition for AWS::ApiGateway::DocumentationPart + /// The ``AWS::ApiGateway::DocumentationPart`` resource creates a documentation part for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*. /// [AwsNativeResourceType("aws-native:apigateway:DocumentationPart")] public partial class DocumentationPart : global::Pulumi.CustomResource @@ -22,19 +22,19 @@ public partial class DocumentationPart : global::Pulumi.CustomResource public Output DocumentationPartId { get; private set; } = null!; /// - /// The location of the API entity that the documentation applies to. + /// The location of the targeted API entity of the to-be-created documentation part. /// [Output("location")] public Output Location { get; private set; } = null!; /// - /// The documentation content map of the targeted API entity. + /// The new documentation content map of the targeted API entity. Enclosed key-value pairs are API-specific, but only OpenAPI-compliant key-value pairs can be exported and, hence, published. /// [Output("properties")] public Output Properties { get; private set; } = null!; /// - /// Identifier of the targeted API entity + /// The string identifier of the associated RestApi. /// [Output("restApiId")] public Output RestApiId { get; private set; } = null!; @@ -90,19 +90,19 @@ public static DocumentationPart Get(string name, Input id, CustomResourc public sealed class DocumentationPartArgs : global::Pulumi.ResourceArgs { /// - /// The location of the API entity that the documentation applies to. + /// The location of the targeted API entity of the to-be-created documentation part. /// [Input("location", required: true)] public Input Location { get; set; } = null!; /// - /// The documentation content map of the targeted API entity. + /// The new documentation content map of the targeted API entity. Enclosed key-value pairs are API-specific, but only OpenAPI-compliant key-value pairs can be exported and, hence, published. /// [Input("properties", required: true)] public Input Properties { get; set; } = null!; /// - /// Identifier of the targeted API entity + /// The string identifier of the associated RestApi. /// [Input("restApiId", required: true)] public Input RestApiId { get; set; } = null!; diff --git a/sdk/dotnet/ApiGateway/DocumentationVersion.cs b/sdk/dotnet/ApiGateway/DocumentationVersion.cs index 02361baa92..45314ac5c2 100644 --- a/sdk/dotnet/ApiGateway/DocumentationVersion.cs +++ b/sdk/dotnet/ApiGateway/DocumentationVersion.cs @@ -10,25 +10,25 @@ namespace Pulumi.AwsNative.ApiGateway { /// - /// A snapshot of the documentation of an API. + /// The ``AWS::ApiGateway::DocumentationVersion`` resource creates a snapshot of the documentation for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*. /// [AwsNativeResourceType("aws-native:apigateway:DocumentationVersion")] public partial class DocumentationVersion : global::Pulumi.CustomResource { /// - /// The description of the API documentation snapshot. + /// A description about the new documentation snapshot. /// [Output("description")] public Output Description { get; private set; } = null!; /// - /// The version identifier of the API documentation snapshot. + /// The version identifier of the to-be-updated documentation version. /// [Output("documentationVersion")] public Output DocumentationVersionValue { get; private set; } = null!; /// - /// The identifier of the API. + /// The string identifier of the associated RestApi. /// [Output("restApiId")] public Output RestApiId { get; private set; } = null!; @@ -84,19 +84,19 @@ public static DocumentationVersion Get(string name, Input id, CustomReso public sealed class DocumentationVersionArgs : global::Pulumi.ResourceArgs { /// - /// The description of the API documentation snapshot. + /// A description about the new documentation snapshot. /// [Input("description")] public Input? Description { get; set; } /// - /// The version identifier of the API documentation snapshot. + /// The version identifier of the to-be-updated documentation version. /// [Input("documentationVersion", required: true)] public Input DocumentationVersionValue { get; set; } = null!; /// - /// The identifier of the API. + /// The string identifier of the associated RestApi. /// [Input("restApiId", required: true)] public Input RestApiId { get; set; } = null!; diff --git a/sdk/dotnet/ApiGateway/Enums.cs b/sdk/dotnet/ApiGateway/Enums.cs index fdeb722c11..48088f3aff 100644 --- a/sdk/dotnet/ApiGateway/Enums.cs +++ b/sdk/dotnet/ApiGateway/Enums.cs @@ -8,7 +8,7 @@ namespace Pulumi.AwsNative.ApiGateway { /// - /// The type of API entity that the documentation content applies to. + /// The type of API entity to which the documentation content applies. Valid values are ``API``, ``AUTHORIZER``, ``MODEL``, ``RESOURCE``, ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. Content inheritance does not apply to any entity of the ``API``, ``AUTHORIZER``, ``METHOD``, ``MODEL``, ``REQUEST_BODY``, or ``RESOURCE`` type. /// [EnumType] public readonly struct DocumentationPartLocationType : IEquatable @@ -49,7 +49,8 @@ private DocumentationPartLocationType(string value) } /// - /// The method's authorization type. + /// The method's authorization type. This parameter is required. For valid values, see [Method](https://docs.aws.amazon.com/apigateway/latest/api/API_Method.html) in the *API Gateway API Reference*. + /// If you specify the ``AuthorizerId`` property, specify ``CUSTOM`` or ``COGNITO_USER_POOLS`` for this property. /// [EnumType] public readonly struct MethodAuthorizationType : IEquatable @@ -82,7 +83,7 @@ private MethodAuthorizationType(string value) } /// - /// The type of the network connection to the integration endpoint. + /// The type of the network connection to the integration endpoint. The valid value is ``INTERNET`` for connections through the public routable internet or ``VPC_LINK`` for private connections between API Gateway and a network load balancer in a VPC. The default value is ``INTERNET``. /// [EnumType] public readonly struct MethodIntegrationConnectionType : IEquatable @@ -113,7 +114,8 @@ private MethodIntegrationConnectionType(string value) } /// - /// Specifies how to handle request payload content type conversions. + /// Specifies how to handle request payload content type conversions. Supported values are ``CONVERT_TO_BINARY`` and ``CONVERT_TO_TEXT``, with the following behaviors: + /// If this property is not defined, the request payload will be passed through from the method request to integration request without modification, provided that the ``passthroughBehavior`` is configured to support payload pass-through. /// [EnumType] public readonly struct MethodIntegrationContentHandling : IEquatable @@ -144,7 +146,7 @@ private MethodIntegrationContentHandling(string value) } /// - /// Indicates when API Gateway passes requests to the targeted backend. + /// Specifies how the method request body of an unmapped content type will be passed through the integration request to the back end without transformation. A content type is unmapped if no mapping template is defined in the integration or the content type does not match any of the mapped content types, as specified in ``requestTemplates``. The valid value is one of the following: ``WHEN_NO_MATCH``: passes the method request body through the integration request to the back end without transformation when the method request content type does not match any content type associated with the mapping templates defined in the integration request. ``WHEN_NO_TEMPLATES``: passes the method request body through the integration request to the back end without transformation when no mapping template is defined in the integration request. If a template is defined when this option is selected, the method request of an unmapped content-type will be rejected with an HTTP 415 Unsupported Media Type response. ``NEVER``: rejects the method request with an HTTP 415 Unsupported Media Type response when either the method request content type does not match any content type associated with the mapping templates defined in the integration request or no mapping template is defined in the integration request. /// [EnumType] public readonly struct MethodIntegrationPassthroughBehavior : IEquatable @@ -176,7 +178,8 @@ private MethodIntegrationPassthroughBehavior(string value) } /// - /// Specifies how to handle request payload content type conversions. + /// Specifies how to handle response payload content type conversions. Supported values are ``CONVERT_TO_BINARY`` and ``CONVERT_TO_TEXT``, with the following behaviors: + /// If this property is not defined, the response payload will be passed through from the integration response to the method response without modification. /// [EnumType] public readonly struct MethodIntegrationResponseContentHandling : IEquatable @@ -207,7 +210,8 @@ private MethodIntegrationResponseContentHandling(string value) } /// - /// The type of backend that your method is running. + /// Specifies an API method integration type. The valid value is one of the following: + /// For the HTTP and HTTP proxy integrations, each integration can specify a protocol (``http/https``), port and path. Standard 80 and 443 ports are supported as well as custom ports above 1024. An HTTP or HTTP proxy integration with a ``connectionType`` of ``VPC_LINK`` is referred to as a private integration and uses a VpcLink to connect API Gateway to a network load balancer of a VPC. /// [EnumType] public readonly struct MethodIntegrationType : IEquatable @@ -241,7 +245,7 @@ private MethodIntegrationType(string value) } /// - /// The type of usage plan key. Currently, the only valid key type is API_KEY. + /// The type of a UsagePlanKey resource for a plan customer. /// [EnumType] public readonly struct UsagePlanKeyKeyType : IEquatable diff --git a/sdk/dotnet/ApiGateway/GetAccount.cs b/sdk/dotnet/ApiGateway/GetAccount.cs index ba198db20e..99054856db 100644 --- a/sdk/dotnet/ApiGateway/GetAccount.cs +++ b/sdk/dotnet/ApiGateway/GetAccount.cs @@ -12,13 +12,13 @@ namespace Pulumi.AwsNative.ApiGateway public static class GetAccount { /// - /// Resource Type definition for AWS::ApiGateway::Account + /// The ``AWS::ApiGateway::Account`` resource specifies the IAM role that Amazon API Gateway uses to write API logs to Amazon CloudWatch Logs. To avoid overwriting other roles, you should only have one ``AWS::ApiGateway::Account`` resource per region per account. /// public static Task InvokeAsync(GetAccountArgs args, InvokeOptions? options = null) => global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:apigateway:getAccount", args ?? new GetAccountArgs(), options.WithDefaults()); /// - /// Resource Type definition for AWS::ApiGateway::Account + /// The ``AWS::ApiGateway::Account`` resource specifies the IAM role that Amazon API Gateway uses to write API logs to Amazon CloudWatch Logs. To avoid overwriting other roles, you should only have one ``AWS::ApiGateway::Account`` resource per region per account. /// public static Output Invoke(GetAccountInvokeArgs args, InvokeOptions? options = null) => global::Pulumi.Deployment.Instance.Invoke("aws-native:apigateway:getAccount", args ?? new GetAccountInvokeArgs(), options.WithDefaults()); @@ -58,7 +58,7 @@ public GetAccountInvokeArgs() public sealed class GetAccountResult { /// - /// The Amazon Resource Name (ARN) of an IAM role that has write access to CloudWatch Logs in your account. + /// The ARN of an Amazon CloudWatch role for the current Account. /// public readonly string? CloudWatchRoleArn; /// diff --git a/sdk/dotnet/ApiGateway/GetAuthorizer.cs b/sdk/dotnet/ApiGateway/GetAuthorizer.cs index d55825c17c..63889f3aab 100644 --- a/sdk/dotnet/ApiGateway/GetAuthorizer.cs +++ b/sdk/dotnet/ApiGateway/GetAuthorizer.cs @@ -12,13 +12,13 @@ namespace Pulumi.AwsNative.ApiGateway public static class GetAuthorizer { /// - /// Represents an authorization layer for methods. If enabled on a method, API Gateway will activate the authorizer when a client calls the method. + /// The ``AWS::ApiGateway::Authorizer`` resource creates an authorization layer that API Gateway activates for methods that have authorization enabled. API Gateway activates the authorizer when a client calls those methods. /// public static Task InvokeAsync(GetAuthorizerArgs args, InvokeOptions? options = null) => global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:apigateway:getAuthorizer", args ?? new GetAuthorizerArgs(), options.WithDefaults()); /// - /// Represents an authorization layer for methods. If enabled on a method, API Gateway will activate the authorizer when a client calls the method. + /// The ``AWS::ApiGateway::Authorizer`` resource creates an authorization layer that API Gateway activates for methods that have authorization enabled. API Gateway activates the authorizer when a client calls those methods. /// public static Output Invoke(GetAuthorizerInvokeArgs args, InvokeOptions? options = null) => global::Pulumi.Deployment.Instance.Invoke("aws-native:apigateway:getAuthorizer", args ?? new GetAuthorizerInvokeArgs(), options.WithDefaults()); @@ -31,7 +31,7 @@ public sealed class GetAuthorizerArgs : global::Pulumi.InvokeArgs public string AuthorizerId { get; set; } = null!; /// - /// The identifier of the API. + /// The string identifier of the associated RestApi. /// [Input("restApiId", required: true)] public string RestApiId { get; set; } = null!; @@ -48,7 +48,7 @@ public sealed class GetAuthorizerInvokeArgs : global::Pulumi.InvokeArgs public Input AuthorizerId { get; set; } = null!; /// - /// The identifier of the API. + /// The string identifier of the associated RestApi. /// [Input("restApiId", required: true)] public Input RestApiId { get; set; } = null!; @@ -68,24 +68,24 @@ public sealed class GetAuthorizerResult /// public readonly string? AuthType; /// - /// Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. + /// Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. To specify an IAM role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To use resource-based permissions on the Lambda function, specify null. /// public readonly string? AuthorizerCredentials; public readonly string? AuthorizerId; /// - /// The TTL in seconds of cached authorizer results. + /// The TTL in seconds of cached authorizer results. If it equals 0, authorization caching is disabled. If it is greater than 0, API Gateway will cache authorizer responses. If this field is not set, the default value is 300. The maximum value is 3600, or 1 hour. /// public readonly int? AuthorizerResultTtlInSeconds; /// - /// Specifies the authorizer's Uniform Resource Identifier (URI). + /// Specifies the authorizer's Uniform Resource Identifier (URI). For ``TOKEN`` or ``REQUEST`` authorizers, this must be a well-formed Lambda function URI, for example, ``arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:{account_id}:function:{lambda_function_name}/invocations``. In general, the URI has this form ``arn:aws:apigateway:{region}:lambda:path/{service_api}``, where ``{region}`` is the same as the region hosting the Lambda function, ``path`` indicates that the remaining substring in the URI should be treated as the path to the resource, including the initial ``/``. For Lambda functions, this is usually of the form ``/2015-03-31/functions/[FunctionARN]/invocations``. /// public readonly string? AuthorizerUri; /// - /// The identity source for which authorization is requested. + /// The identity source for which authorization is requested. For a ``TOKEN`` or ``COGNITO_USER_POOLS`` authorizer, this is required and specifies the request header mapping expression for the custom header holding the authorization token submitted by the client. For example, if the token header name is ``Auth``, the header mapping expression is ``method.request.header.Auth``. For the ``REQUEST`` authorizer, this is required when authorization caching is enabled. The value is a comma-separated string of one or more mapping expressions of the specified request parameters. For example, if an ``Auth`` header, a ``Name`` query string parameter are defined as identity sources, this value is ``method.request.header.Auth, method.request.querystring.Name``. These parameters will be used to derive the authorization caching key and to perform runtime validation of the ``REQUEST`` authorizer by verifying all of the identity-related request parameters are present, not null and non-empty. Only when this is true does the authorizer invoke the authorizer Lambda function, otherwise, it returns a 401 Unauthorized response without calling the Lambda function. The valid value is a string of comma-separated mapping expressions of the specified request parameters. When the authorization caching is not enabled, this property is optional. /// public readonly string? IdentitySource; /// - /// A validation expression for the incoming identity token. + /// A validation expression for the incoming identity token. For ``TOKEN`` authorizers, this value is a regular expression. For ``COGNITO_USER_POOLS`` authorizers, API Gateway will match the ``aud`` field of the incoming token from the client against the specified regular expression. It will invoke the authorizer's Lambda function when there is a match. Otherwise, it will return a 401 Unauthorized response without calling the Lambda function. The validation expression does not apply to the ``REQUEST`` authorizer. /// public readonly string? IdentityValidationExpression; /// @@ -93,11 +93,11 @@ public sealed class GetAuthorizerResult /// public readonly string? Name; /// - /// A list of the Amazon Cognito user pool ARNs for the COGNITO_USER_POOLS authorizer. + /// A list of the Amazon Cognito user pool ARNs for the ``COGNITO_USER_POOLS`` authorizer. Each element is of this format: ``arn:aws:cognito-idp:{region}:{account_id}:userpool/{user_pool_id}``. For a ``TOKEN`` or ``REQUEST`` authorizer, this is not defined. /// public readonly ImmutableArray ProviderArns; /// - /// The authorizer type. + /// The authorizer type. Valid values are ``TOKEN`` for a Lambda function using a single authorization token submitted in a custom header, ``REQUEST`` for a Lambda function using incoming request parameters, and ``COGNITO_USER_POOLS`` for using an Amazon Cognito user pool. /// public readonly string? Type; diff --git a/sdk/dotnet/ApiGateway/GetDeployment.cs b/sdk/dotnet/ApiGateway/GetDeployment.cs index 27c549504f..dc8c8f42ea 100644 --- a/sdk/dotnet/ApiGateway/GetDeployment.cs +++ b/sdk/dotnet/ApiGateway/GetDeployment.cs @@ -12,13 +12,13 @@ namespace Pulumi.AwsNative.ApiGateway public static class GetDeployment { /// - /// Resource Type definition for AWS::ApiGateway::Deployment + /// The ``AWS::ApiGateway::Deployment`` resource deploys an API Gateway ``RestApi`` resource to a stage so that clients can call the API over the internet. The stage acts as an environment. /// public static Task InvokeAsync(GetDeploymentArgs args, InvokeOptions? options = null) => global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:apigateway:getDeployment", args ?? new GetDeploymentArgs(), options.WithDefaults()); /// - /// Resource Type definition for AWS::ApiGateway::Deployment + /// The ``AWS::ApiGateway::Deployment`` resource deploys an API Gateway ``RestApi`` resource to a stage so that clients can call the API over the internet. The stage acts as an environment. /// public static Output Invoke(GetDeploymentInvokeArgs args, InvokeOptions? options = null) => global::Pulumi.Deployment.Instance.Invoke("aws-native:apigateway:getDeployment", args ?? new GetDeploymentInvokeArgs(), options.WithDefaults()); @@ -34,7 +34,7 @@ public sealed class GetDeploymentArgs : global::Pulumi.InvokeArgs public string DeploymentId { get; set; } = null!; /// - /// The ID of the RestApi resource to deploy. + /// The string identifier of the associated RestApi. /// [Input("restApiId", required: true)] public string RestApiId { get; set; } = null!; @@ -54,7 +54,7 @@ public sealed class GetDeploymentInvokeArgs : global::Pulumi.InvokeArgs public Input DeploymentId { get; set; } = null!; /// - /// The ID of the RestApi resource to deploy. + /// The string identifier of the associated RestApi. /// [Input("restApiId", required: true)] public Input RestApiId { get; set; } = null!; @@ -74,7 +74,7 @@ public sealed class GetDeploymentResult /// public readonly string? DeploymentId; /// - /// A description of the purpose of the API Gateway deployment. + /// The description for the Deployment resource to create. /// public readonly string? Description; diff --git a/sdk/dotnet/ApiGateway/GetDocumentationPart.cs b/sdk/dotnet/ApiGateway/GetDocumentationPart.cs index 0406d720c5..04fbe43975 100644 --- a/sdk/dotnet/ApiGateway/GetDocumentationPart.cs +++ b/sdk/dotnet/ApiGateway/GetDocumentationPart.cs @@ -12,13 +12,13 @@ namespace Pulumi.AwsNative.ApiGateway public static class GetDocumentationPart { /// - /// Resource Type definition for AWS::ApiGateway::DocumentationPart + /// The ``AWS::ApiGateway::DocumentationPart`` resource creates a documentation part for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*. /// public static Task InvokeAsync(GetDocumentationPartArgs args, InvokeOptions? options = null) => global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:apigateway:getDocumentationPart", args ?? new GetDocumentationPartArgs(), options.WithDefaults()); /// - /// Resource Type definition for AWS::ApiGateway::DocumentationPart + /// The ``AWS::ApiGateway::DocumentationPart`` resource creates a documentation part for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*. /// public static Output Invoke(GetDocumentationPartInvokeArgs args, InvokeOptions? options = null) => global::Pulumi.Deployment.Instance.Invoke("aws-native:apigateway:getDocumentationPart", args ?? new GetDocumentationPartInvokeArgs(), options.WithDefaults()); @@ -34,7 +34,7 @@ public sealed class GetDocumentationPartArgs : global::Pulumi.InvokeArgs public string DocumentationPartId { get; set; } = null!; /// - /// Identifier of the targeted API entity + /// The string identifier of the associated RestApi. /// [Input("restApiId", required: true)] public string RestApiId { get; set; } = null!; @@ -54,7 +54,7 @@ public sealed class GetDocumentationPartInvokeArgs : global::Pulumi.InvokeArgs public Input DocumentationPartId { get; set; } = null!; /// - /// Identifier of the targeted API entity + /// The string identifier of the associated RestApi. /// [Input("restApiId", required: true)] public Input RestApiId { get; set; } = null!; @@ -74,7 +74,7 @@ public sealed class GetDocumentationPartResult /// public readonly string? DocumentationPartId; /// - /// The documentation content map of the targeted API entity. + /// The new documentation content map of the targeted API entity. Enclosed key-value pairs are API-specific, but only OpenAPI-compliant key-value pairs can be exported and, hence, published. /// public readonly string? Properties; diff --git a/sdk/dotnet/ApiGateway/GetDocumentationVersion.cs b/sdk/dotnet/ApiGateway/GetDocumentationVersion.cs index 636756ec28..9099627b30 100644 --- a/sdk/dotnet/ApiGateway/GetDocumentationVersion.cs +++ b/sdk/dotnet/ApiGateway/GetDocumentationVersion.cs @@ -12,13 +12,13 @@ namespace Pulumi.AwsNative.ApiGateway public static class GetDocumentationVersion { /// - /// A snapshot of the documentation of an API. + /// The ``AWS::ApiGateway::DocumentationVersion`` resource creates a snapshot of the documentation for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*. /// public static Task InvokeAsync(GetDocumentationVersionArgs args, InvokeOptions? options = null) => global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:apigateway:getDocumentationVersion", args ?? new GetDocumentationVersionArgs(), options.WithDefaults()); /// - /// A snapshot of the documentation of an API. + /// The ``AWS::ApiGateway::DocumentationVersion`` resource creates a snapshot of the documentation for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*. /// public static Output Invoke(GetDocumentationVersionInvokeArgs args, InvokeOptions? options = null) => global::Pulumi.Deployment.Instance.Invoke("aws-native:apigateway:getDocumentationVersion", args ?? new GetDocumentationVersionInvokeArgs(), options.WithDefaults()); @@ -28,13 +28,13 @@ public static Output Invoke(GetDocumentationVersi public sealed class GetDocumentationVersionArgs : global::Pulumi.InvokeArgs { /// - /// The version identifier of the API documentation snapshot. + /// The version identifier of the to-be-updated documentation version. /// [Input("documentationVersion", required: true)] public string DocumentationVersionValue { get; set; } = null!; /// - /// The identifier of the API. + /// The string identifier of the associated RestApi. /// [Input("restApiId", required: true)] public string RestApiId { get; set; } = null!; @@ -48,13 +48,13 @@ public GetDocumentationVersionArgs() public sealed class GetDocumentationVersionInvokeArgs : global::Pulumi.InvokeArgs { /// - /// The version identifier of the API documentation snapshot. + /// The version identifier of the to-be-updated documentation version. /// [Input("documentationVersion", required: true)] public Input DocumentationVersion { get; set; } = null!; /// - /// The identifier of the API. + /// The string identifier of the associated RestApi. /// [Input("restApiId", required: true)] public Input RestApiId { get; set; } = null!; @@ -70,7 +70,7 @@ public GetDocumentationVersionInvokeArgs() public sealed class GetDocumentationVersionResult { /// - /// The description of the API documentation snapshot. + /// A description about the new documentation snapshot. /// public readonly string? Description; diff --git a/sdk/dotnet/ApiGateway/GetMethod.cs b/sdk/dotnet/ApiGateway/GetMethod.cs index 5a6e38b027..d4724bae74 100644 --- a/sdk/dotnet/ApiGateway/GetMethod.cs +++ b/sdk/dotnet/ApiGateway/GetMethod.cs @@ -12,13 +12,13 @@ namespace Pulumi.AwsNative.ApiGateway public static class GetMethod { /// - /// Resource Type definition for AWS::ApiGateway::Method + /// The ``AWS::ApiGateway::Method`` resource creates API Gateway methods that define the parameters and body that clients must send in their requests. /// public static Task InvokeAsync(GetMethodArgs args, InvokeOptions? options = null) => global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:apigateway:getMethod", args ?? new GetMethodArgs(), options.WithDefaults()); /// - /// Resource Type definition for AWS::ApiGateway::Method + /// The ``AWS::ApiGateway::Method`` resource creates API Gateway methods that define the parameters and body that clients must send in their requests. /// public static Output Invoke(GetMethodInvokeArgs args, InvokeOptions? options = null) => global::Pulumi.Deployment.Instance.Invoke("aws-native:apigateway:getMethod", args ?? new GetMethodInvokeArgs(), options.WithDefaults()); @@ -28,19 +28,19 @@ public static Output Invoke(GetMethodInvokeArgs args, InvokeOpt public sealed class GetMethodArgs : global::Pulumi.InvokeArgs { /// - /// The backend system that the method calls when it receives a request. + /// The method's HTTP verb. /// [Input("httpMethod", required: true)] public string HttpMethod { get; set; } = null!; /// - /// The ID of an API Gateway resource. + /// The Resource identifier for the MethodResponse resource. /// [Input("resourceId", required: true)] public string ResourceId { get; set; } = null!; /// - /// The ID of the RestApi resource in which API Gateway creates the method. + /// The string identifier of the associated RestApi. /// [Input("restApiId", required: true)] public string RestApiId { get; set; } = null!; @@ -54,19 +54,19 @@ public GetMethodArgs() public sealed class GetMethodInvokeArgs : global::Pulumi.InvokeArgs { /// - /// The backend system that the method calls when it receives a request. + /// The method's HTTP verb. /// [Input("httpMethod", required: true)] public Input HttpMethod { get; set; } = null!; /// - /// The ID of an API Gateway resource. + /// The Resource identifier for the MethodResponse resource. /// [Input("resourceId", required: true)] public Input ResourceId { get; set; } = null!; /// - /// The ID of the RestApi resource in which API Gateway creates the method. + /// The string identifier of the associated RestApi. /// [Input("restApiId", required: true)] public Input RestApiId { get; set; } = null!; @@ -82,43 +82,44 @@ public GetMethodInvokeArgs() public sealed class GetMethodResult { /// - /// Indicates whether the method requires clients to submit a valid API key. + /// A boolean flag specifying whether a valid ApiKey is required to invoke this method. /// public readonly bool? ApiKeyRequired; /// - /// A list of authorization scopes configured on the method. + /// A list of authorization scopes configured on the method. The scopes are used with a ``COGNITO_USER_POOLS`` authorizer to authorize the method invocation. The authorization works by matching the method scopes against the scopes parsed from the access token in the incoming request. The method invocation is authorized if any method scopes matches a claimed scope in the access token. Otherwise, the invocation is not authorized. When the method scope is configured, the client must provide an access token instead of an identity token for authorization purposes. /// public readonly ImmutableArray AuthorizationScopes; /// - /// The method's authorization type. + /// The method's authorization type. This parameter is required. For valid values, see [Method](https://docs.aws.amazon.com/apigateway/latest/api/API_Method.html) in the *API Gateway API Reference*. + /// If you specify the ``AuthorizerId`` property, specify ``CUSTOM`` or ``COGNITO_USER_POOLS`` for this property. /// public readonly Pulumi.AwsNative.ApiGateway.MethodAuthorizationType? AuthorizationType; /// - /// The identifier of the authorizer to use on this method. + /// The identifier of an authorizer to use on this method. The method's authorization type must be ``CUSTOM`` or ``COGNITO_USER_POOLS``. /// public readonly string? AuthorizerId; /// - /// The backend system that the method calls when it receives a request. + /// Represents an ``HTTP``, ``HTTP_PROXY``, ``AWS``, ``AWS_PROXY``, or Mock integration. /// public readonly Outputs.MethodIntegration? Integration; /// - /// The responses that can be sent to the client who calls the method. + /// Gets a method response associated with a given HTTP status code. /// public readonly ImmutableArray MethodResponses; /// - /// A friendly operation name for the method. + /// A human-friendly operation identifier for the method. For example, you can assign the ``operationName`` of ``ListPets`` for the ``GET /pets`` method in the ``PetStore`` example. /// public readonly string? OperationName; /// - /// The resources that are used for the request's content type. Specify request models as key-value pairs (string-to-string mapping), with a content type as the key and a Model resource name as the value. + /// A key-value map specifying data schemas, represented by Model resources, (as the mapped value) of the request payloads of given content types (as the mapping key). /// public readonly object? RequestModels; /// - /// The request parameters that API Gateway accepts. Specify request parameters as key-value pairs (string-to-Boolean mapping), with a source as the key and a Boolean as the value. + /// A key-value map defining required or optional method request parameters that can be accepted by API Gateway. A key is a method request parameter name matching the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and ``name`` is a valid and unique parameter name. The value associated with the key is a Boolean flag indicating whether the parameter is required (``true``) or optional (``false``). The method request parameter names defined here are available in Integration to be mapped to integration request parameters or templates. /// public readonly object? RequestParameters; /// - /// The ID of the associated request validator. + /// The identifier of a RequestValidator for request validation. /// public readonly string? RequestValidatorId; diff --git a/sdk/dotnet/ApiGateway/GetModel.cs b/sdk/dotnet/ApiGateway/GetModel.cs index 1aa450bb9c..3e3518ac15 100644 --- a/sdk/dotnet/ApiGateway/GetModel.cs +++ b/sdk/dotnet/ApiGateway/GetModel.cs @@ -12,13 +12,13 @@ namespace Pulumi.AwsNative.ApiGateway public static class GetModel { /// - /// Resource Type definition for AWS::ApiGateway::Model + /// The ``AWS::ApiGateway::Model`` resource defines the structure of a request or response payload for an API method. /// public static Task InvokeAsync(GetModelArgs args, InvokeOptions? options = null) => global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:apigateway:getModel", args ?? new GetModelArgs(), options.WithDefaults()); /// - /// Resource Type definition for AWS::ApiGateway::Model + /// The ``AWS::ApiGateway::Model`` resource defines the structure of a request or response payload for an API method. /// public static Output Invoke(GetModelInvokeArgs args, InvokeOptions? options = null) => global::Pulumi.Deployment.Instance.Invoke("aws-native:apigateway:getModel", args ?? new GetModelInvokeArgs(), options.WithDefaults()); @@ -28,13 +28,14 @@ public static Output Invoke(GetModelInvokeArgs args, InvokeOptio public sealed class GetModelArgs : global::Pulumi.InvokeArgs { /// - /// A name for the model. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the model name. + /// A name for the model. If you don't specify a name, CFN generates a unique physical ID and uses that ID for the model name. For more information, see [Name Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html). + /// 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. /// [Input("name", required: true)] public string Name { get; set; } = null!; /// - /// The ID of a REST API with which to associate this model. + /// The string identifier of the associated RestApi. /// [Input("restApiId", required: true)] public string RestApiId { get; set; } = null!; @@ -48,13 +49,14 @@ public GetModelArgs() public sealed class GetModelInvokeArgs : global::Pulumi.InvokeArgs { /// - /// A name for the model. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the model name. + /// A name for the model. If you don't specify a name, CFN generates a unique physical ID and uses that ID for the model name. For more information, see [Name Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html). + /// 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. /// [Input("name", required: true)] public Input Name { get; set; } = null!; /// - /// The ID of a REST API with which to associate this model. + /// The string identifier of the associated RestApi. /// [Input("restApiId", required: true)] public Input RestApiId { get; set; } = null!; @@ -70,11 +72,11 @@ public GetModelInvokeArgs() public sealed class GetModelResult { /// - /// A description that identifies this model. + /// The description of the model. /// public readonly string? Description; /// - /// The schema to use to transform data to one or more output formats. Specify null ({}) if you don't want to specify a schema. + /// The schema for the model. For ``application/json`` models, this should be JSON schema draft 4 model. Do not include "\*/" characters in the description of any properties because such "\*/" characters may be interpreted as the closing marker for comments in some languages, such as Java or JavaScript, causing the installation of your API's SDK generated by API Gateway to fail. /// public readonly object? Schema; diff --git a/sdk/dotnet/ApiGateway/GetResource.cs b/sdk/dotnet/ApiGateway/GetResource.cs index 21089c17c5..29340f1c19 100644 --- a/sdk/dotnet/ApiGateway/GetResource.cs +++ b/sdk/dotnet/ApiGateway/GetResource.cs @@ -12,13 +12,13 @@ namespace Pulumi.AwsNative.ApiGateway public static class GetResource { /// - /// Resource Type definition for AWS::ApiGateway::Resource + /// The ``AWS::ApiGateway::Resource`` resource creates a resource in an API. /// public static Task InvokeAsync(GetResourceArgs args, InvokeOptions? options = null) => global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:apigateway:getResource", args ?? new GetResourceArgs(), options.WithDefaults()); /// - /// Resource Type definition for AWS::ApiGateway::Resource + /// The ``AWS::ApiGateway::Resource`` resource creates a resource in an API. /// public static Output Invoke(GetResourceInvokeArgs args, InvokeOptions? options = null) => global::Pulumi.Deployment.Instance.Invoke("aws-native:apigateway:getResource", args ?? new GetResourceInvokeArgs(), options.WithDefaults()); @@ -34,7 +34,7 @@ public sealed class GetResourceArgs : global::Pulumi.InvokeArgs public string ResourceId { get; set; } = null!; /// - /// The ID of the RestApi resource in which you want to create this resource.. + /// The string identifier of the associated RestApi. /// [Input("restApiId", required: true)] public string RestApiId { get; set; } = null!; @@ -54,7 +54,7 @@ public sealed class GetResourceInvokeArgs : global::Pulumi.InvokeArgs public Input ResourceId { get; set; } = null!; /// - /// The ID of the RestApi resource in which you want to create this resource.. + /// The string identifier of the associated RestApi. /// [Input("restApiId", required: true)] public Input RestApiId { get; set; } = null!; diff --git a/sdk/dotnet/ApiGateway/GetRestApi.cs b/sdk/dotnet/ApiGateway/GetRestApi.cs index e184682fed..85206f8c1b 100644 --- a/sdk/dotnet/ApiGateway/GetRestApi.cs +++ b/sdk/dotnet/ApiGateway/GetRestApi.cs @@ -12,13 +12,15 @@ namespace Pulumi.AwsNative.ApiGateway public static class GetRestApi { /// - /// Resource Type definition for AWS::ApiGateway::RestApi. + /// The ``AWS::ApiGateway::RestApi`` resource creates a REST API. For more information, see [restapi:create](https://docs.aws.amazon.com/apigateway/latest/api/API_CreateRestApi.html) in the *Amazon API Gateway REST API Reference*. + /// On January 1, 2016, the Swagger Specification was donated to the [OpenAPI initiative](https://docs.aws.amazon.com/https://www.openapis.org/), becoming the foundation of the OpenAPI Specification. /// public static Task InvokeAsync(GetRestApiArgs args, InvokeOptions? options = null) => global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:apigateway:getRestApi", args ?? new GetRestApiArgs(), options.WithDefaults()); /// - /// Resource Type definition for AWS::ApiGateway::RestApi. + /// The ``AWS::ApiGateway::RestApi`` resource creates a REST API. For more information, see [restapi:create](https://docs.aws.amazon.com/apigateway/latest/api/API_CreateRestApi.html) in the *Amazon API Gateway REST API Reference*. + /// On January 1, 2016, the Swagger Specification was donated to the [OpenAPI initiative](https://docs.aws.amazon.com/https://www.openapis.org/), becoming the foundation of the OpenAPI Specification. /// public static Output Invoke(GetRestApiInvokeArgs args, InvokeOptions? options = null) => global::Pulumi.Deployment.Instance.Invoke("aws-native:apigateway:getRestApi", args ?? new GetRestApiInvokeArgs(), options.WithDefaults()); @@ -51,16 +53,43 @@ public GetRestApiInvokeArgs() [OutputType] public sealed class GetRestApiResult { + /// + /// The source of the API key for metering requests according to a usage plan. Valid values are: ``HEADER`` to read the API key from the ``X-API-Key`` header of a request. ``AUTHORIZER`` to read the API key from the ``UsageIdentifierKey`` from a custom authorizer. + /// public readonly string? ApiKeySourceType; + /// + /// The list of binary media types supported by the RestApi. By default, the RestApi supports only UTF-8-encoded text payloads. + /// public readonly ImmutableArray BinaryMediaTypes; + /// + /// The description of the RestApi. + /// public readonly string? Description; + /// + /// Specifies whether clients can invoke your API by using the default ``execute-api`` endpoint. By default, clients can invoke your API with the default ``https://{api_id}.execute-api.{region}.amazonaws.com`` endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint + /// public readonly bool? DisableExecuteApiEndpoint; + /// + /// A list of the endpoint types of the API. Use this property when creating an API. When importing an existing API, specify the endpoint configuration types using the ``Parameters`` property. + /// public readonly Outputs.RestApiEndpointConfiguration? EndpointConfiguration; + /// + /// A nullable integer that is used to enable compression (with non-negative between 0 and 10485760 (10M) bytes, inclusive) or disable compression (with a null value) on an API. When compression is enabled, compression or decompression is not applied on the payload if the payload size is smaller than this value. Setting it to zero allows compression for any payload size. + /// public readonly int? MinimumCompressionSize; + /// + /// The name of the RestApi. A name is required if the REST API is not based on an OpenAPI specification. + /// public readonly string? Name; + /// + /// A policy document that contains the permissions for the ``RestApi`` resource. To set the ARN for the policy, use the ``!Join`` intrinsic function with ``""`` as delimiter and values of ``"execute-api:/"`` and ``"*"``. + /// public readonly object? Policy; public readonly string? RestApiId; public readonly string? RootResourceId; + /// + /// The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with ``aws:``. The tag value can be up to 256 characters. + /// public readonly ImmutableArray Tags; [OutputConstructor] diff --git a/sdk/dotnet/ApiGateway/GetStage.cs b/sdk/dotnet/ApiGateway/GetStage.cs index 5ce14129f1..5abc327c12 100644 --- a/sdk/dotnet/ApiGateway/GetStage.cs +++ b/sdk/dotnet/ApiGateway/GetStage.cs @@ -12,13 +12,13 @@ namespace Pulumi.AwsNative.ApiGateway public static class GetStage { /// - /// Resource Type definition for AWS::ApiGateway::Stage + /// The ``AWS::ApiGateway::Stage`` resource creates a stage for a deployment. /// public static Task InvokeAsync(GetStageArgs args, InvokeOptions? options = null) => global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:apigateway:getStage", args ?? new GetStageArgs(), options.WithDefaults()); /// - /// Resource Type definition for AWS::ApiGateway::Stage + /// The ``AWS::ApiGateway::Stage`` resource creates a stage for a deployment. /// public static Output Invoke(GetStageInvokeArgs args, InvokeOptions? options = null) => global::Pulumi.Deployment.Instance.Invoke("aws-native:apigateway:getStage", args ?? new GetStageInvokeArgs(), options.WithDefaults()); @@ -28,13 +28,13 @@ public static Output Invoke(GetStageInvokeArgs args, InvokeOptio public sealed class GetStageArgs : global::Pulumi.InvokeArgs { /// - /// The ID of the RestApi resource that you're deploying with this stage. + /// The string identifier of the associated RestApi. /// [Input("restApiId", required: true)] public string RestApiId { get; set; } = null!; /// - /// The name of the stage, which API Gateway uses as the first path segment in the invoked Uniform Resource Identifier (URI). + /// The name of the stage is the first path segment in the Uniform Resource Identifier (URI) of a call to API Gateway. Stage names can only contain alphanumeric characters, hyphens, and underscores. Maximum length is 128 characters. /// [Input("stageName", required: true)] public string StageName { get; set; } = null!; @@ -48,13 +48,13 @@ public GetStageArgs() public sealed class GetStageInvokeArgs : global::Pulumi.InvokeArgs { /// - /// The ID of the RestApi resource that you're deploying with this stage. + /// The string identifier of the associated RestApi. /// [Input("restApiId", required: true)] public Input RestApiId { get; set; } = null!; /// - /// The name of the stage, which API Gateway uses as the first path segment in the invoked Uniform Resource Identifier (URI). + /// The name of the stage is the first path segment in the Uniform Resource Identifier (URI) of a call to API Gateway. Stage names can only contain alphanumeric characters, hyphens, and underscores. Maximum length is 128 characters. /// [Input("stageName", required: true)] public Input StageName { get; set; } = null!; @@ -70,51 +70,51 @@ public GetStageInvokeArgs() public sealed class GetStageResult { /// - /// Specifies settings for logging access in this stage. + /// Access log settings, including the access log format and access log destination ARN. /// public readonly Outputs.StageAccessLogSetting? AccessLogSetting; /// - /// Indicates whether cache clustering is enabled for the stage. + /// Specifies whether a cache cluster is enabled for the stage. /// public readonly bool? CacheClusterEnabled; /// - /// The stage's cache cluster size. + /// The stage's cache capacity in GB. For more information about choosing a cache size, see [Enabling API caching to enhance responsiveness](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html). /// public readonly string? CacheClusterSize; /// - /// Specifies settings for the canary deployment in this stage. + /// Settings for the canary deployment in this stage. /// public readonly Outputs.StageCanarySetting? CanarySetting; /// - /// The ID of the client certificate that API Gateway uses to call your integration endpoints in the stage. + /// The identifier of a client certificate for an API stage. /// public readonly string? ClientCertificateId; /// - /// The ID of the deployment that the stage is associated with. This parameter is required to create a stage. + /// The identifier of the Deployment that the stage points to. /// public readonly string? DeploymentId; /// - /// A description of the stage. + /// The stage's description. /// public readonly string? Description; /// - /// The version ID of the API documentation snapshot. + /// The version of the associated API documentation. /// public readonly string? DocumentationVersion; /// - /// Settings for all methods in the stage. + /// A map that defines the method settings for a Stage resource. Keys (designated as ``/{method_setting_key`` below) are method paths defined as ``{resource_path}/{http_method}`` for an individual method override, or ``/\*/\*`` for overriding all methods in the stage. /// public readonly ImmutableArray MethodSettings; /// - /// An array of arbitrary tags (key-value pairs) to associate with the stage. + /// The collection of tags. Each tag element is associated with a given resource. /// public readonly ImmutableArray Tags; /// - /// Specifies whether active X-Ray tracing is enabled for this stage. + /// Specifies whether active tracing with X-ray is enabled for the Stage. /// public readonly bool? TracingEnabled; /// - /// A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value. + /// A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value. Variable names are limited to alphanumeric characters. Values must match the following regular expression: ``[A-Za-z0-9-._~:/?#&=,]+``. /// public readonly object? Variables; diff --git a/sdk/dotnet/ApiGateway/GetUsagePlanKey.cs b/sdk/dotnet/ApiGateway/GetUsagePlanKey.cs index 26e5cf335d..162ca58921 100644 --- a/sdk/dotnet/ApiGateway/GetUsagePlanKey.cs +++ b/sdk/dotnet/ApiGateway/GetUsagePlanKey.cs @@ -12,13 +12,13 @@ namespace Pulumi.AwsNative.ApiGateway public static class GetUsagePlanKey { /// - /// Resource Type definition for AWS::ApiGateway::UsagePlanKey + /// The ``AWS::ApiGateway::UsagePlanKey`` resource associates an API key with a usage plan. This association determines which users the usage plan is applied to. /// public static Task InvokeAsync(GetUsagePlanKeyArgs args, InvokeOptions? options = null) => global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:apigateway:getUsagePlanKey", args ?? new GetUsagePlanKeyArgs(), options.WithDefaults()); /// - /// Resource Type definition for AWS::ApiGateway::UsagePlanKey + /// The ``AWS::ApiGateway::UsagePlanKey`` resource associates an API key with a usage plan. This association determines which users the usage plan is applied to. /// public static Output Invoke(GetUsagePlanKeyInvokeArgs args, InvokeOptions? options = null) => global::Pulumi.Deployment.Instance.Invoke("aws-native:apigateway:getUsagePlanKey", args ?? new GetUsagePlanKeyInvokeArgs(), options.WithDefaults()); diff --git a/sdk/dotnet/ApiGateway/Inputs/DeploymentAccessLogSettingArgs.cs b/sdk/dotnet/ApiGateway/Inputs/DeploymentAccessLogSettingArgs.cs index 61c8a24191..87f8b7aca7 100644 --- a/sdk/dotnet/ApiGateway/Inputs/DeploymentAccessLogSettingArgs.cs +++ b/sdk/dotnet/ApiGateway/Inputs/DeploymentAccessLogSettingArgs.cs @@ -10,16 +10,20 @@ namespace Pulumi.AwsNative.ApiGateway.Inputs { + /// + /// The ``AccessLogSetting`` property type specifies settings for logging access in this stage. + /// ``AccessLogSetting`` is a property of the [StageDescription](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html) property type. + /// public sealed class DeploymentAccessLogSettingArgs : global::Pulumi.ResourceArgs { /// - /// The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with amazon-apigateway-. + /// The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with ``amazon-apigateway-``. /// [Input("destinationArn")] public Input? DestinationArn { get; set; } /// - /// A single line format of the access logs of data, as specified by selected $context variables. The format must include at least $context.requestId. + /// A single line format of the access logs of data, as specified by selected $context variables. The format must include at least ``$context.requestId``. /// [Input("format")] public Input? Format { get; set; } diff --git a/sdk/dotnet/ApiGateway/Inputs/DeploymentCanarySettingArgs.cs b/sdk/dotnet/ApiGateway/Inputs/DeploymentCanarySettingArgs.cs index e93c642324..03923eacea 100644 --- a/sdk/dotnet/ApiGateway/Inputs/DeploymentCanarySettingArgs.cs +++ b/sdk/dotnet/ApiGateway/Inputs/DeploymentCanarySettingArgs.cs @@ -10,6 +10,10 @@ namespace Pulumi.AwsNative.ApiGateway.Inputs { + /// + /// The ``CanarySetting`` property type specifies settings for the canary deployment in this stage. + /// ``CanarySetting`` is a property of the [StageDescription](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html) property type. + /// public sealed class DeploymentCanarySettingArgs : global::Pulumi.ResourceArgs { /// @@ -19,13 +23,13 @@ public sealed class DeploymentCanarySettingArgs : global::Pulumi.ResourceArgs public Input? PercentTraffic { get; set; } /// - /// Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values. + /// Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values. /// [Input("stageVariableOverrides")] public Input? StageVariableOverrides { get; set; } /// - /// Whether the canary deployment uses the stage cache or not. + /// A Boolean flag to indicate whether the canary deployment uses the stage cache or not. /// [Input("useStageCache")] public Input? UseStageCache { get; set; } diff --git a/sdk/dotnet/ApiGateway/Inputs/DeploymentCanarySettingsArgs.cs b/sdk/dotnet/ApiGateway/Inputs/DeploymentCanarySettingsArgs.cs index 187e750125..b82585b8c5 100644 --- a/sdk/dotnet/ApiGateway/Inputs/DeploymentCanarySettingsArgs.cs +++ b/sdk/dotnet/ApiGateway/Inputs/DeploymentCanarySettingsArgs.cs @@ -10,22 +10,25 @@ namespace Pulumi.AwsNative.ApiGateway.Inputs { + /// + /// The ``DeploymentCanarySettings`` property type specifies settings for the canary deployment. + /// public sealed class DeploymentCanarySettingsArgs : global::Pulumi.ResourceArgs { /// - /// The percentage (0-100) of traffic diverted to a canary deployment. + /// The percentage (0.0-100.0) of traffic routed to the canary deployment. /// [Input("percentTraffic")] public Input? PercentTraffic { get; set; } /// - /// Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values. Duplicates are not allowed. + /// A stage variable overrides used for the canary release deployment. They can override existing stage variables or add new stage variables for the canary release deployment. These stage variables are represented as a string-to-string map between stage variable names and their values. /// [Input("stageVariableOverrides")] public Input? StageVariableOverrides { get; set; } /// - /// Whether the canary deployment uses the stage cache. + /// A Boolean flag to indicate whether the canary release deployment uses the stage cache or not. /// [Input("useStageCache")] public Input? UseStageCache { get; set; } diff --git a/sdk/dotnet/ApiGateway/Inputs/DeploymentMethodSettingArgs.cs b/sdk/dotnet/ApiGateway/Inputs/DeploymentMethodSettingArgs.cs index 1066b91073..af075ef1b9 100644 --- a/sdk/dotnet/ApiGateway/Inputs/DeploymentMethodSettingArgs.cs +++ b/sdk/dotnet/ApiGateway/Inputs/DeploymentMethodSettingArgs.cs @@ -10,28 +10,32 @@ namespace Pulumi.AwsNative.ApiGateway.Inputs { + /// + /// The ``MethodSetting`` property type configures settings for all methods in a stage. + /// The ``MethodSettings`` property of the [Amazon API Gateway Deployment StageDescription](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html) property type contains a list of ``MethodSetting`` property types. + /// public sealed class DeploymentMethodSettingArgs : global::Pulumi.ResourceArgs { /// - /// Indicates whether the cached responses are encrypted + /// Specifies whether the cached responses are encrypted. /// [Input("cacheDataEncrypted")] public Input? CacheDataEncrypted { get; set; } /// - /// The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. + /// Specifies the time to live (TTL), in seconds, for cached responses. The higher the TTL, the longer the response will be cached. /// [Input("cacheTtlInSeconds")] public Input? CacheTtlInSeconds { get; set; } /// - /// Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses. + /// Specifies whether responses should be cached and returned for requests. A cache cluster must be enabled on the stage for responses to be cached. /// [Input("cachingEnabled")] public Input? CachingEnabled { get; set; } /// - /// Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs. + /// Specifies whether data trace logging is enabled for this method, which affects the log entries pushed to Amazon CloudWatch Logs. This can be useful to troubleshoot APIs, but can result in logging sensitive data. We recommend that you don't enable this option for production APIs. /// [Input("dataTraceEnabled")] public Input? DataTraceEnabled { get; set; } @@ -43,31 +47,31 @@ public sealed class DeploymentMethodSettingArgs : global::Pulumi.ResourceArgs public Input? HttpMethod { get; set; } /// - /// The logging level for this method. For valid values, see the loggingLevel property of the Stage resource in the Amazon API Gateway API Reference. + /// Specifies the logging level for this method, which affects the log entries pushed to Amazon CloudWatch Logs. Valid values are ``OFF``, ``ERROR``, and ``INFO``. Choose ``ERROR`` to write only error-level entries to CloudWatch Logs, or choose ``INFO`` to include all ``ERROR`` events as well as extra informational events. /// [Input("loggingLevel")] public Input? LoggingLevel { get; set; } /// - /// Indicates whether Amazon CloudWatch metrics are enabled for methods in the stage. + /// Specifies whether Amazon CloudWatch metrics are enabled for this method. /// [Input("metricsEnabled")] public Input? MetricsEnabled { get; set; } /// - /// The resource path for this method. Forward slashes (/) are encoded as ~1 and the initial slash must include a forward slash. + /// The resource path for this method. Forward slashes (``/``) are encoded as ``~1`` and the initial slash must include a forward slash. For example, the path value ``/resource/subresource`` must be encoded as ``/~1resource~1subresource``. To specify the root path, use only a slash (``/``). /// [Input("resourcePath")] public Input? ResourcePath { get; set; } /// - /// The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. + /// Specifies the throttling burst limit. /// [Input("throttlingBurstLimit")] public Input? ThrottlingBurstLimit { get; set; } /// - /// The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. + /// Specifies the throttling rate limit. /// [Input("throttlingRateLimit")] public Input? ThrottlingRateLimit { get; set; } diff --git a/sdk/dotnet/ApiGateway/Inputs/DeploymentStageDescriptionArgs.cs b/sdk/dotnet/ApiGateway/Inputs/DeploymentStageDescriptionArgs.cs index f8f3bcf39c..194b6f76f3 100644 --- a/sdk/dotnet/ApiGateway/Inputs/DeploymentStageDescriptionArgs.cs +++ b/sdk/dotnet/ApiGateway/Inputs/DeploymentStageDescriptionArgs.cs @@ -10,6 +10,9 @@ namespace Pulumi.AwsNative.ApiGateway.Inputs { + /// + /// ``StageDescription`` is a property of the [AWS::ApiGateway::Deployment](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-deployment.html) resource that configures a deployment stage. + /// public sealed class DeploymentStageDescriptionArgs : global::Pulumi.ResourceArgs { /// @@ -19,31 +22,31 @@ public sealed class DeploymentStageDescriptionArgs : global::Pulumi.ResourceArgs public Input? AccessLogSetting { get; set; } /// - /// Indicates whether cache clustering is enabled for the stage. + /// Specifies whether a cache cluster is enabled for the stage. /// [Input("cacheClusterEnabled")] public Input? CacheClusterEnabled { get; set; } /// - /// The size of the stage's cache cluster. + /// The size of the stage's cache cluster. For more information, see [cacheClusterSize](https://docs.aws.amazon.com/apigateway/latest/api/API_CreateStage.html#apigw-CreateStage-request-cacheClusterSize) in the *API Gateway API Reference*. /// [Input("cacheClusterSize")] public Input? CacheClusterSize { get; set; } /// - /// The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. + /// Indicates whether the cached responses are encrypted. /// [Input("cacheDataEncrypted")] public Input? CacheDataEncrypted { get; set; } /// - /// The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. + /// The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. /// [Input("cacheTtlInSeconds")] public Input? CacheTtlInSeconds { get; set; } /// - /// Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses. + /// Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses. For more information, see [Enable API Gateway Caching in a Stage to Enhance API Performance](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html) in the *API Gateway Developer Guide*. /// [Input("cachingEnabled")] public Input? CachingEnabled { get; set; } @@ -55,13 +58,13 @@ public sealed class DeploymentStageDescriptionArgs : global::Pulumi.ResourceArgs public Input? CanarySetting { get; set; } /// - /// The identifier of the client certificate that API Gateway uses to call your integration endpoints in the stage. + /// The identifier of the client certificate that API Gateway uses to call your integration endpoints in the stage. /// [Input("clientCertificateId")] public Input? ClientCertificateId { get; set; } /// - /// Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs. + /// Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs. /// [Input("dataTraceEnabled")] public Input? DataTraceEnabled { get; set; } @@ -79,7 +82,7 @@ public sealed class DeploymentStageDescriptionArgs : global::Pulumi.ResourceArgs public Input? DocumentationVersion { get; set; } /// - /// The logging level for this method. For valid values, see the loggingLevel property of the Stage resource in the Amazon API Gateway API Reference. + /// The logging level for this method. For valid values, see the ``loggingLevel`` property of the [MethodSetting](https://docs.aws.amazon.com/apigateway/latest/api/API_MethodSetting.html) resource in the *Amazon API Gateway API Reference*. /// [Input("loggingLevel")] public Input? LoggingLevel { get; set; } @@ -115,25 +118,26 @@ public InputList Tags } /// - /// The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. + /// The target request burst rate limit. This allows more requests through for a period of time than the target rate limit. For more information, see [Manage API Request Throttling](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-request-throttling.html) in the *API Gateway Developer Guide*. /// [Input("throttlingBurstLimit")] public Input? ThrottlingBurstLimit { get; set; } /// - /// The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. + /// The target request steady-state rate limit. For more information, see [Manage API Request Throttling](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-request-throttling.html) in the *API Gateway Developer Guide*. /// [Input("throttlingRateLimit")] public Input? ThrottlingRateLimit { get; set; } /// /// Specifies whether active tracing with X-ray is enabled for this stage. + /// For more information, see [Trace API Gateway API Execution with X-Ray](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-xray.html) in the *API Gateway Developer Guide*. /// [Input("tracingEnabled")] public Input? TracingEnabled { get; set; } /// - /// A map that defines the stage variables. Variable names must consist of alphanumeric characters, and the values must match the following regular expression: [A-Za-z0-9-._~:/?#&=,]+. + /// A map that defines the stage variables. Variable names must consist of alphanumeric characters, and the values must match the following regular expression: ``[A-Za-z0-9-._~:/?#&=,]+``. /// [Input("variables")] public Input? Variables { get; set; } diff --git a/sdk/dotnet/ApiGateway/Inputs/DocumentationPartLocationArgs.cs b/sdk/dotnet/ApiGateway/Inputs/DocumentationPartLocationArgs.cs index fe1230cee5..4dd6ba7a37 100644 --- a/sdk/dotnet/ApiGateway/Inputs/DocumentationPartLocationArgs.cs +++ b/sdk/dotnet/ApiGateway/Inputs/DocumentationPartLocationArgs.cs @@ -10,34 +10,38 @@ namespace Pulumi.AwsNative.ApiGateway.Inputs { + /// + /// The ``Location`` property specifies the location of the Amazon API Gateway API entity that the documentation applies to. ``Location`` is a property of the [AWS::ApiGateway::DocumentationPart](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationpart.html) resource. + /// For more information about each property, including constraints and valid values, see [DocumentationPart](https://docs.aws.amazon.com/apigateway/latest/api/API_DocumentationPartLocation.html) in the *Amazon API Gateway REST API Reference*. + /// public sealed class DocumentationPartLocationArgs : global::Pulumi.ResourceArgs { /// - /// The HTTP verb of a method. + /// The HTTP verb of a method. It is a valid field for the API entity types of ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``*`` for any method. When an applicable child entity inherits the content of an entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``method`` attribute must match that of the parent entity exactly. /// [Input("method")] public Input? Method { get; set; } /// - /// The name of the targeted API entity. + /// The name of the targeted API entity. It is a valid and required field for the API entity types of ``AUTHORIZER``, ``MODEL``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY`` and ``RESPONSE_HEADER``. It is an invalid field for any other entity type. /// [Input("name")] public Input? Name { get; set; } /// - /// The URL path of the target. + /// The URL path of the target. It is a valid field for the API entity types of ``RESOURCE``, ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``/`` for the root resource. When an applicable child entity inherits the content of another entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``path`` attribute must match that of the parent entity as a prefix. /// [Input("path")] public Input? Path { get; set; } /// - /// The HTTP status code of a response. + /// The HTTP status code of a response. It is a valid field for the API entity types of ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``*`` for any status code. When an applicable child entity inherits the content of an entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``statusCode`` attribute must match that of the parent entity exactly. /// [Input("statusCode")] public Input? StatusCode { get; set; } /// - /// The type of API entity that the documentation content applies to. + /// The type of API entity to which the documentation content applies. Valid values are ``API``, ``AUTHORIZER``, ``MODEL``, ``RESOURCE``, ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. Content inheritance does not apply to any entity of the ``API``, ``AUTHORIZER``, ``METHOD``, ``MODEL``, ``REQUEST_BODY``, or ``RESOURCE`` type. /// [Input("type")] public Input? Type { get; set; } diff --git a/sdk/dotnet/ApiGateway/Inputs/MethodIntegrationArgs.cs b/sdk/dotnet/ApiGateway/Inputs/MethodIntegrationArgs.cs index e3316208aa..0abefaad7d 100644 --- a/sdk/dotnet/ApiGateway/Inputs/MethodIntegrationArgs.cs +++ b/sdk/dotnet/ApiGateway/Inputs/MethodIntegrationArgs.cs @@ -10,13 +10,16 @@ namespace Pulumi.AwsNative.ApiGateway.Inputs { + /// + /// ``Integration`` is a property of the [AWS::ApiGateway::Method](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html) resource that specifies information about the target backend that a method calls. + /// public sealed class MethodIntegrationArgs : global::Pulumi.ResourceArgs { [Input("cacheKeyParameters")] private InputList? _cacheKeyParameters; /// - /// A list of request parameters whose values API Gateway caches. + /// A list of request parameters whose values API Gateway caches. To be valid values for ``cacheKeyParameters``, these parameters must also be specified for Method ``requestParameters``. /// public InputList CacheKeyParameters { @@ -25,37 +28,38 @@ public InputList CacheKeyParameters } /// - /// An API-specific tag group of related cached parameters. + /// Specifies a group of related cached parameters. By default, API Gateway uses the resource ID as the ``cacheNamespace``. You can specify the same ``cacheNamespace`` across resources to return the same cached data for requests to different resources. /// [Input("cacheNamespace")] public Input? CacheNamespace { get; set; } /// - /// The ID of the VpcLink used for the integration when connectionType=VPC_LINK, otherwise undefined. + /// The ID of the VpcLink used for the integration when ``connectionType=VPC_LINK`` and undefined, otherwise. /// [Input("connectionId")] public Input? ConnectionId { get; set; } /// - /// The type of the network connection to the integration endpoint. + /// The type of the network connection to the integration endpoint. The valid value is ``INTERNET`` for connections through the public routable internet or ``VPC_LINK`` for private connections between API Gateway and a network load balancer in a VPC. The default value is ``INTERNET``. /// [Input("connectionType")] public Input? ConnectionType { get; set; } /// - /// Specifies how to handle request payload content type conversions. + /// Specifies how to handle request payload content type conversions. Supported values are ``CONVERT_TO_BINARY`` and ``CONVERT_TO_TEXT``, with the following behaviors: + /// If this property is not defined, the request payload will be passed through from the method request to integration request without modification, provided that the ``passthroughBehavior`` is configured to support payload pass-through. /// [Input("contentHandling")] public Input? ContentHandling { get; set; } /// - /// The credentials that are required for the integration. + /// Specifies the credentials required for the integration, if any. For AWS integrations, three options are available. To specify an IAM Role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To require that the caller's identity be passed through from the request, specify the string ``arn:aws:iam::\*:user/\*``. To use resource-based permissions on supported AWS services, specify null. /// [Input("credentials")] public Input? Credentials { get; set; } /// - /// The integration's HTTP method type. + /// Specifies the integration's HTTP method type. For the Type property, if you specify ``MOCK``, this property is optional. For Lambda integrations, you must set the integration method to ``POST``. For all other types, you must specify this property. /// [Input("integrationHttpMethod")] public Input? IntegrationHttpMethod { get; set; } @@ -64,7 +68,7 @@ public InputList CacheKeyParameters private InputList? _integrationResponses; /// - /// The response that API Gateway provides after a method's backend completes processing a request. + /// Specifies the integration's responses. /// public InputList IntegrationResponses { @@ -73,37 +77,39 @@ public InputList IntegrationResponses } /// - /// Indicates when API Gateway passes requests to the targeted backend. + /// Specifies how the method request body of an unmapped content type will be passed through the integration request to the back end without transformation. A content type is unmapped if no mapping template is defined in the integration or the content type does not match any of the mapped content types, as specified in ``requestTemplates``. The valid value is one of the following: ``WHEN_NO_MATCH``: passes the method request body through the integration request to the back end without transformation when the method request content type does not match any content type associated with the mapping templates defined in the integration request. ``WHEN_NO_TEMPLATES``: passes the method request body through the integration request to the back end without transformation when no mapping template is defined in the integration request. If a template is defined when this option is selected, the method request of an unmapped content-type will be rejected with an HTTP 415 Unsupported Media Type response. ``NEVER``: rejects the method request with an HTTP 415 Unsupported Media Type response when either the method request content type does not match any content type associated with the mapping templates defined in the integration request or no mapping template is defined in the integration request. /// [Input("passthroughBehavior")] public Input? PassthroughBehavior { get; set; } /// - /// The request parameters that API Gateway sends with the backend request. + /// A key-value map specifying request parameters that are passed from the method request to the back end. The key is an integration request parameter name and the associated value is a method request parameter value or static value that must be enclosed within single quotes and pre-encoded as required by the back end. The method request parameter value must match the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and ``name`` must be a valid and unique method request parameter name. /// [Input("requestParameters")] public Input? RequestParameters { get; set; } /// - /// A map of Apache Velocity templates that are applied on the request payload. + /// Represents a map of Velocity templates that are applied on the request payload based on the value of the Content-Type header sent by the client. The content type value is the key in this map, and the template (as a String) is the value. /// [Input("requestTemplates")] public Input? RequestTemplates { get; set; } /// - /// Custom timeout between 50 and 29,000 milliseconds. + /// Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds or 29 seconds. /// [Input("timeoutInMillis")] public Input? TimeoutInMillis { get; set; } /// - /// The type of backend that your method is running. + /// Specifies an API method integration type. The valid value is one of the following: + /// For the HTTP and HTTP proxy integrations, each integration can specify a protocol (``http/https``), port and path. Standard 80 and 443 ports are supported as well as custom ports above 1024. An HTTP or HTTP proxy integration with a ``connectionType`` of ``VPC_LINK`` is referred to as a private integration and uses a VpcLink to connect API Gateway to a network load balancer of a VPC. /// [Input("type", required: true)] public Input Type { get; set; } = null!; /// - /// The Uniform Resource Identifier (URI) for the integration. + /// Specifies Uniform Resource Identifier (URI) of the integration endpoint. + /// For ``HTTP`` or ``HTTP_PROXY`` integrations, the URI must be a fully formed, encoded HTTP(S) URL according to the RFC-3986 specification for standard integrations. If ``connectionType`` is ``VPC_LINK`` specify the Network Load Balancer DNS name. For ``AWS`` or ``AWS_PROXY`` integrations, the URI is of the form ``arn:aws:apigateway:{region}:{subdomain.service|service}:path|action/{service_api}``. Here, {Region} is the API Gateway region (e.g., us-east-1); {service} is the name of the integrated AWS service (e.g., s3); and {subdomain} is a designated subdomain supported by certain AWS service for fast host-name lookup. action can be used for an AWS service action-based API, using an Action={name}&{p1}={v1}&p2={v2}... query string. The ensuing {service_api} refers to a supported action {name} plus any required input parameters. Alternatively, path can be used for an AWS service path-based API. The ensuing service_api refers to the path to an AWS service resource, including the region of the integrated AWS service, if applicable. For example, for integration with the S3 API of GetObject, the uri can be either ``arn:aws:apigateway:us-west-2:s3:action/GetObject&Bucket={bucket}&Key={key}`` or ``arn:aws:apigateway:us-west-2:s3:path/{bucket}/{key}`` /// [Input("uri")] public Input? Uri { get; set; } diff --git a/sdk/dotnet/ApiGateway/Inputs/MethodIntegrationResponseArgs.cs b/sdk/dotnet/ApiGateway/Inputs/MethodIntegrationResponseArgs.cs index 8ffa440d72..b4d19339ac 100644 --- a/sdk/dotnet/ApiGateway/Inputs/MethodIntegrationResponseArgs.cs +++ b/sdk/dotnet/ApiGateway/Inputs/MethodIntegrationResponseArgs.cs @@ -10,34 +10,38 @@ namespace Pulumi.AwsNative.ApiGateway.Inputs { + /// + /// ``IntegrationResponse`` is a property of the [Amazon API Gateway Method Integration](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html) property type that specifies the response that API Gateway sends after a method's backend finishes processing a request. + /// public sealed class MethodIntegrationResponseArgs : global::Pulumi.ResourceArgs { /// - /// Specifies how to handle request payload content type conversions. + /// Specifies how to handle response payload content type conversions. Supported values are ``CONVERT_TO_BINARY`` and ``CONVERT_TO_TEXT``, with the following behaviors: + /// If this property is not defined, the response payload will be passed through from the integration response to the method response without modification. /// [Input("contentHandling")] public Input? ContentHandling { get; set; } /// - /// The response parameters from the backend response that API Gateway sends to the method response. + /// A key-value map specifying response parameters that are passed to the method response from the back end. The key is a method response header parameter name and the mapped value is an integration response header value, a static value enclosed within a pair of single quotes, or a JSON expression from the integration response body. The mapping key must match the pattern of ``method.response.header.{name}``, where ``name`` is a valid and unique header name. The mapped non-static value must match the pattern of ``integration.response.header.{name}`` or ``integration.response.body.{JSON-expression}``, where ``name`` is a valid and unique response header name and ``JSON-expression`` is a valid JSON expression without the ``$`` prefix. /// [Input("responseParameters")] public Input? ResponseParameters { get; set; } /// - /// The templates that are used to transform the integration response body. Specify templates as key-value pairs (string-to-string mappings), with a content type as the key and a template as the value. + /// Specifies the templates used to transform the integration response body. Response templates are represented as a key/value map, with a content-type as the key and a template as the value. /// [Input("responseTemplates")] public Input? ResponseTemplates { get; set; } /// - /// A regular expression that specifies which error strings or status codes from the backend map to the integration response. + /// Specifies the regular expression (regex) pattern used to choose an integration response based on the response from the back end. For example, if the success response returns nothing and the error response returns some string, you could use the ``.+`` regex to match error response. However, make sure that the error response does not contain any newline (``\n``) character in such cases. If the back end is an LAMlong function, the LAMlong function error header is matched. For all other HTTP and AWS back ends, the HTTP status code is matched. /// [Input("selectionPattern")] public Input? SelectionPattern { get; set; } /// - /// The status code that API Gateway uses to map the integration response to a MethodResponse status code. + /// Specifies the status code that is used to map the integration response to an existing MethodResponse. /// [Input("statusCode", required: true)] public Input StatusCode { get; set; } = null!; diff --git a/sdk/dotnet/ApiGateway/Inputs/MethodResponseArgs.cs b/sdk/dotnet/ApiGateway/Inputs/MethodResponseArgs.cs index 45a6157aa2..f106874a2c 100644 --- a/sdk/dotnet/ApiGateway/Inputs/MethodResponseArgs.cs +++ b/sdk/dotnet/ApiGateway/Inputs/MethodResponseArgs.cs @@ -10,22 +10,25 @@ namespace Pulumi.AwsNative.ApiGateway.Inputs { + /// + /// Represents a method response of a given HTTP status code returned to the client. The method response is passed from the back end through the associated integration response that can be transformed using a mapping template. + /// public sealed class MethodResponseArgs : global::Pulumi.ResourceArgs { /// - /// The resources used for the response's content type. Specify response models as key-value pairs (string-to-string maps), with a content type as the key and a Model resource name as the value. + /// Specifies the Model resources used for the response's content-type. Response models are represented as a key/value map, with a content-type as the key and a Model name as the value. /// [Input("responseModels")] public Input? ResponseModels { get; set; } /// - /// Response parameters that API Gateway sends to the client that called a method. Specify response parameters as key-value pairs (string-to-Boolean maps), with a destination as the key and a Boolean as the value. + /// A key-value map specifying required or optional response parameters that API Gateway can send back to the caller. A key defines a method response header and the value specifies whether the associated method response header is required or not. The expression of the key must match the pattern ``method.response.header.{name}``, where ``name`` is a valid and unique header name. API Gateway passes certain integration response data to the method response headers specified here according to the mapping you prescribe in the API's IntegrationResponse. The integration response data that can be mapped include an integration response header expressed in ``integration.response.header.{name}``, a static value enclosed within a pair of single quotes (e.g., ``'application/json'``), or a JSON expression from the back-end response payload in the form of ``integration.response.body.{JSON-expression}``, where ``JSON-expression`` is a valid JSON expression without the ``$`` prefix.) /// [Input("responseParameters")] public Input? ResponseParameters { get; set; } /// - /// The method response's status code, which you map to an IntegrationResponse. + /// The method response's status code. /// [Input("statusCode", required: true)] public Input StatusCode { get; set; } = null!; diff --git a/sdk/dotnet/ApiGateway/Inputs/RestApiEndpointConfigurationArgs.cs b/sdk/dotnet/ApiGateway/Inputs/RestApiEndpointConfigurationArgs.cs index 692d0f5d16..650b7bdf7e 100644 --- a/sdk/dotnet/ApiGateway/Inputs/RestApiEndpointConfigurationArgs.cs +++ b/sdk/dotnet/ApiGateway/Inputs/RestApiEndpointConfigurationArgs.cs @@ -10,10 +10,18 @@ namespace Pulumi.AwsNative.ApiGateway.Inputs { + /// + /// The ``EndpointConfiguration`` property type specifies the endpoint types of a REST API. + /// ``EndpointConfiguration`` is a property of the [AWS::ApiGateway::RestApi](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html) resource. + /// public sealed class RestApiEndpointConfigurationArgs : global::Pulumi.ResourceArgs { [Input("types")] private InputList? _types; + + /// + /// A list of endpoint types of an API (RestApi) or its custom domain name (DomainName). For an edge-optimized API and its custom domain name, the endpoint type is ``"EDGE"``. For a regional API and its custom domain name, the endpoint type is ``REGIONAL``. For a private API, the endpoint type is ``PRIVATE``. + /// public InputList Types { get => _types ?? (_types = new InputList()); @@ -22,6 +30,10 @@ public InputList Types [Input("vpcEndpointIds")] private InputList? _vpcEndpointIds; + + /// + /// A list of VpcEndpointIds of an API (RestApi) against which to create Route53 ALIASes. It is only supported for ``PRIVATE`` endpoint type. + /// public InputList VpcEndpointIds { get => _vpcEndpointIds ?? (_vpcEndpointIds = new InputList()); diff --git a/sdk/dotnet/ApiGateway/Inputs/RestApiS3LocationArgs.cs b/sdk/dotnet/ApiGateway/Inputs/RestApiS3LocationArgs.cs index 9a82ea96e2..f52e05265f 100644 --- a/sdk/dotnet/ApiGateway/Inputs/RestApiS3LocationArgs.cs +++ b/sdk/dotnet/ApiGateway/Inputs/RestApiS3LocationArgs.cs @@ -10,17 +10,33 @@ namespace Pulumi.AwsNative.ApiGateway.Inputs { + /// + /// ``S3Location`` is a property of the [AWS::ApiGateway::RestApi](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html) resource that specifies the Amazon S3 location of a OpenAPI (formerly Swagger) file that defines a set of RESTful APIs in JSON or YAML. + /// On January 1, 2016, the Swagger Specification was donated to the [OpenAPI initiative](https://docs.aws.amazon.com/https://www.openapis.org/), becoming the foundation of the OpenAPI Specification. + /// public sealed class RestApiS3LocationArgs : global::Pulumi.ResourceArgs { + /// + /// The name of the S3 bucket where the OpenAPI file is stored. + /// [Input("bucket")] public Input? Bucket { get; set; } + /// + /// The Amazon S3 ETag (a file checksum) of the OpenAPI file. If you don't specify a value, API Gateway skips ETag validation of your OpenAPI file. + /// [Input("eTag")] public Input? ETag { get; set; } + /// + /// The file name of the OpenAPI file (Amazon S3 object name). + /// [Input("key")] public Input? Key { get; set; } + /// + /// For versioning-enabled buckets, a specific version of the OpenAPI file. + /// [Input("version")] public Input? Version { get; set; } diff --git a/sdk/dotnet/ApiGateway/Inputs/StageAccessLogSettingArgs.cs b/sdk/dotnet/ApiGateway/Inputs/StageAccessLogSettingArgs.cs index 673117ff45..fb82f1edbd 100644 --- a/sdk/dotnet/ApiGateway/Inputs/StageAccessLogSettingArgs.cs +++ b/sdk/dotnet/ApiGateway/Inputs/StageAccessLogSettingArgs.cs @@ -11,18 +11,19 @@ namespace Pulumi.AwsNative.ApiGateway.Inputs { /// - /// Specifies settings for logging access in this stage. + /// The ``AccessLogSetting`` property type specifies settings for logging access in this stage. + /// ``AccessLogSetting`` is a property of the [AWS::ApiGateway::Stage](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html) resource. /// public sealed class StageAccessLogSettingArgs : global::Pulumi.ResourceArgs { /// - /// The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with amazon-apigateway-. This parameter is required to enable access logging. + /// The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with ``amazon-apigateway-``. This parameter is required to enable access logging. /// [Input("destinationArn")] public Input? DestinationArn { get; set; } /// - /// A single line format of the access logs of data, as specified by selected $context variables (https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html#context-variable-reference). The format must include at least $context.requestId. This parameter is required to enable access logging. + /// A single line format of the access logs of data, as specified by selected [$context variables](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html#context-variable-reference). The format must include at least ``$context.requestId``. This parameter is required to enable access logging. /// [Input("format")] public Input? Format { get; set; } diff --git a/sdk/dotnet/ApiGateway/Inputs/StageCanarySettingArgs.cs b/sdk/dotnet/ApiGateway/Inputs/StageCanarySettingArgs.cs index f7537f1da8..d4ff8a48ae 100644 --- a/sdk/dotnet/ApiGateway/Inputs/StageCanarySettingArgs.cs +++ b/sdk/dotnet/ApiGateway/Inputs/StageCanarySettingArgs.cs @@ -11,18 +11,18 @@ namespace Pulumi.AwsNative.ApiGateway.Inputs { /// - /// Specifies settings for the canary deployment in this stage. + /// Configuration settings of a canary deployment. /// public sealed class StageCanarySettingArgs : global::Pulumi.ResourceArgs { /// - /// The identifier of the deployment that the stage points to. + /// The ID of the canary deployment. /// [Input("deploymentId")] public Input? DeploymentId { get; set; } /// - /// The percentage (0-100) of traffic diverted to a canary deployment. + /// The percent (0-100) of traffic diverted to a canary deployment. /// [Input("percentTraffic")] public Input? PercentTraffic { get; set; } @@ -34,7 +34,7 @@ public sealed class StageCanarySettingArgs : global::Pulumi.ResourceArgs public Input? StageVariableOverrides { get; set; } /// - /// Whether the canary deployment uses the stage cache or not. + /// A Boolean flag to indicate whether the canary deployment uses the stage cache or not. /// [Input("useStageCache")] public Input? UseStageCache { get; set; } diff --git a/sdk/dotnet/ApiGateway/Inputs/StageMethodSettingArgs.cs b/sdk/dotnet/ApiGateway/Inputs/StageMethodSettingArgs.cs index 6de81c890f..454ba7eba3 100644 --- a/sdk/dotnet/ApiGateway/Inputs/StageMethodSettingArgs.cs +++ b/sdk/dotnet/ApiGateway/Inputs/StageMethodSettingArgs.cs @@ -11,66 +11,67 @@ namespace Pulumi.AwsNative.ApiGateway.Inputs { /// - /// Configures settings for all methods in a stage. + /// The ``MethodSetting`` property type configures settings for all methods in a stage. + /// The ``MethodSettings`` property of the ``AWS::ApiGateway::Stage`` resource contains a list of ``MethodSetting`` property types. /// public sealed class StageMethodSettingArgs : global::Pulumi.ResourceArgs { /// - /// Indicates whether the cached responses are encrypted. + /// Specifies whether the cached responses are encrypted. /// [Input("cacheDataEncrypted")] public Input? CacheDataEncrypted { get; set; } /// - /// The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. + /// Specifies the time to live (TTL), in seconds, for cached responses. The higher the TTL, the longer the response will be cached. /// [Input("cacheTtlInSeconds")] public Input? CacheTtlInSeconds { get; set; } /// - /// Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses. + /// Specifies whether responses should be cached and returned for requests. A cache cluster must be enabled on the stage for responses to be cached. /// [Input("cachingEnabled")] public Input? CachingEnabled { get; set; } /// - /// Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs. + /// Specifies whether data trace logging is enabled for this method, which affects the log entries pushed to Amazon CloudWatch Logs. This can be useful to troubleshoot APIs, but can result in logging sensitive data. We recommend that you don't enable this option for production APIs. /// [Input("dataTraceEnabled")] public Input? DataTraceEnabled { get; set; } /// - /// The HTTP method. You can use an asterisk (*) as a wildcard to apply method settings to multiple methods. + /// The HTTP method. To apply settings to multiple resources and methods, specify an asterisk (``*``) for the ``HttpMethod`` and ``/*`` for the ``ResourcePath``. This parameter is required when you specify a ``MethodSetting``. /// [Input("httpMethod")] public Input? HttpMethod { get; set; } /// - /// The logging level for this method. For valid values, see the loggingLevel property of the Stage (https://docs.aws.amazon.com/apigateway/api-reference/resource/stage/#loggingLevel) resource in the Amazon API Gateway API Reference. + /// Specifies the logging level for this method, which affects the log entries pushed to Amazon CloudWatch Logs. Valid values are ``OFF``, ``ERROR``, and ``INFO``. Choose ``ERROR`` to write only error-level entries to CloudWatch Logs, or choose ``INFO`` to include all ``ERROR`` events as well as extra informational events. /// [Input("loggingLevel")] public Input? LoggingLevel { get; set; } /// - /// Indicates whether Amazon CloudWatch metrics are enabled for methods in the stage. + /// Specifies whether Amazon CloudWatch metrics are enabled for this method. /// [Input("metricsEnabled")] public Input? MetricsEnabled { get; set; } /// - /// The resource path for this method. Forward slashes (/) are encoded as ~1 and the initial slash must include a forward slash. For example, the path value /resource/subresource must be encoded as /~1resource~1subresource. To specify the root path, use only a slash (/). You can use an asterisk (*) as a wildcard to apply method settings to multiple methods. + /// The resource path for this method. Forward slashes (``/``) are encoded as ``~1`` and the initial slash must include a forward slash. For example, the path value ``/resource/subresource`` must be encoded as ``/~1resource~1subresource``. To specify the root path, use only a slash (``/``). To apply settings to multiple resources and methods, specify an asterisk (``*``) for the ``HttpMethod`` and ``/*`` for the ``ResourcePath``. This parameter is required when you specify a ``MethodSetting``. /// [Input("resourcePath")] public Input? ResourcePath { get; set; } /// - /// The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. + /// Specifies the throttling burst limit. /// [Input("throttlingBurstLimit")] public Input? ThrottlingBurstLimit { get; set; } /// - /// The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. + /// Specifies the throttling rate limit. /// [Input("throttlingRateLimit")] public Input? ThrottlingRateLimit { get; set; } diff --git a/sdk/dotnet/ApiGateway/Method.cs b/sdk/dotnet/ApiGateway/Method.cs index c27ec998fa..44121a219e 100644 --- a/sdk/dotnet/ApiGateway/Method.cs +++ b/sdk/dotnet/ApiGateway/Method.cs @@ -10,85 +10,86 @@ namespace Pulumi.AwsNative.ApiGateway { /// - /// Resource Type definition for AWS::ApiGateway::Method + /// The ``AWS::ApiGateway::Method`` resource creates API Gateway methods that define the parameters and body that clients must send in their requests. /// [AwsNativeResourceType("aws-native:apigateway:Method")] public partial class Method : global::Pulumi.CustomResource { /// - /// Indicates whether the method requires clients to submit a valid API key. + /// A boolean flag specifying whether a valid ApiKey is required to invoke this method. /// [Output("apiKeyRequired")] public Output ApiKeyRequired { get; private set; } = null!; /// - /// A list of authorization scopes configured on the method. + /// A list of authorization scopes configured on the method. The scopes are used with a ``COGNITO_USER_POOLS`` authorizer to authorize the method invocation. The authorization works by matching the method scopes against the scopes parsed from the access token in the incoming request. The method invocation is authorized if any method scopes matches a claimed scope in the access token. Otherwise, the invocation is not authorized. When the method scope is configured, the client must provide an access token instead of an identity token for authorization purposes. /// [Output("authorizationScopes")] public Output> AuthorizationScopes { get; private set; } = null!; /// - /// The method's authorization type. + /// The method's authorization type. This parameter is required. For valid values, see [Method](https://docs.aws.amazon.com/apigateway/latest/api/API_Method.html) in the *API Gateway API Reference*. + /// If you specify the ``AuthorizerId`` property, specify ``CUSTOM`` or ``COGNITO_USER_POOLS`` for this property. /// [Output("authorizationType")] public Output AuthorizationType { get; private set; } = null!; /// - /// The identifier of the authorizer to use on this method. + /// The identifier of an authorizer to use on this method. The method's authorization type must be ``CUSTOM`` or ``COGNITO_USER_POOLS``. /// [Output("authorizerId")] public Output AuthorizerId { get; private set; } = null!; /// - /// The backend system that the method calls when it receives a request. + /// The method's HTTP verb. /// [Output("httpMethod")] public Output HttpMethod { get; private set; } = null!; /// - /// The backend system that the method calls when it receives a request. + /// Represents an ``HTTP``, ``HTTP_PROXY``, ``AWS``, ``AWS_PROXY``, or Mock integration. /// [Output("integration")] public Output Integration { get; private set; } = null!; /// - /// The responses that can be sent to the client who calls the method. + /// Gets a method response associated with a given HTTP status code. /// [Output("methodResponses")] public Output> MethodResponses { get; private set; } = null!; /// - /// A friendly operation name for the method. + /// A human-friendly operation identifier for the method. For example, you can assign the ``operationName`` of ``ListPets`` for the ``GET /pets`` method in the ``PetStore`` example. /// [Output("operationName")] public Output OperationName { get; private set; } = null!; /// - /// The resources that are used for the request's content type. Specify request models as key-value pairs (string-to-string mapping), with a content type as the key and a Model resource name as the value. + /// A key-value map specifying data schemas, represented by Model resources, (as the mapped value) of the request payloads of given content types (as the mapping key). /// [Output("requestModels")] public Output RequestModels { get; private set; } = null!; /// - /// The request parameters that API Gateway accepts. Specify request parameters as key-value pairs (string-to-Boolean mapping), with a source as the key and a Boolean as the value. + /// A key-value map defining required or optional method request parameters that can be accepted by API Gateway. A key is a method request parameter name matching the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and ``name`` is a valid and unique parameter name. The value associated with the key is a Boolean flag indicating whether the parameter is required (``true``) or optional (``false``). The method request parameter names defined here are available in Integration to be mapped to integration request parameters or templates. /// [Output("requestParameters")] public Output RequestParameters { get; private set; } = null!; /// - /// The ID of the associated request validator. + /// The identifier of a RequestValidator for request validation. /// [Output("requestValidatorId")] public Output RequestValidatorId { get; private set; } = null!; /// - /// The ID of an API Gateway resource. + /// The Resource identifier for the MethodResponse resource. /// [Output("resourceId")] public Output ResourceId { get; private set; } = null!; /// - /// The ID of the RestApi resource in which API Gateway creates the method. + /// The string identifier of the associated RestApi. /// [Output("restApiId")] public Output RestApiId { get; private set; } = null!; @@ -145,7 +146,7 @@ public static Method Get(string name, Input id, CustomResourceOptions? o public sealed class MethodArgs : global::Pulumi.ResourceArgs { /// - /// Indicates whether the method requires clients to submit a valid API key. + /// A boolean flag specifying whether a valid ApiKey is required to invoke this method. /// [Input("apiKeyRequired")] public Input? ApiKeyRequired { get; set; } @@ -154,7 +155,7 @@ public sealed class MethodArgs : global::Pulumi.ResourceArgs private InputList? _authorizationScopes; /// - /// A list of authorization scopes configured on the method. + /// A list of authorization scopes configured on the method. The scopes are used with a ``COGNITO_USER_POOLS`` authorizer to authorize the method invocation. The authorization works by matching the method scopes against the scopes parsed from the access token in the incoming request. The method invocation is authorized if any method scopes matches a claimed scope in the access token. Otherwise, the invocation is not authorized. When the method scope is configured, the client must provide an access token instead of an identity token for authorization purposes. /// public InputList AuthorizationScopes { @@ -163,25 +164,26 @@ public InputList AuthorizationScopes } /// - /// The method's authorization type. + /// The method's authorization type. This parameter is required. For valid values, see [Method](https://docs.aws.amazon.com/apigateway/latest/api/API_Method.html) in the *API Gateway API Reference*. + /// If you specify the ``AuthorizerId`` property, specify ``CUSTOM`` or ``COGNITO_USER_POOLS`` for this property. /// [Input("authorizationType")] public Input? AuthorizationType { get; set; } /// - /// The identifier of the authorizer to use on this method. + /// The identifier of an authorizer to use on this method. The method's authorization type must be ``CUSTOM`` or ``COGNITO_USER_POOLS``. /// [Input("authorizerId")] public Input? AuthorizerId { get; set; } /// - /// The backend system that the method calls when it receives a request. + /// The method's HTTP verb. /// [Input("httpMethod", required: true)] public Input HttpMethod { get; set; } = null!; /// - /// The backend system that the method calls when it receives a request. + /// Represents an ``HTTP``, ``HTTP_PROXY``, ``AWS``, ``AWS_PROXY``, or Mock integration. /// [Input("integration")] public Input? Integration { get; set; } @@ -190,7 +192,7 @@ public InputList AuthorizationScopes private InputList? _methodResponses; /// - /// The responses that can be sent to the client who calls the method. + /// Gets a method response associated with a given HTTP status code. /// public InputList MethodResponses { @@ -199,37 +201,37 @@ public InputList MethodResponses } /// - /// A friendly operation name for the method. + /// A human-friendly operation identifier for the method. For example, you can assign the ``operationName`` of ``ListPets`` for the ``GET /pets`` method in the ``PetStore`` example. /// [Input("operationName")] public Input? OperationName { get; set; } /// - /// The resources that are used for the request's content type. Specify request models as key-value pairs (string-to-string mapping), with a content type as the key and a Model resource name as the value. + /// A key-value map specifying data schemas, represented by Model resources, (as the mapped value) of the request payloads of given content types (as the mapping key). /// [Input("requestModels")] public Input? RequestModels { get; set; } /// - /// The request parameters that API Gateway accepts. Specify request parameters as key-value pairs (string-to-Boolean mapping), with a source as the key and a Boolean as the value. + /// A key-value map defining required or optional method request parameters that can be accepted by API Gateway. A key is a method request parameter name matching the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and ``name`` is a valid and unique parameter name. The value associated with the key is a Boolean flag indicating whether the parameter is required (``true``) or optional (``false``). The method request parameter names defined here are available in Integration to be mapped to integration request parameters or templates. /// [Input("requestParameters")] public Input? RequestParameters { get; set; } /// - /// The ID of the associated request validator. + /// The identifier of a RequestValidator for request validation. /// [Input("requestValidatorId")] public Input? RequestValidatorId { get; set; } /// - /// The ID of an API Gateway resource. + /// The Resource identifier for the MethodResponse resource. /// [Input("resourceId", required: true)] public Input ResourceId { get; set; } = null!; /// - /// The ID of the RestApi resource in which API Gateway creates the method. + /// The string identifier of the associated RestApi. /// [Input("restApiId", required: true)] public Input RestApiId { get; set; } = null!; diff --git a/sdk/dotnet/ApiGateway/Model.cs b/sdk/dotnet/ApiGateway/Model.cs index 806557bf82..0df3021002 100644 --- a/sdk/dotnet/ApiGateway/Model.cs +++ b/sdk/dotnet/ApiGateway/Model.cs @@ -10,37 +10,38 @@ namespace Pulumi.AwsNative.ApiGateway { /// - /// Resource Type definition for AWS::ApiGateway::Model + /// The ``AWS::ApiGateway::Model`` resource defines the structure of a request or response payload for an API method. /// [AwsNativeResourceType("aws-native:apigateway:Model")] public partial class Model : global::Pulumi.CustomResource { /// - /// The content type for the model. + /// The content-type for the model. /// [Output("contentType")] public Output ContentType { get; private set; } = null!; /// - /// A description that identifies this model. + /// The description of the model. /// [Output("description")] public Output Description { get; private set; } = null!; /// - /// A name for the model. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the model name. + /// A name for the model. If you don't specify a name, CFN generates a unique physical ID and uses that ID for the model name. For more information, see [Name Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html). + /// 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. /// [Output("name")] public Output Name { get; private set; } = null!; /// - /// The ID of a REST API with which to associate this model. + /// The string identifier of the associated RestApi. /// [Output("restApiId")] public Output RestApiId { get; private set; } = null!; /// - /// The schema to use to transform data to one or more output formats. Specify null ({}) if you don't want to specify a schema. + /// The schema for the model. For ``application/json`` models, this should be JSON schema draft 4 model. Do not include "\*/" characters in the description of any properties because such "\*/" characters may be interpreted as the closing marker for comments in some languages, such as Java or JavaScript, causing the installation of your API's SDK generated by API Gateway to fail. /// [Output("schema")] public Output Schema { get; private set; } = null!; @@ -97,31 +98,32 @@ public static Model Get(string name, Input id, CustomResourceOptions? op public sealed class ModelArgs : global::Pulumi.ResourceArgs { /// - /// The content type for the model. + /// The content-type for the model. /// [Input("contentType")] public Input? ContentType { get; set; } /// - /// A description that identifies this model. + /// The description of the model. /// [Input("description")] public Input? Description { get; set; } /// - /// A name for the model. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the model name. + /// A name for the model. If you don't specify a name, CFN generates a unique physical ID and uses that ID for the model name. For more information, see [Name Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html). + /// 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. /// [Input("name")] public Input? Name { get; set; } /// - /// The ID of a REST API with which to associate this model. + /// The string identifier of the associated RestApi. /// [Input("restApiId", required: true)] public Input RestApiId { get; set; } = null!; /// - /// The schema to use to transform data to one or more output formats. Specify null ({}) if you don't want to specify a schema. + /// The schema for the model. For ``application/json`` models, this should be JSON schema draft 4 model. Do not include "\*/" characters in the description of any properties because such "\*/" characters may be interpreted as the closing marker for comments in some languages, such as Java or JavaScript, causing the installation of your API's SDK generated by API Gateway to fail. /// [Input("schema")] public Input? Schema { get; set; } diff --git a/sdk/dotnet/ApiGateway/Outputs/DeploymentAccessLogSetting.cs b/sdk/dotnet/ApiGateway/Outputs/DeploymentAccessLogSetting.cs index 6e8d99c365..60dc83387d 100644 --- a/sdk/dotnet/ApiGateway/Outputs/DeploymentAccessLogSetting.cs +++ b/sdk/dotnet/ApiGateway/Outputs/DeploymentAccessLogSetting.cs @@ -10,15 +10,19 @@ namespace Pulumi.AwsNative.ApiGateway.Outputs { + /// + /// The ``AccessLogSetting`` property type specifies settings for logging access in this stage. + /// ``AccessLogSetting`` is a property of the [StageDescription](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html) property type. + /// [OutputType] public sealed class DeploymentAccessLogSetting { /// - /// The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with amazon-apigateway-. + /// The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with ``amazon-apigateway-``. /// public readonly string? DestinationArn; /// - /// A single line format of the access logs of data, as specified by selected $context variables. The format must include at least $context.requestId. + /// A single line format of the access logs of data, as specified by selected $context variables. The format must include at least ``$context.requestId``. /// public readonly string? Format; diff --git a/sdk/dotnet/ApiGateway/Outputs/DeploymentCanarySetting.cs b/sdk/dotnet/ApiGateway/Outputs/DeploymentCanarySetting.cs index 6ad781be10..869266ae23 100644 --- a/sdk/dotnet/ApiGateway/Outputs/DeploymentCanarySetting.cs +++ b/sdk/dotnet/ApiGateway/Outputs/DeploymentCanarySetting.cs @@ -10,6 +10,10 @@ namespace Pulumi.AwsNative.ApiGateway.Outputs { + /// + /// The ``CanarySetting`` property type specifies settings for the canary deployment in this stage. + /// ``CanarySetting`` is a property of the [StageDescription](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html) property type. + /// [OutputType] public sealed class DeploymentCanarySetting { @@ -18,11 +22,11 @@ public sealed class DeploymentCanarySetting /// public readonly double? PercentTraffic; /// - /// Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values. + /// Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values. /// public readonly object? StageVariableOverrides; /// - /// Whether the canary deployment uses the stage cache or not. + /// A Boolean flag to indicate whether the canary deployment uses the stage cache or not. /// public readonly bool? UseStageCache; diff --git a/sdk/dotnet/ApiGateway/Outputs/DeploymentCanarySettings.cs b/sdk/dotnet/ApiGateway/Outputs/DeploymentCanarySettings.cs index c49d93ae52..33766ffafa 100644 --- a/sdk/dotnet/ApiGateway/Outputs/DeploymentCanarySettings.cs +++ b/sdk/dotnet/ApiGateway/Outputs/DeploymentCanarySettings.cs @@ -10,19 +10,22 @@ namespace Pulumi.AwsNative.ApiGateway.Outputs { + /// + /// The ``DeploymentCanarySettings`` property type specifies settings for the canary deployment. + /// [OutputType] public sealed class DeploymentCanarySettings { /// - /// The percentage (0-100) of traffic diverted to a canary deployment. + /// The percentage (0.0-100.0) of traffic routed to the canary deployment. /// public readonly double? PercentTraffic; /// - /// Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values. Duplicates are not allowed. + /// A stage variable overrides used for the canary release deployment. They can override existing stage variables or add new stage variables for the canary release deployment. These stage variables are represented as a string-to-string map between stage variable names and their values. /// public readonly object? StageVariableOverrides; /// - /// Whether the canary deployment uses the stage cache. + /// A Boolean flag to indicate whether the canary release deployment uses the stage cache or not. /// public readonly bool? UseStageCache; diff --git a/sdk/dotnet/ApiGateway/Outputs/DeploymentMethodSetting.cs b/sdk/dotnet/ApiGateway/Outputs/DeploymentMethodSetting.cs index 6165fb88f4..33db773fa1 100644 --- a/sdk/dotnet/ApiGateway/Outputs/DeploymentMethodSetting.cs +++ b/sdk/dotnet/ApiGateway/Outputs/DeploymentMethodSetting.cs @@ -10,23 +10,27 @@ namespace Pulumi.AwsNative.ApiGateway.Outputs { + /// + /// The ``MethodSetting`` property type configures settings for all methods in a stage. + /// The ``MethodSettings`` property of the [Amazon API Gateway Deployment StageDescription](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html) property type contains a list of ``MethodSetting`` property types. + /// [OutputType] public sealed class DeploymentMethodSetting { /// - /// Indicates whether the cached responses are encrypted + /// Specifies whether the cached responses are encrypted. /// public readonly bool? CacheDataEncrypted; /// - /// The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. + /// Specifies the time to live (TTL), in seconds, for cached responses. The higher the TTL, the longer the response will be cached. /// public readonly int? CacheTtlInSeconds; /// - /// Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses. + /// Specifies whether responses should be cached and returned for requests. A cache cluster must be enabled on the stage for responses to be cached. /// public readonly bool? CachingEnabled; /// - /// Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs. + /// Specifies whether data trace logging is enabled for this method, which affects the log entries pushed to Amazon CloudWatch Logs. This can be useful to troubleshoot APIs, but can result in logging sensitive data. We recommend that you don't enable this option for production APIs. /// public readonly bool? DataTraceEnabled; /// @@ -34,23 +38,23 @@ public sealed class DeploymentMethodSetting /// public readonly string? HttpMethod; /// - /// The logging level for this method. For valid values, see the loggingLevel property of the Stage resource in the Amazon API Gateway API Reference. + /// Specifies the logging level for this method, which affects the log entries pushed to Amazon CloudWatch Logs. Valid values are ``OFF``, ``ERROR``, and ``INFO``. Choose ``ERROR`` to write only error-level entries to CloudWatch Logs, or choose ``INFO`` to include all ``ERROR`` events as well as extra informational events. /// public readonly string? LoggingLevel; /// - /// Indicates whether Amazon CloudWatch metrics are enabled for methods in the stage. + /// Specifies whether Amazon CloudWatch metrics are enabled for this method. /// public readonly bool? MetricsEnabled; /// - /// The resource path for this method. Forward slashes (/) are encoded as ~1 and the initial slash must include a forward slash. + /// The resource path for this method. Forward slashes (``/``) are encoded as ``~1`` and the initial slash must include a forward slash. For example, the path value ``/resource/subresource`` must be encoded as ``/~1resource~1subresource``. To specify the root path, use only a slash (``/``). /// public readonly string? ResourcePath; /// - /// The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. + /// Specifies the throttling burst limit. /// public readonly int? ThrottlingBurstLimit; /// - /// The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. + /// Specifies the throttling rate limit. /// public readonly double? ThrottlingRateLimit; diff --git a/sdk/dotnet/ApiGateway/Outputs/DeploymentStageDescription.cs b/sdk/dotnet/ApiGateway/Outputs/DeploymentStageDescription.cs index 7d79878fc9..eb854811c3 100644 --- a/sdk/dotnet/ApiGateway/Outputs/DeploymentStageDescription.cs +++ b/sdk/dotnet/ApiGateway/Outputs/DeploymentStageDescription.cs @@ -10,6 +10,9 @@ namespace Pulumi.AwsNative.ApiGateway.Outputs { + /// + /// ``StageDescription`` is a property of the [AWS::ApiGateway::Deployment](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-deployment.html) resource that configures a deployment stage. + /// [OutputType] public sealed class DeploymentStageDescription { @@ -18,23 +21,23 @@ public sealed class DeploymentStageDescription /// public readonly Outputs.DeploymentAccessLogSetting? AccessLogSetting; /// - /// Indicates whether cache clustering is enabled for the stage. + /// Specifies whether a cache cluster is enabled for the stage. /// public readonly bool? CacheClusterEnabled; /// - /// The size of the stage's cache cluster. + /// The size of the stage's cache cluster. For more information, see [cacheClusterSize](https://docs.aws.amazon.com/apigateway/latest/api/API_CreateStage.html#apigw-CreateStage-request-cacheClusterSize) in the *API Gateway API Reference*. /// public readonly string? CacheClusterSize; /// - /// The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. + /// Indicates whether the cached responses are encrypted. /// public readonly bool? CacheDataEncrypted; /// - /// The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. + /// The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. /// public readonly int? CacheTtlInSeconds; /// - /// Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses. + /// Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses. For more information, see [Enable API Gateway Caching in a Stage to Enhance API Performance](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html) in the *API Gateway Developer Guide*. /// public readonly bool? CachingEnabled; /// @@ -42,11 +45,11 @@ public sealed class DeploymentStageDescription /// public readonly Outputs.DeploymentCanarySetting? CanarySetting; /// - /// The identifier of the client certificate that API Gateway uses to call your integration endpoints in the stage. + /// The identifier of the client certificate that API Gateway uses to call your integration endpoints in the stage. /// public readonly string? ClientCertificateId; /// - /// Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs. + /// Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs. /// public readonly bool? DataTraceEnabled; /// @@ -58,7 +61,7 @@ public sealed class DeploymentStageDescription /// public readonly string? DocumentationVersion; /// - /// The logging level for this method. For valid values, see the loggingLevel property of the Stage resource in the Amazon API Gateway API Reference. + /// The logging level for this method. For valid values, see the ``loggingLevel`` property of the [MethodSetting](https://docs.aws.amazon.com/apigateway/latest/api/API_MethodSetting.html) resource in the *Amazon API Gateway API Reference*. /// public readonly string? LoggingLevel; /// @@ -74,19 +77,20 @@ public sealed class DeploymentStageDescription /// public readonly ImmutableArray Tags; /// - /// The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. + /// The target request burst rate limit. This allows more requests through for a period of time than the target rate limit. For more information, see [Manage API Request Throttling](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-request-throttling.html) in the *API Gateway Developer Guide*. /// public readonly int? ThrottlingBurstLimit; /// - /// The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. + /// The target request steady-state rate limit. For more information, see [Manage API Request Throttling](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-request-throttling.html) in the *API Gateway Developer Guide*. /// public readonly double? ThrottlingRateLimit; /// /// Specifies whether active tracing with X-ray is enabled for this stage. + /// For more information, see [Trace API Gateway API Execution with X-Ray](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-xray.html) in the *API Gateway Developer Guide*. /// public readonly bool? TracingEnabled; /// - /// A map that defines the stage variables. Variable names must consist of alphanumeric characters, and the values must match the following regular expression: [A-Za-z0-9-._~:/?#&=,]+. + /// A map that defines the stage variables. Variable names must consist of alphanumeric characters, and the values must match the following regular expression: ``[A-Za-z0-9-._~:/?#&=,]+``. /// public readonly object? Variables; diff --git a/sdk/dotnet/ApiGateway/Outputs/DocumentationPartLocation.cs b/sdk/dotnet/ApiGateway/Outputs/DocumentationPartLocation.cs index c21c97906b..5726b6d5fd 100644 --- a/sdk/dotnet/ApiGateway/Outputs/DocumentationPartLocation.cs +++ b/sdk/dotnet/ApiGateway/Outputs/DocumentationPartLocation.cs @@ -10,27 +10,31 @@ namespace Pulumi.AwsNative.ApiGateway.Outputs { + /// + /// The ``Location`` property specifies the location of the Amazon API Gateway API entity that the documentation applies to. ``Location`` is a property of the [AWS::ApiGateway::DocumentationPart](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationpart.html) resource. + /// For more information about each property, including constraints and valid values, see [DocumentationPart](https://docs.aws.amazon.com/apigateway/latest/api/API_DocumentationPartLocation.html) in the *Amazon API Gateway REST API Reference*. + /// [OutputType] public sealed class DocumentationPartLocation { /// - /// The HTTP verb of a method. + /// The HTTP verb of a method. It is a valid field for the API entity types of ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``*`` for any method. When an applicable child entity inherits the content of an entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``method`` attribute must match that of the parent entity exactly. /// public readonly string? Method; /// - /// The name of the targeted API entity. + /// The name of the targeted API entity. It is a valid and required field for the API entity types of ``AUTHORIZER``, ``MODEL``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY`` and ``RESPONSE_HEADER``. It is an invalid field for any other entity type. /// public readonly string? Name; /// - /// The URL path of the target. + /// The URL path of the target. It is a valid field for the API entity types of ``RESOURCE``, ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``/`` for the root resource. When an applicable child entity inherits the content of another entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``path`` attribute must match that of the parent entity as a prefix. /// public readonly string? Path; /// - /// The HTTP status code of a response. + /// The HTTP status code of a response. It is a valid field for the API entity types of ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``*`` for any status code. When an applicable child entity inherits the content of an entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``statusCode`` attribute must match that of the parent entity exactly. /// public readonly string? StatusCode; /// - /// The type of API entity that the documentation content applies to. + /// The type of API entity to which the documentation content applies. Valid values are ``API``, ``AUTHORIZER``, ``MODEL``, ``RESOURCE``, ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. Content inheritance does not apply to any entity of the ``API``, ``AUTHORIZER``, ``METHOD``, ``MODEL``, ``REQUEST_BODY``, or ``RESOURCE`` type. /// public readonly Pulumi.AwsNative.ApiGateway.DocumentationPartLocationType? Type; diff --git a/sdk/dotnet/ApiGateway/Outputs/MethodIntegration.cs b/sdk/dotnet/ApiGateway/Outputs/MethodIntegration.cs index c5d4025ac4..b071fe4f74 100644 --- a/sdk/dotnet/ApiGateway/Outputs/MethodIntegration.cs +++ b/sdk/dotnet/ApiGateway/Outputs/MethodIntegration.cs @@ -10,63 +10,69 @@ namespace Pulumi.AwsNative.ApiGateway.Outputs { + /// + /// ``Integration`` is a property of the [AWS::ApiGateway::Method](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html) resource that specifies information about the target backend that a method calls. + /// [OutputType] public sealed class MethodIntegration { /// - /// A list of request parameters whose values API Gateway caches. + /// A list of request parameters whose values API Gateway caches. To be valid values for ``cacheKeyParameters``, these parameters must also be specified for Method ``requestParameters``. /// public readonly ImmutableArray CacheKeyParameters; /// - /// An API-specific tag group of related cached parameters. + /// Specifies a group of related cached parameters. By default, API Gateway uses the resource ID as the ``cacheNamespace``. You can specify the same ``cacheNamespace`` across resources to return the same cached data for requests to different resources. /// public readonly string? CacheNamespace; /// - /// The ID of the VpcLink used for the integration when connectionType=VPC_LINK, otherwise undefined. + /// The ID of the VpcLink used for the integration when ``connectionType=VPC_LINK`` and undefined, otherwise. /// public readonly string? ConnectionId; /// - /// The type of the network connection to the integration endpoint. + /// The type of the network connection to the integration endpoint. The valid value is ``INTERNET`` for connections through the public routable internet or ``VPC_LINK`` for private connections between API Gateway and a network load balancer in a VPC. The default value is ``INTERNET``. /// public readonly Pulumi.AwsNative.ApiGateway.MethodIntegrationConnectionType? ConnectionType; /// - /// Specifies how to handle request payload content type conversions. + /// Specifies how to handle request payload content type conversions. Supported values are ``CONVERT_TO_BINARY`` and ``CONVERT_TO_TEXT``, with the following behaviors: + /// If this property is not defined, the request payload will be passed through from the method request to integration request without modification, provided that the ``passthroughBehavior`` is configured to support payload pass-through. /// public readonly Pulumi.AwsNative.ApiGateway.MethodIntegrationContentHandling? ContentHandling; /// - /// The credentials that are required for the integration. + /// Specifies the credentials required for the integration, if any. For AWS integrations, three options are available. To specify an IAM Role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To require that the caller's identity be passed through from the request, specify the string ``arn:aws:iam::\*:user/\*``. To use resource-based permissions on supported AWS services, specify null. /// public readonly string? Credentials; /// - /// The integration's HTTP method type. + /// Specifies the integration's HTTP method type. For the Type property, if you specify ``MOCK``, this property is optional. For Lambda integrations, you must set the integration method to ``POST``. For all other types, you must specify this property. /// public readonly string? IntegrationHttpMethod; /// - /// The response that API Gateway provides after a method's backend completes processing a request. + /// Specifies the integration's responses. /// public readonly ImmutableArray IntegrationResponses; /// - /// Indicates when API Gateway passes requests to the targeted backend. + /// Specifies how the method request body of an unmapped content type will be passed through the integration request to the back end without transformation. A content type is unmapped if no mapping template is defined in the integration or the content type does not match any of the mapped content types, as specified in ``requestTemplates``. The valid value is one of the following: ``WHEN_NO_MATCH``: passes the method request body through the integration request to the back end without transformation when the method request content type does not match any content type associated with the mapping templates defined in the integration request. ``WHEN_NO_TEMPLATES``: passes the method request body through the integration request to the back end without transformation when no mapping template is defined in the integration request. If a template is defined when this option is selected, the method request of an unmapped content-type will be rejected with an HTTP 415 Unsupported Media Type response. ``NEVER``: rejects the method request with an HTTP 415 Unsupported Media Type response when either the method request content type does not match any content type associated with the mapping templates defined in the integration request or no mapping template is defined in the integration request. /// public readonly Pulumi.AwsNative.ApiGateway.MethodIntegrationPassthroughBehavior? PassthroughBehavior; /// - /// The request parameters that API Gateway sends with the backend request. + /// A key-value map specifying request parameters that are passed from the method request to the back end. The key is an integration request parameter name and the associated value is a method request parameter value or static value that must be enclosed within single quotes and pre-encoded as required by the back end. The method request parameter value must match the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and ``name`` must be a valid and unique method request parameter name. /// public readonly object? RequestParameters; /// - /// A map of Apache Velocity templates that are applied on the request payload. + /// Represents a map of Velocity templates that are applied on the request payload based on the value of the Content-Type header sent by the client. The content type value is the key in this map, and the template (as a String) is the value. /// public readonly object? RequestTemplates; /// - /// Custom timeout between 50 and 29,000 milliseconds. + /// Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds or 29 seconds. /// public readonly int? TimeoutInMillis; /// - /// The type of backend that your method is running. + /// Specifies an API method integration type. The valid value is one of the following: + /// For the HTTP and HTTP proxy integrations, each integration can specify a protocol (``http/https``), port and path. Standard 80 and 443 ports are supported as well as custom ports above 1024. An HTTP or HTTP proxy integration with a ``connectionType`` of ``VPC_LINK`` is referred to as a private integration and uses a VpcLink to connect API Gateway to a network load balancer of a VPC. /// public readonly Pulumi.AwsNative.ApiGateway.MethodIntegrationType Type; /// - /// The Uniform Resource Identifier (URI) for the integration. + /// Specifies Uniform Resource Identifier (URI) of the integration endpoint. + /// For ``HTTP`` or ``HTTP_PROXY`` integrations, the URI must be a fully formed, encoded HTTP(S) URL according to the RFC-3986 specification for standard integrations. If ``connectionType`` is ``VPC_LINK`` specify the Network Load Balancer DNS name. For ``AWS`` or ``AWS_PROXY`` integrations, the URI is of the form ``arn:aws:apigateway:{region}:{subdomain.service|service}:path|action/{service_api}``. Here, {Region} is the API Gateway region (e.g., us-east-1); {service} is the name of the integrated AWS service (e.g., s3); and {subdomain} is a designated subdomain supported by certain AWS service for fast host-name lookup. action can be used for an AWS service action-based API, using an Action={name}&{p1}={v1}&p2={v2}... query string. The ensuing {service_api} refers to a supported action {name} plus any required input parameters. Alternatively, path can be used for an AWS service path-based API. The ensuing service_api refers to the path to an AWS service resource, including the region of the integrated AWS service, if applicable. For example, for integration with the S3 API of GetObject, the uri can be either ``arn:aws:apigateway:us-west-2:s3:action/GetObject&Bucket={bucket}&Key={key}`` or ``arn:aws:apigateway:us-west-2:s3:path/{bucket}/{key}`` /// public readonly string? Uri; diff --git a/sdk/dotnet/ApiGateway/Outputs/MethodIntegrationResponse.cs b/sdk/dotnet/ApiGateway/Outputs/MethodIntegrationResponse.cs index f66ad039f7..5447209618 100644 --- a/sdk/dotnet/ApiGateway/Outputs/MethodIntegrationResponse.cs +++ b/sdk/dotnet/ApiGateway/Outputs/MethodIntegrationResponse.cs @@ -10,27 +10,31 @@ namespace Pulumi.AwsNative.ApiGateway.Outputs { + /// + /// ``IntegrationResponse`` is a property of the [Amazon API Gateway Method Integration](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html) property type that specifies the response that API Gateway sends after a method's backend finishes processing a request. + /// [OutputType] public sealed class MethodIntegrationResponse { /// - /// Specifies how to handle request payload content type conversions. + /// Specifies how to handle response payload content type conversions. Supported values are ``CONVERT_TO_BINARY`` and ``CONVERT_TO_TEXT``, with the following behaviors: + /// If this property is not defined, the response payload will be passed through from the integration response to the method response without modification. /// public readonly Pulumi.AwsNative.ApiGateway.MethodIntegrationResponseContentHandling? ContentHandling; /// - /// The response parameters from the backend response that API Gateway sends to the method response. + /// A key-value map specifying response parameters that are passed to the method response from the back end. The key is a method response header parameter name and the mapped value is an integration response header value, a static value enclosed within a pair of single quotes, or a JSON expression from the integration response body. The mapping key must match the pattern of ``method.response.header.{name}``, where ``name`` is a valid and unique header name. The mapped non-static value must match the pattern of ``integration.response.header.{name}`` or ``integration.response.body.{JSON-expression}``, where ``name`` is a valid and unique response header name and ``JSON-expression`` is a valid JSON expression without the ``$`` prefix. /// public readonly object? ResponseParameters; /// - /// The templates that are used to transform the integration response body. Specify templates as key-value pairs (string-to-string mappings), with a content type as the key and a template as the value. + /// Specifies the templates used to transform the integration response body. Response templates are represented as a key/value map, with a content-type as the key and a template as the value. /// public readonly object? ResponseTemplates; /// - /// A regular expression that specifies which error strings or status codes from the backend map to the integration response. + /// Specifies the regular expression (regex) pattern used to choose an integration response based on the response from the back end. For example, if the success response returns nothing and the error response returns some string, you could use the ``.+`` regex to match error response. However, make sure that the error response does not contain any newline (``\n``) character in such cases. If the back end is an LAMlong function, the LAMlong function error header is matched. For all other HTTP and AWS back ends, the HTTP status code is matched. /// public readonly string? SelectionPattern; /// - /// The status code that API Gateway uses to map the integration response to a MethodResponse status code. + /// Specifies the status code that is used to map the integration response to an existing MethodResponse. /// public readonly string StatusCode; diff --git a/sdk/dotnet/ApiGateway/Outputs/MethodResponse.cs b/sdk/dotnet/ApiGateway/Outputs/MethodResponse.cs index 56b39d9cf9..7db78e2f71 100644 --- a/sdk/dotnet/ApiGateway/Outputs/MethodResponse.cs +++ b/sdk/dotnet/ApiGateway/Outputs/MethodResponse.cs @@ -10,19 +10,22 @@ namespace Pulumi.AwsNative.ApiGateway.Outputs { + /// + /// Represents a method response of a given HTTP status code returned to the client. The method response is passed from the back end through the associated integration response that can be transformed using a mapping template. + /// [OutputType] public sealed class MethodResponse { /// - /// The resources used for the response's content type. Specify response models as key-value pairs (string-to-string maps), with a content type as the key and a Model resource name as the value. + /// Specifies the Model resources used for the response's content-type. Response models are represented as a key/value map, with a content-type as the key and a Model name as the value. /// public readonly object? ResponseModels; /// - /// Response parameters that API Gateway sends to the client that called a method. Specify response parameters as key-value pairs (string-to-Boolean maps), with a destination as the key and a Boolean as the value. + /// A key-value map specifying required or optional response parameters that API Gateway can send back to the caller. A key defines a method response header and the value specifies whether the associated method response header is required or not. The expression of the key must match the pattern ``method.response.header.{name}``, where ``name`` is a valid and unique header name. API Gateway passes certain integration response data to the method response headers specified here according to the mapping you prescribe in the API's IntegrationResponse. The integration response data that can be mapped include an integration response header expressed in ``integration.response.header.{name}``, a static value enclosed within a pair of single quotes (e.g., ``'application/json'``), or a JSON expression from the back-end response payload in the form of ``integration.response.body.{JSON-expression}``, where ``JSON-expression`` is a valid JSON expression without the ``$`` prefix.) /// public readonly object? ResponseParameters; /// - /// The method response's status code, which you map to an IntegrationResponse. + /// The method response's status code. /// public readonly string StatusCode; diff --git a/sdk/dotnet/ApiGateway/Outputs/RestApiEndpointConfiguration.cs b/sdk/dotnet/ApiGateway/Outputs/RestApiEndpointConfiguration.cs index bfabc4e12d..f8c07c9d84 100644 --- a/sdk/dotnet/ApiGateway/Outputs/RestApiEndpointConfiguration.cs +++ b/sdk/dotnet/ApiGateway/Outputs/RestApiEndpointConfiguration.cs @@ -10,10 +10,20 @@ namespace Pulumi.AwsNative.ApiGateway.Outputs { + /// + /// The ``EndpointConfiguration`` property type specifies the endpoint types of a REST API. + /// ``EndpointConfiguration`` is a property of the [AWS::ApiGateway::RestApi](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html) resource. + /// [OutputType] public sealed class RestApiEndpointConfiguration { + /// + /// A list of endpoint types of an API (RestApi) or its custom domain name (DomainName). For an edge-optimized API and its custom domain name, the endpoint type is ``"EDGE"``. For a regional API and its custom domain name, the endpoint type is ``REGIONAL``. For a private API, the endpoint type is ``PRIVATE``. + /// public readonly ImmutableArray Types; + /// + /// A list of VpcEndpointIds of an API (RestApi) against which to create Route53 ALIASes. It is only supported for ``PRIVATE`` endpoint type. + /// public readonly ImmutableArray VpcEndpointIds; [OutputConstructor] diff --git a/sdk/dotnet/ApiGateway/Outputs/RestApiS3Location.cs b/sdk/dotnet/ApiGateway/Outputs/RestApiS3Location.cs index 78c89db420..6d9a2e6236 100644 --- a/sdk/dotnet/ApiGateway/Outputs/RestApiS3Location.cs +++ b/sdk/dotnet/ApiGateway/Outputs/RestApiS3Location.cs @@ -10,12 +10,28 @@ namespace Pulumi.AwsNative.ApiGateway.Outputs { + /// + /// ``S3Location`` is a property of the [AWS::ApiGateway::RestApi](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html) resource that specifies the Amazon S3 location of a OpenAPI (formerly Swagger) file that defines a set of RESTful APIs in JSON or YAML. + /// On January 1, 2016, the Swagger Specification was donated to the [OpenAPI initiative](https://docs.aws.amazon.com/https://www.openapis.org/), becoming the foundation of the OpenAPI Specification. + /// [OutputType] public sealed class RestApiS3Location { + /// + /// The name of the S3 bucket where the OpenAPI file is stored. + /// public readonly string? Bucket; + /// + /// The Amazon S3 ETag (a file checksum) of the OpenAPI file. If you don't specify a value, API Gateway skips ETag validation of your OpenAPI file. + /// public readonly string? ETag; + /// + /// The file name of the OpenAPI file (Amazon S3 object name). + /// public readonly string? Key; + /// + /// For versioning-enabled buckets, a specific version of the OpenAPI file. + /// public readonly string? Version; [OutputConstructor] diff --git a/sdk/dotnet/ApiGateway/Outputs/StageAccessLogSetting.cs b/sdk/dotnet/ApiGateway/Outputs/StageAccessLogSetting.cs index 4020a9c18e..f96c2f3e42 100644 --- a/sdk/dotnet/ApiGateway/Outputs/StageAccessLogSetting.cs +++ b/sdk/dotnet/ApiGateway/Outputs/StageAccessLogSetting.cs @@ -11,17 +11,18 @@ namespace Pulumi.AwsNative.ApiGateway.Outputs { /// - /// Specifies settings for logging access in this stage. + /// The ``AccessLogSetting`` property type specifies settings for logging access in this stage. + /// ``AccessLogSetting`` is a property of the [AWS::ApiGateway::Stage](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html) resource. /// [OutputType] public sealed class StageAccessLogSetting { /// - /// The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with amazon-apigateway-. This parameter is required to enable access logging. + /// The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with ``amazon-apigateway-``. This parameter is required to enable access logging. /// public readonly string? DestinationArn; /// - /// A single line format of the access logs of data, as specified by selected $context variables (https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html#context-variable-reference). The format must include at least $context.requestId. This parameter is required to enable access logging. + /// A single line format of the access logs of data, as specified by selected [$context variables](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html#context-variable-reference). The format must include at least ``$context.requestId``. This parameter is required to enable access logging. /// public readonly string? Format; diff --git a/sdk/dotnet/ApiGateway/Outputs/StageCanarySetting.cs b/sdk/dotnet/ApiGateway/Outputs/StageCanarySetting.cs index 3ea1ccc783..dca7f2ac4a 100644 --- a/sdk/dotnet/ApiGateway/Outputs/StageCanarySetting.cs +++ b/sdk/dotnet/ApiGateway/Outputs/StageCanarySetting.cs @@ -11,17 +11,17 @@ namespace Pulumi.AwsNative.ApiGateway.Outputs { /// - /// Specifies settings for the canary deployment in this stage. + /// Configuration settings of a canary deployment. /// [OutputType] public sealed class StageCanarySetting { /// - /// The identifier of the deployment that the stage points to. + /// The ID of the canary deployment. /// public readonly string? DeploymentId; /// - /// The percentage (0-100) of traffic diverted to a canary deployment. + /// The percent (0-100) of traffic diverted to a canary deployment. /// public readonly double? PercentTraffic; /// @@ -29,7 +29,7 @@ public sealed class StageCanarySetting /// public readonly object? StageVariableOverrides; /// - /// Whether the canary deployment uses the stage cache or not. + /// A Boolean flag to indicate whether the canary deployment uses the stage cache or not. /// public readonly bool? UseStageCache; diff --git a/sdk/dotnet/ApiGateway/Outputs/StageMethodSetting.cs b/sdk/dotnet/ApiGateway/Outputs/StageMethodSetting.cs index 9da1c7f3b3..31e50874e4 100644 --- a/sdk/dotnet/ApiGateway/Outputs/StageMethodSetting.cs +++ b/sdk/dotnet/ApiGateway/Outputs/StageMethodSetting.cs @@ -11,49 +11,50 @@ namespace Pulumi.AwsNative.ApiGateway.Outputs { /// - /// Configures settings for all methods in a stage. + /// The ``MethodSetting`` property type configures settings for all methods in a stage. + /// The ``MethodSettings`` property of the ``AWS::ApiGateway::Stage`` resource contains a list of ``MethodSetting`` property types. /// [OutputType] public sealed class StageMethodSetting { /// - /// Indicates whether the cached responses are encrypted. + /// Specifies whether the cached responses are encrypted. /// public readonly bool? CacheDataEncrypted; /// - /// The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. + /// Specifies the time to live (TTL), in seconds, for cached responses. The higher the TTL, the longer the response will be cached. /// public readonly int? CacheTtlInSeconds; /// - /// Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses. + /// Specifies whether responses should be cached and returned for requests. A cache cluster must be enabled on the stage for responses to be cached. /// public readonly bool? CachingEnabled; /// - /// Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs. + /// Specifies whether data trace logging is enabled for this method, which affects the log entries pushed to Amazon CloudWatch Logs. This can be useful to troubleshoot APIs, but can result in logging sensitive data. We recommend that you don't enable this option for production APIs. /// public readonly bool? DataTraceEnabled; /// - /// The HTTP method. You can use an asterisk (*) as a wildcard to apply method settings to multiple methods. + /// The HTTP method. To apply settings to multiple resources and methods, specify an asterisk (``*``) for the ``HttpMethod`` and ``/*`` for the ``ResourcePath``. This parameter is required when you specify a ``MethodSetting``. /// public readonly string? HttpMethod; /// - /// The logging level for this method. For valid values, see the loggingLevel property of the Stage (https://docs.aws.amazon.com/apigateway/api-reference/resource/stage/#loggingLevel) resource in the Amazon API Gateway API Reference. + /// Specifies the logging level for this method, which affects the log entries pushed to Amazon CloudWatch Logs. Valid values are ``OFF``, ``ERROR``, and ``INFO``. Choose ``ERROR`` to write only error-level entries to CloudWatch Logs, or choose ``INFO`` to include all ``ERROR`` events as well as extra informational events. /// public readonly string? LoggingLevel; /// - /// Indicates whether Amazon CloudWatch metrics are enabled for methods in the stage. + /// Specifies whether Amazon CloudWatch metrics are enabled for this method. /// public readonly bool? MetricsEnabled; /// - /// The resource path for this method. Forward slashes (/) are encoded as ~1 and the initial slash must include a forward slash. For example, the path value /resource/subresource must be encoded as /~1resource~1subresource. To specify the root path, use only a slash (/). You can use an asterisk (*) as a wildcard to apply method settings to multiple methods. + /// The resource path for this method. Forward slashes (``/``) are encoded as ``~1`` and the initial slash must include a forward slash. For example, the path value ``/resource/subresource`` must be encoded as ``/~1resource~1subresource``. To specify the root path, use only a slash (``/``). To apply settings to multiple resources and methods, specify an asterisk (``*``) for the ``HttpMethod`` and ``/*`` for the ``ResourcePath``. This parameter is required when you specify a ``MethodSetting``. /// public readonly string? ResourcePath; /// - /// The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. + /// Specifies the throttling burst limit. /// public readonly int? ThrottlingBurstLimit; /// - /// The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. + /// Specifies the throttling rate limit. /// public readonly double? ThrottlingRateLimit; diff --git a/sdk/dotnet/ApiGateway/Resource.cs b/sdk/dotnet/ApiGateway/Resource.cs index 67dceff2c6..be6c3bc517 100644 --- a/sdk/dotnet/ApiGateway/Resource.cs +++ b/sdk/dotnet/ApiGateway/Resource.cs @@ -10,7 +10,7 @@ namespace Pulumi.AwsNative.ApiGateway { /// - /// Resource Type definition for AWS::ApiGateway::Resource + /// The ``AWS::ApiGateway::Resource`` resource creates a resource in an API. /// [AwsNativeResourceType("aws-native:apigateway:Resource")] public partial class Resource : global::Pulumi.CustomResource @@ -34,7 +34,7 @@ public partial class Resource : global::Pulumi.CustomResource public Output ResourceId { get; private set; } = null!; /// - /// The ID of the RestApi resource in which you want to create this resource.. + /// The string identifier of the associated RestApi. /// [Output("restApiId")] public Output RestApiId { get; private set; } = null!; @@ -103,7 +103,7 @@ public sealed class ResourceArgs : global::Pulumi.ResourceArgs public Input PathPart { get; set; } = null!; /// - /// The ID of the RestApi resource in which you want to create this resource.. + /// The string identifier of the associated RestApi. /// [Input("restApiId", required: true)] public Input RestApiId { get; set; } = null!; diff --git a/sdk/dotnet/ApiGateway/RestApi.cs b/sdk/dotnet/ApiGateway/RestApi.cs index 2583aa5445..e63dd6b80e 100644 --- a/sdk/dotnet/ApiGateway/RestApi.cs +++ b/sdk/dotnet/ApiGateway/RestApi.cs @@ -10,50 +10,98 @@ namespace Pulumi.AwsNative.ApiGateway { /// - /// Resource Type definition for AWS::ApiGateway::RestApi. + /// The ``AWS::ApiGateway::RestApi`` resource creates a REST API. For more information, see [restapi:create](https://docs.aws.amazon.com/apigateway/latest/api/API_CreateRestApi.html) in the *Amazon API Gateway REST API Reference*. + /// On January 1, 2016, the Swagger Specification was donated to the [OpenAPI initiative](https://docs.aws.amazon.com/https://www.openapis.org/), becoming the foundation of the OpenAPI Specification. /// [AwsNativeResourceType("aws-native:apigateway:RestApi")] public partial class RestApi : global::Pulumi.CustomResource { + /// + /// The source of the API key for metering requests according to a usage plan. Valid values are: ``HEADER`` to read the API key from the ``X-API-Key`` header of a request. ``AUTHORIZER`` to read the API key from the ``UsageIdentifierKey`` from a custom authorizer. + /// [Output("apiKeySourceType")] public Output ApiKeySourceType { get; private set; } = null!; + /// + /// The list of binary media types supported by the RestApi. By default, the RestApi supports only UTF-8-encoded text payloads. + /// [Output("binaryMediaTypes")] public Output> BinaryMediaTypes { get; private set; } = null!; + /// + /// An OpenAPI specification that defines a set of RESTful APIs in JSON format. For YAML templates, you can also provide the specification in YAML format. + /// [Output("body")] public Output Body { get; private set; } = null!; + /// + /// The Amazon Simple Storage Service (Amazon S3) location that points to an OpenAPI file, which defines a set of RESTful APIs in JSON or YAML format. + /// [Output("bodyS3Location")] public Output BodyS3Location { get; private set; } = null!; + /// + /// The ID of the RestApi that you want to clone from. + /// [Output("cloneFrom")] public Output CloneFrom { get; private set; } = null!; + /// + /// The description of the RestApi. + /// [Output("description")] public Output Description { get; private set; } = null!; + /// + /// Specifies whether clients can invoke your API by using the default ``execute-api`` endpoint. By default, clients can invoke your API with the default ``https://{api_id}.execute-api.{region}.amazonaws.com`` endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint + /// [Output("disableExecuteApiEndpoint")] public Output DisableExecuteApiEndpoint { get; private set; } = null!; + /// + /// A list of the endpoint types of the API. Use this property when creating an API. When importing an existing API, specify the endpoint configuration types using the ``Parameters`` property. + /// [Output("endpointConfiguration")] public Output EndpointConfiguration { get; private set; } = null!; + /// + /// A query parameter to indicate whether to rollback the API update (``true``) or not (``false``) when a warning is encountered. The default value is ``false``. + /// [Output("failOnWarnings")] public Output FailOnWarnings { get; private set; } = null!; + /// + /// A nullable integer that is used to enable compression (with non-negative between 0 and 10485760 (10M) bytes, inclusive) or disable compression (with a null value) on an API. When compression is enabled, compression or decompression is not applied on the payload if the payload size is smaller than this value. Setting it to zero allows compression for any payload size. + /// [Output("minimumCompressionSize")] public Output MinimumCompressionSize { get; private set; } = null!; + /// + /// This property applies only when you use OpenAPI to define your REST API. The ``Mode`` determines how API Gateway handles resource updates. + /// Valid values are ``overwrite`` or ``merge``. + /// For ``overwrite``, the new API definition replaces the existing one. The existing API identifier remains unchanged. + /// For ``merge``, the new API definition is merged with the existing API. + /// If you don't specify this property, a default value is chosen. For REST APIs created before March 29, 2021, the default is ``overwrite``. For REST APIs created after March 29, 2021, the new API definition takes precedence, but any container types such as endpoint configurations and binary media types are merged with the existing API. + /// Use the default mode to define top-level ``RestApi`` properties in addition to using OpenAPI. Generally, it's preferred to use API Gateway's OpenAPI extensions to model these properties. + /// [Output("mode")] public Output Mode { get; private set; } = null!; + /// + /// The name of the RestApi. A name is required if the REST API is not based on an OpenAPI specification. + /// [Output("name")] public Output Name { get; private set; } = null!; + /// + /// Custom header parameters as part of the request. For example, to exclude DocumentationParts from an imported API, set ``ignore=documentation`` as a ``parameters`` value, as in the AWS CLI command of ``aws apigateway import-rest-api --parameters ignore=documentation --body 'file:///path/to/imported-api-body.json'``. + /// [Output("parameters")] public Output Parameters { get; private set; } = null!; + /// + /// A policy document that contains the permissions for the ``RestApi`` resource. To set the ARN for the policy, use the ``!Join`` intrinsic function with ``""`` as delimiter and values of ``"execute-api:/"`` and ``"*"``. + /// [Output("policy")] public Output Policy { get; private set; } = null!; @@ -63,6 +111,9 @@ public partial class RestApi : global::Pulumi.CustomResource [Output("rootResourceId")] public Output RootResourceId { get; private set; } = null!; + /// + /// The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with ``aws:``. The tag value can be up to 256 characters. + /// [Output("tags")] public Output> Tags { get; private set; } = null!; @@ -111,55 +162,107 @@ public static RestApi Get(string name, Input id, CustomResourceOptions? public sealed class RestApiArgs : global::Pulumi.ResourceArgs { + /// + /// The source of the API key for metering requests according to a usage plan. Valid values are: ``HEADER`` to read the API key from the ``X-API-Key`` header of a request. ``AUTHORIZER`` to read the API key from the ``UsageIdentifierKey`` from a custom authorizer. + /// [Input("apiKeySourceType")] public Input? ApiKeySourceType { get; set; } [Input("binaryMediaTypes")] private InputList? _binaryMediaTypes; + + /// + /// The list of binary media types supported by the RestApi. By default, the RestApi supports only UTF-8-encoded text payloads. + /// public InputList BinaryMediaTypes { get => _binaryMediaTypes ?? (_binaryMediaTypes = new InputList()); set => _binaryMediaTypes = value; } + /// + /// An OpenAPI specification that defines a set of RESTful APIs in JSON format. For YAML templates, you can also provide the specification in YAML format. + /// [Input("body")] public Input? Body { get; set; } + /// + /// The Amazon Simple Storage Service (Amazon S3) location that points to an OpenAPI file, which defines a set of RESTful APIs in JSON or YAML format. + /// [Input("bodyS3Location")] public Input? BodyS3Location { get; set; } + /// + /// The ID of the RestApi that you want to clone from. + /// [Input("cloneFrom")] public Input? CloneFrom { get; set; } + /// + /// The description of the RestApi. + /// [Input("description")] public Input? Description { get; set; } + /// + /// Specifies whether clients can invoke your API by using the default ``execute-api`` endpoint. By default, clients can invoke your API with the default ``https://{api_id}.execute-api.{region}.amazonaws.com`` endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint + /// [Input("disableExecuteApiEndpoint")] public Input? DisableExecuteApiEndpoint { get; set; } + /// + /// A list of the endpoint types of the API. Use this property when creating an API. When importing an existing API, specify the endpoint configuration types using the ``Parameters`` property. + /// [Input("endpointConfiguration")] public Input? EndpointConfiguration { get; set; } + /// + /// A query parameter to indicate whether to rollback the API update (``true``) or not (``false``) when a warning is encountered. The default value is ``false``. + /// [Input("failOnWarnings")] public Input? FailOnWarnings { get; set; } + /// + /// A nullable integer that is used to enable compression (with non-negative between 0 and 10485760 (10M) bytes, inclusive) or disable compression (with a null value) on an API. When compression is enabled, compression or decompression is not applied on the payload if the payload size is smaller than this value. Setting it to zero allows compression for any payload size. + /// [Input("minimumCompressionSize")] public Input? MinimumCompressionSize { get; set; } + /// + /// This property applies only when you use OpenAPI to define your REST API. The ``Mode`` determines how API Gateway handles resource updates. + /// Valid values are ``overwrite`` or ``merge``. + /// For ``overwrite``, the new API definition replaces the existing one. The existing API identifier remains unchanged. + /// For ``merge``, the new API definition is merged with the existing API. + /// If you don't specify this property, a default value is chosen. For REST APIs created before March 29, 2021, the default is ``overwrite``. For REST APIs created after March 29, 2021, the new API definition takes precedence, but any container types such as endpoint configurations and binary media types are merged with the existing API. + /// Use the default mode to define top-level ``RestApi`` properties in addition to using OpenAPI. Generally, it's preferred to use API Gateway's OpenAPI extensions to model these properties. + /// [Input("mode")] public Input? Mode { get; set; } + /// + /// The name of the RestApi. A name is required if the REST API is not based on an OpenAPI specification. + /// [Input("name")] public Input? Name { get; set; } + /// + /// Custom header parameters as part of the request. For example, to exclude DocumentationParts from an imported API, set ``ignore=documentation`` as a ``parameters`` value, as in the AWS CLI command of ``aws apigateway import-rest-api --parameters ignore=documentation --body 'file:///path/to/imported-api-body.json'``. + /// [Input("parameters")] public Input? Parameters { get; set; } + /// + /// A policy document that contains the permissions for the ``RestApi`` resource. To set the ARN for the policy, use the ``!Join`` intrinsic function with ``""`` as delimiter and values of ``"execute-api:/"`` and ``"*"``. + /// [Input("policy")] public Input? Policy { get; set; } [Input("tags")] private InputList? _tags; + + /// + /// The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with ``aws:``. The tag value can be up to 256 characters. + /// public InputList Tags { get => _tags ?? (_tags = new InputList()); diff --git a/sdk/dotnet/ApiGateway/Stage.cs b/sdk/dotnet/ApiGateway/Stage.cs index 565383c08e..9305b5eda2 100644 --- a/sdk/dotnet/ApiGateway/Stage.cs +++ b/sdk/dotnet/ApiGateway/Stage.cs @@ -10,91 +10,91 @@ namespace Pulumi.AwsNative.ApiGateway { /// - /// Resource Type definition for AWS::ApiGateway::Stage + /// The ``AWS::ApiGateway::Stage`` resource creates a stage for a deployment. /// [AwsNativeResourceType("aws-native:apigateway:Stage")] public partial class Stage : global::Pulumi.CustomResource { /// - /// Specifies settings for logging access in this stage. + /// Access log settings, including the access log format and access log destination ARN. /// [Output("accessLogSetting")] public Output AccessLogSetting { get; private set; } = null!; /// - /// Indicates whether cache clustering is enabled for the stage. + /// Specifies whether a cache cluster is enabled for the stage. /// [Output("cacheClusterEnabled")] public Output CacheClusterEnabled { get; private set; } = null!; /// - /// The stage's cache cluster size. + /// The stage's cache capacity in GB. For more information about choosing a cache size, see [Enabling API caching to enhance responsiveness](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html). /// [Output("cacheClusterSize")] public Output CacheClusterSize { get; private set; } = null!; /// - /// Specifies settings for the canary deployment in this stage. + /// Settings for the canary deployment in this stage. /// [Output("canarySetting")] public Output CanarySetting { get; private set; } = null!; /// - /// The ID of the client certificate that API Gateway uses to call your integration endpoints in the stage. + /// The identifier of a client certificate for an API stage. /// [Output("clientCertificateId")] public Output ClientCertificateId { get; private set; } = null!; /// - /// The ID of the deployment that the stage is associated with. This parameter is required to create a stage. + /// The identifier of the Deployment that the stage points to. /// [Output("deploymentId")] public Output DeploymentId { get; private set; } = null!; /// - /// A description of the stage. + /// The stage's description. /// [Output("description")] public Output Description { get; private set; } = null!; /// - /// The version ID of the API documentation snapshot. + /// The version of the associated API documentation. /// [Output("documentationVersion")] public Output DocumentationVersion { get; private set; } = null!; /// - /// Settings for all methods in the stage. + /// A map that defines the method settings for a Stage resource. Keys (designated as ``/{method_setting_key`` below) are method paths defined as ``{resource_path}/{http_method}`` for an individual method override, or ``/\*/\*`` for overriding all methods in the stage. /// [Output("methodSettings")] public Output> MethodSettings { get; private set; } = null!; /// - /// The ID of the RestApi resource that you're deploying with this stage. + /// The string identifier of the associated RestApi. /// [Output("restApiId")] public Output RestApiId { get; private set; } = null!; /// - /// The name of the stage, which API Gateway uses as the first path segment in the invoked Uniform Resource Identifier (URI). + /// The name of the stage is the first path segment in the Uniform Resource Identifier (URI) of a call to API Gateway. Stage names can only contain alphanumeric characters, hyphens, and underscores. Maximum length is 128 characters. /// [Output("stageName")] public Output StageName { get; private set; } = null!; /// - /// An array of arbitrary tags (key-value pairs) to associate with the stage. + /// The collection of tags. Each tag element is associated with a given resource. /// [Output("tags")] public Output> Tags { get; private set; } = null!; /// - /// Specifies whether active X-Ray tracing is enabled for this stage. + /// Specifies whether active tracing with X-ray is enabled for the Stage. /// [Output("tracingEnabled")] public Output TracingEnabled { get; private set; } = null!; /// - /// A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value. + /// A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value. Variable names are limited to alphanumeric characters. Values must match the following regular expression: ``[A-Za-z0-9-._~:/?#&=,]+``. /// [Output("variables")] public Output Variables { get; private set; } = null!; @@ -150,49 +150,49 @@ public static Stage Get(string name, Input id, CustomResourceOptions? op public sealed class StageArgs : global::Pulumi.ResourceArgs { /// - /// Specifies settings for logging access in this stage. + /// Access log settings, including the access log format and access log destination ARN. /// [Input("accessLogSetting")] public Input? AccessLogSetting { get; set; } /// - /// Indicates whether cache clustering is enabled for the stage. + /// Specifies whether a cache cluster is enabled for the stage. /// [Input("cacheClusterEnabled")] public Input? CacheClusterEnabled { get; set; } /// - /// The stage's cache cluster size. + /// The stage's cache capacity in GB. For more information about choosing a cache size, see [Enabling API caching to enhance responsiveness](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html). /// [Input("cacheClusterSize")] public Input? CacheClusterSize { get; set; } /// - /// Specifies settings for the canary deployment in this stage. + /// Settings for the canary deployment in this stage. /// [Input("canarySetting")] public Input? CanarySetting { get; set; } /// - /// The ID of the client certificate that API Gateway uses to call your integration endpoints in the stage. + /// The identifier of a client certificate for an API stage. /// [Input("clientCertificateId")] public Input? ClientCertificateId { get; set; } /// - /// The ID of the deployment that the stage is associated with. This parameter is required to create a stage. + /// The identifier of the Deployment that the stage points to. /// [Input("deploymentId")] public Input? DeploymentId { get; set; } /// - /// A description of the stage. + /// The stage's description. /// [Input("description")] public Input? Description { get; set; } /// - /// The version ID of the API documentation snapshot. + /// The version of the associated API documentation. /// [Input("documentationVersion")] public Input? DocumentationVersion { get; set; } @@ -201,7 +201,7 @@ public sealed class StageArgs : global::Pulumi.ResourceArgs private InputList? _methodSettings; /// - /// Settings for all methods in the stage. + /// A map that defines the method settings for a Stage resource. Keys (designated as ``/{method_setting_key`` below) are method paths defined as ``{resource_path}/{http_method}`` for an individual method override, or ``/\*/\*`` for overriding all methods in the stage. /// public InputList MethodSettings { @@ -210,13 +210,13 @@ public InputList MethodSettings } /// - /// The ID of the RestApi resource that you're deploying with this stage. + /// The string identifier of the associated RestApi. /// [Input("restApiId", required: true)] public Input RestApiId { get; set; } = null!; /// - /// The name of the stage, which API Gateway uses as the first path segment in the invoked Uniform Resource Identifier (URI). + /// The name of the stage is the first path segment in the Uniform Resource Identifier (URI) of a call to API Gateway. Stage names can only contain alphanumeric characters, hyphens, and underscores. Maximum length is 128 characters. /// [Input("stageName")] public Input? StageName { get; set; } @@ -225,7 +225,7 @@ public InputList MethodSettings private InputList? _tags; /// - /// An array of arbitrary tags (key-value pairs) to associate with the stage. + /// The collection of tags. Each tag element is associated with a given resource. /// public InputList Tags { @@ -234,13 +234,13 @@ public InputList Tags } /// - /// Specifies whether active X-Ray tracing is enabled for this stage. + /// Specifies whether active tracing with X-ray is enabled for the Stage. /// [Input("tracingEnabled")] public Input? TracingEnabled { get; set; } /// - /// A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value. + /// A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value. Variable names are limited to alphanumeric characters. Values must match the following regular expression: ``[A-Za-z0-9-._~:/?#&=,]+``. /// [Input("variables")] public Input? Variables { get; set; } diff --git a/sdk/dotnet/ApiGateway/UsagePlanKey.cs b/sdk/dotnet/ApiGateway/UsagePlanKey.cs index 64539c83b8..c879ea5205 100644 --- a/sdk/dotnet/ApiGateway/UsagePlanKey.cs +++ b/sdk/dotnet/ApiGateway/UsagePlanKey.cs @@ -10,25 +10,25 @@ namespace Pulumi.AwsNative.ApiGateway { /// - /// Resource Type definition for AWS::ApiGateway::UsagePlanKey + /// The ``AWS::ApiGateway::UsagePlanKey`` resource associates an API key with a usage plan. This association determines which users the usage plan is applied to. /// [AwsNativeResourceType("aws-native:apigateway:UsagePlanKey")] public partial class UsagePlanKey : global::Pulumi.CustomResource { /// - /// The ID of the usage plan key. + /// The Id of the UsagePlanKey resource. /// [Output("keyId")] public Output KeyId { get; private set; } = null!; /// - /// The type of usage plan key. Currently, the only valid key type is API_KEY. + /// The type of a UsagePlanKey resource for a plan customer. /// [Output("keyType")] public Output KeyType { get; private set; } = null!; /// - /// The ID of the usage plan. + /// The Id of the UsagePlan resource representing the usage plan containing the UsagePlanKey resource representing a plan customer. /// [Output("usagePlanId")] public Output UsagePlanId { get; private set; } = null!; @@ -85,19 +85,19 @@ public static UsagePlanKey Get(string name, Input id, CustomResourceOpti public sealed class UsagePlanKeyArgs : global::Pulumi.ResourceArgs { /// - /// The ID of the usage plan key. + /// The Id of the UsagePlanKey resource. /// [Input("keyId", required: true)] public Input KeyId { get; set; } = null!; /// - /// The type of usage plan key. Currently, the only valid key type is API_KEY. + /// The type of a UsagePlanKey resource for a plan customer. /// [Input("keyType", required: true)] public Input KeyType { get; set; } = null!; /// - /// The ID of the usage plan. + /// The Id of the UsagePlan resource representing the usage plan containing the UsagePlanKey resource representing a plan customer. /// [Input("usagePlanId", required: true)] public Input UsagePlanId { get; set; } = null!; diff --git a/sdk/dotnet/AppConfig/Application.cs b/sdk/dotnet/AppConfig/Application.cs index 07b352edef..a18b112b16 100644 --- a/sdk/dotnet/AppConfig/Application.cs +++ b/sdk/dotnet/AppConfig/Application.cs @@ -12,16 +12,30 @@ namespace Pulumi.AwsNative.AppConfig /// /// Resource Type definition for AWS::AppConfig::Application /// - [Obsolete(@"Application is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.")] [AwsNativeResourceType("aws-native:appconfig:Application")] public partial class Application : global::Pulumi.CustomResource { + /// + /// The application Id + /// + [Output("applicationId")] + public Output ApplicationId { get; private set; } = null!; + + /// + /// A description of the application. + /// [Output("description")] public Output Description { get; private set; } = null!; + /// + /// A name for the application. + /// [Output("name")] public Output Name { get; private set; } = null!; + /// + /// Metadata to assign to the application. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define. + /// [Output("tags")] public Output> Tags { get; private set; } = null!; @@ -70,14 +84,24 @@ public static Application Get(string name, Input id, CustomResourceOptio public sealed class ApplicationArgs : global::Pulumi.ResourceArgs { + /// + /// A description of the application. + /// [Input("description")] public Input? Description { get; set; } + /// + /// A name for the application. + /// [Input("name")] public Input? Name { get; set; } [Input("tags")] private InputList? _tags; + + /// + /// Metadata to assign to the application. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define. + /// public InputList Tags { get => _tags ?? (_tags = new InputList()); diff --git a/sdk/dotnet/AppConfig/ConfigurationProfile.cs b/sdk/dotnet/AppConfig/ConfigurationProfile.cs index 3836988bfa..6f9b072acf 100644 --- a/sdk/dotnet/AppConfig/ConfigurationProfile.cs +++ b/sdk/dotnet/AppConfig/ConfigurationProfile.cs @@ -22,6 +22,9 @@ public partial class ConfigurationProfile : global::Pulumi.CustomResource [Output("description")] public Output Description { get; private set; } = null!; + [Output("kmsKeyIdentifier")] + public Output KmsKeyIdentifier { get; private set; } = null!; + [Output("locationUri")] public Output LocationUri { get; private set; } = null!; @@ -97,6 +100,9 @@ public sealed class ConfigurationProfileArgs : global::Pulumi.ResourceArgs [Input("description")] public Input? Description { get; set; } + [Input("kmsKeyIdentifier")] + public Input? KmsKeyIdentifier { get; set; } + [Input("locationUri", required: true)] public Input LocationUri { get; set; } = null!; diff --git a/sdk/dotnet/AppConfig/GetApplication.cs b/sdk/dotnet/AppConfig/GetApplication.cs index 4ad50d2112..9a906b439a 100644 --- a/sdk/dotnet/AppConfig/GetApplication.cs +++ b/sdk/dotnet/AppConfig/GetApplication.cs @@ -27,8 +27,11 @@ public static Output Invoke(GetApplicationInvokeArgs args, public sealed class GetApplicationArgs : global::Pulumi.InvokeArgs { - [Input("id", required: true)] - public string Id { get; set; } = null!; + /// + /// The application Id + /// + [Input("applicationId", required: true)] + public string ApplicationId { get; set; } = null!; public GetApplicationArgs() { @@ -38,8 +41,11 @@ public GetApplicationArgs() public sealed class GetApplicationInvokeArgs : global::Pulumi.InvokeArgs { - [Input("id", required: true)] - public Input Id { get; set; } = null!; + /// + /// The application Id + /// + [Input("applicationId", required: true)] + public Input ApplicationId { get; set; } = null!; public GetApplicationInvokeArgs() { @@ -51,23 +57,35 @@ public GetApplicationInvokeArgs() [OutputType] public sealed class GetApplicationResult { + /// + /// The application Id + /// + public readonly string? ApplicationId; + /// + /// A description of the application. + /// public readonly string? Description; - public readonly string? Id; + /// + /// A name for the application. + /// public readonly string? Name; + /// + /// Metadata to assign to the application. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define. + /// public readonly ImmutableArray Tags; [OutputConstructor] private GetApplicationResult( - string? description, + string? applicationId, - string? id, + string? description, string? name, ImmutableArray tags) { + ApplicationId = applicationId; Description = description; - Id = id; Name = name; Tags = tags; } diff --git a/sdk/dotnet/AppConfig/GetConfigurationProfile.cs b/sdk/dotnet/AppConfig/GetConfigurationProfile.cs index 3db6802d3c..8b8965c385 100644 --- a/sdk/dotnet/AppConfig/GetConfigurationProfile.cs +++ b/sdk/dotnet/AppConfig/GetConfigurationProfile.cs @@ -53,6 +53,7 @@ public sealed class GetConfigurationProfileResult { public readonly string? Description; public readonly string? Id; + public readonly string? KmsKeyIdentifier; public readonly string? Name; public readonly string? RetrievalRoleArn; public readonly ImmutableArray Tags; @@ -64,6 +65,8 @@ private GetConfigurationProfileResult( string? id, + string? kmsKeyIdentifier, + string? name, string? retrievalRoleArn, @@ -74,6 +77,7 @@ private GetConfigurationProfileResult( { Description = description; Id = id; + KmsKeyIdentifier = kmsKeyIdentifier; Name = name; RetrievalRoleArn = retrievalRoleArn; Tags = tags; diff --git a/sdk/dotnet/AppConfig/Inputs/ApplicationTagsArgs.cs b/sdk/dotnet/AppConfig/Inputs/ApplicationTagsArgs.cs index b3d528f837..12c20a086b 100644 --- a/sdk/dotnet/AppConfig/Inputs/ApplicationTagsArgs.cs +++ b/sdk/dotnet/AppConfig/Inputs/ApplicationTagsArgs.cs @@ -10,13 +10,22 @@ namespace Pulumi.AwsNative.AppConfig.Inputs { + /// + /// Metadata to assign to the application. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define. + /// public sealed class ApplicationTagsArgs : global::Pulumi.ResourceArgs { - [Input("key")] - public Input? Key { get; set; } + /// + /// The key-value string map. The valid character set is [a-zA-Z1-9+-=._:/]. The tag key can be up to 128 characters and must not start with aws:. + /// + [Input("key", required: true)] + public Input Key { get; set; } = null!; - [Input("value")] - public Input? Value { get; set; } + /// + /// The tag value can be up to 256 characters. + /// + [Input("value", required: true)] + public Input Value { get; set; } = null!; public ApplicationTagsArgs() { diff --git a/sdk/dotnet/AppConfig/Outputs/ApplicationTags.cs b/sdk/dotnet/AppConfig/Outputs/ApplicationTags.cs index 5743aeb7d4..9ae1dc559f 100644 --- a/sdk/dotnet/AppConfig/Outputs/ApplicationTags.cs +++ b/sdk/dotnet/AppConfig/Outputs/ApplicationTags.cs @@ -10,17 +10,26 @@ namespace Pulumi.AwsNative.AppConfig.Outputs { + /// + /// Metadata to assign to the application. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define. + /// [OutputType] public sealed class ApplicationTags { - public readonly string? Key; - public readonly string? Value; + /// + /// The key-value string map. The valid character set is [a-zA-Z1-9+-=._:/]. The tag key can be up to 128 characters and must not start with aws:. + /// + public readonly string Key; + /// + /// The tag value can be up to 256 characters. + /// + public readonly string Value; [OutputConstructor] private ApplicationTags( - string? key, + string key, - string? value) + string value) { Key = key; Value = value; diff --git a/sdk/dotnet/AppSync/FunctionConfiguration.cs b/sdk/dotnet/AppSync/FunctionConfiguration.cs index 55b1d73063..ad37d30aba 100644 --- a/sdk/dotnet/AppSync/FunctionConfiguration.cs +++ b/sdk/dotnet/AppSync/FunctionConfiguration.cs @@ -10,57 +10,104 @@ namespace Pulumi.AwsNative.AppSync { /// - /// Resource Type definition for AWS::AppSync::FunctionConfiguration + /// An example resource schema demonstrating some basic constructs and validation rules. /// - [Obsolete(@"FunctionConfiguration is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.")] [AwsNativeResourceType("aws-native:appsync:FunctionConfiguration")] public partial class FunctionConfiguration : global::Pulumi.CustomResource { + /// + /// The AWS AppSync GraphQL API that you want to attach using this function. + /// [Output("apiId")] public Output ApiId { get; private set; } = null!; + /// + /// The resolver code that contains the request and response functions. When code is used, the runtime is required. The runtime value must be APPSYNC_JS. + /// [Output("code")] public Output Code { get; private set; } = null!; + /// + /// The Amazon S3 endpoint (where the code is located??). + /// [Output("codeS3Location")] public Output CodeS3Location { get; private set; } = null!; + /// + /// The name of data source this function will attach. + /// [Output("dataSourceName")] public Output DataSourceName { get; private set; } = null!; + /// + /// The function description. + /// [Output("description")] public Output Description { get; private set; } = null!; + /// + /// The ARN for the function generated by the service + /// [Output("functionArn")] public Output FunctionArn { get; private set; } = null!; + /// + /// The unique identifier for the function generated by the service + /// [Output("functionId")] public Output FunctionId { get; private set; } = null!; + /// + /// The version of the request mapping template. Currently, only the 2018-05-29 version of the template is supported. + /// [Output("functionVersion")] public Output FunctionVersion { get; private set; } = null!; + /// + /// The maximum number of resolver request inputs that will be sent to a single AWS Lambda function in a BatchInvoke operation. + /// [Output("maxBatchSize")] public Output MaxBatchSize { get; private set; } = null!; + /// + /// The name of the function. + /// [Output("name")] public Output Name { get; private set; } = null!; + /// + /// The Function request mapping template. Functions support only the 2018-05-29 version of the request mapping template. + /// [Output("requestMappingTemplate")] public Output RequestMappingTemplate { get; private set; } = null!; + /// + /// Describes a Sync configuration for a resolver. Contains information on which Conflict Detection, as well as Resolution strategy, should be performed when the resolver is invoked. + /// [Output("requestMappingTemplateS3Location")] public Output RequestMappingTemplateS3Location { get; private set; } = null!; + /// + /// The Function response mapping template. + /// [Output("responseMappingTemplate")] public Output ResponseMappingTemplate { get; private set; } = null!; + /// + /// The location of a response mapping template in an Amazon S3 bucket. Use this if you want to provision with a template file in Amazon S3 rather than embedding it in your CloudFormation template. + /// [Output("responseMappingTemplateS3Location")] public Output ResponseMappingTemplateS3Location { get; private set; } = null!; + /// + /// Describes a runtime used by an AWS AppSync pipeline resolver or AWS AppSync function. Specifies the name and version of the runtime to use. Note that if a runtime is specified, code must also be specified. + /// [Output("runtime")] public Output Runtime { get; private set; } = null!; + /// + /// Describes a Sync configuration for a resolver. Specifies which Conflict Detection strategy and Resolution strategy to use when the resolver is invoked. + /// [Output("syncConfig")] public Output SyncConfig { get; private set; } = null!; @@ -113,45 +160,87 @@ public static FunctionConfiguration Get(string name, Input id, CustomRes public sealed class FunctionConfigurationArgs : global::Pulumi.ResourceArgs { + /// + /// The AWS AppSync GraphQL API that you want to attach using this function. + /// [Input("apiId", required: true)] public Input ApiId { get; set; } = null!; + /// + /// The resolver code that contains the request and response functions. When code is used, the runtime is required. The runtime value must be APPSYNC_JS. + /// [Input("code")] public Input? Code { get; set; } + /// + /// The Amazon S3 endpoint (where the code is located??). + /// [Input("codeS3Location")] public Input? CodeS3Location { get; set; } + /// + /// The name of data source this function will attach. + /// [Input("dataSourceName", required: true)] public Input DataSourceName { get; set; } = null!; + /// + /// The function description. + /// [Input("description")] public Input? Description { get; set; } + /// + /// The version of the request mapping template. Currently, only the 2018-05-29 version of the template is supported. + /// [Input("functionVersion")] public Input? FunctionVersion { get; set; } + /// + /// The maximum number of resolver request inputs that will be sent to a single AWS Lambda function in a BatchInvoke operation. + /// [Input("maxBatchSize")] public Input? MaxBatchSize { get; set; } + /// + /// The name of the function. + /// [Input("name")] public Input? Name { get; set; } + /// + /// The Function request mapping template. Functions support only the 2018-05-29 version of the request mapping template. + /// [Input("requestMappingTemplate")] public Input? RequestMappingTemplate { get; set; } + /// + /// Describes a Sync configuration for a resolver. Contains information on which Conflict Detection, as well as Resolution strategy, should be performed when the resolver is invoked. + /// [Input("requestMappingTemplateS3Location")] public Input? RequestMappingTemplateS3Location { get; set; } + /// + /// The Function response mapping template. + /// [Input("responseMappingTemplate")] public Input? ResponseMappingTemplate { get; set; } + /// + /// The location of a response mapping template in an Amazon S3 bucket. Use this if you want to provision with a template file in Amazon S3 rather than embedding it in your CloudFormation template. + /// [Input("responseMappingTemplateS3Location")] public Input? ResponseMappingTemplateS3Location { get; set; } + /// + /// Describes a runtime used by an AWS AppSync pipeline resolver or AWS AppSync function. Specifies the name and version of the runtime to use. Note that if a runtime is specified, code must also be specified. + /// [Input("runtime")] public Input? Runtime { get; set; } + /// + /// Describes a Sync configuration for a resolver. Specifies which Conflict Detection strategy and Resolution strategy to use when the resolver is invoked. + /// [Input("syncConfig")] public Input? SyncConfig { get; set; } diff --git a/sdk/dotnet/AppSync/GetFunctionConfiguration.cs b/sdk/dotnet/AppSync/GetFunctionConfiguration.cs index 2af2a9b368..cdbac833bc 100644 --- a/sdk/dotnet/AppSync/GetFunctionConfiguration.cs +++ b/sdk/dotnet/AppSync/GetFunctionConfiguration.cs @@ -12,13 +12,13 @@ namespace Pulumi.AwsNative.AppSync public static class GetFunctionConfiguration { /// - /// Resource Type definition for AWS::AppSync::FunctionConfiguration + /// An example resource schema demonstrating some basic constructs and validation rules. /// public static Task InvokeAsync(GetFunctionConfigurationArgs args, InvokeOptions? options = null) => global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:appsync:getFunctionConfiguration", args ?? new GetFunctionConfigurationArgs(), options.WithDefaults()); /// - /// Resource Type definition for AWS::AppSync::FunctionConfiguration + /// An example resource schema demonstrating some basic constructs and validation rules. /// public static Output Invoke(GetFunctionConfigurationInvokeArgs args, InvokeOptions? options = null) => global::Pulumi.Deployment.Instance.Invoke("aws-native:appsync:getFunctionConfiguration", args ?? new GetFunctionConfigurationInvokeArgs(), options.WithDefaults()); @@ -27,8 +27,11 @@ public static Output Invoke(GetFunctionConfigura public sealed class GetFunctionConfigurationArgs : global::Pulumi.InvokeArgs { - [Input("id", required: true)] - public string Id { get; set; } = null!; + /// + /// The ARN for the function generated by the service + /// + [Input("functionArn", required: true)] + public string FunctionArn { get; set; } = null!; public GetFunctionConfigurationArgs() { @@ -38,8 +41,11 @@ public GetFunctionConfigurationArgs() public sealed class GetFunctionConfigurationInvokeArgs : global::Pulumi.InvokeArgs { - [Input("id", required: true)] - public Input Id { get; set; } = null!; + /// + /// The ARN for the function generated by the service + /// + [Input("functionArn", required: true)] + public Input FunctionArn { get; set; } = null!; public GetFunctionConfigurationInvokeArgs() { @@ -51,29 +57,59 @@ public GetFunctionConfigurationInvokeArgs() [OutputType] public sealed class GetFunctionConfigurationResult { + /// + /// The resolver code that contains the request and response functions. When code is used, the runtime is required. The runtime value must be APPSYNC_JS. + /// public readonly string? Code; - public readonly string? CodeS3Location; + /// + /// The name of data source this function will attach. + /// public readonly string? DataSourceName; + /// + /// The function description. + /// public readonly string? Description; + /// + /// The ARN for the function generated by the service + /// public readonly string? FunctionArn; + /// + /// The unique identifier for the function generated by the service + /// public readonly string? FunctionId; + /// + /// The version of the request mapping template. Currently, only the 2018-05-29 version of the template is supported. + /// public readonly string? FunctionVersion; - public readonly string? Id; + /// + /// The maximum number of resolver request inputs that will be sent to a single AWS Lambda function in a BatchInvoke operation. + /// public readonly int? MaxBatchSize; + /// + /// The name of the function. + /// public readonly string? Name; + /// + /// The Function request mapping template. Functions support only the 2018-05-29 version of the request mapping template. + /// public readonly string? RequestMappingTemplate; - public readonly string? RequestMappingTemplateS3Location; + /// + /// The Function response mapping template. + /// public readonly string? ResponseMappingTemplate; - public readonly string? ResponseMappingTemplateS3Location; + /// + /// Describes a runtime used by an AWS AppSync pipeline resolver or AWS AppSync function. Specifies the name and version of the runtime to use. Note that if a runtime is specified, code must also be specified. + /// public readonly Outputs.FunctionConfigurationAppSyncRuntime? Runtime; + /// + /// Describes a Sync configuration for a resolver. Specifies which Conflict Detection strategy and Resolution strategy to use when the resolver is invoked. + /// public readonly Outputs.FunctionConfigurationSyncConfig? SyncConfig; [OutputConstructor] private GetFunctionConfigurationResult( string? code, - string? codeS3Location, - string? dataSourceName, string? description, @@ -84,38 +120,28 @@ private GetFunctionConfigurationResult( string? functionVersion, - string? id, - int? maxBatchSize, string? name, string? requestMappingTemplate, - string? requestMappingTemplateS3Location, - string? responseMappingTemplate, - string? responseMappingTemplateS3Location, - Outputs.FunctionConfigurationAppSyncRuntime? runtime, Outputs.FunctionConfigurationSyncConfig? syncConfig) { Code = code; - CodeS3Location = codeS3Location; DataSourceName = dataSourceName; Description = description; FunctionArn = functionArn; FunctionId = functionId; FunctionVersion = functionVersion; - Id = id; MaxBatchSize = maxBatchSize; Name = name; RequestMappingTemplate = requestMappingTemplate; - RequestMappingTemplateS3Location = requestMappingTemplateS3Location; ResponseMappingTemplate = responseMappingTemplate; - ResponseMappingTemplateS3Location = responseMappingTemplateS3Location; Runtime = runtime; SyncConfig = syncConfig; } diff --git a/sdk/dotnet/AppSync/Inputs/FunctionConfigurationAppSyncRuntimeArgs.cs b/sdk/dotnet/AppSync/Inputs/FunctionConfigurationAppSyncRuntimeArgs.cs index 4251ea8e47..adf39a7a22 100644 --- a/sdk/dotnet/AppSync/Inputs/FunctionConfigurationAppSyncRuntimeArgs.cs +++ b/sdk/dotnet/AppSync/Inputs/FunctionConfigurationAppSyncRuntimeArgs.cs @@ -10,11 +10,20 @@ namespace Pulumi.AwsNative.AppSync.Inputs { + /// + /// Describes a runtime used by an AWS AppSync pipeline resolver or AWS AppSync function. Specifies the name and version of the runtime to use. Note that if a runtime is specified, code must also be specified. + /// public sealed class FunctionConfigurationAppSyncRuntimeArgs : global::Pulumi.ResourceArgs { + /// + /// The name of the runtime to use. Currently, the only allowed value is APPSYNC_JS. + /// [Input("name", required: true)] public Input Name { get; set; } = null!; + /// + /// The version of the runtime to use. Currently, the only allowed version is 1.0.0. + /// [Input("runtimeVersion", required: true)] public Input RuntimeVersion { get; set; } = null!; diff --git a/sdk/dotnet/AppSync/Inputs/FunctionConfigurationLambdaConflictHandlerConfigArgs.cs b/sdk/dotnet/AppSync/Inputs/FunctionConfigurationLambdaConflictHandlerConfigArgs.cs index e0c4acf866..e7d9be6fe9 100644 --- a/sdk/dotnet/AppSync/Inputs/FunctionConfigurationLambdaConflictHandlerConfigArgs.cs +++ b/sdk/dotnet/AppSync/Inputs/FunctionConfigurationLambdaConflictHandlerConfigArgs.cs @@ -10,8 +10,14 @@ namespace Pulumi.AwsNative.AppSync.Inputs { + /// + /// The LambdaConflictHandlerConfig when configuring LAMBDA as the Conflict Handler. + /// public sealed class FunctionConfigurationLambdaConflictHandlerConfigArgs : global::Pulumi.ResourceArgs { + /// + /// The Amazon Resource Name (ARN) for the Lambda function to use as the Conflict Handler. + /// [Input("lambdaConflictHandlerArn")] public Input? LambdaConflictHandlerArn { get; set; } diff --git a/sdk/dotnet/AppSync/Inputs/FunctionConfigurationSyncConfigArgs.cs b/sdk/dotnet/AppSync/Inputs/FunctionConfigurationSyncConfigArgs.cs index 7616f80e63..9d34717f26 100644 --- a/sdk/dotnet/AppSync/Inputs/FunctionConfigurationSyncConfigArgs.cs +++ b/sdk/dotnet/AppSync/Inputs/FunctionConfigurationSyncConfigArgs.cs @@ -10,11 +10,20 @@ namespace Pulumi.AwsNative.AppSync.Inputs { + /// + /// Describes a Sync configuration for a resolver. Specifies which Conflict Detection strategy and Resolution strategy to use when the resolver is invoked. + /// public sealed class FunctionConfigurationSyncConfigArgs : global::Pulumi.ResourceArgs { + /// + /// The Conflict Detection strategy to use. + /// [Input("conflictDetection", required: true)] public Input ConflictDetection { get; set; } = null!; + /// + /// The Conflict Resolution strategy to perform in the event of a conflict. + /// [Input("conflictHandler")] public Input? ConflictHandler { get; set; } diff --git a/sdk/dotnet/AppSync/Outputs/FunctionConfigurationAppSyncRuntime.cs b/sdk/dotnet/AppSync/Outputs/FunctionConfigurationAppSyncRuntime.cs index b26d53f4cc..ee82b31dd3 100644 --- a/sdk/dotnet/AppSync/Outputs/FunctionConfigurationAppSyncRuntime.cs +++ b/sdk/dotnet/AppSync/Outputs/FunctionConfigurationAppSyncRuntime.cs @@ -10,10 +10,19 @@ namespace Pulumi.AwsNative.AppSync.Outputs { + /// + /// Describes a runtime used by an AWS AppSync pipeline resolver or AWS AppSync function. Specifies the name and version of the runtime to use. Note that if a runtime is specified, code must also be specified. + /// [OutputType] public sealed class FunctionConfigurationAppSyncRuntime { + /// + /// The name of the runtime to use. Currently, the only allowed value is APPSYNC_JS. + /// public readonly string Name; + /// + /// The version of the runtime to use. Currently, the only allowed version is 1.0.0. + /// public readonly string RuntimeVersion; [OutputConstructor] diff --git a/sdk/dotnet/AppSync/Outputs/FunctionConfigurationLambdaConflictHandlerConfig.cs b/sdk/dotnet/AppSync/Outputs/FunctionConfigurationLambdaConflictHandlerConfig.cs index 33099c43a0..b7cdff232d 100644 --- a/sdk/dotnet/AppSync/Outputs/FunctionConfigurationLambdaConflictHandlerConfig.cs +++ b/sdk/dotnet/AppSync/Outputs/FunctionConfigurationLambdaConflictHandlerConfig.cs @@ -10,9 +10,15 @@ namespace Pulumi.AwsNative.AppSync.Outputs { + /// + /// The LambdaConflictHandlerConfig when configuring LAMBDA as the Conflict Handler. + /// [OutputType] public sealed class FunctionConfigurationLambdaConflictHandlerConfig { + /// + /// The Amazon Resource Name (ARN) for the Lambda function to use as the Conflict Handler. + /// public readonly string? LambdaConflictHandlerArn; [OutputConstructor] diff --git a/sdk/dotnet/AppSync/Outputs/FunctionConfigurationSyncConfig.cs b/sdk/dotnet/AppSync/Outputs/FunctionConfigurationSyncConfig.cs index 3404e17fb6..281109f9f1 100644 --- a/sdk/dotnet/AppSync/Outputs/FunctionConfigurationSyncConfig.cs +++ b/sdk/dotnet/AppSync/Outputs/FunctionConfigurationSyncConfig.cs @@ -10,10 +10,19 @@ namespace Pulumi.AwsNative.AppSync.Outputs { + /// + /// Describes a Sync configuration for a resolver. Specifies which Conflict Detection strategy and Resolution strategy to use when the resolver is invoked. + /// [OutputType] public sealed class FunctionConfigurationSyncConfig { + /// + /// The Conflict Detection strategy to use. + /// public readonly string ConflictDetection; + /// + /// The Conflict Resolution strategy to perform in the event of a conflict. + /// public readonly string? ConflictHandler; public readonly Outputs.FunctionConfigurationLambdaConflictHandlerConfig? LambdaConflictHandlerConfig; diff --git a/sdk/dotnet/Cognito/GetIdentityPool.cs b/sdk/dotnet/Cognito/GetIdentityPool.cs index 10ec83bd0c..95fe7588d9 100644 --- a/sdk/dotnet/Cognito/GetIdentityPool.cs +++ b/sdk/dotnet/Cognito/GetIdentityPool.cs @@ -53,16 +53,15 @@ public sealed class GetIdentityPoolResult { public readonly bool? AllowClassicFlow; public readonly bool? AllowUnauthenticatedIdentities; + public readonly object? CognitoEvents; public readonly ImmutableArray CognitoIdentityProviders; + public readonly Outputs.IdentityPoolCognitoStreams? CognitoStreams; public readonly string? DeveloperProviderName; public readonly string? Id; public readonly string? IdentityPoolName; - /// - /// An array of key-value pairs to apply to this resource. - /// - public readonly ImmutableArray IdentityPoolTags; public readonly string? Name; public readonly ImmutableArray OpenIdConnectProviderArns; + public readonly Outputs.IdentityPoolPushSync? PushSync; public readonly ImmutableArray SamlProviderArns; public readonly object? SupportedLoginProviders; @@ -72,33 +71,39 @@ private GetIdentityPoolResult( bool? allowUnauthenticatedIdentities, + object? cognitoEvents, + ImmutableArray cognitoIdentityProviders, + Outputs.IdentityPoolCognitoStreams? cognitoStreams, + string? developerProviderName, string? id, string? identityPoolName, - ImmutableArray identityPoolTags, - string? name, ImmutableArray openIdConnectProviderArns, + Outputs.IdentityPoolPushSync? pushSync, + ImmutableArray samlProviderArns, object? supportedLoginProviders) { AllowClassicFlow = allowClassicFlow; AllowUnauthenticatedIdentities = allowUnauthenticatedIdentities; + CognitoEvents = cognitoEvents; CognitoIdentityProviders = cognitoIdentityProviders; + CognitoStreams = cognitoStreams; DeveloperProviderName = developerProviderName; Id = id; IdentityPoolName = identityPoolName; - IdentityPoolTags = identityPoolTags; Name = name; OpenIdConnectProviderArns = openIdConnectProviderArns; + PushSync = pushSync; SamlProviderArns = samlProviderArns; SupportedLoginProviders = supportedLoginProviders; } diff --git a/sdk/dotnet/Cognito/GetUserPool.cs b/sdk/dotnet/Cognito/GetUserPool.cs index cac3ee4705..0ff179d71e 100644 --- a/sdk/dotnet/Cognito/GetUserPool.cs +++ b/sdk/dotnet/Cognito/GetUserPool.cs @@ -27,8 +27,8 @@ public static Output Invoke(GetUserPoolInvokeArgs args, Invok public sealed class GetUserPoolArgs : global::Pulumi.InvokeArgs { - [Input("id", required: true)] - public string Id { get; set; } = null!; + [Input("userPoolId", required: true)] + public string UserPoolId { get; set; } = null!; public GetUserPoolArgs() { @@ -38,8 +38,8 @@ public GetUserPoolArgs() public sealed class GetUserPoolInvokeArgs : global::Pulumi.InvokeArgs { - [Input("id", required: true)] - public Input Id { get; set; } = null!; + [Input("userPoolId", required: true)] + public Input UserPoolId { get; set; } = null!; public GetUserPoolInvokeArgs() { @@ -61,8 +61,6 @@ public sealed class GetUserPoolResult public readonly Outputs.UserPoolEmailConfiguration? EmailConfiguration; public readonly string? EmailVerificationMessage; public readonly string? EmailVerificationSubject; - public readonly ImmutableArray EnabledMfas; - public readonly string? Id; public readonly Outputs.UserPoolLambdaConfig? LambdaConfig; public readonly string? MfaConfiguration; public readonly Outputs.UserPoolPolicies? Policies; @@ -74,6 +72,7 @@ public sealed class GetUserPoolResult public readonly string? SmsVerificationMessage; public readonly Outputs.UserPoolUserAttributeUpdateSettings? UserAttributeUpdateSettings; public readonly Outputs.UserPoolAddOns? UserPoolAddOns; + public readonly string? UserPoolId; public readonly string? UserPoolName; public readonly object? UserPoolTags; public readonly ImmutableArray UsernameAttributes; @@ -102,10 +101,6 @@ private GetUserPoolResult( string? emailVerificationSubject, - ImmutableArray enabledMfas, - - string? id, - Outputs.UserPoolLambdaConfig? lambdaConfig, string? mfaConfiguration, @@ -128,6 +123,8 @@ private GetUserPoolResult( Outputs.UserPoolAddOns? userPoolAddOns, + string? userPoolId, + string? userPoolName, object? userPoolTags, @@ -148,8 +145,6 @@ private GetUserPoolResult( EmailConfiguration = emailConfiguration; EmailVerificationMessage = emailVerificationMessage; EmailVerificationSubject = emailVerificationSubject; - EnabledMfas = enabledMfas; - Id = id; LambdaConfig = lambdaConfig; MfaConfiguration = mfaConfiguration; Policies = policies; @@ -161,6 +156,7 @@ private GetUserPoolResult( SmsVerificationMessage = smsVerificationMessage; UserAttributeUpdateSettings = userAttributeUpdateSettings; UserPoolAddOns = userPoolAddOns; + UserPoolId = userPoolId; UserPoolName = userPoolName; UserPoolTags = userPoolTags; UsernameAttributes = usernameAttributes; diff --git a/sdk/dotnet/Cognito/GetUserPoolGroup.cs b/sdk/dotnet/Cognito/GetUserPoolGroup.cs index c702f5c7b6..0e8815c817 100644 --- a/sdk/dotnet/Cognito/GetUserPoolGroup.cs +++ b/sdk/dotnet/Cognito/GetUserPoolGroup.cs @@ -27,8 +27,11 @@ public static Output Invoke(GetUserPoolGroupInvokeArgs a public sealed class GetUserPoolGroupArgs : global::Pulumi.InvokeArgs { - [Input("id", required: true)] - public string Id { get; set; } = null!; + [Input("groupName", required: true)] + public string GroupName { get; set; } = null!; + + [Input("userPoolId", required: true)] + public string UserPoolId { get; set; } = null!; public GetUserPoolGroupArgs() { @@ -38,8 +41,11 @@ public GetUserPoolGroupArgs() public sealed class GetUserPoolGroupInvokeArgs : global::Pulumi.InvokeArgs { - [Input("id", required: true)] - public Input Id { get; set; } = null!; + [Input("groupName", required: true)] + public Input GroupName { get; set; } = null!; + + [Input("userPoolId", required: true)] + public Input UserPoolId { get; set; } = null!; public GetUserPoolGroupInvokeArgs() { @@ -52,22 +58,18 @@ public GetUserPoolGroupInvokeArgs() public sealed class GetUserPoolGroupResult { public readonly string? Description; - public readonly string? Id; - public readonly double? Precedence; + public readonly int? Precedence; public readonly string? RoleArn; [OutputConstructor] private GetUserPoolGroupResult( string? description, - string? id, - - double? precedence, + int? precedence, string? roleArn) { Description = description; - Id = id; Precedence = precedence; RoleArn = roleArn; } diff --git a/sdk/dotnet/Cognito/IdentityPool.cs b/sdk/dotnet/Cognito/IdentityPool.cs index b5744818a2..f8a85c8f02 100644 --- a/sdk/dotnet/Cognito/IdentityPool.cs +++ b/sdk/dotnet/Cognito/IdentityPool.cs @@ -36,12 +36,6 @@ public partial class IdentityPool : global::Pulumi.CustomResource [Output("identityPoolName")] public Output IdentityPoolName { get; private set; } = null!; - /// - /// An array of key-value pairs to apply to this resource. - /// - [Output("identityPoolTags")] - public Output> IdentityPoolTags { get; private set; } = null!; - [Output("name")] public Output Name { get; private set; } = null!; @@ -128,18 +122,6 @@ public InputList CognitoIdentity [Input("identityPoolName")] public Input? IdentityPoolName { get; set; } - [Input("identityPoolTags")] - private InputList? _identityPoolTags; - - /// - /// An array of key-value pairs to apply to this resource. - /// - public InputList IdentityPoolTags - { - get => _identityPoolTags ?? (_identityPoolTags = new InputList()); - set => _identityPoolTags = value; - } - [Input("openIdConnectProviderArns")] private InputList? _openIdConnectProviderArns; public InputList OpenIdConnectProviderArns diff --git a/sdk/dotnet/Cognito/Inputs/IdentityPoolCognitoIdentityProviderArgs.cs b/sdk/dotnet/Cognito/Inputs/IdentityPoolCognitoIdentityProviderArgs.cs index fd1fcf3659..214f3842e8 100644 --- a/sdk/dotnet/Cognito/Inputs/IdentityPoolCognitoIdentityProviderArgs.cs +++ b/sdk/dotnet/Cognito/Inputs/IdentityPoolCognitoIdentityProviderArgs.cs @@ -12,11 +12,11 @@ namespace Pulumi.AwsNative.Cognito.Inputs public sealed class IdentityPoolCognitoIdentityProviderArgs : global::Pulumi.ResourceArgs { - [Input("clientId", required: true)] - public Input ClientId { get; set; } = null!; + [Input("clientId")] + public Input? ClientId { get; set; } - [Input("providerName", required: true)] - public Input ProviderName { get; set; } = null!; + [Input("providerName")] + public Input? ProviderName { get; set; } [Input("serverSideTokenCheck")] public Input? ServerSideTokenCheck { get; set; } diff --git a/sdk/dotnet/Cognito/Outputs/IdentityPoolCognitoIdentityProvider.cs b/sdk/dotnet/Cognito/Outputs/IdentityPoolCognitoIdentityProvider.cs index 43ad2f421d..49ee3af259 100644 --- a/sdk/dotnet/Cognito/Outputs/IdentityPoolCognitoIdentityProvider.cs +++ b/sdk/dotnet/Cognito/Outputs/IdentityPoolCognitoIdentityProvider.cs @@ -13,15 +13,15 @@ namespace Pulumi.AwsNative.Cognito.Outputs [OutputType] public sealed class IdentityPoolCognitoIdentityProvider { - public readonly string ClientId; - public readonly string ProviderName; + public readonly string? ClientId; + public readonly string? ProviderName; public readonly bool? ServerSideTokenCheck; [OutputConstructor] private IdentityPoolCognitoIdentityProvider( - string clientId, + string? clientId, - string providerName, + string? providerName, bool? serverSideTokenCheck) { diff --git a/sdk/dotnet/Cognito/UserPool.cs b/sdk/dotnet/Cognito/UserPool.cs index 207bbc99bb..6913361cb7 100644 --- a/sdk/dotnet/Cognito/UserPool.cs +++ b/sdk/dotnet/Cognito/UserPool.cs @@ -12,7 +12,6 @@ namespace Pulumi.AwsNative.Cognito /// /// Resource Type definition for AWS::Cognito::UserPool /// - [Obsolete(@"UserPool is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.")] [AwsNativeResourceType("aws-native:cognito:UserPool")] public partial class UserPool : global::Pulumi.CustomResource { @@ -82,6 +81,9 @@ public partial class UserPool : global::Pulumi.CustomResource [Output("userPoolAddOns")] public Output UserPoolAddOns { get; private set; } = null!; + [Output("userPoolId")] + public Output UserPoolId { get; private set; } = null!; + [Output("userPoolName")] public Output UserPoolName { get; private set; } = null!; diff --git a/sdk/dotnet/Cognito/UserPoolGroup.cs b/sdk/dotnet/Cognito/UserPoolGroup.cs index 16f7e590d2..723fb58830 100644 --- a/sdk/dotnet/Cognito/UserPoolGroup.cs +++ b/sdk/dotnet/Cognito/UserPoolGroup.cs @@ -12,7 +12,6 @@ namespace Pulumi.AwsNative.Cognito /// /// Resource Type definition for AWS::Cognito::UserPoolGroup /// - [Obsolete(@"UserPoolGroup is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.")] [AwsNativeResourceType("aws-native:cognito:UserPoolGroup")] public partial class UserPoolGroup : global::Pulumi.CustomResource { @@ -23,7 +22,7 @@ public partial class UserPoolGroup : global::Pulumi.CustomResource public Output GroupName { get; private set; } = null!; [Output("precedence")] - public Output Precedence { get; private set; } = null!; + public Output Precedence { get; private set; } = null!; [Output("roleArn")] public Output RoleArn { get; private set; } = null!; @@ -88,7 +87,7 @@ public sealed class UserPoolGroupArgs : global::Pulumi.ResourceArgs public Input? GroupName { get; set; } [Input("precedence")] - public Input? Precedence { get; set; } + public Input? Precedence { get; set; } [Input("roleArn")] public Input? RoleArn { get; set; } diff --git a/sdk/dotnet/Connect/ContactFlowModule.cs b/sdk/dotnet/Connect/ContactFlowModule.cs index 0393500e8e..c9b007de36 100644 --- a/sdk/dotnet/Connect/ContactFlowModule.cs +++ b/sdk/dotnet/Connect/ContactFlowModule.cs @@ -49,13 +49,13 @@ public partial class ContactFlowModule : global::Pulumi.CustomResource /// The state of the contact flow module. /// [Output("state")] - public Output State { get; private set; } = null!; + public Output State { get; private set; } = null!; /// /// The status of the contact flow module. /// [Output("status")] - public Output Status { get; private set; } = null!; + public Output Status { get; private set; } = null!; /// /// One or more tags. @@ -136,7 +136,7 @@ public sealed class ContactFlowModuleArgs : global::Pulumi.ResourceArgs /// The state of the contact flow module. /// [Input("state")] - public Input? State { get; set; } + public Input? State { get; set; } [Input("tags")] private InputList? _tags; diff --git a/sdk/dotnet/Connect/Enums.cs b/sdk/dotnet/Connect/Enums.cs index 1785171462..51a4f5bc9c 100644 --- a/sdk/dotnet/Connect/Enums.cs +++ b/sdk/dotnet/Connect/Enums.cs @@ -7,68 +7,6 @@ namespace Pulumi.AwsNative.Connect { - /// - /// The state of the contact flow module. - /// - [EnumType] - public readonly struct ContactFlowModuleState : IEquatable - { - private readonly string _value; - - private ContactFlowModuleState(string value) - { - _value = value ?? throw new ArgumentNullException(nameof(value)); - } - - public static ContactFlowModuleState Active { get; } = new ContactFlowModuleState("ACTIVE"); - public static ContactFlowModuleState Archived { get; } = new ContactFlowModuleState("ARCHIVED"); - - public static bool operator ==(ContactFlowModuleState left, ContactFlowModuleState right) => left.Equals(right); - public static bool operator !=(ContactFlowModuleState left, ContactFlowModuleState right) => !left.Equals(right); - - public static explicit operator string(ContactFlowModuleState value) => value._value; - - [EditorBrowsable(EditorBrowsableState.Never)] - public override bool Equals(object? obj) => obj is ContactFlowModuleState other && Equals(other); - public bool Equals(ContactFlowModuleState other) => string.Equals(_value, other._value, StringComparison.Ordinal); - - [EditorBrowsable(EditorBrowsableState.Never)] - public override int GetHashCode() => _value?.GetHashCode() ?? 0; - - public override string ToString() => _value; - } - - /// - /// The status of the contact flow module. - /// - [EnumType] - public readonly struct ContactFlowModuleStatus : IEquatable - { - private readonly string _value; - - private ContactFlowModuleStatus(string value) - { - _value = value ?? throw new ArgumentNullException(nameof(value)); - } - - public static ContactFlowModuleStatus Published { get; } = new ContactFlowModuleStatus("PUBLISHED"); - public static ContactFlowModuleStatus Saved { get; } = new ContactFlowModuleStatus("SAVED"); - - public static bool operator ==(ContactFlowModuleStatus left, ContactFlowModuleStatus right) => left.Equals(right); - public static bool operator !=(ContactFlowModuleStatus left, ContactFlowModuleStatus right) => !left.Equals(right); - - public static explicit operator string(ContactFlowModuleStatus value) => value._value; - - [EditorBrowsable(EditorBrowsableState.Never)] - public override bool Equals(object? obj) => obj is ContactFlowModuleStatus other && Equals(other); - public bool Equals(ContactFlowModuleStatus other) => string.Equals(_value, other._value, StringComparison.Ordinal); - - [EditorBrowsable(EditorBrowsableState.Never)] - public override int GetHashCode() => _value?.GetHashCode() ?? 0; - - public override string ToString() => _value; - } - /// /// The state of the contact flow. /// diff --git a/sdk/dotnet/Connect/GetContactFlowModule.cs b/sdk/dotnet/Connect/GetContactFlowModule.cs index 5e3a3f3068..8ff2551220 100644 --- a/sdk/dotnet/Connect/GetContactFlowModule.cs +++ b/sdk/dotnet/Connect/GetContactFlowModule.cs @@ -80,11 +80,11 @@ public sealed class GetContactFlowModuleResult /// /// The state of the contact flow module. /// - public readonly Pulumi.AwsNative.Connect.ContactFlowModuleState? State; + public readonly string? State; /// /// The status of the contact flow module. /// - public readonly Pulumi.AwsNative.Connect.ContactFlowModuleStatus? Status; + public readonly string? Status; /// /// One or more tags. /// @@ -102,9 +102,9 @@ private GetContactFlowModuleResult( string? name, - Pulumi.AwsNative.Connect.ContactFlowModuleState? state, + string? state, - Pulumi.AwsNative.Connect.ContactFlowModuleStatus? status, + string? status, ImmutableArray tags) { diff --git a/sdk/dotnet/CustomerProfiles/Domain.cs b/sdk/dotnet/CustomerProfiles/Domain.cs index 8c1b52b41c..1f8e3d1989 100644 --- a/sdk/dotnet/CustomerProfiles/Domain.cs +++ b/sdk/dotnet/CustomerProfiles/Domain.cs @@ -51,6 +51,15 @@ public partial class Domain : global::Pulumi.CustomResource [Output("lastUpdatedAt")] public Output LastUpdatedAt { get; private set; } = null!; + [Output("matching")] + public Output Matching { get; private set; } = null!; + + [Output("ruleBasedMatching")] + public Output RuleBasedMatching { get; private set; } = null!; + + [Output("stats")] + public Output Stats { get; private set; } = null!; + /// /// The tags (keys and values) associated with the domain /// @@ -130,6 +139,12 @@ public sealed class DomainArgs : global::Pulumi.ResourceArgs [Input("domainName")] public Input? DomainName { get; set; } + [Input("matching")] + public Input? Matching { get; set; } + + [Input("ruleBasedMatching")] + public Input? RuleBasedMatching { get; set; } + [Input("tags")] private InputList? _tags; diff --git a/sdk/dotnet/CustomerProfiles/Enums.cs b/sdk/dotnet/CustomerProfiles/Enums.cs index edb80c562e..515193e4f1 100644 --- a/sdk/dotnet/CustomerProfiles/Enums.cs +++ b/sdk/dotnet/CustomerProfiles/Enums.cs @@ -107,6 +107,133 @@ private CalculatedAttributeDefinitionThresholdOperator(string value) public override string ToString() => _value; } + /// + /// Configures the AttributeMatchingModel, you can either choose ONE_TO_ONE or MANY_TO_MANY. + /// + [EnumType] + public readonly struct DomainAttributeTypesSelectorAttributeMatchingModel : IEquatable + { + private readonly string _value; + + private DomainAttributeTypesSelectorAttributeMatchingModel(string value) + { + _value = value ?? throw new ArgumentNullException(nameof(value)); + } + + public static DomainAttributeTypesSelectorAttributeMatchingModel OneToOne { get; } = new DomainAttributeTypesSelectorAttributeMatchingModel("ONE_TO_ONE"); + public static DomainAttributeTypesSelectorAttributeMatchingModel ManyToMany { get; } = new DomainAttributeTypesSelectorAttributeMatchingModel("MANY_TO_MANY"); + + public static bool operator ==(DomainAttributeTypesSelectorAttributeMatchingModel left, DomainAttributeTypesSelectorAttributeMatchingModel right) => left.Equals(right); + public static bool operator !=(DomainAttributeTypesSelectorAttributeMatchingModel left, DomainAttributeTypesSelectorAttributeMatchingModel right) => !left.Equals(right); + + public static explicit operator string(DomainAttributeTypesSelectorAttributeMatchingModel value) => value._value; + + [EditorBrowsable(EditorBrowsableState.Never)] + public override bool Equals(object? obj) => obj is DomainAttributeTypesSelectorAttributeMatchingModel other && Equals(other); + public bool Equals(DomainAttributeTypesSelectorAttributeMatchingModel other) => string.Equals(_value, other._value, StringComparison.Ordinal); + + [EditorBrowsable(EditorBrowsableState.Never)] + public override int GetHashCode() => _value?.GetHashCode() ?? 0; + + public override string ToString() => _value; + } + + /// + /// How the auto-merging process should resolve conflicts between different profiles. + /// + [EnumType] + public readonly struct DomainConflictResolutionConflictResolvingModel : IEquatable + { + private readonly string _value; + + private DomainConflictResolutionConflictResolvingModel(string value) + { + _value = value ?? throw new ArgumentNullException(nameof(value)); + } + + public static DomainConflictResolutionConflictResolvingModel Recency { get; } = new DomainConflictResolutionConflictResolvingModel("RECENCY"); + public static DomainConflictResolutionConflictResolvingModel Source { get; } = new DomainConflictResolutionConflictResolvingModel("SOURCE"); + + public static bool operator ==(DomainConflictResolutionConflictResolvingModel left, DomainConflictResolutionConflictResolvingModel right) => left.Equals(right); + public static bool operator !=(DomainConflictResolutionConflictResolvingModel left, DomainConflictResolutionConflictResolvingModel right) => !left.Equals(right); + + public static explicit operator string(DomainConflictResolutionConflictResolvingModel value) => value._value; + + [EditorBrowsable(EditorBrowsableState.Never)] + public override bool Equals(object? obj) => obj is DomainConflictResolutionConflictResolvingModel other && Equals(other); + public bool Equals(DomainConflictResolutionConflictResolvingModel other) => string.Equals(_value, other._value, StringComparison.Ordinal); + + [EditorBrowsable(EditorBrowsableState.Never)] + public override int GetHashCode() => _value?.GetHashCode() ?? 0; + + public override string ToString() => _value; + } + + /// + /// The day when the Identity Resolution Job should run every week. + /// + [EnumType] + public readonly struct DomainJobScheduleDayOfTheWeek : IEquatable + { + private readonly string _value; + + private DomainJobScheduleDayOfTheWeek(string value) + { + _value = value ?? throw new ArgumentNullException(nameof(value)); + } + + public static DomainJobScheduleDayOfTheWeek Sunday { get; } = new DomainJobScheduleDayOfTheWeek("SUNDAY"); + public static DomainJobScheduleDayOfTheWeek Monday { get; } = new DomainJobScheduleDayOfTheWeek("MONDAY"); + public static DomainJobScheduleDayOfTheWeek Tuesday { get; } = new DomainJobScheduleDayOfTheWeek("TUESDAY"); + public static DomainJobScheduleDayOfTheWeek Wednesday { get; } = new DomainJobScheduleDayOfTheWeek("WEDNESDAY"); + public static DomainJobScheduleDayOfTheWeek Thursday { get; } = new DomainJobScheduleDayOfTheWeek("THURSDAY"); + public static DomainJobScheduleDayOfTheWeek Friday { get; } = new DomainJobScheduleDayOfTheWeek("FRIDAY"); + public static DomainJobScheduleDayOfTheWeek Saturday { get; } = new DomainJobScheduleDayOfTheWeek("SATURDAY"); + + public static bool operator ==(DomainJobScheduleDayOfTheWeek left, DomainJobScheduleDayOfTheWeek right) => left.Equals(right); + public static bool operator !=(DomainJobScheduleDayOfTheWeek left, DomainJobScheduleDayOfTheWeek right) => !left.Equals(right); + + public static explicit operator string(DomainJobScheduleDayOfTheWeek value) => value._value; + + [EditorBrowsable(EditorBrowsableState.Never)] + public override bool Equals(object? obj) => obj is DomainJobScheduleDayOfTheWeek other && Equals(other); + public bool Equals(DomainJobScheduleDayOfTheWeek 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 DomainRuleBasedMatchingStatus : IEquatable + { + private readonly string _value; + + private DomainRuleBasedMatchingStatus(string value) + { + _value = value ?? throw new ArgumentNullException(nameof(value)); + } + + public static DomainRuleBasedMatchingStatus Pending { get; } = new DomainRuleBasedMatchingStatus("PENDING"); + public static DomainRuleBasedMatchingStatus InProgress { get; } = new DomainRuleBasedMatchingStatus("IN_PROGRESS"); + public static DomainRuleBasedMatchingStatus Active { get; } = new DomainRuleBasedMatchingStatus("ACTIVE"); + + public static bool operator ==(DomainRuleBasedMatchingStatus left, DomainRuleBasedMatchingStatus right) => left.Equals(right); + public static bool operator !=(DomainRuleBasedMatchingStatus left, DomainRuleBasedMatchingStatus right) => !left.Equals(right); + + public static explicit operator string(DomainRuleBasedMatchingStatus value) => value._value; + + [EditorBrowsable(EditorBrowsableState.Never)] + public override bool Equals(object? obj) => obj is DomainRuleBasedMatchingStatus other && Equals(other); + public bool Equals(DomainRuleBasedMatchingStatus other) => string.Equals(_value, other._value, StringComparison.Ordinal); + + [EditorBrowsable(EditorBrowsableState.Never)] + public override int GetHashCode() => _value?.GetHashCode() ?? 0; + + public override string ToString() => _value; + } + /// /// The operational state of destination stream for export. /// diff --git a/sdk/dotnet/CustomerProfiles/GetDomain.cs b/sdk/dotnet/CustomerProfiles/GetDomain.cs index e5ad212738..86c084c893 100644 --- a/sdk/dotnet/CustomerProfiles/GetDomain.cs +++ b/sdk/dotnet/CustomerProfiles/GetDomain.cs @@ -77,6 +77,9 @@ public sealed class GetDomainResult /// The time of this integration got last updated at /// public readonly string? LastUpdatedAt; + public readonly Outputs.DomainMatching? Matching; + public readonly Outputs.DomainRuleBasedMatching? RuleBasedMatching; + public readonly Outputs.DomainStats? Stats; /// /// The tags (keys and values) associated with the domain /// @@ -94,6 +97,12 @@ private GetDomainResult( string? lastUpdatedAt, + Outputs.DomainMatching? matching, + + Outputs.DomainRuleBasedMatching? ruleBasedMatching, + + Outputs.DomainStats? stats, + ImmutableArray tags) { CreatedAt = createdAt; @@ -101,6 +110,9 @@ private GetDomainResult( DefaultEncryptionKey = defaultEncryptionKey; DefaultExpirationDays = defaultExpirationDays; LastUpdatedAt = lastUpdatedAt; + Matching = matching; + RuleBasedMatching = ruleBasedMatching; + Stats = stats; Tags = tags; } } diff --git a/sdk/dotnet/CustomerProfiles/Inputs/DomainAttributeTypesSelectorArgs.cs b/sdk/dotnet/CustomerProfiles/Inputs/DomainAttributeTypesSelectorArgs.cs new file mode 100644 index 0000000000..2f6c896481 --- /dev/null +++ b/sdk/dotnet/CustomerProfiles/Inputs/DomainAttributeTypesSelectorArgs.cs @@ -0,0 +1,65 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.CustomerProfiles.Inputs +{ + + /// + /// Configures information about the AttributeTypesSelector where the rule-based identity resolution uses to match profiles. + /// + public sealed class DomainAttributeTypesSelectorArgs : global::Pulumi.ResourceArgs + { + [Input("address")] + private InputList? _address; + + /// + /// The Address type. You can choose from Address, BusinessAddress, MaillingAddress, and ShippingAddress. You only can use the Address type in the MatchingRule. For example, if you want to match profile based on BusinessAddress.City or MaillingAddress.City, you need to choose the BusinessAddress and the MaillingAddress to represent the Address type and specify the Address.City on the matching rule. + /// + public InputList Address + { + get => _address ?? (_address = new InputList()); + set => _address = value; + } + + /// + /// Configures the AttributeMatchingModel, you can either choose ONE_TO_ONE or MANY_TO_MANY. + /// + [Input("attributeMatchingModel", required: true)] + public Input AttributeMatchingModel { get; set; } = null!; + + [Input("emailAddress")] + private InputList? _emailAddress; + + /// + /// The Email type. You can choose from EmailAddress, BusinessEmailAddress and PersonalEmailAddress. You only can use the EmailAddress type in the MatchingRule. For example, if you want to match profile based on PersonalEmailAddress or BusinessEmailAddress, you need to choose the PersonalEmailAddress and the BusinessEmailAddress to represent the EmailAddress type and only specify the EmailAddress on the matching rule. + /// + public InputList EmailAddress + { + get => _emailAddress ?? (_emailAddress = new InputList()); + set => _emailAddress = value; + } + + [Input("phoneNumber")] + private InputList? _phoneNumber; + + /// + /// The PhoneNumber type. You can choose from PhoneNumber, HomePhoneNumber, and MobilePhoneNumber. You only can use the PhoneNumber type in the MatchingRule. For example, if you want to match a profile based on Phone or HomePhone, you need to choose the Phone and the HomePhone to represent the PhoneNumber type and only specify the PhoneNumber on the matching rule. + /// + public InputList PhoneNumber + { + get => _phoneNumber ?? (_phoneNumber = new InputList()); + set => _phoneNumber = value; + } + + public DomainAttributeTypesSelectorArgs() + { + } + public static new DomainAttributeTypesSelectorArgs Empty => new DomainAttributeTypesSelectorArgs(); + } +} diff --git a/sdk/dotnet/CustomerProfiles/Inputs/DomainAutoMergingArgs.cs b/sdk/dotnet/CustomerProfiles/Inputs/DomainAutoMergingArgs.cs new file mode 100644 index 0000000000..f698795062 --- /dev/null +++ b/sdk/dotnet/CustomerProfiles/Inputs/DomainAutoMergingArgs.cs @@ -0,0 +1,41 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.CustomerProfiles.Inputs +{ + + /// + /// Configuration information about the auto-merging process. + /// + public sealed class DomainAutoMergingArgs : global::Pulumi.ResourceArgs + { + [Input("conflictResolution")] + public Input? ConflictResolution { get; set; } + + [Input("consolidation")] + public Input? Consolidation { get; set; } + + /// + /// The flag that enables the auto-merging of duplicate profiles. + /// + [Input("enabled", required: true)] + public Input Enabled { get; set; } = null!; + + /// + /// A number between 0 and 1 that represents the minimum confidence score required for profiles within a matching group to be merged during the auto-merge process. A higher score means higher similarity required to merge profiles. + /// + [Input("minAllowedConfidenceScoreForMerging")] + public Input? MinAllowedConfidenceScoreForMerging { get; set; } + + public DomainAutoMergingArgs() + { + } + public static new DomainAutoMergingArgs Empty => new DomainAutoMergingArgs(); + } +} diff --git a/sdk/dotnet/CustomerProfiles/Inputs/DomainConflictResolutionArgs.cs b/sdk/dotnet/CustomerProfiles/Inputs/DomainConflictResolutionArgs.cs new file mode 100644 index 0000000000..4b9dc5e9e5 --- /dev/null +++ b/sdk/dotnet/CustomerProfiles/Inputs/DomainConflictResolutionArgs.cs @@ -0,0 +1,35 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.CustomerProfiles.Inputs +{ + + /// + /// How the auto-merging process should resolve conflicts between different profiles. For example, if Profile A and Profile B have the same FirstName and LastName (and that is the matching criteria), which EmailAddress should be used? + /// + public sealed class DomainConflictResolutionArgs : global::Pulumi.ResourceArgs + { + /// + /// How the auto-merging process should resolve conflicts between different profiles. + /// + [Input("conflictResolvingModel", required: true)] + public Input ConflictResolvingModel { get; set; } = null!; + + /// + /// The ObjectType name that is used to resolve profile merging conflicts when choosing SOURCE as the ConflictResolvingModel. + /// + [Input("sourceName")] + public Input? SourceName { get; set; } + + public DomainConflictResolutionArgs() + { + } + public static new DomainConflictResolutionArgs Empty => new DomainConflictResolutionArgs(); + } +} diff --git a/sdk/dotnet/CustomerProfiles/Inputs/DomainConsolidationArgs.cs b/sdk/dotnet/CustomerProfiles/Inputs/DomainConsolidationArgs.cs new file mode 100644 index 0000000000..6902350a20 --- /dev/null +++ b/sdk/dotnet/CustomerProfiles/Inputs/DomainConsolidationArgs.cs @@ -0,0 +1,35 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.CustomerProfiles.Inputs +{ + + /// + /// A list of matching attributes that represent matching criteria. If two profiles meet at least one of the requirements in the matching attributes list, they will be merged. + /// + public sealed class DomainConsolidationArgs : global::Pulumi.ResourceArgs + { + [Input("matchingAttributesList", required: true)] + private InputList>? _matchingAttributesList; + + /// + /// A list of matching criteria. + /// + public InputList> MatchingAttributesList + { + get => _matchingAttributesList ?? (_matchingAttributesList = new InputList>()); + set => _matchingAttributesList = value; + } + + public DomainConsolidationArgs() + { + } + public static new DomainConsolidationArgs Empty => new DomainConsolidationArgs(); + } +} diff --git a/sdk/dotnet/CustomerProfiles/Inputs/DomainExportingConfigArgs.cs b/sdk/dotnet/CustomerProfiles/Inputs/DomainExportingConfigArgs.cs new file mode 100644 index 0000000000..1f957ea2af --- /dev/null +++ b/sdk/dotnet/CustomerProfiles/Inputs/DomainExportingConfigArgs.cs @@ -0,0 +1,26 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.CustomerProfiles.Inputs +{ + + /// + /// Configuration information for exporting Identity Resolution results, for example, to an S3 bucket. + /// + public sealed class DomainExportingConfigArgs : global::Pulumi.ResourceArgs + { + [Input("s3Exporting")] + public Input? S3Exporting { get; set; } + + public DomainExportingConfigArgs() + { + } + public static new DomainExportingConfigArgs Empty => new DomainExportingConfigArgs(); + } +} diff --git a/sdk/dotnet/CustomerProfiles/Inputs/DomainJobScheduleArgs.cs b/sdk/dotnet/CustomerProfiles/Inputs/DomainJobScheduleArgs.cs new file mode 100644 index 0000000000..3f95601247 --- /dev/null +++ b/sdk/dotnet/CustomerProfiles/Inputs/DomainJobScheduleArgs.cs @@ -0,0 +1,35 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.CustomerProfiles.Inputs +{ + + /// + /// The day and time when do you want to start the Identity Resolution Job every week. + /// + public sealed class DomainJobScheduleArgs : global::Pulumi.ResourceArgs + { + /// + /// The day when the Identity Resolution Job should run every week. + /// + [Input("dayOfTheWeek", required: true)] + public Input DayOfTheWeek { get; set; } = null!; + + /// + /// The time when the Identity Resolution Job should run every week. + /// + [Input("time", required: true)] + public Input Time { get; set; } = null!; + + public DomainJobScheduleArgs() + { + } + public static new DomainJobScheduleArgs Empty => new DomainJobScheduleArgs(); + } +} diff --git a/sdk/dotnet/CustomerProfiles/Inputs/DomainMatchingArgs.cs b/sdk/dotnet/CustomerProfiles/Inputs/DomainMatchingArgs.cs new file mode 100644 index 0000000000..abc3a18684 --- /dev/null +++ b/sdk/dotnet/CustomerProfiles/Inputs/DomainMatchingArgs.cs @@ -0,0 +1,38 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.CustomerProfiles.Inputs +{ + + /// + /// The process of matching duplicate profiles. If Matching = true, Amazon Connect Customer Profiles starts a weekly batch process called Identity Resolution Job. If you do not specify a date and time for Identity Resolution Job to run, by default it runs every Saturday at 12AM UTC to detect duplicate profiles in your domains. After the Identity Resolution Job completes, use the GetMatches API to return and review the results. Or, if you have configured ExportingConfig in the MatchingRequest, you can download the results from S3. + /// + public sealed class DomainMatchingArgs : global::Pulumi.ResourceArgs + { + [Input("autoMerging")] + public Input? AutoMerging { get; set; } + + /// + /// The flag that enables the matching process of duplicate profiles. + /// + [Input("enabled", required: true)] + public Input Enabled { get; set; } = null!; + + [Input("exportingConfig")] + public Input? ExportingConfig { get; set; } + + [Input("jobSchedule")] + public Input? JobSchedule { get; set; } + + public DomainMatchingArgs() + { + } + public static new DomainMatchingArgs Empty => new DomainMatchingArgs(); + } +} diff --git a/sdk/dotnet/CustomerProfiles/Inputs/DomainMatchingRuleArgs.cs b/sdk/dotnet/CustomerProfiles/Inputs/DomainMatchingRuleArgs.cs new file mode 100644 index 0000000000..61161fd0ed --- /dev/null +++ b/sdk/dotnet/CustomerProfiles/Inputs/DomainMatchingRuleArgs.cs @@ -0,0 +1,31 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.CustomerProfiles.Inputs +{ + + /// + /// Specifies how does the rule-based matching process should match profiles. + /// + public sealed class DomainMatchingRuleArgs : global::Pulumi.ResourceArgs + { + [Input("rule", required: true)] + private InputList? _rule; + public InputList Rule + { + get => _rule ?? (_rule = new InputList()); + set => _rule = value; + } + + public DomainMatchingRuleArgs() + { + } + public static new DomainMatchingRuleArgs Empty => new DomainMatchingRuleArgs(); + } +} diff --git a/sdk/dotnet/CustomerProfiles/Inputs/DomainRuleBasedMatchingArgs.cs b/sdk/dotnet/CustomerProfiles/Inputs/DomainRuleBasedMatchingArgs.cs new file mode 100644 index 0000000000..87766f4a63 --- /dev/null +++ b/sdk/dotnet/CustomerProfiles/Inputs/DomainRuleBasedMatchingArgs.cs @@ -0,0 +1,65 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.CustomerProfiles.Inputs +{ + + /// + /// The process of matching duplicate profiles using the Rule-Based matching. If RuleBasedMatching = true, Amazon Connect Customer Profiles will start to match and merge your profiles according to your configuration in the RuleBasedMatchingRequest. You can use the ListRuleBasedMatches and GetSimilarProfiles API to return and review the results. Also, if you have configured ExportingConfig in the RuleBasedMatchingRequest, you can download the results from S3. + /// + public sealed class DomainRuleBasedMatchingArgs : global::Pulumi.ResourceArgs + { + [Input("attributeTypesSelector")] + public Input? AttributeTypesSelector { get; set; } + + [Input("conflictResolution")] + public Input? ConflictResolution { get; set; } + + /// + /// The flag that enables the rule-based matching process of duplicate profiles. + /// + [Input("enabled", required: true)] + public Input Enabled { get; set; } = null!; + + [Input("exportingConfig")] + public Input? ExportingConfig { get; set; } + + [Input("matchingRules")] + private InputList? _matchingRules; + + /// + /// Configures how the rule-based matching process should match profiles. You can have up to 15 MatchingRule in the MatchingRules. + /// + public InputList MatchingRules + { + get => _matchingRules ?? (_matchingRules = new InputList()); + set => _matchingRules = value; + } + + /// + /// Indicates the maximum allowed rule level for matching. + /// + [Input("maxAllowedRuleLevelForMatching")] + public Input? MaxAllowedRuleLevelForMatching { get; set; } + + /// + /// Indicates the maximum allowed rule level for merging. + /// + [Input("maxAllowedRuleLevelForMerging")] + public Input? MaxAllowedRuleLevelForMerging { get; set; } + + [Input("status")] + public Input? Status { get; set; } + + public DomainRuleBasedMatchingArgs() + { + } + public static new DomainRuleBasedMatchingArgs Empty => new DomainRuleBasedMatchingArgs(); + } +} diff --git a/sdk/dotnet/CustomerProfiles/Inputs/DomainS3ExportingConfigArgs.cs b/sdk/dotnet/CustomerProfiles/Inputs/DomainS3ExportingConfigArgs.cs new file mode 100644 index 0000000000..62deeac753 --- /dev/null +++ b/sdk/dotnet/CustomerProfiles/Inputs/DomainS3ExportingConfigArgs.cs @@ -0,0 +1,35 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.CustomerProfiles.Inputs +{ + + /// + /// The S3 location where Identity Resolution Jobs write result files. + /// + public sealed class DomainS3ExportingConfigArgs : global::Pulumi.ResourceArgs + { + /// + /// The name of the S3 bucket where Identity Resolution Jobs write result files. + /// + [Input("s3BucketName", required: true)] + public Input S3BucketName { get; set; } = null!; + + /// + /// The S3 key name of the location where Identity Resolution Jobs write result files. + /// + [Input("s3KeyName")] + public Input? S3KeyName { get; set; } + + public DomainS3ExportingConfigArgs() + { + } + public static new DomainS3ExportingConfigArgs Empty => new DomainS3ExportingConfigArgs(); + } +} diff --git a/sdk/dotnet/CustomerProfiles/Outputs/DomainAttributeTypesSelector.cs b/sdk/dotnet/CustomerProfiles/Outputs/DomainAttributeTypesSelector.cs new file mode 100644 index 0000000000..587f167f23 --- /dev/null +++ b/sdk/dotnet/CustomerProfiles/Outputs/DomainAttributeTypesSelector.cs @@ -0,0 +1,52 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.CustomerProfiles.Outputs +{ + + /// + /// Configures information about the AttributeTypesSelector where the rule-based identity resolution uses to match profiles. + /// + [OutputType] + public sealed class DomainAttributeTypesSelector + { + /// + /// The Address type. You can choose from Address, BusinessAddress, MaillingAddress, and ShippingAddress. You only can use the Address type in the MatchingRule. For example, if you want to match profile based on BusinessAddress.City or MaillingAddress.City, you need to choose the BusinessAddress and the MaillingAddress to represent the Address type and specify the Address.City on the matching rule. + /// + public readonly ImmutableArray Address; + /// + /// Configures the AttributeMatchingModel, you can either choose ONE_TO_ONE or MANY_TO_MANY. + /// + public readonly Pulumi.AwsNative.CustomerProfiles.DomainAttributeTypesSelectorAttributeMatchingModel AttributeMatchingModel; + /// + /// The Email type. You can choose from EmailAddress, BusinessEmailAddress and PersonalEmailAddress. You only can use the EmailAddress type in the MatchingRule. For example, if you want to match profile based on PersonalEmailAddress or BusinessEmailAddress, you need to choose the PersonalEmailAddress and the BusinessEmailAddress to represent the EmailAddress type and only specify the EmailAddress on the matching rule. + /// + public readonly ImmutableArray EmailAddress; + /// + /// The PhoneNumber type. You can choose from PhoneNumber, HomePhoneNumber, and MobilePhoneNumber. You only can use the PhoneNumber type in the MatchingRule. For example, if you want to match a profile based on Phone or HomePhone, you need to choose the Phone and the HomePhone to represent the PhoneNumber type and only specify the PhoneNumber on the matching rule. + /// + public readonly ImmutableArray PhoneNumber; + + [OutputConstructor] + private DomainAttributeTypesSelector( + ImmutableArray address, + + Pulumi.AwsNative.CustomerProfiles.DomainAttributeTypesSelectorAttributeMatchingModel attributeMatchingModel, + + ImmutableArray emailAddress, + + ImmutableArray phoneNumber) + { + Address = address; + AttributeMatchingModel = attributeMatchingModel; + EmailAddress = emailAddress; + PhoneNumber = phoneNumber; + } + } +} diff --git a/sdk/dotnet/CustomerProfiles/Outputs/DomainAutoMerging.cs b/sdk/dotnet/CustomerProfiles/Outputs/DomainAutoMerging.cs new file mode 100644 index 0000000000..eb7bfc240f --- /dev/null +++ b/sdk/dotnet/CustomerProfiles/Outputs/DomainAutoMerging.cs @@ -0,0 +1,46 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.CustomerProfiles.Outputs +{ + + /// + /// Configuration information about the auto-merging process. + /// + [OutputType] + public sealed class DomainAutoMerging + { + public readonly Outputs.DomainConflictResolution? ConflictResolution; + public readonly Outputs.DomainConsolidation? Consolidation; + /// + /// The flag that enables the auto-merging of duplicate profiles. + /// + public readonly bool Enabled; + /// + /// A number between 0 and 1 that represents the minimum confidence score required for profiles within a matching group to be merged during the auto-merge process. A higher score means higher similarity required to merge profiles. + /// + public readonly double? MinAllowedConfidenceScoreForMerging; + + [OutputConstructor] + private DomainAutoMerging( + Outputs.DomainConflictResolution? conflictResolution, + + Outputs.DomainConsolidation? consolidation, + + bool enabled, + + double? minAllowedConfidenceScoreForMerging) + { + ConflictResolution = conflictResolution; + Consolidation = consolidation; + Enabled = enabled; + MinAllowedConfidenceScoreForMerging = minAllowedConfidenceScoreForMerging; + } + } +} diff --git a/sdk/dotnet/CustomerProfiles/Outputs/DomainConflictResolution.cs b/sdk/dotnet/CustomerProfiles/Outputs/DomainConflictResolution.cs new file mode 100644 index 0000000000..c59e70c4ae --- /dev/null +++ b/sdk/dotnet/CustomerProfiles/Outputs/DomainConflictResolution.cs @@ -0,0 +1,38 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.CustomerProfiles.Outputs +{ + + /// + /// How the auto-merging process should resolve conflicts between different profiles. For example, if Profile A and Profile B have the same FirstName and LastName (and that is the matching criteria), which EmailAddress should be used? + /// + [OutputType] + public sealed class DomainConflictResolution + { + /// + /// How the auto-merging process should resolve conflicts between different profiles. + /// + public readonly Pulumi.AwsNative.CustomerProfiles.DomainConflictResolutionConflictResolvingModel ConflictResolvingModel; + /// + /// The ObjectType name that is used to resolve profile merging conflicts when choosing SOURCE as the ConflictResolvingModel. + /// + public readonly string? SourceName; + + [OutputConstructor] + private DomainConflictResolution( + Pulumi.AwsNative.CustomerProfiles.DomainConflictResolutionConflictResolvingModel conflictResolvingModel, + + string? sourceName) + { + ConflictResolvingModel = conflictResolvingModel; + SourceName = sourceName; + } + } +} diff --git a/sdk/dotnet/CustomerProfiles/Outputs/DomainConsolidation.cs b/sdk/dotnet/CustomerProfiles/Outputs/DomainConsolidation.cs new file mode 100644 index 0000000000..fa3c621fea --- /dev/null +++ b/sdk/dotnet/CustomerProfiles/Outputs/DomainConsolidation.cs @@ -0,0 +1,30 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.CustomerProfiles.Outputs +{ + + /// + /// A list of matching attributes that represent matching criteria. If two profiles meet at least one of the requirements in the matching attributes list, they will be merged. + /// + [OutputType] + public sealed class DomainConsolidation + { + /// + /// A list of matching criteria. + /// + public readonly ImmutableArray> MatchingAttributesList; + + [OutputConstructor] + private DomainConsolidation(ImmutableArray> matchingAttributesList) + { + MatchingAttributesList = matchingAttributesList; + } + } +} diff --git a/sdk/dotnet/CustomerProfiles/Outputs/DomainExportingConfig.cs b/sdk/dotnet/CustomerProfiles/Outputs/DomainExportingConfig.cs new file mode 100644 index 0000000000..ff29c7a3f2 --- /dev/null +++ b/sdk/dotnet/CustomerProfiles/Outputs/DomainExportingConfig.cs @@ -0,0 +1,27 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.CustomerProfiles.Outputs +{ + + /// + /// Configuration information for exporting Identity Resolution results, for example, to an S3 bucket. + /// + [OutputType] + public sealed class DomainExportingConfig + { + public readonly Outputs.DomainS3ExportingConfig? S3Exporting; + + [OutputConstructor] + private DomainExportingConfig(Outputs.DomainS3ExportingConfig? s3Exporting) + { + S3Exporting = s3Exporting; + } + } +} diff --git a/sdk/dotnet/CustomerProfiles/Outputs/DomainJobSchedule.cs b/sdk/dotnet/CustomerProfiles/Outputs/DomainJobSchedule.cs new file mode 100644 index 0000000000..18f2095adf --- /dev/null +++ b/sdk/dotnet/CustomerProfiles/Outputs/DomainJobSchedule.cs @@ -0,0 +1,38 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.CustomerProfiles.Outputs +{ + + /// + /// The day and time when do you want to start the Identity Resolution Job every week. + /// + [OutputType] + public sealed class DomainJobSchedule + { + /// + /// The day when the Identity Resolution Job should run every week. + /// + public readonly Pulumi.AwsNative.CustomerProfiles.DomainJobScheduleDayOfTheWeek DayOfTheWeek; + /// + /// The time when the Identity Resolution Job should run every week. + /// + public readonly string Time; + + [OutputConstructor] + private DomainJobSchedule( + Pulumi.AwsNative.CustomerProfiles.DomainJobScheduleDayOfTheWeek dayOfTheWeek, + + string time) + { + DayOfTheWeek = dayOfTheWeek; + Time = time; + } + } +} diff --git a/sdk/dotnet/CustomerProfiles/Outputs/DomainMatching.cs b/sdk/dotnet/CustomerProfiles/Outputs/DomainMatching.cs new file mode 100644 index 0000000000..51a1bf71c8 --- /dev/null +++ b/sdk/dotnet/CustomerProfiles/Outputs/DomainMatching.cs @@ -0,0 +1,43 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.CustomerProfiles.Outputs +{ + + /// + /// The process of matching duplicate profiles. If Matching = true, Amazon Connect Customer Profiles starts a weekly batch process called Identity Resolution Job. If you do not specify a date and time for Identity Resolution Job to run, by default it runs every Saturday at 12AM UTC to detect duplicate profiles in your domains. After the Identity Resolution Job completes, use the GetMatches API to return and review the results. Or, if you have configured ExportingConfig in the MatchingRequest, you can download the results from S3. + /// + [OutputType] + public sealed class DomainMatching + { + public readonly Outputs.DomainAutoMerging? AutoMerging; + /// + /// The flag that enables the matching process of duplicate profiles. + /// + public readonly bool Enabled; + public readonly Outputs.DomainExportingConfig? ExportingConfig; + public readonly Outputs.DomainJobSchedule? JobSchedule; + + [OutputConstructor] + private DomainMatching( + Outputs.DomainAutoMerging? autoMerging, + + bool enabled, + + Outputs.DomainExportingConfig? exportingConfig, + + Outputs.DomainJobSchedule? jobSchedule) + { + AutoMerging = autoMerging; + Enabled = enabled; + ExportingConfig = exportingConfig; + JobSchedule = jobSchedule; + } + } +} diff --git a/sdk/dotnet/CustomerProfiles/Outputs/DomainMatchingRule.cs b/sdk/dotnet/CustomerProfiles/Outputs/DomainMatchingRule.cs new file mode 100644 index 0000000000..996c13f489 --- /dev/null +++ b/sdk/dotnet/CustomerProfiles/Outputs/DomainMatchingRule.cs @@ -0,0 +1,27 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.CustomerProfiles.Outputs +{ + + /// + /// Specifies how does the rule-based matching process should match profiles. + /// + [OutputType] + public sealed class DomainMatchingRule + { + public readonly ImmutableArray Rule; + + [OutputConstructor] + private DomainMatchingRule(ImmutableArray rule) + { + Rule = rule; + } + } +} diff --git a/sdk/dotnet/CustomerProfiles/Outputs/DomainRuleBasedMatching.cs b/sdk/dotnet/CustomerProfiles/Outputs/DomainRuleBasedMatching.cs new file mode 100644 index 0000000000..6bfc145b70 --- /dev/null +++ b/sdk/dotnet/CustomerProfiles/Outputs/DomainRuleBasedMatching.cs @@ -0,0 +1,68 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.CustomerProfiles.Outputs +{ + + /// + /// The process of matching duplicate profiles using the Rule-Based matching. If RuleBasedMatching = true, Amazon Connect Customer Profiles will start to match and merge your profiles according to your configuration in the RuleBasedMatchingRequest. You can use the ListRuleBasedMatches and GetSimilarProfiles API to return and review the results. Also, if you have configured ExportingConfig in the RuleBasedMatchingRequest, you can download the results from S3. + /// + [OutputType] + public sealed class DomainRuleBasedMatching + { + public readonly Outputs.DomainAttributeTypesSelector? AttributeTypesSelector; + public readonly Outputs.DomainConflictResolution? ConflictResolution; + /// + /// The flag that enables the rule-based matching process of duplicate profiles. + /// + public readonly bool Enabled; + public readonly Outputs.DomainExportingConfig? ExportingConfig; + /// + /// Configures how the rule-based matching process should match profiles. You can have up to 15 MatchingRule in the MatchingRules. + /// + public readonly ImmutableArray MatchingRules; + /// + /// Indicates the maximum allowed rule level for matching. + /// + public readonly int? MaxAllowedRuleLevelForMatching; + /// + /// Indicates the maximum allowed rule level for merging. + /// + public readonly int? MaxAllowedRuleLevelForMerging; + public readonly Pulumi.AwsNative.CustomerProfiles.DomainRuleBasedMatchingStatus? Status; + + [OutputConstructor] + private DomainRuleBasedMatching( + Outputs.DomainAttributeTypesSelector? attributeTypesSelector, + + Outputs.DomainConflictResolution? conflictResolution, + + bool enabled, + + Outputs.DomainExportingConfig? exportingConfig, + + ImmutableArray matchingRules, + + int? maxAllowedRuleLevelForMatching, + + int? maxAllowedRuleLevelForMerging, + + Pulumi.AwsNative.CustomerProfiles.DomainRuleBasedMatchingStatus? status) + { + AttributeTypesSelector = attributeTypesSelector; + ConflictResolution = conflictResolution; + Enabled = enabled; + ExportingConfig = exportingConfig; + MatchingRules = matchingRules; + MaxAllowedRuleLevelForMatching = maxAllowedRuleLevelForMatching; + MaxAllowedRuleLevelForMerging = maxAllowedRuleLevelForMerging; + Status = status; + } + } +} diff --git a/sdk/dotnet/CustomerProfiles/Outputs/DomainS3ExportingConfig.cs b/sdk/dotnet/CustomerProfiles/Outputs/DomainS3ExportingConfig.cs new file mode 100644 index 0000000000..f840c24c4b --- /dev/null +++ b/sdk/dotnet/CustomerProfiles/Outputs/DomainS3ExportingConfig.cs @@ -0,0 +1,38 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.CustomerProfiles.Outputs +{ + + /// + /// The S3 location where Identity Resolution Jobs write result files. + /// + [OutputType] + public sealed class DomainS3ExportingConfig + { + /// + /// The name of the S3 bucket where Identity Resolution Jobs write result files. + /// + public readonly string S3BucketName; + /// + /// The S3 key name of the location where Identity Resolution Jobs write result files. + /// + public readonly string? S3KeyName; + + [OutputConstructor] + private DomainS3ExportingConfig( + string s3BucketName, + + string? s3KeyName) + { + S3BucketName = s3BucketName; + S3KeyName = s3KeyName; + } + } +} diff --git a/sdk/dotnet/CustomerProfiles/Outputs/DomainStats.cs b/sdk/dotnet/CustomerProfiles/Outputs/DomainStats.cs new file mode 100644 index 0000000000..b68fad6f13 --- /dev/null +++ b/sdk/dotnet/CustomerProfiles/Outputs/DomainStats.cs @@ -0,0 +1,52 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.CustomerProfiles.Outputs +{ + + /// + /// Usage-specific statistics about the domain. + /// + [OutputType] + public sealed class DomainStats + { + /// + /// The number of profiles that you are currently paying for in the domain. If you have more than 100 objects associated with a single profile, that profile counts as two profiles. If you have more than 200 objects, that profile counts as three, and so on. + /// + public readonly double? MeteringProfileCount; + /// + /// The total number of objects in domain. + /// + public readonly double? ObjectCount; + /// + /// The total number of profiles currently in the domain. + /// + public readonly double? ProfileCount; + /// + /// The total size, in bytes, of all objects in the domain. + /// + public readonly double? TotalSize; + + [OutputConstructor] + private DomainStats( + double? meteringProfileCount, + + double? objectCount, + + double? profileCount, + + double? totalSize) + { + MeteringProfileCount = meteringProfileCount; + ObjectCount = objectCount; + ProfileCount = profileCount; + TotalSize = totalSize; + } + } +} diff --git a/sdk/dotnet/Ec2/GetSubnet.cs b/sdk/dotnet/Ec2/GetSubnet.cs index c4b62dd99a..7538d76b58 100644 --- a/sdk/dotnet/Ec2/GetSubnet.cs +++ b/sdk/dotnet/Ec2/GetSubnet.cs @@ -53,8 +53,16 @@ public sealed class GetSubnetResult { public readonly bool? AssignIpv6AddressOnCreation; public readonly bool? EnableDns64; + /// + /// The netmask length of the IPv4 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool + /// + public readonly int? Ipv4NetmaskLength; public readonly string? Ipv6CidrBlock; public readonly ImmutableArray Ipv6CidrBlocks; + /// + /// The netmask length of the IPv6 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool + /// + public readonly int? Ipv6NetmaskLength; public readonly bool? MapPublicIpOnLaunch; public readonly string? NetworkAclAssociationId; public readonly Outputs.PrivateDnsNameOptionsOnLaunchProperties? PrivateDnsNameOptionsOnLaunch; @@ -67,10 +75,14 @@ private GetSubnetResult( bool? enableDns64, + int? ipv4NetmaskLength, + string? ipv6CidrBlock, ImmutableArray ipv6CidrBlocks, + int? ipv6NetmaskLength, + bool? mapPublicIpOnLaunch, string? networkAclAssociationId, @@ -83,8 +95,10 @@ private GetSubnetResult( { AssignIpv6AddressOnCreation = assignIpv6AddressOnCreation; EnableDns64 = enableDns64; + Ipv4NetmaskLength = ipv4NetmaskLength; Ipv6CidrBlock = ipv6CidrBlock; Ipv6CidrBlocks = ipv6CidrBlocks; + Ipv6NetmaskLength = ipv6NetmaskLength; MapPublicIpOnLaunch = mapPublicIpOnLaunch; NetworkAclAssociationId = networkAclAssociationId; PrivateDnsNameOptionsOnLaunch = privateDnsNameOptionsOnLaunch; diff --git a/sdk/dotnet/Ec2/Subnet.cs b/sdk/dotnet/Ec2/Subnet.cs index fcad7f0ab0..8b0e6edc5c 100644 --- a/sdk/dotnet/Ec2/Subnet.cs +++ b/sdk/dotnet/Ec2/Subnet.cs @@ -30,6 +30,12 @@ public partial class Subnet : global::Pulumi.CustomResource [Output("enableDns64")] public Output EnableDns64 { get; private set; } = null!; + /// + /// The netmask length of the IPv4 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool + /// + [Output("ipv4NetmaskLength")] + public Output Ipv4NetmaskLength { get; private set; } = null!; + [Output("ipv6CidrBlock")] public Output Ipv6CidrBlock { get; private set; } = null!; @@ -39,6 +45,12 @@ public partial class Subnet : global::Pulumi.CustomResource [Output("ipv6Native")] public Output Ipv6Native { get; private set; } = null!; + /// + /// The netmask length of the IPv6 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool + /// + [Output("ipv6NetmaskLength")] + public Output Ipv6NetmaskLength { get; private set; } = null!; + [Output("mapPublicIpOnLaunch")] public Output MapPublicIpOnLaunch { get; private set; } = null!; @@ -129,12 +141,24 @@ public sealed class SubnetArgs : global::Pulumi.ResourceArgs [Input("enableDns64")] public Input? EnableDns64 { get; set; } + /// + /// The netmask length of the IPv4 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool + /// + [Input("ipv4NetmaskLength")] + public Input? Ipv4NetmaskLength { get; set; } + [Input("ipv6CidrBlock")] public Input? Ipv6CidrBlock { get; set; } [Input("ipv6Native")] public Input? Ipv6Native { get; set; } + /// + /// The netmask length of the IPv6 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool + /// + [Input("ipv6NetmaskLength")] + public Input? Ipv6NetmaskLength { get; set; } + [Input("mapPublicIpOnLaunch")] public Input? MapPublicIpOnLaunch { get; set; } diff --git a/sdk/dotnet/EntityResolution/Enums.cs b/sdk/dotnet/EntityResolution/Enums.cs index 7a734afa27..193949cf84 100644 --- a/sdk/dotnet/EntityResolution/Enums.cs +++ b/sdk/dotnet/EntityResolution/Enums.cs @@ -7,6 +7,33 @@ namespace Pulumi.AwsNative.EntityResolution { + [EnumType] + public readonly struct IdMappingWorkflowIdMappingTechniquesIdMappingType : IEquatable + { + private readonly string _value; + + private IdMappingWorkflowIdMappingTechniquesIdMappingType(string value) + { + _value = value ?? throw new ArgumentNullException(nameof(value)); + } + + public static IdMappingWorkflowIdMappingTechniquesIdMappingType Provider { get; } = new IdMappingWorkflowIdMappingTechniquesIdMappingType("PROVIDER"); + + public static bool operator ==(IdMappingWorkflowIdMappingTechniquesIdMappingType left, IdMappingWorkflowIdMappingTechniquesIdMappingType right) => left.Equals(right); + public static bool operator !=(IdMappingWorkflowIdMappingTechniquesIdMappingType left, IdMappingWorkflowIdMappingTechniquesIdMappingType right) => !left.Equals(right); + + public static explicit operator string(IdMappingWorkflowIdMappingTechniquesIdMappingType value) => value._value; + + [EditorBrowsable(EditorBrowsableState.Never)] + public override bool Equals(object? obj) => obj is IdMappingWorkflowIdMappingTechniquesIdMappingType other && Equals(other); + public bool Equals(IdMappingWorkflowIdMappingTechniquesIdMappingType other) => string.Equals(_value, other._value, StringComparison.Ordinal); + + [EditorBrowsable(EditorBrowsableState.Never)] + public override int GetHashCode() => _value?.GetHashCode() ?? 0; + + public override string ToString() => _value; + } + [EnumType] public readonly struct MatchingWorkflowResolutionTechniquesResolutionType : IEquatable { diff --git a/sdk/dotnet/EntityResolution/GetIdMappingWorkflow.cs b/sdk/dotnet/EntityResolution/GetIdMappingWorkflow.cs new file mode 100644 index 0000000000..07e20c0bb3 --- /dev/null +++ b/sdk/dotnet/EntityResolution/GetIdMappingWorkflow.cs @@ -0,0 +1,104 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.EntityResolution +{ + public static class GetIdMappingWorkflow + { + /// + /// IdMappingWorkflow defined in AWS Entity Resolution service + /// + public static Task InvokeAsync(GetIdMappingWorkflowArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:entityresolution:getIdMappingWorkflow", args ?? new GetIdMappingWorkflowArgs(), options.WithDefaults()); + + /// + /// IdMappingWorkflow defined in AWS Entity Resolution service + /// + public static Output Invoke(GetIdMappingWorkflowInvokeArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.Invoke("aws-native:entityresolution:getIdMappingWorkflow", args ?? new GetIdMappingWorkflowInvokeArgs(), options.WithDefaults()); + } + + + public sealed class GetIdMappingWorkflowArgs : global::Pulumi.InvokeArgs + { + /// + /// The name of the IdMappingWorkflow + /// + [Input("workflowName", required: true)] + public string WorkflowName { get; set; } = null!; + + public GetIdMappingWorkflowArgs() + { + } + public static new GetIdMappingWorkflowArgs Empty => new GetIdMappingWorkflowArgs(); + } + + public sealed class GetIdMappingWorkflowInvokeArgs : global::Pulumi.InvokeArgs + { + /// + /// The name of the IdMappingWorkflow + /// + [Input("workflowName", required: true)] + public Input WorkflowName { get; set; } = null!; + + public GetIdMappingWorkflowInvokeArgs() + { + } + public static new GetIdMappingWorkflowInvokeArgs Empty => new GetIdMappingWorkflowInvokeArgs(); + } + + + [OutputType] + public sealed class GetIdMappingWorkflowResult + { + public readonly string? CreatedAt; + /// + /// The description of the IdMappingWorkflow + /// + public readonly string? Description; + public readonly Outputs.IdMappingWorkflowIdMappingTechniques? IdMappingTechniques; + public readonly ImmutableArray InputSourceConfig; + public readonly ImmutableArray OutputSourceConfig; + public readonly string? RoleArn; + public readonly ImmutableArray Tags; + public readonly string? UpdatedAt; + public readonly string? WorkflowArn; + + [OutputConstructor] + private GetIdMappingWorkflowResult( + string? createdAt, + + string? description, + + Outputs.IdMappingWorkflowIdMappingTechniques? idMappingTechniques, + + ImmutableArray inputSourceConfig, + + ImmutableArray outputSourceConfig, + + string? roleArn, + + ImmutableArray tags, + + string? updatedAt, + + string? workflowArn) + { + CreatedAt = createdAt; + Description = description; + IdMappingTechniques = idMappingTechniques; + InputSourceConfig = inputSourceConfig; + OutputSourceConfig = outputSourceConfig; + RoleArn = roleArn; + Tags = tags; + UpdatedAt = updatedAt; + WorkflowArn = workflowArn; + } + } +} diff --git a/sdk/dotnet/EntityResolution/IdMappingWorkflow.cs b/sdk/dotnet/EntityResolution/IdMappingWorkflow.cs new file mode 100644 index 0000000000..efc78af104 --- /dev/null +++ b/sdk/dotnet/EntityResolution/IdMappingWorkflow.cs @@ -0,0 +1,150 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.EntityResolution +{ + /// + /// IdMappingWorkflow defined in AWS Entity Resolution service + /// + [AwsNativeResourceType("aws-native:entityresolution:IdMappingWorkflow")] + public partial class IdMappingWorkflow : global::Pulumi.CustomResource + { + [Output("createdAt")] + public Output CreatedAt { get; private set; } = null!; + + /// + /// The description of the IdMappingWorkflow + /// + [Output("description")] + public Output Description { get; private set; } = null!; + + [Output("idMappingTechniques")] + public Output IdMappingTechniques { get; private set; } = null!; + + [Output("inputSourceConfig")] + public Output> InputSourceConfig { get; private set; } = null!; + + [Output("outputSourceConfig")] + public Output> OutputSourceConfig { get; private set; } = null!; + + [Output("roleArn")] + public Output RoleArn { get; private set; } = null!; + + [Output("tags")] + public Output> Tags { get; private set; } = null!; + + [Output("updatedAt")] + public Output UpdatedAt { get; private set; } = null!; + + [Output("workflowArn")] + public Output WorkflowArn { get; private set; } = null!; + + /// + /// The name of the IdMappingWorkflow + /// + [Output("workflowName")] + public Output WorkflowName { get; private set; } = null!; + + + /// + /// Create a IdMappingWorkflow resource with the given unique name, arguments, and options. + /// + /// + /// The unique name of the resource + /// The arguments used to populate this resource's properties + /// A bag of options that control this resource's behavior + public IdMappingWorkflow(string name, IdMappingWorkflowArgs args, CustomResourceOptions? options = null) + : base("aws-native:entityresolution:IdMappingWorkflow", name, args ?? new IdMappingWorkflowArgs(), MakeResourceOptions(options, "")) + { + } + + private IdMappingWorkflow(string name, Input id, CustomResourceOptions? options = null) + : base("aws-native:entityresolution:IdMappingWorkflow", name, null, MakeResourceOptions(options, id)) + { + } + + private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id) + { + var defaultOptions = new CustomResourceOptions + { + Version = Utilities.Version, + ReplaceOnChanges = + { + "workflowName", + }, + }; + var merged = CustomResourceOptions.Merge(defaultOptions, options); + // Override the ID if one was specified for consistency with other language SDKs. + merged.Id = id ?? merged.Id; + return merged; + } + /// + /// Get an existing IdMappingWorkflow resource's state with the given name, ID, and optional extra + /// properties used to qualify the lookup. + /// + /// + /// The unique name of the resulting resource. + /// The unique provider ID of the resource to lookup. + /// A bag of options that control this resource's behavior + public static IdMappingWorkflow Get(string name, Input id, CustomResourceOptions? options = null) + { + return new IdMappingWorkflow(name, id, options); + } + } + + public sealed class IdMappingWorkflowArgs : global::Pulumi.ResourceArgs + { + /// + /// The description of the IdMappingWorkflow + /// + [Input("description")] + public Input? Description { get; set; } + + [Input("idMappingTechniques", required: true)] + public Input IdMappingTechniques { get; set; } = null!; + + [Input("inputSourceConfig", required: true)] + private InputList? _inputSourceConfig; + public InputList InputSourceConfig + { + get => _inputSourceConfig ?? (_inputSourceConfig = new InputList()); + set => _inputSourceConfig = value; + } + + [Input("outputSourceConfig", required: true)] + private InputList? _outputSourceConfig; + public InputList OutputSourceConfig + { + get => _outputSourceConfig ?? (_outputSourceConfig = new InputList()); + set => _outputSourceConfig = value; + } + + [Input("roleArn", required: true)] + public Input RoleArn { get; set; } = null!; + + [Input("tags")] + private InputList? _tags; + public InputList Tags + { + get => _tags ?? (_tags = new InputList()); + set => _tags = value; + } + + /// + /// The name of the IdMappingWorkflow + /// + [Input("workflowName", required: true)] + public Input WorkflowName { get; set; } = null!; + + public IdMappingWorkflowArgs() + { + } + public static new IdMappingWorkflowArgs Empty => new IdMappingWorkflowArgs(); + } +} diff --git a/sdk/dotnet/EntityResolution/Inputs/IdMappingWorkflowIdMappingTechniquesArgs.cs b/sdk/dotnet/EntityResolution/Inputs/IdMappingWorkflowIdMappingTechniquesArgs.cs new file mode 100644 index 0000000000..60707dea17 --- /dev/null +++ b/sdk/dotnet/EntityResolution/Inputs/IdMappingWorkflowIdMappingTechniquesArgs.cs @@ -0,0 +1,26 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.EntityResolution.Inputs +{ + + public sealed class IdMappingWorkflowIdMappingTechniquesArgs : global::Pulumi.ResourceArgs + { + [Input("idMappingType")] + public Input? IdMappingType { get; set; } + + [Input("providerProperties")] + public Input? ProviderProperties { get; set; } + + public IdMappingWorkflowIdMappingTechniquesArgs() + { + } + public static new IdMappingWorkflowIdMappingTechniquesArgs Empty => new IdMappingWorkflowIdMappingTechniquesArgs(); + } +} diff --git a/sdk/dotnet/EntityResolution/Inputs/IdMappingWorkflowInputSourceArgs.cs b/sdk/dotnet/EntityResolution/Inputs/IdMappingWorkflowInputSourceArgs.cs new file mode 100644 index 0000000000..a333c7808f --- /dev/null +++ b/sdk/dotnet/EntityResolution/Inputs/IdMappingWorkflowInputSourceArgs.cs @@ -0,0 +1,29 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.EntityResolution.Inputs +{ + + public sealed class IdMappingWorkflowInputSourceArgs : global::Pulumi.ResourceArgs + { + /// + /// An Glue table ARN for the input source table + /// + [Input("inputSourceArn", required: true)] + public Input InputSourceArn { get; set; } = null!; + + [Input("schemaArn", required: true)] + public Input SchemaArn { get; set; } = null!; + + public IdMappingWorkflowInputSourceArgs() + { + } + public static new IdMappingWorkflowInputSourceArgs Empty => new IdMappingWorkflowInputSourceArgs(); + } +} diff --git a/sdk/dotnet/EntityResolution/Inputs/IdMappingWorkflowIntermediateSourceConfigurationArgs.cs b/sdk/dotnet/EntityResolution/Inputs/IdMappingWorkflowIntermediateSourceConfigurationArgs.cs new file mode 100644 index 0000000000..af14de46dd --- /dev/null +++ b/sdk/dotnet/EntityResolution/Inputs/IdMappingWorkflowIntermediateSourceConfigurationArgs.cs @@ -0,0 +1,26 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.EntityResolution.Inputs +{ + + public sealed class IdMappingWorkflowIntermediateSourceConfigurationArgs : global::Pulumi.ResourceArgs + { + /// + /// The s3 path that would be used to stage the intermediate data being generated during workflow execution. + /// + [Input("intermediateS3Path", required: true)] + public Input IntermediateS3Path { get; set; } = null!; + + public IdMappingWorkflowIntermediateSourceConfigurationArgs() + { + } + public static new IdMappingWorkflowIntermediateSourceConfigurationArgs Empty => new IdMappingWorkflowIntermediateSourceConfigurationArgs(); + } +} diff --git a/sdk/dotnet/EntityResolution/Inputs/IdMappingWorkflowOutputSourceArgs.cs b/sdk/dotnet/EntityResolution/Inputs/IdMappingWorkflowOutputSourceArgs.cs new file mode 100644 index 0000000000..0dfe71836d --- /dev/null +++ b/sdk/dotnet/EntityResolution/Inputs/IdMappingWorkflowOutputSourceArgs.cs @@ -0,0 +1,29 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.EntityResolution.Inputs +{ + + public sealed class IdMappingWorkflowOutputSourceArgs : global::Pulumi.ResourceArgs + { + [Input("kmsArn")] + public Input? KmsArn { get; set; } + + /// + /// The S3 path to which Entity Resolution will write the output table + /// + [Input("outputS3Path", required: true)] + public Input OutputS3Path { get; set; } = null!; + + public IdMappingWorkflowOutputSourceArgs() + { + } + public static new IdMappingWorkflowOutputSourceArgs Empty => new IdMappingWorkflowOutputSourceArgs(); + } +} diff --git a/sdk/dotnet/EntityResolution/Inputs/IdMappingWorkflowProviderPropertiesArgs.cs b/sdk/dotnet/EntityResolution/Inputs/IdMappingWorkflowProviderPropertiesArgs.cs new file mode 100644 index 0000000000..ea0961aa6b --- /dev/null +++ b/sdk/dotnet/EntityResolution/Inputs/IdMappingWorkflowProviderPropertiesArgs.cs @@ -0,0 +1,35 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.EntityResolution.Inputs +{ + + public sealed class IdMappingWorkflowProviderPropertiesArgs : global::Pulumi.ResourceArgs + { + [Input("intermediateSourceConfiguration")] + public Input? IntermediateSourceConfiguration { get; set; } + + /// + /// Additional Provider configuration that would be required for the provider service. The Configuration must be in JSON string format + /// + [Input("providerConfiguration")] + public Input? ProviderConfiguration { get; set; } + + /// + /// Arn of the Provider Service being used. + /// + [Input("providerServiceArn", required: true)] + public Input ProviderServiceArn { get; set; } = null!; + + public IdMappingWorkflowProviderPropertiesArgs() + { + } + public static new IdMappingWorkflowProviderPropertiesArgs Empty => new IdMappingWorkflowProviderPropertiesArgs(); + } +} diff --git a/sdk/dotnet/Cognito/Inputs/IdentityPoolTagArgs.cs b/sdk/dotnet/EntityResolution/Inputs/IdMappingWorkflowTagArgs.cs similarity index 78% rename from sdk/dotnet/Cognito/Inputs/IdentityPoolTagArgs.cs rename to sdk/dotnet/EntityResolution/Inputs/IdMappingWorkflowTagArgs.cs index b9b1850532..c9d3c67832 100644 --- a/sdk/dotnet/Cognito/Inputs/IdentityPoolTagArgs.cs +++ b/sdk/dotnet/EntityResolution/Inputs/IdMappingWorkflowTagArgs.cs @@ -7,13 +7,13 @@ using System.Threading.Tasks; using Pulumi.Serialization; -namespace Pulumi.AwsNative.Cognito.Inputs +namespace Pulumi.AwsNative.EntityResolution.Inputs { /// - /// A key-value pair to associate with a resource. + /// A key-value pair to associate with a resource /// - public sealed class IdentityPoolTagArgs : global::Pulumi.ResourceArgs + public sealed class IdMappingWorkflowTagArgs : global::Pulumi.ResourceArgs { /// /// The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. @@ -27,9 +27,9 @@ public sealed class IdentityPoolTagArgs : global::Pulumi.ResourceArgs [Input("value", required: true)] public Input Value { get; set; } = null!; - public IdentityPoolTagArgs() + public IdMappingWorkflowTagArgs() { } - public static new IdentityPoolTagArgs Empty => new IdentityPoolTagArgs(); + public static new IdMappingWorkflowTagArgs Empty => new IdMappingWorkflowTagArgs(); } } diff --git a/sdk/dotnet/EntityResolution/Outputs/IdMappingWorkflowIdMappingTechniques.cs b/sdk/dotnet/EntityResolution/Outputs/IdMappingWorkflowIdMappingTechniques.cs new file mode 100644 index 0000000000..a43355774a --- /dev/null +++ b/sdk/dotnet/EntityResolution/Outputs/IdMappingWorkflowIdMappingTechniques.cs @@ -0,0 +1,29 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.EntityResolution.Outputs +{ + + [OutputType] + public sealed class IdMappingWorkflowIdMappingTechniques + { + public readonly Pulumi.AwsNative.EntityResolution.IdMappingWorkflowIdMappingTechniquesIdMappingType? IdMappingType; + public readonly Outputs.IdMappingWorkflowProviderProperties? ProviderProperties; + + [OutputConstructor] + private IdMappingWorkflowIdMappingTechniques( + Pulumi.AwsNative.EntityResolution.IdMappingWorkflowIdMappingTechniquesIdMappingType? idMappingType, + + Outputs.IdMappingWorkflowProviderProperties? providerProperties) + { + IdMappingType = idMappingType; + ProviderProperties = providerProperties; + } + } +} diff --git a/sdk/dotnet/EntityResolution/Outputs/IdMappingWorkflowInputSource.cs b/sdk/dotnet/EntityResolution/Outputs/IdMappingWorkflowInputSource.cs new file mode 100644 index 0000000000..4032c4ec77 --- /dev/null +++ b/sdk/dotnet/EntityResolution/Outputs/IdMappingWorkflowInputSource.cs @@ -0,0 +1,32 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.EntityResolution.Outputs +{ + + [OutputType] + public sealed class IdMappingWorkflowInputSource + { + /// + /// An Glue table ARN for the input source table + /// + public readonly string InputSourceArn; + public readonly string SchemaArn; + + [OutputConstructor] + private IdMappingWorkflowInputSource( + string inputSourceArn, + + string schemaArn) + { + InputSourceArn = inputSourceArn; + SchemaArn = schemaArn; + } + } +} diff --git a/sdk/dotnet/EntityResolution/Outputs/IdMappingWorkflowIntermediateSourceConfiguration.cs b/sdk/dotnet/EntityResolution/Outputs/IdMappingWorkflowIntermediateSourceConfiguration.cs new file mode 100644 index 0000000000..91f4240d8b --- /dev/null +++ b/sdk/dotnet/EntityResolution/Outputs/IdMappingWorkflowIntermediateSourceConfiguration.cs @@ -0,0 +1,27 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.EntityResolution.Outputs +{ + + [OutputType] + public sealed class IdMappingWorkflowIntermediateSourceConfiguration + { + /// + /// The s3 path that would be used to stage the intermediate data being generated during workflow execution. + /// + public readonly string IntermediateS3Path; + + [OutputConstructor] + private IdMappingWorkflowIntermediateSourceConfiguration(string intermediateS3Path) + { + IntermediateS3Path = intermediateS3Path; + } + } +} diff --git a/sdk/dotnet/EntityResolution/Outputs/IdMappingWorkflowOutputSource.cs b/sdk/dotnet/EntityResolution/Outputs/IdMappingWorkflowOutputSource.cs new file mode 100644 index 0000000000..46c6428cf4 --- /dev/null +++ b/sdk/dotnet/EntityResolution/Outputs/IdMappingWorkflowOutputSource.cs @@ -0,0 +1,32 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.EntityResolution.Outputs +{ + + [OutputType] + public sealed class IdMappingWorkflowOutputSource + { + public readonly string? KmsArn; + /// + /// The S3 path to which Entity Resolution will write the output table + /// + public readonly string OutputS3Path; + + [OutputConstructor] + private IdMappingWorkflowOutputSource( + string? kmsArn, + + string outputS3Path) + { + KmsArn = kmsArn; + OutputS3Path = outputS3Path; + } + } +} diff --git a/sdk/dotnet/EntityResolution/Outputs/IdMappingWorkflowProviderProperties.cs b/sdk/dotnet/EntityResolution/Outputs/IdMappingWorkflowProviderProperties.cs new file mode 100644 index 0000000000..5af7431866 --- /dev/null +++ b/sdk/dotnet/EntityResolution/Outputs/IdMappingWorkflowProviderProperties.cs @@ -0,0 +1,39 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.EntityResolution.Outputs +{ + + [OutputType] + public sealed class IdMappingWorkflowProviderProperties + { + public readonly Outputs.IdMappingWorkflowIntermediateSourceConfiguration? IntermediateSourceConfiguration; + /// + /// Additional Provider configuration that would be required for the provider service. The Configuration must be in JSON string format + /// + public readonly object? ProviderConfiguration; + /// + /// Arn of the Provider Service being used. + /// + public readonly string ProviderServiceArn; + + [OutputConstructor] + private IdMappingWorkflowProviderProperties( + Outputs.IdMappingWorkflowIntermediateSourceConfiguration? intermediateSourceConfiguration, + + object? providerConfiguration, + + string providerServiceArn) + { + IntermediateSourceConfiguration = intermediateSourceConfiguration; + ProviderConfiguration = providerConfiguration; + ProviderServiceArn = providerServiceArn; + } + } +} diff --git a/sdk/dotnet/Cognito/Outputs/IdentityPoolTag.cs b/sdk/dotnet/EntityResolution/Outputs/IdMappingWorkflowTag.cs similarity index 86% rename from sdk/dotnet/Cognito/Outputs/IdentityPoolTag.cs rename to sdk/dotnet/EntityResolution/Outputs/IdMappingWorkflowTag.cs index 41288e7cc2..4890641158 100644 --- a/sdk/dotnet/Cognito/Outputs/IdentityPoolTag.cs +++ b/sdk/dotnet/EntityResolution/Outputs/IdMappingWorkflowTag.cs @@ -7,14 +7,14 @@ using System.Threading.Tasks; using Pulumi.Serialization; -namespace Pulumi.AwsNative.Cognito.Outputs +namespace Pulumi.AwsNative.EntityResolution.Outputs { /// - /// A key-value pair to associate with a resource. + /// A key-value pair to associate with a resource /// [OutputType] - public sealed class IdentityPoolTag + public sealed class IdMappingWorkflowTag { /// /// The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. @@ -26,7 +26,7 @@ public sealed class IdentityPoolTag public readonly string Value; [OutputConstructor] - private IdentityPoolTag( + private IdMappingWorkflowTag( string key, string value) diff --git a/sdk/dotnet/Events/Enums.cs b/sdk/dotnet/Events/Enums.cs index 9d19589f41..05d6142b1d 100644 --- a/sdk/dotnet/Events/Enums.cs +++ b/sdk/dotnet/Events/Enums.cs @@ -157,35 +157,4 @@ private EndpointState(string value) public override string ToString() => _value; } - - /// - /// The state of the rule. - /// - [EnumType] - public readonly struct RuleState : IEquatable - { - private readonly string _value; - - private RuleState(string value) - { - _value = value ?? throw new ArgumentNullException(nameof(value)); - } - - public static RuleState Disabled { get; } = new RuleState("DISABLED"); - public static RuleState Enabled { get; } = new RuleState("ENABLED"); - - public static bool operator ==(RuleState left, RuleState right) => left.Equals(right); - public static bool operator !=(RuleState left, RuleState right) => !left.Equals(right); - - public static explicit operator string(RuleState value) => value._value; - - [EditorBrowsable(EditorBrowsableState.Never)] - public override bool Equals(object? obj) => obj is RuleState other && Equals(other); - public bool Equals(RuleState 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/Events/GetRule.cs b/sdk/dotnet/Events/GetRule.cs index 0f08d935c5..465a8d27f4 100644 --- a/sdk/dotnet/Events/GetRule.cs +++ b/sdk/dotnet/Events/GetRule.cs @@ -27,11 +27,8 @@ public static Output Invoke(GetRuleInvokeArgs args, InvokeOptions public sealed class GetRuleArgs : global::Pulumi.InvokeArgs { - /// - /// The ARN of the rule, such as arn:aws:events:us-east-2:123456789012:rule/example. - /// - [Input("arn", required: true)] - public string Arn { get; set; } = null!; + [Input("id", required: true)] + public string Id { get; set; } = null!; public GetRuleArgs() { @@ -41,11 +38,8 @@ public GetRuleArgs() public sealed class GetRuleInvokeArgs : global::Pulumi.InvokeArgs { - /// - /// The ARN of the rule, such as arn:aws:events:us-east-2:123456789012:rule/example. - /// - [Input("arn", required: true)] - public Input Arn { get; set; } = null!; + [Input("id", required: true)] + public Input Id { get; set; } = null!; public GetRuleInvokeArgs() { @@ -57,38 +51,13 @@ public GetRuleInvokeArgs() [OutputType] public sealed class GetRuleResult { - /// - /// The ARN of the rule, such as arn:aws:events:us-east-2:123456789012:rule/example. - /// public readonly string? Arn; - /// - /// The description of the rule. - /// public readonly string? Description; - /// - /// The name or ARN of the event bus associated with the rule. If you omit this, the default event bus is used. - /// - public readonly string? EventBusName; - /// - /// The event pattern of the rule. For more information, see Events and Event Patterns in the Amazon EventBridge User Guide. - /// - public readonly string? EventPattern; - /// - /// The Amazon Resource Name (ARN) of the role that is used for target invocation. - /// + public readonly object? EventPattern; + public readonly string? Id; public readonly string? RoleArn; - /// - /// The scheduling expression. For example, "cron(0 20 * * ? *)", "rate(5 minutes)". For more information, see Creating an Amazon EventBridge rule that runs on a schedule. - /// public readonly string? ScheduleExpression; - /// - /// The state of the rule. - /// - public readonly Pulumi.AwsNative.Events.RuleState? State; - /// - /// Adds the specified targets to the specified rule, or updates the targets if they are already associated with the rule. - /// Targets are the resources that are invoked when a rule is triggered. - /// + public readonly string? State; public readonly ImmutableArray Targets; [OutputConstructor] @@ -97,22 +66,22 @@ private GetRuleResult( string? description, - string? eventBusName, + object? eventPattern, - string? eventPattern, + string? id, string? roleArn, string? scheduleExpression, - Pulumi.AwsNative.Events.RuleState? state, + string? state, ImmutableArray targets) { Arn = arn; Description = description; - EventBusName = eventBusName; EventPattern = eventPattern; + Id = id; RoleArn = roleArn; ScheduleExpression = scheduleExpression; State = state; diff --git a/sdk/dotnet/Events/Inputs/RuleRedshiftDataParametersArgs.cs b/sdk/dotnet/Events/Inputs/RuleRedshiftDataParametersArgs.cs index f403612712..14103708ef 100644 --- a/sdk/dotnet/Events/Inputs/RuleRedshiftDataParametersArgs.cs +++ b/sdk/dotnet/Events/Inputs/RuleRedshiftDataParametersArgs.cs @@ -24,14 +24,6 @@ public sealed class RuleRedshiftDataParametersArgs : global::Pulumi.ResourceArgs [Input("sql")] public Input? Sql { get; set; } - [Input("sqls")] - private InputList? _sqls; - public InputList Sqls - { - get => _sqls ?? (_sqls = new InputList()); - set => _sqls = value; - } - [Input("statementName")] public Input? StatementName { get; set; } diff --git a/sdk/dotnet/Events/Outputs/RuleRedshiftDataParameters.cs b/sdk/dotnet/Events/Outputs/RuleRedshiftDataParameters.cs index f20589f7d0..99ae134ca1 100644 --- a/sdk/dotnet/Events/Outputs/RuleRedshiftDataParameters.cs +++ b/sdk/dotnet/Events/Outputs/RuleRedshiftDataParameters.cs @@ -17,7 +17,6 @@ public sealed class RuleRedshiftDataParameters public readonly string? DbUser; public readonly string? SecretManagerArn; public readonly string? Sql; - public readonly ImmutableArray Sqls; public readonly string? StatementName; public readonly bool? WithEvent; @@ -31,8 +30,6 @@ private RuleRedshiftDataParameters( string? sql, - ImmutableArray sqls, - string? statementName, bool? withEvent) @@ -41,7 +38,6 @@ private RuleRedshiftDataParameters( DbUser = dbUser; SecretManagerArn = secretManagerArn; Sql = sql; - Sqls = sqls; StatementName = statementName; WithEvent = withEvent; } diff --git a/sdk/dotnet/Events/Rule.cs b/sdk/dotnet/Events/Rule.cs index 0ad6dbfa0f..64a54f29f5 100644 --- a/sdk/dotnet/Events/Rule.cs +++ b/sdk/dotnet/Events/Rule.cs @@ -15,58 +15,30 @@ namespace Pulumi.AwsNative.Events [AwsNativeResourceType("aws-native:events:Rule")] public partial class Rule : global::Pulumi.CustomResource { - /// - /// The ARN of the rule, such as arn:aws:events:us-east-2:123456789012:rule/example. - /// [Output("arn")] public Output Arn { get; private set; } = null!; - /// - /// The description of the rule. - /// [Output("description")] public Output Description { get; private set; } = null!; - /// - /// The name or ARN of the event bus associated with the rule. If you omit this, the default event bus is used. - /// [Output("eventBusName")] public Output EventBusName { get; private set; } = null!; - /// - /// The event pattern of the rule. For more information, see Events and Event Patterns in the Amazon EventBridge User Guide. - /// [Output("eventPattern")] - public Output EventPattern { get; private set; } = null!; + public Output EventPattern { get; private set; } = null!; - /// - /// The name of the rule. - /// [Output("name")] public Output Name { get; private set; } = null!; - /// - /// The Amazon Resource Name (ARN) of the role that is used for target invocation. - /// [Output("roleArn")] public Output RoleArn { get; private set; } = null!; - /// - /// The scheduling expression. For example, "cron(0 20 * * ? *)", "rate(5 minutes)". For more information, see Creating an Amazon EventBridge rule that runs on a schedule. - /// [Output("scheduleExpression")] public Output ScheduleExpression { get; private set; } = null!; - /// - /// The state of the rule. - /// [Output("state")] - public Output State { get; private set; } = null!; + public Output State { get; private set; } = null!; - /// - /// Adds the specified targets to the specified rule, or updates the targets if they are already associated with the rule. - /// Targets are the resources that are invoked when a rule is triggered. - /// [Output("targets")] public Output> Targets { get; private set; } = null!; @@ -95,6 +67,7 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? Version = Utilities.Version, ReplaceOnChanges = { + "eventBusName", "name", }, }; @@ -119,55 +92,29 @@ public static Rule Get(string name, Input id, CustomResourceOptions? opt public sealed class RuleArgs : global::Pulumi.ResourceArgs { - /// - /// The description of the rule. - /// [Input("description")] public Input? Description { get; set; } - /// - /// The name or ARN of the event bus associated with the rule. If you omit this, the default event bus is used. - /// [Input("eventBusName")] public Input? EventBusName { get; set; } - /// - /// The event pattern of the rule. For more information, see Events and Event Patterns in the Amazon EventBridge User Guide. - /// [Input("eventPattern")] - public Input? EventPattern { get; set; } + public Input? EventPattern { get; set; } - /// - /// The name of the rule. - /// [Input("name")] public Input? Name { get; set; } - /// - /// The Amazon Resource Name (ARN) of the role that is used for target invocation. - /// [Input("roleArn")] public Input? RoleArn { get; set; } - /// - /// The scheduling expression. For example, "cron(0 20 * * ? *)", "rate(5 minutes)". For more information, see Creating an Amazon EventBridge rule that runs on a schedule. - /// [Input("scheduleExpression")] public Input? ScheduleExpression { get; set; } - /// - /// The state of the rule. - /// [Input("state")] - public Input? State { get; set; } + public Input? State { get; set; } [Input("targets")] private InputList? _targets; - - /// - /// Adds the specified targets to the specified rule, or updates the targets if they are already associated with the rule. - /// Targets are the resources that are invoked when a rule is triggered. - /// public InputList Targets { get => _targets ?? (_targets = new InputList()); diff --git a/sdk/dotnet/GameLift/Enums.cs b/sdk/dotnet/GameLift/Enums.cs index 770dd224aa..2873070136 100644 --- a/sdk/dotnet/GameLift/Enums.cs +++ b/sdk/dotnet/GameLift/Enums.cs @@ -131,6 +131,36 @@ private FleetComputeType(string value) public override string ToString() => _value; } + /// + /// Credentials provider implementation that loads credentials from the Amazon EC2 Instance Metadata Service. + /// + [EnumType] + public readonly struct FleetInstanceRoleCredentialsProvider : IEquatable + { + private readonly string _value; + + private FleetInstanceRoleCredentialsProvider(string value) + { + _value = value ?? throw new ArgumentNullException(nameof(value)); + } + + public static FleetInstanceRoleCredentialsProvider SharedCredentialFile { get; } = new FleetInstanceRoleCredentialsProvider("SHARED_CREDENTIAL_FILE"); + + public static bool operator ==(FleetInstanceRoleCredentialsProvider left, FleetInstanceRoleCredentialsProvider right) => left.Equals(right); + public static bool operator !=(FleetInstanceRoleCredentialsProvider left, FleetInstanceRoleCredentialsProvider right) => !left.Equals(right); + + public static explicit operator string(FleetInstanceRoleCredentialsProvider value) => value._value; + + [EditorBrowsable(EditorBrowsableState.Never)] + public override bool Equals(object? obj) => obj is FleetInstanceRoleCredentialsProvider other && Equals(other); + public bool Equals(FleetInstanceRoleCredentialsProvider other) => string.Equals(_value, other._value, StringComparison.Ordinal); + + [EditorBrowsable(EditorBrowsableState.Never)] + public override int GetHashCode() => _value?.GetHashCode() ?? 0; + + public override string ToString() => _value; + } + /// /// The network communication protocol used by the fleet. /// diff --git a/sdk/dotnet/GameLift/Fleet.cs b/sdk/dotnet/GameLift/Fleet.cs index 57dbdd5003..c2d3ce132a 100644 --- a/sdk/dotnet/GameLift/Fleet.cs +++ b/sdk/dotnet/GameLift/Fleet.cs @@ -81,6 +81,12 @@ public partial class Fleet : global::Pulumi.CustomResource [Output("instanceRoleArn")] public Output InstanceRoleArn { get; private set; } = null!; + /// + /// Credentials provider implementation that loads credentials from the Amazon EC2 Instance Metadata Service. + /// + [Output("instanceRoleCredentialsProvider")] + public Output InstanceRoleCredentialsProvider { get; private set; } = null!; + [Output("locations")] public Output> Locations { get; private set; } = null!; @@ -197,6 +203,7 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? "ec2InstanceType", "fleetType", "instanceRoleArn", + "instanceRoleCredentialsProvider", "logPaths[*]", "peerVpcAwsAccountId", "peerVpcId", @@ -292,6 +299,12 @@ public InputList Ec2InboundPermissions [Input("instanceRoleArn")] public Input? InstanceRoleArn { get; set; } + /// + /// Credentials provider implementation that loads credentials from the Amazon EC2 Instance Metadata Service. + /// + [Input("instanceRoleCredentialsProvider")] + public Input? InstanceRoleCredentialsProvider { get; set; } + [Input("locations")] private InputList? _locations; public InputList Locations diff --git a/sdk/dotnet/Iam/GetGroup.cs b/sdk/dotnet/Iam/GetGroup.cs index 6224de0c23..87be674cc1 100644 --- a/sdk/dotnet/Iam/GetGroup.cs +++ b/sdk/dotnet/Iam/GetGroup.cs @@ -27,8 +27,11 @@ public static Output Invoke(GetGroupInvokeArgs args, InvokeOptio public sealed class GetGroupArgs : global::Pulumi.InvokeArgs { - [Input("id", required: true)] - public string Id { get; set; } = null!; + /// + /// The name of the group to create + /// + [Input("groupName", required: true)] + public string GroupName { get; set; } = null!; public GetGroupArgs() { @@ -38,8 +41,11 @@ public GetGroupArgs() public sealed class GetGroupInvokeArgs : global::Pulumi.InvokeArgs { - [Input("id", required: true)] - public Input Id { get; set; } = null!; + /// + /// The name of the group to create + /// + [Input("groupName", required: true)] + public Input GroupName { get; set; } = null!; public GetGroupInvokeArgs() { @@ -51,18 +57,27 @@ public GetGroupInvokeArgs() [OutputType] public sealed class GetGroupResult { + /// + /// The Arn of the group to create + /// public readonly string? Arn; - public readonly string? Id; + /// + /// A list of Amazon Resource Names (ARNs) of the IAM managed policies that you want to attach to the role. + /// public readonly ImmutableArray ManagedPolicyArns; + /// + /// The path to the group + /// public readonly string? Path; + /// + /// Adds or updates an inline policy document that is embedded in the specified IAM group + /// public readonly ImmutableArray Policies; [OutputConstructor] private GetGroupResult( string? arn, - string? id, - ImmutableArray managedPolicyArns, string? path, @@ -70,7 +85,6 @@ private GetGroupResult( ImmutableArray policies) { Arn = arn; - Id = id; ManagedPolicyArns = managedPolicyArns; Path = path; Policies = policies; diff --git a/sdk/dotnet/Iam/Group.cs b/sdk/dotnet/Iam/Group.cs index a5a1a00157..7e99a4d57a 100644 --- a/sdk/dotnet/Iam/Group.cs +++ b/sdk/dotnet/Iam/Group.cs @@ -12,22 +12,36 @@ namespace Pulumi.AwsNative.Iam /// /// Resource Type definition for AWS::IAM::Group /// - [Obsolete(@"Group is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.")] [AwsNativeResourceType("aws-native:iam:Group")] public partial class Group : global::Pulumi.CustomResource { + /// + /// The Arn of the group to create + /// [Output("arn")] public Output Arn { get; private set; } = null!; + /// + /// The name of the group to create + /// [Output("groupName")] public Output GroupName { get; private set; } = null!; + /// + /// A list of Amazon Resource Names (ARNs) of the IAM managed policies that you want to attach to the role. + /// [Output("managedPolicyArns")] public Output> ManagedPolicyArns { get; private set; } = null!; + /// + /// The path to the group + /// [Output("path")] public Output Path { get; private set; } = null!; + /// + /// Adds or updates an inline policy document that is embedded in the specified IAM group + /// [Output("policies")] public Output> Policies { get; private set; } = null!; @@ -80,22 +94,36 @@ public static Group Get(string name, Input id, CustomResourceOptions? op public sealed class GroupArgs : global::Pulumi.ResourceArgs { + /// + /// The name of the group to create + /// [Input("groupName")] public Input? GroupName { get; set; } [Input("managedPolicyArns")] private InputList? _managedPolicyArns; + + /// + /// A list of Amazon Resource Names (ARNs) of the IAM managed policies that you want to attach to the role. + /// public InputList ManagedPolicyArns { get => _managedPolicyArns ?? (_managedPolicyArns = new InputList()); set => _managedPolicyArns = value; } + /// + /// The path to the group + /// [Input("path")] public Input? Path { get; set; } [Input("policies")] private InputList? _policies; + + /// + /// Adds or updates an inline policy document that is embedded in the specified IAM group + /// public InputList Policies { get => _policies ?? (_policies = new InputList()); diff --git a/sdk/dotnet/Iam/Inputs/GroupPolicyArgs.cs b/sdk/dotnet/Iam/Inputs/GroupPolicyArgs.cs index cf55062ae8..59cf9f428d 100644 --- a/sdk/dotnet/Iam/Inputs/GroupPolicyArgs.cs +++ b/sdk/dotnet/Iam/Inputs/GroupPolicyArgs.cs @@ -12,9 +12,15 @@ namespace Pulumi.AwsNative.Iam.Inputs public sealed class GroupPolicyArgs : global::Pulumi.ResourceArgs { + /// + /// The policy document. + /// [Input("policyDocument", required: true)] - public Input PolicyDocument { get; set; } = null!; + public Input PolicyDocument { get; set; } = null!; + /// + /// The friendly name (not ARN) identifying the policy. + /// [Input("policyName", required: true)] public Input PolicyName { get; set; } = null!; diff --git a/sdk/dotnet/Iam/Outputs/GroupPolicy.cs b/sdk/dotnet/Iam/Outputs/GroupPolicy.cs index 01510f4054..33e393963d 100644 --- a/sdk/dotnet/Iam/Outputs/GroupPolicy.cs +++ b/sdk/dotnet/Iam/Outputs/GroupPolicy.cs @@ -13,12 +13,18 @@ namespace Pulumi.AwsNative.Iam.Outputs [OutputType] public sealed class GroupPolicy { - public readonly object PolicyDocument; + /// + /// The policy document. + /// + public readonly string PolicyDocument; + /// + /// The friendly name (not ARN) identifying the policy. + /// public readonly string PolicyName; [OutputConstructor] private GroupPolicy( - object policyDocument, + string policyDocument, string policyName) { diff --git a/sdk/dotnet/IoT/GetJobTemplate.cs b/sdk/dotnet/IoT/GetJobTemplate.cs index b347c8c973..50b75a4a52 100644 --- a/sdk/dotnet/IoT/GetJobTemplate.cs +++ b/sdk/dotnet/IoT/GetJobTemplate.cs @@ -52,24 +52,11 @@ public GetJobTemplateInvokeArgs() public sealed class GetJobTemplateResult { public readonly string? Arn; - public readonly ImmutableArray DestinationPackageVersions; - public readonly Outputs.JobExecutionsRetryConfigProperties? JobExecutionsRetryConfig; - public readonly ImmutableArray MaintenanceWindows; [OutputConstructor] - private GetJobTemplateResult( - string? arn, - - ImmutableArray destinationPackageVersions, - - Outputs.JobExecutionsRetryConfigProperties? jobExecutionsRetryConfig, - - ImmutableArray maintenanceWindows) + private GetJobTemplateResult(string? arn) { Arn = arn; - DestinationPackageVersions = destinationPackageVersions; - JobExecutionsRetryConfig = jobExecutionsRetryConfig; - MaintenanceWindows = maintenanceWindows; } } } diff --git a/sdk/dotnet/IoT/GetPolicy.cs b/sdk/dotnet/IoT/GetPolicy.cs index 3abd1d5ef4..792133c5d4 100644 --- a/sdk/dotnet/IoT/GetPolicy.cs +++ b/sdk/dotnet/IoT/GetPolicy.cs @@ -54,6 +54,7 @@ public sealed class GetPolicyResult public readonly string? Arn; public readonly string? Id; public readonly object? PolicyDocument; + public readonly ImmutableArray Tags; [OutputConstructor] private GetPolicyResult( @@ -61,11 +62,14 @@ private GetPolicyResult( string? id, - object? policyDocument) + object? policyDocument, + + ImmutableArray tags) { Arn = arn; Id = id; PolicyDocument = policyDocument; + Tags = tags; } } } diff --git a/sdk/dotnet/IoT/Inputs/PolicyTagArgs.cs b/sdk/dotnet/IoT/Inputs/PolicyTagArgs.cs new file mode 100644 index 0000000000..64d643d2d8 --- /dev/null +++ b/sdk/dotnet/IoT/Inputs/PolicyTagArgs.cs @@ -0,0 +1,26 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.IoT.Inputs +{ + + public sealed class PolicyTagArgs : global::Pulumi.ResourceArgs + { + [Input("key", required: true)] + public Input Key { get; set; } = null!; + + [Input("value", required: true)] + public Input Value { get; set; } = null!; + + public PolicyTagArgs() + { + } + public static new PolicyTagArgs Empty => new PolicyTagArgs(); + } +} diff --git a/sdk/dotnet/IoT/JobTemplate.cs b/sdk/dotnet/IoT/JobTemplate.cs index b3a46f73ef..c18672a9ea 100644 --- a/sdk/dotnet/IoT/JobTemplate.cs +++ b/sdk/dotnet/IoT/JobTemplate.cs @@ -111,11 +111,14 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? { "abortConfig", "description", + "destinationPackageVersions[*]", "document", "documentSource", "jobArn", + "jobExecutionsRetryConfig", "jobExecutionsRolloutConfig", "jobTemplateId", + "maintenanceWindows[*]", "presignedUrlConfig", "tags[*]", "timeoutConfig", diff --git a/sdk/dotnet/IoT/Outputs/PolicyTag.cs b/sdk/dotnet/IoT/Outputs/PolicyTag.cs new file mode 100644 index 0000000000..5393f27f11 --- /dev/null +++ b/sdk/dotnet/IoT/Outputs/PolicyTag.cs @@ -0,0 +1,29 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.IoT.Outputs +{ + + [OutputType] + public sealed class PolicyTag + { + public readonly string Key; + public readonly string Value; + + [OutputConstructor] + private PolicyTag( + string key, + + string value) + { + Key = key; + Value = value; + } + } +} diff --git a/sdk/dotnet/IoT/Policy.cs b/sdk/dotnet/IoT/Policy.cs index 011d9b926a..8bb965b0c7 100644 --- a/sdk/dotnet/IoT/Policy.cs +++ b/sdk/dotnet/IoT/Policy.cs @@ -24,6 +24,9 @@ public partial class Policy : global::Pulumi.CustomResource [Output("policyName")] public Output PolicyName { get; private set; } = null!; + [Output("tags")] + public Output> Tags { get; private set; } = null!; + /// /// Create a Policy resource with the given unique name, arguments, and options. @@ -79,6 +82,14 @@ public sealed class PolicyArgs : global::Pulumi.ResourceArgs [Input("policyName")] public Input? PolicyName { get; set; } + [Input("tags")] + private InputList? _tags; + public InputList Tags + { + get => _tags ?? (_tags = new InputList()); + set => _tags = value; + } + public PolicyArgs() { } diff --git a/sdk/dotnet/Lambda/Function.cs b/sdk/dotnet/Lambda/Function.cs index 52426d00ae..8fbb2dcab0 100644 --- a/sdk/dotnet/Lambda/Function.cs +++ b/sdk/dotnet/Lambda/Function.cs @@ -108,6 +108,12 @@ public partial class Function : global::Pulumi.CustomResource [Output("packageType")] public Output PackageType { get; private set; } = null!; + /// + /// The resource policy of your function + /// + [Output("policy")] + public Output Policy { get; private set; } = null!; + /// /// The number of simultaneous executions to reserve for the function. /// @@ -321,6 +327,12 @@ public InputList Layers [Input("packageType")] public Input? PackageType { get; set; } + /// + /// The resource policy of your function + /// + [Input("policy")] + public Input? Policy { get; set; } + /// /// The number of simultaneous executions to reserve for the function. /// diff --git a/sdk/dotnet/Msk/Enums.cs b/sdk/dotnet/Msk/Enums.cs index 9d7d881506..a6c740d48b 100644 --- a/sdk/dotnet/Msk/Enums.cs +++ b/sdk/dotnet/Msk/Enums.cs @@ -94,6 +94,40 @@ private ClusterStorageMode(string value) public override string ToString() => _value; } + /// + /// The type of compression to use writing records to target Kafka cluster. + /// + [EnumType] + public readonly struct ReplicatorReplicationInfoTargetCompressionType : IEquatable + { + private readonly string _value; + + private ReplicatorReplicationInfoTargetCompressionType(string value) + { + _value = value ?? throw new ArgumentNullException(nameof(value)); + } + + public static ReplicatorReplicationInfoTargetCompressionType None { get; } = new ReplicatorReplicationInfoTargetCompressionType("NONE"); + public static ReplicatorReplicationInfoTargetCompressionType Gzip { get; } = new ReplicatorReplicationInfoTargetCompressionType("GZIP"); + public static ReplicatorReplicationInfoTargetCompressionType Snappy { get; } = new ReplicatorReplicationInfoTargetCompressionType("SNAPPY"); + public static ReplicatorReplicationInfoTargetCompressionType Lz4 { get; } = new ReplicatorReplicationInfoTargetCompressionType("LZ4"); + public static ReplicatorReplicationInfoTargetCompressionType Zstd { get; } = new ReplicatorReplicationInfoTargetCompressionType("ZSTD"); + + public static bool operator ==(ReplicatorReplicationInfoTargetCompressionType left, ReplicatorReplicationInfoTargetCompressionType right) => left.Equals(right); + public static bool operator !=(ReplicatorReplicationInfoTargetCompressionType left, ReplicatorReplicationInfoTargetCompressionType right) => !left.Equals(right); + + public static explicit operator string(ReplicatorReplicationInfoTargetCompressionType value) => value._value; + + [EditorBrowsable(EditorBrowsableState.Never)] + public override bool Equals(object? obj) => obj is ReplicatorReplicationInfoTargetCompressionType other && Equals(other); + public bool Equals(ReplicatorReplicationInfoTargetCompressionType other) => string.Equals(_value, other._value, StringComparison.Ordinal); + + [EditorBrowsable(EditorBrowsableState.Never)] + public override int GetHashCode() => _value?.GetHashCode() ?? 0; + + public override string ToString() => _value; + } + /// /// The type of private link authentication /// diff --git a/sdk/dotnet/Msk/GetReplicator.cs b/sdk/dotnet/Msk/GetReplicator.cs new file mode 100644 index 0000000000..27007d5dc8 --- /dev/null +++ b/sdk/dotnet/Msk/GetReplicator.cs @@ -0,0 +1,93 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.Msk +{ + public static class GetReplicator + { + /// + /// Resource Type definition for AWS::MSK::Replicator + /// + public static Task InvokeAsync(GetReplicatorArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:msk:getReplicator", args ?? new GetReplicatorArgs(), options.WithDefaults()); + + /// + /// Resource Type definition for AWS::MSK::Replicator + /// + public static Output Invoke(GetReplicatorInvokeArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.Invoke("aws-native:msk:getReplicator", args ?? new GetReplicatorInvokeArgs(), options.WithDefaults()); + } + + + public sealed class GetReplicatorArgs : global::Pulumi.InvokeArgs + { + /// + /// Amazon Resource Name for the created replicator. + /// + [Input("replicatorArn", required: true)] + public string ReplicatorArn { get; set; } = null!; + + public GetReplicatorArgs() + { + } + public static new GetReplicatorArgs Empty => new GetReplicatorArgs(); + } + + public sealed class GetReplicatorInvokeArgs : global::Pulumi.InvokeArgs + { + /// + /// Amazon Resource Name for the created replicator. + /// + [Input("replicatorArn", required: true)] + public Input ReplicatorArn { get; set; } = null!; + + public GetReplicatorInvokeArgs() + { + } + public static new GetReplicatorInvokeArgs Empty => new GetReplicatorInvokeArgs(); + } + + + [OutputType] + public sealed class GetReplicatorResult + { + /// + /// The current version of the MSK replicator. + /// + public readonly string? CurrentVersion; + /// + /// A list of replication configurations, where each configuration targets a given source cluster to target cluster replication flow. + /// + public readonly ImmutableArray ReplicationInfoList; + /// + /// Amazon Resource Name for the created replicator. + /// + public readonly string? ReplicatorArn; + /// + /// A collection of tags associated with a resource + /// + public readonly ImmutableArray Tags; + + [OutputConstructor] + private GetReplicatorResult( + string? currentVersion, + + ImmutableArray replicationInfoList, + + string? replicatorArn, + + ImmutableArray tags) + { + CurrentVersion = currentVersion; + ReplicationInfoList = replicationInfoList; + ReplicatorArn = replicatorArn; + Tags = tags; + } + } +} diff --git a/sdk/dotnet/Msk/Inputs/ReplicatorAmazonMskClusterArgs.cs b/sdk/dotnet/Msk/Inputs/ReplicatorAmazonMskClusterArgs.cs new file mode 100644 index 0000000000..2c3216d491 --- /dev/null +++ b/sdk/dotnet/Msk/Inputs/ReplicatorAmazonMskClusterArgs.cs @@ -0,0 +1,29 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.Msk.Inputs +{ + + /// + /// Details of an Amazon MSK cluster. + /// + public sealed class ReplicatorAmazonMskClusterArgs : global::Pulumi.ResourceArgs + { + /// + /// The ARN of an Amazon MSK cluster. + /// + [Input("mskClusterArn", required: true)] + public Input MskClusterArn { get; set; } = null!; + + public ReplicatorAmazonMskClusterArgs() + { + } + public static new ReplicatorAmazonMskClusterArgs Empty => new ReplicatorAmazonMskClusterArgs(); + } +} diff --git a/sdk/dotnet/Msk/Inputs/ReplicatorConsumerGroupReplicationArgs.cs b/sdk/dotnet/Msk/Inputs/ReplicatorConsumerGroupReplicationArgs.cs new file mode 100644 index 0000000000..92abc07549 --- /dev/null +++ b/sdk/dotnet/Msk/Inputs/ReplicatorConsumerGroupReplicationArgs.cs @@ -0,0 +1,59 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.Msk.Inputs +{ + + /// + /// Configuration relating to consumer group replication. + /// + public sealed class ReplicatorConsumerGroupReplicationArgs : global::Pulumi.ResourceArgs + { + [Input("consumerGroupsToExclude")] + private InputList? _consumerGroupsToExclude; + + /// + /// List of regular expression patterns indicating the consumer groups that should not be replicated. + /// + public InputList ConsumerGroupsToExclude + { + get => _consumerGroupsToExclude ?? (_consumerGroupsToExclude = new InputList()); + set => _consumerGroupsToExclude = value; + } + + [Input("consumerGroupsToReplicate", required: true)] + private InputList? _consumerGroupsToReplicate; + + /// + /// List of regular expression patterns indicating the consumer groups to copy. + /// + public InputList ConsumerGroupsToReplicate + { + get => _consumerGroupsToReplicate ?? (_consumerGroupsToReplicate = new InputList()); + set => _consumerGroupsToReplicate = value; + } + + /// + /// Whether to periodically check for new consumer groups. + /// + [Input("detectAndCopyNewConsumerGroups")] + public Input? DetectAndCopyNewConsumerGroups { get; set; } + + /// + /// Whether to periodically write the translated offsets to __consumer_offsets topic in target cluster. + /// + [Input("synchroniseConsumerGroupOffsets")] + public Input? SynchroniseConsumerGroupOffsets { get; set; } + + public ReplicatorConsumerGroupReplicationArgs() + { + } + public static new ReplicatorConsumerGroupReplicationArgs Empty => new ReplicatorConsumerGroupReplicationArgs(); + } +} diff --git a/sdk/dotnet/Msk/Inputs/ReplicatorKafkaClusterArgs.cs b/sdk/dotnet/Msk/Inputs/ReplicatorKafkaClusterArgs.cs new file mode 100644 index 0000000000..01179953e6 --- /dev/null +++ b/sdk/dotnet/Msk/Inputs/ReplicatorKafkaClusterArgs.cs @@ -0,0 +1,35 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.Msk.Inputs +{ + + /// + /// Details of a Kafka cluster for replication. + /// + public sealed class ReplicatorKafkaClusterArgs : global::Pulumi.ResourceArgs + { + /// + /// Details of an Amazon MSK cluster. Exactly one of AmazonMskCluster is required. + /// + [Input("amazonMskCluster", required: true)] + public Input AmazonMskCluster { get; set; } = null!; + + /// + /// Details of an Amazon VPC which has network connectivity to the Apache Kafka cluster. + /// + [Input("vpcConfig", required: true)] + public Input VpcConfig { get; set; } = null!; + + public ReplicatorKafkaClusterArgs() + { + } + public static new ReplicatorKafkaClusterArgs Empty => new ReplicatorKafkaClusterArgs(); + } +} diff --git a/sdk/dotnet/Msk/Inputs/ReplicatorKafkaClusterClientVpcConfigArgs.cs b/sdk/dotnet/Msk/Inputs/ReplicatorKafkaClusterClientVpcConfigArgs.cs new file mode 100644 index 0000000000..c9ed4db602 --- /dev/null +++ b/sdk/dotnet/Msk/Inputs/ReplicatorKafkaClusterClientVpcConfigArgs.cs @@ -0,0 +1,47 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.Msk.Inputs +{ + + /// + /// Details of an Amazon VPC which has network connectivity to the Kafka cluster. + /// + public sealed class ReplicatorKafkaClusterClientVpcConfigArgs : global::Pulumi.ResourceArgs + { + [Input("securityGroupIds")] + private InputList? _securityGroupIds; + + /// + /// The AWS security groups to associate with the elastic network interfaces in order to specify what the replicator has access to. If a security group is not specified, the default security group associated with the VPC is used. + /// + public InputList SecurityGroupIds + { + get => _securityGroupIds ?? (_securityGroupIds = new InputList()); + set => _securityGroupIds = value; + } + + [Input("subnetIds", required: true)] + private InputList? _subnetIds; + + /// + /// The list of subnets to connect to in the virtual private cloud (VPC). AWS creates elastic network interfaces inside these subnets. + /// + public InputList SubnetIds + { + get => _subnetIds ?? (_subnetIds = new InputList()); + set => _subnetIds = value; + } + + public ReplicatorKafkaClusterClientVpcConfigArgs() + { + } + public static new ReplicatorKafkaClusterClientVpcConfigArgs Empty => new ReplicatorKafkaClusterClientVpcConfigArgs(); + } +} diff --git a/sdk/dotnet/Msk/Inputs/ReplicatorReplicationInfoArgs.cs b/sdk/dotnet/Msk/Inputs/ReplicatorReplicationInfoArgs.cs new file mode 100644 index 0000000000..63a83ddad5 --- /dev/null +++ b/sdk/dotnet/Msk/Inputs/ReplicatorReplicationInfoArgs.cs @@ -0,0 +1,53 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.Msk.Inputs +{ + + /// + /// Specifies configuration for replication between a source and target Kafka cluster. + /// + public sealed class ReplicatorReplicationInfoArgs : global::Pulumi.ResourceArgs + { + /// + /// Configuration relating to consumer group replication. + /// + [Input("consumerGroupReplication", required: true)] + public Input ConsumerGroupReplication { get; set; } = null!; + + /// + /// Amazon Resource Name of the source Kafka cluster. + /// + [Input("sourceKafkaClusterArn", required: true)] + public Input SourceKafkaClusterArn { get; set; } = null!; + + /// + /// The type of compression to use writing records to target Kafka cluster. + /// + [Input("targetCompressionType", required: true)] + public Input TargetCompressionType { get; set; } = null!; + + /// + /// Amazon Resource Name of the target Kafka cluster. + /// + [Input("targetKafkaClusterArn", required: true)] + public Input TargetKafkaClusterArn { get; set; } = null!; + + /// + /// Configuration relating to topic replication. + /// + [Input("topicReplication", required: true)] + public Input TopicReplication { get; set; } = null!; + + public ReplicatorReplicationInfoArgs() + { + } + public static new ReplicatorReplicationInfoArgs Empty => new ReplicatorReplicationInfoArgs(); + } +} diff --git a/sdk/dotnet/Msk/Inputs/ReplicatorTagArgs.cs b/sdk/dotnet/Msk/Inputs/ReplicatorTagArgs.cs new file mode 100644 index 0000000000..cd7c2de84b --- /dev/null +++ b/sdk/dotnet/Msk/Inputs/ReplicatorTagArgs.cs @@ -0,0 +1,26 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.Msk.Inputs +{ + + public sealed class ReplicatorTagArgs : global::Pulumi.ResourceArgs + { + [Input("key", required: true)] + public Input Key { get; set; } = null!; + + [Input("value", required: true)] + public Input Value { get; set; } = null!; + + public ReplicatorTagArgs() + { + } + public static new ReplicatorTagArgs Empty => new ReplicatorTagArgs(); + } +} diff --git a/sdk/dotnet/Msk/Inputs/ReplicatorTopicReplicationArgs.cs b/sdk/dotnet/Msk/Inputs/ReplicatorTopicReplicationArgs.cs new file mode 100644 index 0000000000..9878c98393 --- /dev/null +++ b/sdk/dotnet/Msk/Inputs/ReplicatorTopicReplicationArgs.cs @@ -0,0 +1,62 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.Msk.Inputs +{ + + public sealed class ReplicatorTopicReplicationArgs : global::Pulumi.ResourceArgs + { + /// + /// Whether to periodically configure remote topic ACLs to match their corresponding upstream topics. + /// + [Input("copyAccessControlListsForTopics")] + public Input? CopyAccessControlListsForTopics { get; set; } + + /// + /// Whether to periodically configure remote topics to match their corresponding upstream topics. + /// + [Input("copyTopicConfigurations")] + public Input? CopyTopicConfigurations { get; set; } + + /// + /// Whether to periodically check for new topics and partitions. + /// + [Input("detectAndCopyNewTopics")] + public Input? DetectAndCopyNewTopics { get; set; } + + [Input("topicsToExclude")] + private InputList? _topicsToExclude; + + /// + /// List of regular expression patterns indicating the topics that should not be replicated. + /// + public InputList TopicsToExclude + { + get => _topicsToExclude ?? (_topicsToExclude = new InputList()); + set => _topicsToExclude = value; + } + + [Input("topicsToReplicate", required: true)] + private InputList? _topicsToReplicate; + + /// + /// List of regular expression patterns indicating the topics to copy. + /// + public InputList TopicsToReplicate + { + get => _topicsToReplicate ?? (_topicsToReplicate = new InputList()); + set => _topicsToReplicate = value; + } + + public ReplicatorTopicReplicationArgs() + { + } + public static new ReplicatorTopicReplicationArgs Empty => new ReplicatorTopicReplicationArgs(); + } +} diff --git a/sdk/dotnet/Msk/Outputs/ReplicatorAmazonMskCluster.cs b/sdk/dotnet/Msk/Outputs/ReplicatorAmazonMskCluster.cs new file mode 100644 index 0000000000..01e08e9895 --- /dev/null +++ b/sdk/dotnet/Msk/Outputs/ReplicatorAmazonMskCluster.cs @@ -0,0 +1,30 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.Msk.Outputs +{ + + /// + /// Details of an Amazon MSK cluster. + /// + [OutputType] + public sealed class ReplicatorAmazonMskCluster + { + /// + /// The ARN of an Amazon MSK cluster. + /// + public readonly string MskClusterArn; + + [OutputConstructor] + private ReplicatorAmazonMskCluster(string mskClusterArn) + { + MskClusterArn = mskClusterArn; + } + } +} diff --git a/sdk/dotnet/Msk/Outputs/ReplicatorConsumerGroupReplication.cs b/sdk/dotnet/Msk/Outputs/ReplicatorConsumerGroupReplication.cs new file mode 100644 index 0000000000..e515a3a390 --- /dev/null +++ b/sdk/dotnet/Msk/Outputs/ReplicatorConsumerGroupReplication.cs @@ -0,0 +1,52 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.Msk.Outputs +{ + + /// + /// Configuration relating to consumer group replication. + /// + [OutputType] + public sealed class ReplicatorConsumerGroupReplication + { + /// + /// List of regular expression patterns indicating the consumer groups that should not be replicated. + /// + public readonly ImmutableArray ConsumerGroupsToExclude; + /// + /// List of regular expression patterns indicating the consumer groups to copy. + /// + public readonly ImmutableArray ConsumerGroupsToReplicate; + /// + /// Whether to periodically check for new consumer groups. + /// + public readonly bool? DetectAndCopyNewConsumerGroups; + /// + /// Whether to periodically write the translated offsets to __consumer_offsets topic in target cluster. + /// + public readonly bool? SynchroniseConsumerGroupOffsets; + + [OutputConstructor] + private ReplicatorConsumerGroupReplication( + ImmutableArray consumerGroupsToExclude, + + ImmutableArray consumerGroupsToReplicate, + + bool? detectAndCopyNewConsumerGroups, + + bool? synchroniseConsumerGroupOffsets) + { + ConsumerGroupsToExclude = consumerGroupsToExclude; + ConsumerGroupsToReplicate = consumerGroupsToReplicate; + DetectAndCopyNewConsumerGroups = detectAndCopyNewConsumerGroups; + SynchroniseConsumerGroupOffsets = synchroniseConsumerGroupOffsets; + } + } +} diff --git a/sdk/dotnet/Msk/Outputs/ReplicatorKafkaCluster.cs b/sdk/dotnet/Msk/Outputs/ReplicatorKafkaCluster.cs new file mode 100644 index 0000000000..42b0749f6e --- /dev/null +++ b/sdk/dotnet/Msk/Outputs/ReplicatorKafkaCluster.cs @@ -0,0 +1,38 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.Msk.Outputs +{ + + /// + /// Details of a Kafka cluster for replication. + /// + [OutputType] + public sealed class ReplicatorKafkaCluster + { + /// + /// Details of an Amazon MSK cluster. Exactly one of AmazonMskCluster is required. + /// + public readonly Outputs.ReplicatorAmazonMskCluster AmazonMskCluster; + /// + /// Details of an Amazon VPC which has network connectivity to the Apache Kafka cluster. + /// + public readonly Outputs.ReplicatorKafkaClusterClientVpcConfig VpcConfig; + + [OutputConstructor] + private ReplicatorKafkaCluster( + Outputs.ReplicatorAmazonMskCluster amazonMskCluster, + + Outputs.ReplicatorKafkaClusterClientVpcConfig vpcConfig) + { + AmazonMskCluster = amazonMskCluster; + VpcConfig = vpcConfig; + } + } +} diff --git a/sdk/dotnet/Msk/Outputs/ReplicatorKafkaClusterClientVpcConfig.cs b/sdk/dotnet/Msk/Outputs/ReplicatorKafkaClusterClientVpcConfig.cs new file mode 100644 index 0000000000..75aaec4a60 --- /dev/null +++ b/sdk/dotnet/Msk/Outputs/ReplicatorKafkaClusterClientVpcConfig.cs @@ -0,0 +1,38 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.Msk.Outputs +{ + + /// + /// Details of an Amazon VPC which has network connectivity to the Kafka cluster. + /// + [OutputType] + public sealed class ReplicatorKafkaClusterClientVpcConfig + { + /// + /// The AWS security groups to associate with the elastic network interfaces in order to specify what the replicator has access to. If a security group is not specified, the default security group associated with the VPC is used. + /// + public readonly ImmutableArray SecurityGroupIds; + /// + /// The list of subnets to connect to in the virtual private cloud (VPC). AWS creates elastic network interfaces inside these subnets. + /// + public readonly ImmutableArray SubnetIds; + + [OutputConstructor] + private ReplicatorKafkaClusterClientVpcConfig( + ImmutableArray securityGroupIds, + + ImmutableArray subnetIds) + { + SecurityGroupIds = securityGroupIds; + SubnetIds = subnetIds; + } + } +} diff --git a/sdk/dotnet/Msk/Outputs/ReplicatorReplicationInfo.cs b/sdk/dotnet/Msk/Outputs/ReplicatorReplicationInfo.cs new file mode 100644 index 0000000000..0db73a1c9c --- /dev/null +++ b/sdk/dotnet/Msk/Outputs/ReplicatorReplicationInfo.cs @@ -0,0 +1,59 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.Msk.Outputs +{ + + /// + /// Specifies configuration for replication between a source and target Kafka cluster. + /// + [OutputType] + public sealed class ReplicatorReplicationInfo + { + /// + /// Configuration relating to consumer group replication. + /// + public readonly Outputs.ReplicatorConsumerGroupReplication ConsumerGroupReplication; + /// + /// Amazon Resource Name of the source Kafka cluster. + /// + public readonly string SourceKafkaClusterArn; + /// + /// The type of compression to use writing records to target Kafka cluster. + /// + public readonly Pulumi.AwsNative.Msk.ReplicatorReplicationInfoTargetCompressionType TargetCompressionType; + /// + /// Amazon Resource Name of the target Kafka cluster. + /// + public readonly string TargetKafkaClusterArn; + /// + /// Configuration relating to topic replication. + /// + public readonly Outputs.ReplicatorTopicReplication TopicReplication; + + [OutputConstructor] + private ReplicatorReplicationInfo( + Outputs.ReplicatorConsumerGroupReplication consumerGroupReplication, + + string sourceKafkaClusterArn, + + Pulumi.AwsNative.Msk.ReplicatorReplicationInfoTargetCompressionType targetCompressionType, + + string targetKafkaClusterArn, + + Outputs.ReplicatorTopicReplication topicReplication) + { + ConsumerGroupReplication = consumerGroupReplication; + SourceKafkaClusterArn = sourceKafkaClusterArn; + TargetCompressionType = targetCompressionType; + TargetKafkaClusterArn = targetKafkaClusterArn; + TopicReplication = topicReplication; + } + } +} diff --git a/sdk/dotnet/Msk/Outputs/ReplicatorTag.cs b/sdk/dotnet/Msk/Outputs/ReplicatorTag.cs new file mode 100644 index 0000000000..c338c13045 --- /dev/null +++ b/sdk/dotnet/Msk/Outputs/ReplicatorTag.cs @@ -0,0 +1,29 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.Msk.Outputs +{ + + [OutputType] + public sealed class ReplicatorTag + { + public readonly string Key; + public readonly string Value; + + [OutputConstructor] + private ReplicatorTag( + string key, + + string value) + { + Key = key; + Value = value; + } + } +} diff --git a/sdk/dotnet/Msk/Outputs/ReplicatorTopicReplication.cs b/sdk/dotnet/Msk/Outputs/ReplicatorTopicReplication.cs new file mode 100644 index 0000000000..4ce9cfb78f --- /dev/null +++ b/sdk/dotnet/Msk/Outputs/ReplicatorTopicReplication.cs @@ -0,0 +1,56 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.Msk.Outputs +{ + + [OutputType] + public sealed class ReplicatorTopicReplication + { + /// + /// Whether to periodically configure remote topic ACLs to match their corresponding upstream topics. + /// + public readonly bool? CopyAccessControlListsForTopics; + /// + /// Whether to periodically configure remote topics to match their corresponding upstream topics. + /// + public readonly bool? CopyTopicConfigurations; + /// + /// Whether to periodically check for new topics and partitions. + /// + public readonly bool? DetectAndCopyNewTopics; + /// + /// List of regular expression patterns indicating the topics that should not be replicated. + /// + public readonly ImmutableArray TopicsToExclude; + /// + /// List of regular expression patterns indicating the topics to copy. + /// + public readonly ImmutableArray TopicsToReplicate; + + [OutputConstructor] + private ReplicatorTopicReplication( + bool? copyAccessControlListsForTopics, + + bool? copyTopicConfigurations, + + bool? detectAndCopyNewTopics, + + ImmutableArray topicsToExclude, + + ImmutableArray topicsToReplicate) + { + CopyAccessControlListsForTopics = copyAccessControlListsForTopics; + CopyTopicConfigurations = copyTopicConfigurations; + DetectAndCopyNewTopics = detectAndCopyNewTopics; + TopicsToExclude = topicsToExclude; + TopicsToReplicate = topicsToReplicate; + } + } +} diff --git a/sdk/dotnet/Msk/Replicator.cs b/sdk/dotnet/Msk/Replicator.cs new file mode 100644 index 0000000000..2ccd504318 --- /dev/null +++ b/sdk/dotnet/Msk/Replicator.cs @@ -0,0 +1,183 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.Msk +{ + /// + /// Resource Type definition for AWS::MSK::Replicator + /// + [AwsNativeResourceType("aws-native:msk:Replicator")] + public partial class Replicator : global::Pulumi.CustomResource + { + /// + /// The current version of the MSK replicator. + /// + [Output("currentVersion")] + public Output CurrentVersion { get; private set; } = null!; + + /// + /// A summary description of the replicator. + /// + [Output("description")] + public Output Description { get; private set; } = null!; + + /// + /// Specifies a list of Kafka clusters which are targets of the replicator. + /// + [Output("kafkaClusters")] + public Output> KafkaClusters { get; private set; } = null!; + + /// + /// A list of replication configurations, where each configuration targets a given source cluster to target cluster replication flow. + /// + [Output("replicationInfoList")] + public Output> ReplicationInfoList { get; private set; } = null!; + + /// + /// Amazon Resource Name for the created replicator. + /// + [Output("replicatorArn")] + public Output ReplicatorArn { get; private set; } = null!; + + /// + /// The name of the replicator. + /// + [Output("replicatorName")] + public Output ReplicatorName { get; private set; } = null!; + + /// + /// The Amazon Resource Name (ARN) of the IAM role used by the replicator to access external resources. + /// + [Output("serviceExecutionRoleArn")] + public Output ServiceExecutionRoleArn { get; private set; } = null!; + + /// + /// A collection of tags associated with a resource + /// + [Output("tags")] + public Output> Tags { get; private set; } = null!; + + + /// + /// Create a Replicator resource with the given unique name, arguments, and options. + /// + /// + /// The unique name of the resource + /// The arguments used to populate this resource's properties + /// A bag of options that control this resource's behavior + public Replicator(string name, ReplicatorArgs args, CustomResourceOptions? options = null) + : base("aws-native:msk:Replicator", name, args ?? new ReplicatorArgs(), MakeResourceOptions(options, "")) + { + } + + private Replicator(string name, Input id, CustomResourceOptions? options = null) + : base("aws-native:msk:Replicator", name, null, MakeResourceOptions(options, id)) + { + } + + private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id) + { + var defaultOptions = new CustomResourceOptions + { + Version = Utilities.Version, + ReplaceOnChanges = + { + "description", + "kafkaClusters[*]", + "replicatorName", + "serviceExecutionRoleArn", + }, + }; + var merged = CustomResourceOptions.Merge(defaultOptions, options); + // Override the ID if one was specified for consistency with other language SDKs. + merged.Id = id ?? merged.Id; + return merged; + } + /// + /// Get an existing Replicator resource's state with the given name, ID, and optional extra + /// properties used to qualify the lookup. + /// + /// + /// The unique name of the resulting resource. + /// The unique provider ID of the resource to lookup. + /// A bag of options that control this resource's behavior + public static Replicator Get(string name, Input id, CustomResourceOptions? options = null) + { + return new Replicator(name, id, options); + } + } + + public sealed class ReplicatorArgs : global::Pulumi.ResourceArgs + { + /// + /// The current version of the MSK replicator. + /// + [Input("currentVersion")] + public Input? CurrentVersion { get; set; } + + /// + /// A summary description of the replicator. + /// + [Input("description")] + public Input? Description { get; set; } + + [Input("kafkaClusters", required: true)] + private InputList? _kafkaClusters; + + /// + /// Specifies a list of Kafka clusters which are targets of the replicator. + /// + public InputList KafkaClusters + { + get => _kafkaClusters ?? (_kafkaClusters = new InputList()); + set => _kafkaClusters = value; + } + + [Input("replicationInfoList", required: true)] + private InputList? _replicationInfoList; + + /// + /// A list of replication configurations, where each configuration targets a given source cluster to target cluster replication flow. + /// + public InputList ReplicationInfoList + { + get => _replicationInfoList ?? (_replicationInfoList = new InputList()); + set => _replicationInfoList = value; + } + + /// + /// The name of the replicator. + /// + [Input("replicatorName")] + public Input? ReplicatorName { get; set; } + + /// + /// The Amazon Resource Name (ARN) of the IAM role used by the replicator to access external resources. + /// + [Input("serviceExecutionRoleArn", required: true)] + public Input ServiceExecutionRoleArn { get; set; } = null!; + + [Input("tags")] + private InputList? _tags; + + /// + /// A collection of tags associated with a resource + /// + public InputList Tags + { + get => _tags ?? (_tags = new InputList()); + set => _tags = value; + } + + public ReplicatorArgs() + { + } + public static new ReplicatorArgs Empty => new ReplicatorArgs(); + } +} diff --git a/sdk/dotnet/QuickSight/Analysis.cs b/sdk/dotnet/QuickSight/Analysis.cs index e2b27e30f9..1b086e4734 100644 --- a/sdk/dotnet/QuickSight/Analysis.cs +++ b/sdk/dotnet/QuickSight/Analysis.cs @@ -63,6 +63,9 @@ public partial class Analysis : global::Pulumi.CustomResource [Output("themeArn")] public Output ThemeArn { get; private set; } = null!; + [Output("validationStrategy")] + public Output ValidationStrategy { get; private set; } = null!; + /// /// Create a Analysis resource with the given unique name, arguments, and options. @@ -153,6 +156,9 @@ public InputList Tags [Input("themeArn")] public Input? ThemeArn { get; set; } + [Input("validationStrategy")] + public Input? ValidationStrategy { get; set; } + public AnalysisArgs() { } diff --git a/sdk/dotnet/QuickSight/Dashboard.cs b/sdk/dotnet/QuickSight/Dashboard.cs index f24a759888..e444a95687 100644 --- a/sdk/dotnet/QuickSight/Dashboard.cs +++ b/sdk/dotnet/QuickSight/Dashboard.cs @@ -57,6 +57,9 @@ public partial class Dashboard : global::Pulumi.CustomResource [Output("themeArn")] public Output ThemeArn { get; private set; } = null!; + [Output("validationStrategy")] + public Output ValidationStrategy { get; private set; } = null!; + [Output("version")] public Output Version { get; private set; } = null!; @@ -153,6 +156,9 @@ public InputList Tags [Input("themeArn")] public Input? ThemeArn { get; set; } + [Input("validationStrategy")] + public Input? ValidationStrategy { get; set; } + [Input("versionDescription")] public Input? VersionDescription { get; set; } diff --git a/sdk/dotnet/QuickSight/Enums.cs b/sdk/dotnet/QuickSight/Enums.cs index fdc6114929..2a31505e5f 100644 --- a/sdk/dotnet/QuickSight/Enums.cs +++ b/sdk/dotnet/QuickSight/Enums.cs @@ -2930,6 +2930,34 @@ private AnalysisUrlTargetConfiguration(string value) public override string ToString() => _value; } + [EnumType] + public readonly struct AnalysisValidationStrategyMode : IEquatable + { + private readonly string _value; + + private AnalysisValidationStrategyMode(string value) + { + _value = value ?? throw new ArgumentNullException(nameof(value)); + } + + public static AnalysisValidationStrategyMode Strict { get; } = new AnalysisValidationStrategyMode("STRICT"); + public static AnalysisValidationStrategyMode Lenient { get; } = new AnalysisValidationStrategyMode("LENIENT"); + + public static bool operator ==(AnalysisValidationStrategyMode left, AnalysisValidationStrategyMode right) => left.Equals(right); + public static bool operator !=(AnalysisValidationStrategyMode left, AnalysisValidationStrategyMode right) => !left.Equals(right); + + public static explicit operator string(AnalysisValidationStrategyMode value) => value._value; + + [EditorBrowsable(EditorBrowsableState.Never)] + public override bool Equals(object? obj) => obj is AnalysisValidationStrategyMode other && Equals(other); + public bool Equals(AnalysisValidationStrategyMode 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 AnalysisValueWhenUnsetOption : IEquatable { @@ -6193,6 +6221,34 @@ private DashboardUrlTargetConfiguration(string value) public override string ToString() => _value; } + [EnumType] + public readonly struct DashboardValidationStrategyMode : IEquatable + { + private readonly string _value; + + private DashboardValidationStrategyMode(string value) + { + _value = value ?? throw new ArgumentNullException(nameof(value)); + } + + public static DashboardValidationStrategyMode Strict { get; } = new DashboardValidationStrategyMode("STRICT"); + public static DashboardValidationStrategyMode Lenient { get; } = new DashboardValidationStrategyMode("LENIENT"); + + public static bool operator ==(DashboardValidationStrategyMode left, DashboardValidationStrategyMode right) => left.Equals(right); + public static bool operator !=(DashboardValidationStrategyMode left, DashboardValidationStrategyMode right) => !left.Equals(right); + + public static explicit operator string(DashboardValidationStrategyMode value) => value._value; + + [EditorBrowsable(EditorBrowsableState.Never)] + public override bool Equals(object? obj) => obj is DashboardValidationStrategyMode other && Equals(other); + public bool Equals(DashboardValidationStrategyMode 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 DashboardValueWhenUnsetOption : IEquatable { @@ -9869,6 +9925,34 @@ private TemplateUrlTargetConfiguration(string value) public override string ToString() => _value; } + [EnumType] + public readonly struct TemplateValidationStrategyMode : IEquatable + { + private readonly string _value; + + private TemplateValidationStrategyMode(string value) + { + _value = value ?? throw new ArgumentNullException(nameof(value)); + } + + public static TemplateValidationStrategyMode Strict { get; } = new TemplateValidationStrategyMode("STRICT"); + public static TemplateValidationStrategyMode Lenient { get; } = new TemplateValidationStrategyMode("LENIENT"); + + public static bool operator ==(TemplateValidationStrategyMode left, TemplateValidationStrategyMode right) => left.Equals(right); + public static bool operator !=(TemplateValidationStrategyMode left, TemplateValidationStrategyMode right) => !left.Equals(right); + + public static explicit operator string(TemplateValidationStrategyMode value) => value._value; + + [EditorBrowsable(EditorBrowsableState.Never)] + public override bool Equals(object? obj) => obj is TemplateValidationStrategyMode other && Equals(other); + public bool Equals(TemplateValidationStrategyMode 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 TemplateValueWhenUnsetOption : IEquatable { diff --git a/sdk/dotnet/QuickSight/Inputs/AnalysisValidationStrategyArgs.cs b/sdk/dotnet/QuickSight/Inputs/AnalysisValidationStrategyArgs.cs new file mode 100644 index 0000000000..16ca9c6825 --- /dev/null +++ b/sdk/dotnet/QuickSight/Inputs/AnalysisValidationStrategyArgs.cs @@ -0,0 +1,23 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.QuickSight.Inputs +{ + + public sealed class AnalysisValidationStrategyArgs : global::Pulumi.ResourceArgs + { + [Input("mode", required: true)] + public Input Mode { get; set; } = null!; + + public AnalysisValidationStrategyArgs() + { + } + public static new AnalysisValidationStrategyArgs Empty => new AnalysisValidationStrategyArgs(); + } +} diff --git a/sdk/dotnet/QuickSight/Inputs/DashboardValidationStrategyArgs.cs b/sdk/dotnet/QuickSight/Inputs/DashboardValidationStrategyArgs.cs new file mode 100644 index 0000000000..b839151b44 --- /dev/null +++ b/sdk/dotnet/QuickSight/Inputs/DashboardValidationStrategyArgs.cs @@ -0,0 +1,23 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.QuickSight.Inputs +{ + + public sealed class DashboardValidationStrategyArgs : global::Pulumi.ResourceArgs + { + [Input("mode", required: true)] + public Input Mode { get; set; } = null!; + + public DashboardValidationStrategyArgs() + { + } + public static new DashboardValidationStrategyArgs Empty => new DashboardValidationStrategyArgs(); + } +} diff --git a/sdk/dotnet/QuickSight/Inputs/TemplateValidationStrategyArgs.cs b/sdk/dotnet/QuickSight/Inputs/TemplateValidationStrategyArgs.cs new file mode 100644 index 0000000000..6f39d7e4b0 --- /dev/null +++ b/sdk/dotnet/QuickSight/Inputs/TemplateValidationStrategyArgs.cs @@ -0,0 +1,23 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.QuickSight.Inputs +{ + + public sealed class TemplateValidationStrategyArgs : global::Pulumi.ResourceArgs + { + [Input("mode", required: true)] + public Input Mode { get; set; } = null!; + + public TemplateValidationStrategyArgs() + { + } + public static new TemplateValidationStrategyArgs Empty => new TemplateValidationStrategyArgs(); + } +} diff --git a/sdk/dotnet/QuickSight/Outputs/AnalysisValidationStrategy.cs b/sdk/dotnet/QuickSight/Outputs/AnalysisValidationStrategy.cs new file mode 100644 index 0000000000..706c25714a --- /dev/null +++ b/sdk/dotnet/QuickSight/Outputs/AnalysisValidationStrategy.cs @@ -0,0 +1,24 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.QuickSight.Outputs +{ + + [OutputType] + public sealed class AnalysisValidationStrategy + { + public readonly Pulumi.AwsNative.QuickSight.AnalysisValidationStrategyMode Mode; + + [OutputConstructor] + private AnalysisValidationStrategy(Pulumi.AwsNative.QuickSight.AnalysisValidationStrategyMode mode) + { + Mode = mode; + } + } +} diff --git a/sdk/dotnet/QuickSight/Outputs/DashboardValidationStrategy.cs b/sdk/dotnet/QuickSight/Outputs/DashboardValidationStrategy.cs new file mode 100644 index 0000000000..f0078b54f1 --- /dev/null +++ b/sdk/dotnet/QuickSight/Outputs/DashboardValidationStrategy.cs @@ -0,0 +1,24 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.QuickSight.Outputs +{ + + [OutputType] + public sealed class DashboardValidationStrategy + { + public readonly Pulumi.AwsNative.QuickSight.DashboardValidationStrategyMode Mode; + + [OutputConstructor] + private DashboardValidationStrategy(Pulumi.AwsNative.QuickSight.DashboardValidationStrategyMode mode) + { + Mode = mode; + } + } +} diff --git a/sdk/dotnet/QuickSight/Outputs/TemplateValidationStrategy.cs b/sdk/dotnet/QuickSight/Outputs/TemplateValidationStrategy.cs new file mode 100644 index 0000000000..29e935d77f --- /dev/null +++ b/sdk/dotnet/QuickSight/Outputs/TemplateValidationStrategy.cs @@ -0,0 +1,24 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.QuickSight.Outputs +{ + + [OutputType] + public sealed class TemplateValidationStrategy + { + public readonly Pulumi.AwsNative.QuickSight.TemplateValidationStrategyMode Mode; + + [OutputConstructor] + private TemplateValidationStrategy(Pulumi.AwsNative.QuickSight.TemplateValidationStrategyMode mode) + { + Mode = mode; + } + } +} diff --git a/sdk/dotnet/QuickSight/Template.cs b/sdk/dotnet/QuickSight/Template.cs index a701ee0ed2..a81fc40647 100644 --- a/sdk/dotnet/QuickSight/Template.cs +++ b/sdk/dotnet/QuickSight/Template.cs @@ -45,6 +45,9 @@ public partial class Template : global::Pulumi.CustomResource [Output("templateId")] public Output TemplateId { get; private set; } = null!; + [Output("validationStrategy")] + public Output ValidationStrategy { get; private set; } = null!; + [Output("version")] public Output Version { get; private set; } = null!; @@ -132,6 +135,9 @@ public InputList Tags [Input("templateId", required: true)] public Input TemplateId { get; set; } = null!; + [Input("validationStrategy")] + public Input? ValidationStrategy { get; set; } + [Input("versionDescription")] public Input? VersionDescription { get; set; } diff --git a/sdk/dotnet/S3/Bucket.cs b/sdk/dotnet/S3/Bucket.cs index e2f6a8d26b..65cdfd0dac 100644 --- a/sdk/dotnet/S3/Bucket.cs +++ b/sdk/dotnet/S3/Bucket.cs @@ -15,129 +15,69 @@ namespace Pulumi.AwsNative.S3 [AwsNativeResourceType("aws-native:s3:Bucket")] public partial class Bucket : global::Pulumi.CustomResource { - /// - /// Configuration for the transfer acceleration state. - /// [Output("accelerateConfiguration")] public Output AccelerateConfiguration { get; private set; } = null!; - /// - /// A canned access control list (ACL) that grants predefined permissions to the bucket. - /// [Output("accessControl")] - public Output AccessControl { get; private set; } = null!; + public Output AccessControl { get; private set; } = null!; - /// - /// The configuration and any analyses for the analytics filter of an Amazon S3 bucket. - /// [Output("analyticsConfigurations")] public Output> AnalyticsConfigurations { get; private set; } = null!; - /// - /// The Amazon Resource Name (ARN) of the specified bucket. - /// [Output("arn")] public Output Arn { get; private set; } = null!; [Output("bucketEncryption")] public Output BucketEncryption { get; private set; } = null!; - /// - /// A name for the bucket. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. - /// [Output("bucketName")] public Output BucketName { get; private set; } = null!; - /// - /// Rules that define cross-origin resource sharing of objects in this bucket. - /// [Output("corsConfiguration")] public Output CorsConfiguration { get; private set; } = null!; - /// - /// The IPv4 DNS name of the specified bucket. - /// [Output("domainName")] public Output DomainName { get; private set; } = null!; - /// - /// The IPv6 DNS name of the specified bucket. For more information about dual-stack endpoints, see [Using Amazon S3 Dual-Stack Endpoints](https://docs.aws.amazon.com/AmazonS3/latest/dev/dual-stack-endpoints.html). - /// [Output("dualStackDomainName")] public Output DualStackDomainName { get; private set; } = null!; - /// - /// Specifies the S3 Intelligent-Tiering configuration for an Amazon S3 bucket. - /// [Output("intelligentTieringConfigurations")] public Output> IntelligentTieringConfigurations { get; private set; } = null!; - /// - /// The inventory configuration for an Amazon S3 bucket. - /// [Output("inventoryConfigurations")] public Output> InventoryConfigurations { get; private set; } = null!; - /// - /// Rules that define how Amazon S3 manages objects during their lifetime. - /// [Output("lifecycleConfiguration")] public Output LifecycleConfiguration { get; private set; } = null!; - /// - /// Settings that define where logs are stored. - /// [Output("loggingConfiguration")] public Output LoggingConfiguration { get; private set; } = null!; - /// - /// Settings that define a metrics configuration for the CloudWatch request metrics from the bucket. - /// [Output("metricsConfigurations")] public Output> MetricsConfigurations { get; private set; } = null!; - /// - /// Configuration that defines how Amazon S3 handles bucket notifications. - /// [Output("notificationConfiguration")] public Output NotificationConfiguration { get; private set; } = null!; - /// - /// Places an Object Lock configuration on the specified bucket. - /// [Output("objectLockConfiguration")] public Output ObjectLockConfiguration { get; private set; } = null!; - /// - /// Indicates whether this bucket has an Object Lock configuration enabled. - /// [Output("objectLockEnabled")] public Output ObjectLockEnabled { get; private set; } = null!; - /// - /// Specifies the container element for object ownership rules. - /// [Output("ownershipControls")] public Output OwnershipControls { get; private set; } = null!; [Output("publicAccessBlockConfiguration")] public Output PublicAccessBlockConfiguration { get; private set; } = null!; - /// - /// Returns the regional domain name of the specified bucket. - /// [Output("regionalDomainName")] public Output RegionalDomainName { get; private set; } = null!; - /// - /// Configuration for replicating objects in an S3 bucket. - /// [Output("replicationConfiguration")] public Output ReplicationConfiguration { get; private set; } = null!; - /// - /// An arbitrary set of tags (key-value pairs) for this S3 bucket. - /// [Output("tags")] public Output> Tags { get; private set; } = null!; @@ -147,9 +87,6 @@ public partial class Bucket : global::Pulumi.CustomResource [Output("websiteConfiguration")] public Output WebsiteConfiguration { get; private set; } = null!; - /// - /// The Amazon S3 website endpoint for the specified bucket. - /// [Output("websiteUrl")] public Output WebsiteUrl { get; private set; } = null!; @@ -203,24 +140,14 @@ public static Bucket Get(string name, Input id, CustomResourceOptions? o public sealed class BucketArgs : global::Pulumi.ResourceArgs { - /// - /// Configuration for the transfer acceleration state. - /// [Input("accelerateConfiguration")] public Input? AccelerateConfiguration { get; set; } - /// - /// A canned access control list (ACL) that grants predefined permissions to the bucket. - /// [Input("accessControl")] - public Input? AccessControl { get; set; } + public Input? AccessControl { get; set; } [Input("analyticsConfigurations")] private InputList? _analyticsConfigurations; - - /// - /// The configuration and any analyses for the analytics filter of an Amazon S3 bucket. - /// public InputList AnalyticsConfigurations { get => _analyticsConfigurations ?? (_analyticsConfigurations = new InputList()); @@ -230,24 +157,14 @@ public InputList AnalyticsConfiguration [Input("bucketEncryption")] public Input? BucketEncryption { get; set; } - /// - /// A name for the bucket. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. - /// [Input("bucketName")] public Input? BucketName { get; set; } - /// - /// Rules that define cross-origin resource sharing of objects in this bucket. - /// [Input("corsConfiguration")] public Input? CorsConfiguration { get; set; } [Input("intelligentTieringConfigurations")] private InputList? _intelligentTieringConfigurations; - - /// - /// Specifies the S3 Intelligent-Tiering configuration for an Amazon S3 bucket. - /// public InputList IntelligentTieringConfigurations { get => _intelligentTieringConfigurations ?? (_intelligentTieringConfigurations = new InputList()); @@ -256,79 +173,46 @@ public InputList IntelligentTi [Input("inventoryConfigurations")] private InputList? _inventoryConfigurations; - - /// - /// The inventory configuration for an Amazon S3 bucket. - /// public InputList InventoryConfigurations { get => _inventoryConfigurations ?? (_inventoryConfigurations = new InputList()); set => _inventoryConfigurations = value; } - /// - /// Rules that define how Amazon S3 manages objects during their lifetime. - /// [Input("lifecycleConfiguration")] public Input? LifecycleConfiguration { get; set; } - /// - /// Settings that define where logs are stored. - /// [Input("loggingConfiguration")] public Input? LoggingConfiguration { get; set; } [Input("metricsConfigurations")] private InputList? _metricsConfigurations; - - /// - /// Settings that define a metrics configuration for the CloudWatch request metrics from the bucket. - /// public InputList MetricsConfigurations { get => _metricsConfigurations ?? (_metricsConfigurations = new InputList()); set => _metricsConfigurations = value; } - /// - /// Configuration that defines how Amazon S3 handles bucket notifications. - /// [Input("notificationConfiguration")] public Input? NotificationConfiguration { get; set; } - /// - /// Places an Object Lock configuration on the specified bucket. - /// [Input("objectLockConfiguration")] public Input? ObjectLockConfiguration { get; set; } - /// - /// Indicates whether this bucket has an Object Lock configuration enabled. - /// [Input("objectLockEnabled")] public Input? ObjectLockEnabled { get; set; } - /// - /// Specifies the container element for object ownership rules. - /// [Input("ownershipControls")] public Input? OwnershipControls { get; set; } [Input("publicAccessBlockConfiguration")] public Input? PublicAccessBlockConfiguration { get; set; } - /// - /// Configuration for replicating objects in an S3 bucket. - /// [Input("replicationConfiguration")] public Input? ReplicationConfiguration { get; set; } [Input("tags")] private InputList? _tags; - - /// - /// An arbitrary set of tags (key-value pairs) for this S3 bucket. - /// public InputList Tags { get => _tags ?? (_tags = new InputList()); diff --git a/sdk/dotnet/S3/Enums.cs b/sdk/dotnet/S3/Enums.cs index 5c2315c55e..ab647cdcba 100644 --- a/sdk/dotnet/S3/Enums.cs +++ b/sdk/dotnet/S3/Enums.cs @@ -38,790 +38,6 @@ private AccessPointNetworkOrigin(string value) public override string ToString() => _value; } - /// - /// Configures the transfer acceleration state for an Amazon S3 bucket. - /// - [EnumType] - public readonly struct BucketAccelerateConfigurationAccelerationStatus : IEquatable - { - private readonly string _value; - - private BucketAccelerateConfigurationAccelerationStatus(string value) - { - _value = value ?? throw new ArgumentNullException(nameof(value)); - } - - public static BucketAccelerateConfigurationAccelerationStatus Enabled { get; } = new BucketAccelerateConfigurationAccelerationStatus("Enabled"); - public static BucketAccelerateConfigurationAccelerationStatus Suspended { get; } = new BucketAccelerateConfigurationAccelerationStatus("Suspended"); - - public static bool operator ==(BucketAccelerateConfigurationAccelerationStatus left, BucketAccelerateConfigurationAccelerationStatus right) => left.Equals(right); - public static bool operator !=(BucketAccelerateConfigurationAccelerationStatus left, BucketAccelerateConfigurationAccelerationStatus right) => !left.Equals(right); - - public static explicit operator string(BucketAccelerateConfigurationAccelerationStatus value) => value._value; - - [EditorBrowsable(EditorBrowsableState.Never)] - public override bool Equals(object? obj) => obj is BucketAccelerateConfigurationAccelerationStatus other && Equals(other); - public bool Equals(BucketAccelerateConfigurationAccelerationStatus other) => string.Equals(_value, other._value, StringComparison.Ordinal); - - [EditorBrowsable(EditorBrowsableState.Never)] - public override int GetHashCode() => _value?.GetHashCode() ?? 0; - - public override string ToString() => _value; - } - - /// - /// A canned access control list (ACL) that grants predefined permissions to the bucket. - /// - [EnumType] - public readonly struct BucketAccessControl : IEquatable - { - private readonly string _value; - - private BucketAccessControl(string value) - { - _value = value ?? throw new ArgumentNullException(nameof(value)); - } - - public static BucketAccessControl AuthenticatedRead { get; } = new BucketAccessControl("AuthenticatedRead"); - public static BucketAccessControl AwsExecRead { get; } = new BucketAccessControl("AwsExecRead"); - public static BucketAccessControl BucketOwnerFullControl { get; } = new BucketAccessControl("BucketOwnerFullControl"); - public static BucketAccessControl BucketOwnerRead { get; } = new BucketAccessControl("BucketOwnerRead"); - public static BucketAccessControl LogDeliveryWrite { get; } = new BucketAccessControl("LogDeliveryWrite"); - public static BucketAccessControl Private { get; } = new BucketAccessControl("Private"); - public static BucketAccessControl PublicRead { get; } = new BucketAccessControl("PublicRead"); - public static BucketAccessControl PublicReadWrite { get; } = new BucketAccessControl("PublicReadWrite"); - - public static bool operator ==(BucketAccessControl left, BucketAccessControl right) => left.Equals(right); - public static bool operator !=(BucketAccessControl left, BucketAccessControl right) => !left.Equals(right); - - public static explicit operator string(BucketAccessControl value) => value._value; - - [EditorBrowsable(EditorBrowsableState.Never)] - public override bool Equals(object? obj) => obj is BucketAccessControl other && Equals(other); - public bool Equals(BucketAccessControl 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 BucketCorsRuleAllowedMethodsItem : IEquatable - { - private readonly string _value; - - private BucketCorsRuleAllowedMethodsItem(string value) - { - _value = value ?? throw new ArgumentNullException(nameof(value)); - } - - public static BucketCorsRuleAllowedMethodsItem Get { get; } = new BucketCorsRuleAllowedMethodsItem("GET"); - public static BucketCorsRuleAllowedMethodsItem Put { get; } = new BucketCorsRuleAllowedMethodsItem("PUT"); - public static BucketCorsRuleAllowedMethodsItem Head { get; } = new BucketCorsRuleAllowedMethodsItem("HEAD"); - public static BucketCorsRuleAllowedMethodsItem Post { get; } = new BucketCorsRuleAllowedMethodsItem("POST"); - public static BucketCorsRuleAllowedMethodsItem Delete { get; } = new BucketCorsRuleAllowedMethodsItem("DELETE"); - - public static bool operator ==(BucketCorsRuleAllowedMethodsItem left, BucketCorsRuleAllowedMethodsItem right) => left.Equals(right); - public static bool operator !=(BucketCorsRuleAllowedMethodsItem left, BucketCorsRuleAllowedMethodsItem right) => !left.Equals(right); - - public static explicit operator string(BucketCorsRuleAllowedMethodsItem value) => value._value; - - [EditorBrowsable(EditorBrowsableState.Never)] - public override bool Equals(object? obj) => obj is BucketCorsRuleAllowedMethodsItem other && Equals(other); - public bool Equals(BucketCorsRuleAllowedMethodsItem 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 BucketDefaultRetentionMode : IEquatable - { - private readonly string _value; - - private BucketDefaultRetentionMode(string value) - { - _value = value ?? throw new ArgumentNullException(nameof(value)); - } - - public static BucketDefaultRetentionMode Compliance { get; } = new BucketDefaultRetentionMode("COMPLIANCE"); - public static BucketDefaultRetentionMode Governance { get; } = new BucketDefaultRetentionMode("GOVERNANCE"); - - public static bool operator ==(BucketDefaultRetentionMode left, BucketDefaultRetentionMode right) => left.Equals(right); - public static bool operator !=(BucketDefaultRetentionMode left, BucketDefaultRetentionMode right) => !left.Equals(right); - - public static explicit operator string(BucketDefaultRetentionMode value) => value._value; - - [EditorBrowsable(EditorBrowsableState.Never)] - public override bool Equals(object? obj) => obj is BucketDefaultRetentionMode other && Equals(other); - public bool Equals(BucketDefaultRetentionMode 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 BucketDeleteMarkerReplicationStatus : IEquatable - { - private readonly string _value; - - private BucketDeleteMarkerReplicationStatus(string value) - { - _value = value ?? throw new ArgumentNullException(nameof(value)); - } - - public static BucketDeleteMarkerReplicationStatus Disabled { get; } = new BucketDeleteMarkerReplicationStatus("Disabled"); - public static BucketDeleteMarkerReplicationStatus Enabled { get; } = new BucketDeleteMarkerReplicationStatus("Enabled"); - - public static bool operator ==(BucketDeleteMarkerReplicationStatus left, BucketDeleteMarkerReplicationStatus right) => left.Equals(right); - public static bool operator !=(BucketDeleteMarkerReplicationStatus left, BucketDeleteMarkerReplicationStatus right) => !left.Equals(right); - - public static explicit operator string(BucketDeleteMarkerReplicationStatus value) => value._value; - - [EditorBrowsable(EditorBrowsableState.Never)] - public override bool Equals(object? obj) => obj is BucketDeleteMarkerReplicationStatus other && Equals(other); - public bool Equals(BucketDeleteMarkerReplicationStatus other) => string.Equals(_value, other._value, StringComparison.Ordinal); - - [EditorBrowsable(EditorBrowsableState.Never)] - public override int GetHashCode() => _value?.GetHashCode() ?? 0; - - public override string ToString() => _value; - } - - /// - /// Specifies the file format used when exporting data to Amazon S3. - /// - [EnumType] - public readonly struct BucketDestinationFormat : IEquatable - { - private readonly string _value; - - private BucketDestinationFormat(string value) - { - _value = value ?? throw new ArgumentNullException(nameof(value)); - } - - public static BucketDestinationFormat Csv { get; } = new BucketDestinationFormat("CSV"); - public static BucketDestinationFormat Orc { get; } = new BucketDestinationFormat("ORC"); - public static BucketDestinationFormat Parquet { get; } = new BucketDestinationFormat("Parquet"); - - public static bool operator ==(BucketDestinationFormat left, BucketDestinationFormat right) => left.Equals(right); - public static bool operator !=(BucketDestinationFormat left, BucketDestinationFormat right) => !left.Equals(right); - - public static explicit operator string(BucketDestinationFormat value) => value._value; - - [EditorBrowsable(EditorBrowsableState.Never)] - public override bool Equals(object? obj) => obj is BucketDestinationFormat other && Equals(other); - public bool Equals(BucketDestinationFormat other) => string.Equals(_value, other._value, StringComparison.Ordinal); - - [EditorBrowsable(EditorBrowsableState.Never)] - public override int GetHashCode() => _value?.GetHashCode() ?? 0; - - public override string ToString() => _value; - } - - /// - /// Specifies the status of the configuration. - /// - [EnumType] - public readonly struct BucketIntelligentTieringConfigurationStatus : IEquatable - { - private readonly string _value; - - private BucketIntelligentTieringConfigurationStatus(string value) - { - _value = value ?? throw new ArgumentNullException(nameof(value)); - } - - public static BucketIntelligentTieringConfigurationStatus Disabled { get; } = new BucketIntelligentTieringConfigurationStatus("Disabled"); - public static BucketIntelligentTieringConfigurationStatus Enabled { get; } = new BucketIntelligentTieringConfigurationStatus("Enabled"); - - public static bool operator ==(BucketIntelligentTieringConfigurationStatus left, BucketIntelligentTieringConfigurationStatus right) => left.Equals(right); - public static bool operator !=(BucketIntelligentTieringConfigurationStatus left, BucketIntelligentTieringConfigurationStatus right) => !left.Equals(right); - - public static explicit operator string(BucketIntelligentTieringConfigurationStatus value) => value._value; - - [EditorBrowsable(EditorBrowsableState.Never)] - public override bool Equals(object? obj) => obj is BucketIntelligentTieringConfigurationStatus other && Equals(other); - public bool Equals(BucketIntelligentTieringConfigurationStatus other) => string.Equals(_value, other._value, StringComparison.Ordinal); - - [EditorBrowsable(EditorBrowsableState.Never)] - public override int GetHashCode() => _value?.GetHashCode() ?? 0; - - public override string ToString() => _value; - } - - /// - /// Object versions to include in the inventory list. - /// - [EnumType] - public readonly struct BucketInventoryConfigurationIncludedObjectVersions : IEquatable - { - private readonly string _value; - - private BucketInventoryConfigurationIncludedObjectVersions(string value) - { - _value = value ?? throw new ArgumentNullException(nameof(value)); - } - - public static BucketInventoryConfigurationIncludedObjectVersions All { get; } = new BucketInventoryConfigurationIncludedObjectVersions("All"); - public static BucketInventoryConfigurationIncludedObjectVersions Current { get; } = new BucketInventoryConfigurationIncludedObjectVersions("Current"); - - public static bool operator ==(BucketInventoryConfigurationIncludedObjectVersions left, BucketInventoryConfigurationIncludedObjectVersions right) => left.Equals(right); - public static bool operator !=(BucketInventoryConfigurationIncludedObjectVersions left, BucketInventoryConfigurationIncludedObjectVersions right) => !left.Equals(right); - - public static explicit operator string(BucketInventoryConfigurationIncludedObjectVersions value) => value._value; - - [EditorBrowsable(EditorBrowsableState.Never)] - public override bool Equals(object? obj) => obj is BucketInventoryConfigurationIncludedObjectVersions other && Equals(other); - public bool Equals(BucketInventoryConfigurationIncludedObjectVersions 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 BucketInventoryConfigurationOptionalFieldsItem : IEquatable - { - private readonly string _value; - - private BucketInventoryConfigurationOptionalFieldsItem(string value) - { - _value = value ?? throw new ArgumentNullException(nameof(value)); - } - - public static BucketInventoryConfigurationOptionalFieldsItem Size { get; } = new BucketInventoryConfigurationOptionalFieldsItem("Size"); - public static BucketInventoryConfigurationOptionalFieldsItem LastModifiedDate { get; } = new BucketInventoryConfigurationOptionalFieldsItem("LastModifiedDate"); - public static BucketInventoryConfigurationOptionalFieldsItem StorageClass { get; } = new BucketInventoryConfigurationOptionalFieldsItem("StorageClass"); - public static BucketInventoryConfigurationOptionalFieldsItem ETag { get; } = new BucketInventoryConfigurationOptionalFieldsItem("ETag"); - public static BucketInventoryConfigurationOptionalFieldsItem IsMultipartUploaded { get; } = new BucketInventoryConfigurationOptionalFieldsItem("IsMultipartUploaded"); - public static BucketInventoryConfigurationOptionalFieldsItem ReplicationStatus { get; } = new BucketInventoryConfigurationOptionalFieldsItem("ReplicationStatus"); - public static BucketInventoryConfigurationOptionalFieldsItem EncryptionStatus { get; } = new BucketInventoryConfigurationOptionalFieldsItem("EncryptionStatus"); - public static BucketInventoryConfigurationOptionalFieldsItem ObjectLockRetainUntilDate { get; } = new BucketInventoryConfigurationOptionalFieldsItem("ObjectLockRetainUntilDate"); - public static BucketInventoryConfigurationOptionalFieldsItem ObjectLockMode { get; } = new BucketInventoryConfigurationOptionalFieldsItem("ObjectLockMode"); - public static BucketInventoryConfigurationOptionalFieldsItem ObjectLockLegalHoldStatus { get; } = new BucketInventoryConfigurationOptionalFieldsItem("ObjectLockLegalHoldStatus"); - public static BucketInventoryConfigurationOptionalFieldsItem IntelligentTieringAccessTier { get; } = new BucketInventoryConfigurationOptionalFieldsItem("IntelligentTieringAccessTier"); - public static BucketInventoryConfigurationOptionalFieldsItem BucketKeyStatus { get; } = new BucketInventoryConfigurationOptionalFieldsItem("BucketKeyStatus"); - - public static bool operator ==(BucketInventoryConfigurationOptionalFieldsItem left, BucketInventoryConfigurationOptionalFieldsItem right) => left.Equals(right); - public static bool operator !=(BucketInventoryConfigurationOptionalFieldsItem left, BucketInventoryConfigurationOptionalFieldsItem right) => !left.Equals(right); - - public static explicit operator string(BucketInventoryConfigurationOptionalFieldsItem value) => value._value; - - [EditorBrowsable(EditorBrowsableState.Never)] - public override bool Equals(object? obj) => obj is BucketInventoryConfigurationOptionalFieldsItem other && Equals(other); - public bool Equals(BucketInventoryConfigurationOptionalFieldsItem other) => string.Equals(_value, other._value, StringComparison.Ordinal); - - [EditorBrowsable(EditorBrowsableState.Never)] - public override int GetHashCode() => _value?.GetHashCode() ?? 0; - - public override string ToString() => _value; - } - - /// - /// Specifies the schedule for generating inventory results. - /// - [EnumType] - public readonly struct BucketInventoryConfigurationScheduleFrequency : IEquatable - { - private readonly string _value; - - private BucketInventoryConfigurationScheduleFrequency(string value) - { - _value = value ?? throw new ArgumentNullException(nameof(value)); - } - - public static BucketInventoryConfigurationScheduleFrequency Daily { get; } = new BucketInventoryConfigurationScheduleFrequency("Daily"); - public static BucketInventoryConfigurationScheduleFrequency Weekly { get; } = new BucketInventoryConfigurationScheduleFrequency("Weekly"); - - public static bool operator ==(BucketInventoryConfigurationScheduleFrequency left, BucketInventoryConfigurationScheduleFrequency right) => left.Equals(right); - public static bool operator !=(BucketInventoryConfigurationScheduleFrequency left, BucketInventoryConfigurationScheduleFrequency right) => !left.Equals(right); - - public static explicit operator string(BucketInventoryConfigurationScheduleFrequency value) => value._value; - - [EditorBrowsable(EditorBrowsableState.Never)] - public override bool Equals(object? obj) => obj is BucketInventoryConfigurationScheduleFrequency other && Equals(other); - public bool Equals(BucketInventoryConfigurationScheduleFrequency 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 BucketMetricsStatus : IEquatable - { - private readonly string _value; - - private BucketMetricsStatus(string value) - { - _value = value ?? throw new ArgumentNullException(nameof(value)); - } - - public static BucketMetricsStatus Disabled { get; } = new BucketMetricsStatus("Disabled"); - public static BucketMetricsStatus Enabled { get; } = new BucketMetricsStatus("Enabled"); - - public static bool operator ==(BucketMetricsStatus left, BucketMetricsStatus right) => left.Equals(right); - public static bool operator !=(BucketMetricsStatus left, BucketMetricsStatus right) => !left.Equals(right); - - public static explicit operator string(BucketMetricsStatus value) => value._value; - - [EditorBrowsable(EditorBrowsableState.Never)] - public override bool Equals(object? obj) => obj is BucketMetricsStatus other && Equals(other); - public bool Equals(BucketMetricsStatus other) => string.Equals(_value, other._value, StringComparison.Ordinal); - - [EditorBrowsable(EditorBrowsableState.Never)] - public override int GetHashCode() => _value?.GetHashCode() ?? 0; - - public override string ToString() => _value; - } - - /// - /// The class of storage used to store the object. - /// - [EnumType] - public readonly struct BucketNoncurrentVersionTransitionStorageClass : IEquatable - { - private readonly string _value; - - private BucketNoncurrentVersionTransitionStorageClass(string value) - { - _value = value ?? throw new ArgumentNullException(nameof(value)); - } - - public static BucketNoncurrentVersionTransitionStorageClass DeepArchive { get; } = new BucketNoncurrentVersionTransitionStorageClass("DEEP_ARCHIVE"); - public static BucketNoncurrentVersionTransitionStorageClass Glacier { get; } = new BucketNoncurrentVersionTransitionStorageClass("GLACIER"); - public static BucketNoncurrentVersionTransitionStorageClass GlacierIr { get; } = new BucketNoncurrentVersionTransitionStorageClass("GLACIER_IR"); - public static BucketNoncurrentVersionTransitionStorageClass IntelligentTiering { get; } = new BucketNoncurrentVersionTransitionStorageClass("INTELLIGENT_TIERING"); - public static BucketNoncurrentVersionTransitionStorageClass OnezoneIa { get; } = new BucketNoncurrentVersionTransitionStorageClass("ONEZONE_IA"); - public static BucketNoncurrentVersionTransitionStorageClass StandardIa { get; } = new BucketNoncurrentVersionTransitionStorageClass("STANDARD_IA"); - - public static bool operator ==(BucketNoncurrentVersionTransitionStorageClass left, BucketNoncurrentVersionTransitionStorageClass right) => left.Equals(right); - public static bool operator !=(BucketNoncurrentVersionTransitionStorageClass left, BucketNoncurrentVersionTransitionStorageClass right) => !left.Equals(right); - - public static explicit operator string(BucketNoncurrentVersionTransitionStorageClass value) => value._value; - - [EditorBrowsable(EditorBrowsableState.Never)] - public override bool Equals(object? obj) => obj is BucketNoncurrentVersionTransitionStorageClass other && Equals(other); - public bool Equals(BucketNoncurrentVersionTransitionStorageClass other) => string.Equals(_value, other._value, StringComparison.Ordinal); - - [EditorBrowsable(EditorBrowsableState.Never)] - public override int GetHashCode() => _value?.GetHashCode() ?? 0; - - public override string ToString() => _value; - } - - /// - /// Specifies an object ownership rule. - /// - [EnumType] - public readonly struct BucketOwnershipControlsRuleObjectOwnership : IEquatable - { - private readonly string _value; - - private BucketOwnershipControlsRuleObjectOwnership(string value) - { - _value = value ?? throw new ArgumentNullException(nameof(value)); - } - - public static BucketOwnershipControlsRuleObjectOwnership ObjectWriter { get; } = new BucketOwnershipControlsRuleObjectOwnership("ObjectWriter"); - public static BucketOwnershipControlsRuleObjectOwnership BucketOwnerPreferred { get; } = new BucketOwnershipControlsRuleObjectOwnership("BucketOwnerPreferred"); - public static BucketOwnershipControlsRuleObjectOwnership BucketOwnerEnforced { get; } = new BucketOwnershipControlsRuleObjectOwnership("BucketOwnerEnforced"); - - public static bool operator ==(BucketOwnershipControlsRuleObjectOwnership left, BucketOwnershipControlsRuleObjectOwnership right) => left.Equals(right); - public static bool operator !=(BucketOwnershipControlsRuleObjectOwnership left, BucketOwnershipControlsRuleObjectOwnership right) => !left.Equals(right); - - public static explicit operator string(BucketOwnershipControlsRuleObjectOwnership value) => value._value; - - [EditorBrowsable(EditorBrowsableState.Never)] - public override bool Equals(object? obj) => obj is BucketOwnershipControlsRuleObjectOwnership other && Equals(other); - public bool Equals(BucketOwnershipControlsRuleObjectOwnership other) => string.Equals(_value, other._value, StringComparison.Ordinal); - - [EditorBrowsable(EditorBrowsableState.Never)] - public override int GetHashCode() => _value?.GetHashCode() ?? 0; - - public override string ToString() => _value; - } - - /// - /// Protocol to use when redirecting requests. The default is the protocol that is used in the original request. - /// - [EnumType] - public readonly struct BucketRedirectAllRequestsToProtocol : IEquatable - { - private readonly string _value; - - private BucketRedirectAllRequestsToProtocol(string value) - { - _value = value ?? throw new ArgumentNullException(nameof(value)); - } - - public static BucketRedirectAllRequestsToProtocol Http { get; } = new BucketRedirectAllRequestsToProtocol("http"); - public static BucketRedirectAllRequestsToProtocol Https { get; } = new BucketRedirectAllRequestsToProtocol("https"); - - public static bool operator ==(BucketRedirectAllRequestsToProtocol left, BucketRedirectAllRequestsToProtocol right) => left.Equals(right); - public static bool operator !=(BucketRedirectAllRequestsToProtocol left, BucketRedirectAllRequestsToProtocol right) => !left.Equals(right); - - public static explicit operator string(BucketRedirectAllRequestsToProtocol value) => value._value; - - [EditorBrowsable(EditorBrowsableState.Never)] - public override bool Equals(object? obj) => obj is BucketRedirectAllRequestsToProtocol other && Equals(other); - public bool Equals(BucketRedirectAllRequestsToProtocol other) => string.Equals(_value, other._value, StringComparison.Ordinal); - - [EditorBrowsable(EditorBrowsableState.Never)] - public override int GetHashCode() => _value?.GetHashCode() ?? 0; - - public override string ToString() => _value; - } - - /// - /// Protocol to use when redirecting requests. The default is the protocol that is used in the original request. - /// - [EnumType] - public readonly struct BucketRedirectRuleProtocol : IEquatable - { - private readonly string _value; - - private BucketRedirectRuleProtocol(string value) - { - _value = value ?? throw new ArgumentNullException(nameof(value)); - } - - public static BucketRedirectRuleProtocol Http { get; } = new BucketRedirectRuleProtocol("http"); - public static BucketRedirectRuleProtocol Https { get; } = new BucketRedirectRuleProtocol("https"); - - public static bool operator ==(BucketRedirectRuleProtocol left, BucketRedirectRuleProtocol right) => left.Equals(right); - public static bool operator !=(BucketRedirectRuleProtocol left, BucketRedirectRuleProtocol right) => !left.Equals(right); - - public static explicit operator string(BucketRedirectRuleProtocol value) => value._value; - - [EditorBrowsable(EditorBrowsableState.Never)] - public override bool Equals(object? obj) => obj is BucketRedirectRuleProtocol other && Equals(other); - public bool Equals(BucketRedirectRuleProtocol other) => string.Equals(_value, other._value, StringComparison.Ordinal); - - [EditorBrowsable(EditorBrowsableState.Never)] - public override int GetHashCode() => _value?.GetHashCode() ?? 0; - - public override string ToString() => _value; - } - - /// - /// Specifies whether Amazon S3 replicates modifications on replicas. - /// - [EnumType] - public readonly struct BucketReplicaModificationsStatus : IEquatable - { - private readonly string _value; - - private BucketReplicaModificationsStatus(string value) - { - _value = value ?? throw new ArgumentNullException(nameof(value)); - } - - public static BucketReplicaModificationsStatus Enabled { get; } = new BucketReplicaModificationsStatus("Enabled"); - public static BucketReplicaModificationsStatus Disabled { get; } = new BucketReplicaModificationsStatus("Disabled"); - - public static bool operator ==(BucketReplicaModificationsStatus left, BucketReplicaModificationsStatus right) => left.Equals(right); - public static bool operator !=(BucketReplicaModificationsStatus left, BucketReplicaModificationsStatus right) => !left.Equals(right); - - public static explicit operator string(BucketReplicaModificationsStatus value) => value._value; - - [EditorBrowsable(EditorBrowsableState.Never)] - public override bool Equals(object? obj) => obj is BucketReplicaModificationsStatus other && Equals(other); - public bool Equals(BucketReplicaModificationsStatus other) => string.Equals(_value, other._value, StringComparison.Ordinal); - - [EditorBrowsable(EditorBrowsableState.Never)] - public override int GetHashCode() => _value?.GetHashCode() ?? 0; - - public override string ToString() => _value; - } - - /// - /// The storage class to use when replicating objects, such as S3 Standard or reduced redundancy. - /// - [EnumType] - public readonly struct BucketReplicationDestinationStorageClass : IEquatable - { - private readonly string _value; - - private BucketReplicationDestinationStorageClass(string value) - { - _value = value ?? throw new ArgumentNullException(nameof(value)); - } - - public static BucketReplicationDestinationStorageClass DeepArchive { get; } = new BucketReplicationDestinationStorageClass("DEEP_ARCHIVE"); - public static BucketReplicationDestinationStorageClass Glacier { get; } = new BucketReplicationDestinationStorageClass("GLACIER"); - public static BucketReplicationDestinationStorageClass GlacierIr { get; } = new BucketReplicationDestinationStorageClass("GLACIER_IR"); - public static BucketReplicationDestinationStorageClass IntelligentTiering { get; } = new BucketReplicationDestinationStorageClass("INTELLIGENT_TIERING"); - public static BucketReplicationDestinationStorageClass OnezoneIa { get; } = new BucketReplicationDestinationStorageClass("ONEZONE_IA"); - public static BucketReplicationDestinationStorageClass ReducedRedundancy { get; } = new BucketReplicationDestinationStorageClass("REDUCED_REDUNDANCY"); - public static BucketReplicationDestinationStorageClass Standard { get; } = new BucketReplicationDestinationStorageClass("STANDARD"); - public static BucketReplicationDestinationStorageClass StandardIa { get; } = new BucketReplicationDestinationStorageClass("STANDARD_IA"); - - public static bool operator ==(BucketReplicationDestinationStorageClass left, BucketReplicationDestinationStorageClass right) => left.Equals(right); - public static bool operator !=(BucketReplicationDestinationStorageClass left, BucketReplicationDestinationStorageClass right) => !left.Equals(right); - - public static explicit operator string(BucketReplicationDestinationStorageClass value) => value._value; - - [EditorBrowsable(EditorBrowsableState.Never)] - public override bool Equals(object? obj) => obj is BucketReplicationDestinationStorageClass other && Equals(other); - public bool Equals(BucketReplicationDestinationStorageClass other) => string.Equals(_value, other._value, StringComparison.Ordinal); - - [EditorBrowsable(EditorBrowsableState.Never)] - public override int GetHashCode() => _value?.GetHashCode() ?? 0; - - public override string ToString() => _value; - } - - /// - /// Specifies whether the rule is enabled. - /// - [EnumType] - public readonly struct BucketReplicationRuleStatus : IEquatable - { - private readonly string _value; - - private BucketReplicationRuleStatus(string value) - { - _value = value ?? throw new ArgumentNullException(nameof(value)); - } - - public static BucketReplicationRuleStatus Disabled { get; } = new BucketReplicationRuleStatus("Disabled"); - public static BucketReplicationRuleStatus Enabled { get; } = new BucketReplicationRuleStatus("Enabled"); - - public static bool operator ==(BucketReplicationRuleStatus left, BucketReplicationRuleStatus right) => left.Equals(right); - public static bool operator !=(BucketReplicationRuleStatus left, BucketReplicationRuleStatus right) => !left.Equals(right); - - public static explicit operator string(BucketReplicationRuleStatus value) => value._value; - - [EditorBrowsable(EditorBrowsableState.Never)] - public override bool Equals(object? obj) => obj is BucketReplicationRuleStatus other && Equals(other); - public bool Equals(BucketReplicationRuleStatus 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 BucketReplicationTimeStatus : IEquatable - { - private readonly string _value; - - private BucketReplicationTimeStatus(string value) - { - _value = value ?? throw new ArgumentNullException(nameof(value)); - } - - public static BucketReplicationTimeStatus Disabled { get; } = new BucketReplicationTimeStatus("Disabled"); - public static BucketReplicationTimeStatus Enabled { get; } = new BucketReplicationTimeStatus("Enabled"); - - public static bool operator ==(BucketReplicationTimeStatus left, BucketReplicationTimeStatus right) => left.Equals(right); - public static bool operator !=(BucketReplicationTimeStatus left, BucketReplicationTimeStatus right) => !left.Equals(right); - - public static explicit operator string(BucketReplicationTimeStatus value) => value._value; - - [EditorBrowsable(EditorBrowsableState.Never)] - public override bool Equals(object? obj) => obj is BucketReplicationTimeStatus other && Equals(other); - public bool Equals(BucketReplicationTimeStatus 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 BucketRuleStatus : IEquatable - { - private readonly string _value; - - private BucketRuleStatus(string value) - { - _value = value ?? throw new ArgumentNullException(nameof(value)); - } - - public static BucketRuleStatus Enabled { get; } = new BucketRuleStatus("Enabled"); - public static BucketRuleStatus Disabled { get; } = new BucketRuleStatus("Disabled"); - - public static bool operator ==(BucketRuleStatus left, BucketRuleStatus right) => left.Equals(right); - public static bool operator !=(BucketRuleStatus left, BucketRuleStatus right) => !left.Equals(right); - - public static explicit operator string(BucketRuleStatus value) => value._value; - - [EditorBrowsable(EditorBrowsableState.Never)] - public override bool Equals(object? obj) => obj is BucketRuleStatus other && Equals(other); - public bool Equals(BucketRuleStatus 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 BucketServerSideEncryptionByDefaultSseAlgorithm : IEquatable - { - private readonly string _value; - - private BucketServerSideEncryptionByDefaultSseAlgorithm(string value) - { - _value = value ?? throw new ArgumentNullException(nameof(value)); - } - - public static BucketServerSideEncryptionByDefaultSseAlgorithm Awskms { get; } = new BucketServerSideEncryptionByDefaultSseAlgorithm("aws:kms"); - public static BucketServerSideEncryptionByDefaultSseAlgorithm Aes256 { get; } = new BucketServerSideEncryptionByDefaultSseAlgorithm("AES256"); - public static BucketServerSideEncryptionByDefaultSseAlgorithm Awskmsdsse { get; } = new BucketServerSideEncryptionByDefaultSseAlgorithm("aws:kms:dsse"); - - public static bool operator ==(BucketServerSideEncryptionByDefaultSseAlgorithm left, BucketServerSideEncryptionByDefaultSseAlgorithm right) => left.Equals(right); - public static bool operator !=(BucketServerSideEncryptionByDefaultSseAlgorithm left, BucketServerSideEncryptionByDefaultSseAlgorithm right) => !left.Equals(right); - - public static explicit operator string(BucketServerSideEncryptionByDefaultSseAlgorithm value) => value._value; - - [EditorBrowsable(EditorBrowsableState.Never)] - public override bool Equals(object? obj) => obj is BucketServerSideEncryptionByDefaultSseAlgorithm other && Equals(other); - public bool Equals(BucketServerSideEncryptionByDefaultSseAlgorithm other) => string.Equals(_value, other._value, StringComparison.Ordinal); - - [EditorBrowsable(EditorBrowsableState.Never)] - public override int GetHashCode() => _value?.GetHashCode() ?? 0; - - public override string ToString() => _value; - } - - /// - /// Specifies whether Amazon S3 replicates objects created with server-side encryption using a customer master key (CMK) stored in AWS Key Management Service. - /// - [EnumType] - public readonly struct BucketSseKmsEncryptedObjectsStatus : IEquatable - { - private readonly string _value; - - private BucketSseKmsEncryptedObjectsStatus(string value) - { - _value = value ?? throw new ArgumentNullException(nameof(value)); - } - - public static BucketSseKmsEncryptedObjectsStatus Disabled { get; } = new BucketSseKmsEncryptedObjectsStatus("Disabled"); - public static BucketSseKmsEncryptedObjectsStatus Enabled { get; } = new BucketSseKmsEncryptedObjectsStatus("Enabled"); - - public static bool operator ==(BucketSseKmsEncryptedObjectsStatus left, BucketSseKmsEncryptedObjectsStatus right) => left.Equals(right); - public static bool operator !=(BucketSseKmsEncryptedObjectsStatus left, BucketSseKmsEncryptedObjectsStatus right) => !left.Equals(right); - - public static explicit operator string(BucketSseKmsEncryptedObjectsStatus value) => value._value; - - [EditorBrowsable(EditorBrowsableState.Never)] - public override bool Equals(object? obj) => obj is BucketSseKmsEncryptedObjectsStatus other && Equals(other); - public bool Equals(BucketSseKmsEncryptedObjectsStatus other) => string.Equals(_value, other._value, StringComparison.Ordinal); - - [EditorBrowsable(EditorBrowsableState.Never)] - public override int GetHashCode() => _value?.GetHashCode() ?? 0; - - public override string ToString() => _value; - } - - /// - /// S3 Intelligent-Tiering access tier. See Storage class for automatically optimizing frequently and infrequently accessed objects for a list of access tiers in the S3 Intelligent-Tiering storage class. - /// - [EnumType] - public readonly struct BucketTieringAccessTier : IEquatable - { - private readonly string _value; - - private BucketTieringAccessTier(string value) - { - _value = value ?? throw new ArgumentNullException(nameof(value)); - } - - public static BucketTieringAccessTier ArchiveAccess { get; } = new BucketTieringAccessTier("ARCHIVE_ACCESS"); - public static BucketTieringAccessTier DeepArchiveAccess { get; } = new BucketTieringAccessTier("DEEP_ARCHIVE_ACCESS"); - - public static bool operator ==(BucketTieringAccessTier left, BucketTieringAccessTier right) => left.Equals(right); - public static bool operator !=(BucketTieringAccessTier left, BucketTieringAccessTier right) => !left.Equals(right); - - public static explicit operator string(BucketTieringAccessTier value) => value._value; - - [EditorBrowsable(EditorBrowsableState.Never)] - public override bool Equals(object? obj) => obj is BucketTieringAccessTier other && Equals(other); - public bool Equals(BucketTieringAccessTier 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 BucketTransitionStorageClass : IEquatable - { - private readonly string _value; - - private BucketTransitionStorageClass(string value) - { - _value = value ?? throw new ArgumentNullException(nameof(value)); - } - - public static BucketTransitionStorageClass DeepArchive { get; } = new BucketTransitionStorageClass("DEEP_ARCHIVE"); - public static BucketTransitionStorageClass Glacier { get; } = new BucketTransitionStorageClass("GLACIER"); - public static BucketTransitionStorageClass GlacierIr { get; } = new BucketTransitionStorageClass("GLACIER_IR"); - public static BucketTransitionStorageClass IntelligentTiering { get; } = new BucketTransitionStorageClass("INTELLIGENT_TIERING"); - public static BucketTransitionStorageClass OnezoneIa { get; } = new BucketTransitionStorageClass("ONEZONE_IA"); - public static BucketTransitionStorageClass StandardIa { get; } = new BucketTransitionStorageClass("STANDARD_IA"); - - public static bool operator ==(BucketTransitionStorageClass left, BucketTransitionStorageClass right) => left.Equals(right); - public static bool operator !=(BucketTransitionStorageClass left, BucketTransitionStorageClass right) => !left.Equals(right); - - public static explicit operator string(BucketTransitionStorageClass value) => value._value; - - [EditorBrowsable(EditorBrowsableState.Never)] - public override bool Equals(object? obj) => obj is BucketTransitionStorageClass other && Equals(other); - public bool Equals(BucketTransitionStorageClass other) => string.Equals(_value, other._value, StringComparison.Ordinal); - - [EditorBrowsable(EditorBrowsableState.Never)] - public override int GetHashCode() => _value?.GetHashCode() ?? 0; - - public override string ToString() => _value; - } - - /// - /// The versioning state of the bucket. - /// - [EnumType] - public readonly struct BucketVersioningConfigurationStatus : IEquatable - { - private readonly string _value; - - private BucketVersioningConfigurationStatus(string value) - { - _value = value ?? throw new ArgumentNullException(nameof(value)); - } - - public static BucketVersioningConfigurationStatus Enabled { get; } = new BucketVersioningConfigurationStatus("Enabled"); - public static BucketVersioningConfigurationStatus Suspended { get; } = new BucketVersioningConfigurationStatus("Suspended"); - - public static bool operator ==(BucketVersioningConfigurationStatus left, BucketVersioningConfigurationStatus right) => left.Equals(right); - public static bool operator !=(BucketVersioningConfigurationStatus left, BucketVersioningConfigurationStatus right) => !left.Equals(right); - - public static explicit operator string(BucketVersioningConfigurationStatus value) => value._value; - - [EditorBrowsable(EditorBrowsableState.Never)] - public override bool Equals(object? obj) => obj is BucketVersioningConfigurationStatus other && Equals(other); - public bool Equals(BucketVersioningConfigurationStatus other) => string.Equals(_value, other._value, StringComparison.Ordinal); - - [EditorBrowsable(EditorBrowsableState.Never)] - public override int GetHashCode() => _value?.GetHashCode() ?? 0; - - public override string ToString() => _value; - } - /// /// Specifies whether the policy is public or not. /// diff --git a/sdk/dotnet/S3/GetBucket.cs b/sdk/dotnet/S3/GetBucket.cs index 1a2d228f69..1ca74cccc9 100644 --- a/sdk/dotnet/S3/GetBucket.cs +++ b/sdk/dotnet/S3/GetBucket.cs @@ -27,11 +27,8 @@ public static Output Invoke(GetBucketInvokeArgs args, InvokeOpt public sealed class GetBucketArgs : global::Pulumi.InvokeArgs { - /// - /// A name for the bucket. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. - /// - [Input("bucketName", required: true)] - public string BucketName { get; set; } = null!; + [Input("id", required: true)] + public string Id { get; set; } = null!; public GetBucketArgs() { @@ -41,11 +38,8 @@ public GetBucketArgs() public sealed class GetBucketInvokeArgs : global::Pulumi.InvokeArgs { - /// - /// A name for the bucket. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. - /// - [Input("bucketName", required: true)] - public Input BucketName { get; set; } = null!; + [Input("id", required: true)] + public Input Id { get; set; } = null!; public GetBucketInvokeArgs() { @@ -57,87 +51,37 @@ public GetBucketInvokeArgs() [OutputType] public sealed class GetBucketResult { - /// - /// Configuration for the transfer acceleration state. - /// public readonly Outputs.BucketAccelerateConfiguration? AccelerateConfiguration; - /// - /// The configuration and any analyses for the analytics filter of an Amazon S3 bucket. - /// + public readonly string? AccessControl; public readonly ImmutableArray AnalyticsConfigurations; - /// - /// The Amazon Resource Name (ARN) of the specified bucket. - /// public readonly string? Arn; public readonly Outputs.BucketEncryption? BucketEncryption; - /// - /// Rules that define cross-origin resource sharing of objects in this bucket. - /// public readonly Outputs.BucketCorsConfiguration? CorsConfiguration; - /// - /// The IPv4 DNS name of the specified bucket. - /// public readonly string? DomainName; - /// - /// The IPv6 DNS name of the specified bucket. For more information about dual-stack endpoints, see [Using Amazon S3 Dual-Stack Endpoints](https://docs.aws.amazon.com/AmazonS3/latest/dev/dual-stack-endpoints.html). - /// public readonly string? DualStackDomainName; - /// - /// Specifies the S3 Intelligent-Tiering configuration for an Amazon S3 bucket. - /// + public readonly string? Id; public readonly ImmutableArray IntelligentTieringConfigurations; - /// - /// The inventory configuration for an Amazon S3 bucket. - /// public readonly ImmutableArray InventoryConfigurations; - /// - /// Rules that define how Amazon S3 manages objects during their lifetime. - /// public readonly Outputs.BucketLifecycleConfiguration? LifecycleConfiguration; - /// - /// Settings that define where logs are stored. - /// public readonly Outputs.BucketLoggingConfiguration? LoggingConfiguration; - /// - /// Settings that define a metrics configuration for the CloudWatch request metrics from the bucket. - /// public readonly ImmutableArray MetricsConfigurations; - /// - /// Configuration that defines how Amazon S3 handles bucket notifications. - /// public readonly Outputs.BucketNotificationConfiguration? NotificationConfiguration; - /// - /// Places an Object Lock configuration on the specified bucket. - /// public readonly Outputs.BucketObjectLockConfiguration? ObjectLockConfiguration; - /// - /// Specifies the container element for object ownership rules. - /// public readonly Outputs.BucketOwnershipControls? OwnershipControls; public readonly Outputs.BucketPublicAccessBlockConfiguration? PublicAccessBlockConfiguration; - /// - /// Returns the regional domain name of the specified bucket. - /// public readonly string? RegionalDomainName; - /// - /// Configuration for replicating objects in an S3 bucket. - /// public readonly Outputs.BucketReplicationConfiguration? ReplicationConfiguration; - /// - /// An arbitrary set of tags (key-value pairs) for this S3 bucket. - /// public readonly ImmutableArray Tags; public readonly Outputs.BucketVersioningConfiguration? VersioningConfiguration; public readonly Outputs.BucketWebsiteConfiguration? WebsiteConfiguration; - /// - /// The Amazon S3 website endpoint for the specified bucket. - /// public readonly string? WebsiteUrl; [OutputConstructor] private GetBucketResult( Outputs.BucketAccelerateConfiguration? accelerateConfiguration, + string? accessControl, + ImmutableArray analyticsConfigurations, string? arn, @@ -150,6 +94,8 @@ private GetBucketResult( string? dualStackDomainName, + string? id, + ImmutableArray intelligentTieringConfigurations, ImmutableArray inventoryConfigurations, @@ -181,12 +127,14 @@ private GetBucketResult( string? websiteUrl) { AccelerateConfiguration = accelerateConfiguration; + AccessControl = accessControl; AnalyticsConfigurations = analyticsConfigurations; Arn = arn; BucketEncryption = bucketEncryption; CorsConfiguration = corsConfiguration; DomainName = domainName; DualStackDomainName = dualStackDomainName; + Id = id; IntelligentTieringConfigurations = intelligentTieringConfigurations; InventoryConfigurations = inventoryConfigurations; LifecycleConfiguration = lifecycleConfiguration; diff --git a/sdk/dotnet/S3/Inputs/BucketAbortIncompleteMultipartUploadArgs.cs b/sdk/dotnet/S3/Inputs/BucketAbortIncompleteMultipartUploadArgs.cs index 8591565e7a..40a1ceb8f7 100644 --- a/sdk/dotnet/S3/Inputs/BucketAbortIncompleteMultipartUploadArgs.cs +++ b/sdk/dotnet/S3/Inputs/BucketAbortIncompleteMultipartUploadArgs.cs @@ -10,14 +10,8 @@ namespace Pulumi.AwsNative.S3.Inputs { - /// - /// Specifies the days since the initiation of an incomplete multipart upload that Amazon S3 will wait before permanently removing all parts of the upload. - /// public sealed class BucketAbortIncompleteMultipartUploadArgs : global::Pulumi.ResourceArgs { - /// - /// Specifies the number of days after which Amazon S3 aborts an incomplete multipart upload. - /// [Input("daysAfterInitiation", required: true)] public Input DaysAfterInitiation { get; set; } = null!; diff --git a/sdk/dotnet/S3/Inputs/BucketAccelerateConfigurationArgs.cs b/sdk/dotnet/S3/Inputs/BucketAccelerateConfigurationArgs.cs index 541758d48b..fd1d33774f 100644 --- a/sdk/dotnet/S3/Inputs/BucketAccelerateConfigurationArgs.cs +++ b/sdk/dotnet/S3/Inputs/BucketAccelerateConfigurationArgs.cs @@ -12,11 +12,8 @@ namespace Pulumi.AwsNative.S3.Inputs public sealed class BucketAccelerateConfigurationArgs : global::Pulumi.ResourceArgs { - /// - /// Configures the transfer acceleration state for an Amazon S3 bucket. - /// [Input("accelerationStatus", required: true)] - public Input AccelerationStatus { get; set; } = null!; + public Input AccelerationStatus { get; set; } = null!; public BucketAccelerateConfigurationArgs() { diff --git a/sdk/dotnet/S3/Inputs/BucketAccessControlTranslationArgs.cs b/sdk/dotnet/S3/Inputs/BucketAccessControlTranslationArgs.cs index 9be636f541..e9c933a01d 100644 --- a/sdk/dotnet/S3/Inputs/BucketAccessControlTranslationArgs.cs +++ b/sdk/dotnet/S3/Inputs/BucketAccessControlTranslationArgs.cs @@ -10,9 +10,6 @@ namespace Pulumi.AwsNative.S3.Inputs { - /// - /// Specify this only in a cross-account scenario (where source and destination bucket owners are not the same), and you want to change replica ownership to the AWS account that owns the destination bucket. If this is not specified in the replication configuration, the replicas are owned by same AWS account that owns the source object. - /// public sealed class BucketAccessControlTranslationArgs : global::Pulumi.ResourceArgs { [Input("owner", required: true)] diff --git a/sdk/dotnet/S3/Inputs/BucketAnalyticsConfigurationArgs.cs b/sdk/dotnet/S3/Inputs/BucketAnalyticsConfigurationArgs.cs index d99ea8d93a..211e9acfbf 100644 --- a/sdk/dotnet/S3/Inputs/BucketAnalyticsConfigurationArgs.cs +++ b/sdk/dotnet/S3/Inputs/BucketAnalyticsConfigurationArgs.cs @@ -10,20 +10,11 @@ namespace Pulumi.AwsNative.S3.Inputs { - /// - /// Specifies the configuration and any analyses for the analytics filter of an Amazon S3 bucket. - /// public sealed class BucketAnalyticsConfigurationArgs : global::Pulumi.ResourceArgs { - /// - /// The ID that identifies the analytics configuration. - /// [Input("id", required: true)] public Input Id { get; set; } = null!; - /// - /// The prefix that an object must have to be included in the analytics results. - /// [Input("prefix")] public Input? Prefix { get; set; } diff --git a/sdk/dotnet/S3/Inputs/BucketCorsRuleArgs.cs b/sdk/dotnet/S3/Inputs/BucketCorsRuleArgs.cs index 3edc909e4d..2b88a85e36 100644 --- a/sdk/dotnet/S3/Inputs/BucketCorsRuleArgs.cs +++ b/sdk/dotnet/S3/Inputs/BucketCorsRuleArgs.cs @@ -10,17 +10,10 @@ namespace Pulumi.AwsNative.S3.Inputs { - /// - /// A set of origins and methods (cross-origin access that you want to allow). You can add up to 100 rules to the configuration. - /// public sealed class BucketCorsRuleArgs : global::Pulumi.ResourceArgs { [Input("allowedHeaders")] private InputList? _allowedHeaders; - - /// - /// Headers that are specified in the Access-Control-Request-Headers header. - /// public InputList AllowedHeaders { get => _allowedHeaders ?? (_allowedHeaders = new InputList()); @@ -28,23 +21,15 @@ public InputList AllowedHeaders } [Input("allowedMethods", required: true)] - private InputList? _allowedMethods; - - /// - /// An HTTP method that you allow the origin to execute. - /// - public InputList AllowedMethods + private InputList? _allowedMethods; + public InputList AllowedMethods { - get => _allowedMethods ?? (_allowedMethods = new InputList()); + get => _allowedMethods ?? (_allowedMethods = new InputList()); set => _allowedMethods = value; } [Input("allowedOrigins", required: true)] private InputList? _allowedOrigins; - - /// - /// One or more origins you want customers to be able to access the bucket from. - /// public InputList AllowedOrigins { get => _allowedOrigins ?? (_allowedOrigins = new InputList()); @@ -53,25 +38,15 @@ public InputList AllowedOrigins [Input("exposedHeaders")] private InputList? _exposedHeaders; - - /// - /// One or more headers in the response that you want customers to be able to access from their applications (for example, from a JavaScript XMLHttpRequest object). - /// public InputList ExposedHeaders { get => _exposedHeaders ?? (_exposedHeaders = new InputList()); set => _exposedHeaders = value; } - /// - /// A unique identifier for this rule. - /// [Input("id")] public Input? Id { get; set; } - /// - /// The time in seconds that your browser is to cache the preflight response for the specified resource. - /// [Input("maxAge")] public Input? MaxAge { get; set; } diff --git a/sdk/dotnet/S3/Inputs/BucketDataExportArgs.cs b/sdk/dotnet/S3/Inputs/BucketDataExportArgs.cs index e5e2313319..26da70c0f2 100644 --- a/sdk/dotnet/S3/Inputs/BucketDataExportArgs.cs +++ b/sdk/dotnet/S3/Inputs/BucketDataExportArgs.cs @@ -10,17 +10,11 @@ namespace Pulumi.AwsNative.S3.Inputs { - /// - /// Specifies how data related to the storage class analysis for an Amazon S3 bucket should be exported. - /// public sealed class BucketDataExportArgs : global::Pulumi.ResourceArgs { [Input("destination", required: true)] public Input Destination { get; set; } = null!; - /// - /// The version of the output schema to use when exporting data. - /// [Input("outputSchemaVersion", required: true)] public Input OutputSchemaVersion { get; set; } = null!; diff --git a/sdk/dotnet/S3/Inputs/BucketDefaultRetentionArgs.cs b/sdk/dotnet/S3/Inputs/BucketDefaultRetentionArgs.cs index 91c3fd5fe2..f7fcc65a94 100644 --- a/sdk/dotnet/S3/Inputs/BucketDefaultRetentionArgs.cs +++ b/sdk/dotnet/S3/Inputs/BucketDefaultRetentionArgs.cs @@ -10,16 +10,13 @@ namespace Pulumi.AwsNative.S3.Inputs { - /// - /// The default retention period that you want to apply to new objects placed in the specified bucket. - /// public sealed class BucketDefaultRetentionArgs : global::Pulumi.ResourceArgs { [Input("days")] public Input? Days { get; set; } [Input("mode")] - public Input? Mode { get; set; } + public Input? Mode { get; set; } [Input("years")] public Input? Years { get; set; } diff --git a/sdk/dotnet/S3/Inputs/BucketDeleteMarkerReplicationArgs.cs b/sdk/dotnet/S3/Inputs/BucketDeleteMarkerReplicationArgs.cs index 4462925c14..6a6b2287c4 100644 --- a/sdk/dotnet/S3/Inputs/BucketDeleteMarkerReplicationArgs.cs +++ b/sdk/dotnet/S3/Inputs/BucketDeleteMarkerReplicationArgs.cs @@ -13,7 +13,7 @@ namespace Pulumi.AwsNative.S3.Inputs public sealed class BucketDeleteMarkerReplicationArgs : global::Pulumi.ResourceArgs { [Input("status")] - public Input? Status { get; set; } + public Input? Status { get; set; } public BucketDeleteMarkerReplicationArgs() { diff --git a/sdk/dotnet/S3/Inputs/BucketDestinationArgs.cs b/sdk/dotnet/S3/Inputs/BucketDestinationArgs.cs index dd64dc03f9..4a449e27f4 100644 --- a/sdk/dotnet/S3/Inputs/BucketDestinationArgs.cs +++ b/sdk/dotnet/S3/Inputs/BucketDestinationArgs.cs @@ -10,32 +10,17 @@ namespace Pulumi.AwsNative.S3.Inputs { - /// - /// Specifies information about where to publish analysis or configuration results for an Amazon S3 bucket and S3 Replication Time Control (S3 RTC). - /// public sealed class BucketDestinationArgs : global::Pulumi.ResourceArgs { - /// - /// The account ID that owns the destination S3 bucket. - /// [Input("bucketAccountId")] public Input? BucketAccountId { get; set; } - /// - /// The Amazon Resource Name (ARN) of the bucket to which data is exported. - /// [Input("bucketArn", required: true)] public Input BucketArn { get; set; } = null!; - /// - /// Specifies the file format used when exporting data to Amazon S3. - /// [Input("format", required: true)] - public Input Format { get; set; } = null!; + public Input Format { get; set; } = null!; - /// - /// The prefix to use when exporting data. The prefix is prepended to all results. - /// [Input("prefix")] public Input? Prefix { get; set; } diff --git a/sdk/dotnet/S3/Inputs/BucketEncryptionArgs.cs b/sdk/dotnet/S3/Inputs/BucketEncryptionArgs.cs index da1e47432d..d3507ae459 100644 --- a/sdk/dotnet/S3/Inputs/BucketEncryptionArgs.cs +++ b/sdk/dotnet/S3/Inputs/BucketEncryptionArgs.cs @@ -10,17 +10,10 @@ namespace Pulumi.AwsNative.S3.Inputs { - /// - /// Specifies default encryption for a bucket using server-side encryption with either Amazon S3-managed keys (SSE-S3) or AWS KMS-managed keys (SSE-KMS). - /// public sealed class BucketEncryptionArgs : global::Pulumi.ResourceArgs { [Input("serverSideEncryptionConfiguration", required: true)] private InputList? _serverSideEncryptionConfiguration; - - /// - /// Specifies the default server-side-encryption configuration. - /// public InputList ServerSideEncryptionConfiguration { get => _serverSideEncryptionConfiguration ?? (_serverSideEncryptionConfiguration = new InputList()); diff --git a/sdk/dotnet/S3/Inputs/BucketEncryptionConfigurationArgs.cs b/sdk/dotnet/S3/Inputs/BucketEncryptionConfigurationArgs.cs index bb5414bd83..361297c9ea 100644 --- a/sdk/dotnet/S3/Inputs/BucketEncryptionConfigurationArgs.cs +++ b/sdk/dotnet/S3/Inputs/BucketEncryptionConfigurationArgs.cs @@ -10,14 +10,8 @@ namespace Pulumi.AwsNative.S3.Inputs { - /// - /// Specifies encryption-related information for an Amazon S3 bucket that is a destination for replicated objects. - /// public sealed class BucketEncryptionConfigurationArgs : global::Pulumi.ResourceArgs { - /// - /// Specifies the ID (Key ARN or Alias ARN) of the customer managed customer master key (CMK) stored in AWS Key Management Service (KMS) for the destination bucket. - /// [Input("replicaKmsKeyId", required: true)] public Input ReplicaKmsKeyId { get; set; } = null!; diff --git a/sdk/dotnet/S3/Inputs/BucketEventBridgeConfigurationArgs.cs b/sdk/dotnet/S3/Inputs/BucketEventBridgeConfigurationArgs.cs index 4a852da45e..59506cf176 100644 --- a/sdk/dotnet/S3/Inputs/BucketEventBridgeConfigurationArgs.cs +++ b/sdk/dotnet/S3/Inputs/BucketEventBridgeConfigurationArgs.cs @@ -10,16 +10,10 @@ namespace Pulumi.AwsNative.S3.Inputs { - /// - /// Describes the Amazon EventBridge notification configuration for an Amazon S3 bucket. - /// public sealed class BucketEventBridgeConfigurationArgs : global::Pulumi.ResourceArgs { - /// - /// Specifies whether to send notifications to Amazon EventBridge when events occur in an Amazon S3 bucket. - /// - [Input("eventBridgeEnabled", required: true)] - public Input EventBridgeEnabled { get; set; } = null!; + [Input("eventBridgeEnabled")] + public Input? EventBridgeEnabled { get; set; } public BucketEventBridgeConfigurationArgs() { diff --git a/sdk/dotnet/S3/Inputs/BucketFilterRuleArgs.cs b/sdk/dotnet/S3/Inputs/BucketFilterRuleArgs.cs index 2af156d3a6..ca0b1d2811 100644 --- a/sdk/dotnet/S3/Inputs/BucketFilterRuleArgs.cs +++ b/sdk/dotnet/S3/Inputs/BucketFilterRuleArgs.cs @@ -10,9 +10,6 @@ namespace Pulumi.AwsNative.S3.Inputs { - /// - /// Specifies the Amazon S3 object key name to filter on and whether to filter on the suffix or prefix of the key name. - /// public sealed class BucketFilterRuleArgs : global::Pulumi.ResourceArgs { [Input("name", required: true)] diff --git a/sdk/dotnet/S3/Inputs/BucketIntelligentTieringConfigurationArgs.cs b/sdk/dotnet/S3/Inputs/BucketIntelligentTieringConfigurationArgs.cs index ead83be1c5..7200ffb300 100644 --- a/sdk/dotnet/S3/Inputs/BucketIntelligentTieringConfigurationArgs.cs +++ b/sdk/dotnet/S3/Inputs/BucketIntelligentTieringConfigurationArgs.cs @@ -12,30 +12,17 @@ namespace Pulumi.AwsNative.S3.Inputs public sealed class BucketIntelligentTieringConfigurationArgs : global::Pulumi.ResourceArgs { - /// - /// The ID used to identify the S3 Intelligent-Tiering configuration. - /// [Input("id", required: true)] public Input Id { get; set; } = null!; - /// - /// An object key name prefix that identifies the subset of objects to which the rule applies. - /// [Input("prefix")] public Input? Prefix { get; set; } - /// - /// Specifies the status of the configuration. - /// [Input("status", required: true)] - public Input Status { get; set; } = null!; + public Input Status { get; set; } = null!; [Input("tagFilters")] private InputList? _tagFilters; - - /// - /// A container for a key-value pair. - /// public InputList TagFilters { get => _tagFilters ?? (_tagFilters = new InputList()); @@ -44,10 +31,6 @@ public InputList TagFilters [Input("tierings", required: true)] private InputList? _tierings; - - /// - /// Specifies a list of S3 Intelligent-Tiering storage class tiers in the configuration. At least one tier must be defined in the list. At most, you can specify two tiers in the list, one for each available AccessTier: ARCHIVE_ACCESS and DEEP_ARCHIVE_ACCESS. - /// public InputList Tierings { get => _tierings ?? (_tierings = new InputList()); diff --git a/sdk/dotnet/S3/Inputs/BucketInventoryConfigurationArgs.cs b/sdk/dotnet/S3/Inputs/BucketInventoryConfigurationArgs.cs index 706956bf97..a6002e18ff 100644 --- a/sdk/dotnet/S3/Inputs/BucketInventoryConfigurationArgs.cs +++ b/sdk/dotnet/S3/Inputs/BucketInventoryConfigurationArgs.cs @@ -15,47 +15,28 @@ public sealed class BucketInventoryConfigurationArgs : global::Pulumi.ResourceAr [Input("destination", required: true)] public Input Destination { get; set; } = null!; - /// - /// Specifies whether the inventory is enabled or disabled. - /// [Input("enabled", required: true)] public Input Enabled { get; set; } = null!; - /// - /// The ID used to identify the inventory configuration. - /// [Input("id", required: true)] public Input Id { get; set; } = null!; - /// - /// Object versions to include in the inventory list. - /// [Input("includedObjectVersions", required: true)] - public Input IncludedObjectVersions { get; set; } = null!; + public Input IncludedObjectVersions { get; set; } = null!; [Input("optionalFields")] - private InputList? _optionalFields; - - /// - /// Contains the optional fields that are included in the inventory results. - /// - public InputList OptionalFields + private InputList? _optionalFields; + public InputList OptionalFields { - get => _optionalFields ?? (_optionalFields = new InputList()); + get => _optionalFields ?? (_optionalFields = new InputList()); set => _optionalFields = value; } - /// - /// The prefix that is prepended to all inventory results. - /// [Input("prefix")] public Input? Prefix { get; set; } - /// - /// Specifies the schedule for generating inventory results. - /// [Input("scheduleFrequency", required: true)] - public Input ScheduleFrequency { get; set; } = null!; + public Input ScheduleFrequency { get; set; } = null!; public BucketInventoryConfigurationArgs() { diff --git a/sdk/dotnet/S3/Inputs/BucketLambdaConfigurationArgs.cs b/sdk/dotnet/S3/Inputs/BucketLambdaConfigurationArgs.cs index 3c86b63fd3..7f753fc1dc 100644 --- a/sdk/dotnet/S3/Inputs/BucketLambdaConfigurationArgs.cs +++ b/sdk/dotnet/S3/Inputs/BucketLambdaConfigurationArgs.cs @@ -10,26 +10,14 @@ namespace Pulumi.AwsNative.S3.Inputs { - /// - /// Describes the AWS Lambda functions to invoke and the events for which to invoke them. - /// public sealed class BucketLambdaConfigurationArgs : global::Pulumi.ResourceArgs { - /// - /// The Amazon S3 bucket event for which to invoke the AWS Lambda function. - /// [Input("event", required: true)] public Input Event { get; set; } = null!; - /// - /// The filtering rules that determine which objects invoke the AWS Lambda function. - /// [Input("filter")] public Input? Filter { get; set; } - /// - /// The Amazon Resource Name (ARN) of the AWS Lambda function that Amazon S3 invokes when the specified event type occurs. - /// [Input("function", required: true)] public Input Function { get; set; } = null!; diff --git a/sdk/dotnet/S3/Inputs/BucketLifecycleConfigurationArgs.cs b/sdk/dotnet/S3/Inputs/BucketLifecycleConfigurationArgs.cs index 729fd2264c..c83f99ee8b 100644 --- a/sdk/dotnet/S3/Inputs/BucketLifecycleConfigurationArgs.cs +++ b/sdk/dotnet/S3/Inputs/BucketLifecycleConfigurationArgs.cs @@ -14,10 +14,6 @@ public sealed class BucketLifecycleConfigurationArgs : global::Pulumi.ResourceAr { [Input("rules", required: true)] private InputList? _rules; - - /// - /// A lifecycle rule for individual objects in an Amazon S3 bucket. - /// public InputList Rules { get => _rules ?? (_rules = new InputList()); diff --git a/sdk/dotnet/S3/Inputs/BucketLoggingConfigurationArgs.cs b/sdk/dotnet/S3/Inputs/BucketLoggingConfigurationArgs.cs index f9b01ac8b1..35225bacd0 100644 --- a/sdk/dotnet/S3/Inputs/BucketLoggingConfigurationArgs.cs +++ b/sdk/dotnet/S3/Inputs/BucketLoggingConfigurationArgs.cs @@ -12,9 +12,6 @@ namespace Pulumi.AwsNative.S3.Inputs public sealed class BucketLoggingConfigurationArgs : global::Pulumi.ResourceArgs { - /// - /// The name of an Amazon S3 bucket where Amazon S3 store server access log files. You can store log files in any bucket that you own. By default, logs are stored in the bucket where the LoggingConfiguration property is defined. - /// [Input("destinationBucketName")] public Input? DestinationBucketName { get; set; } diff --git a/sdk/dotnet/S3/Inputs/BucketMetricsArgs.cs b/sdk/dotnet/S3/Inputs/BucketMetricsArgs.cs index 992b2dcb20..278db8f373 100644 --- a/sdk/dotnet/S3/Inputs/BucketMetricsArgs.cs +++ b/sdk/dotnet/S3/Inputs/BucketMetricsArgs.cs @@ -16,7 +16,7 @@ public sealed class BucketMetricsArgs : global::Pulumi.ResourceArgs public Input? EventThreshold { get; set; } [Input("status", required: true)] - public Input Status { get; set; } = null!; + public Input Status { get; set; } = null!; public BucketMetricsArgs() { diff --git a/sdk/dotnet/S3/Inputs/BucketNoncurrentVersionExpirationArgs.cs b/sdk/dotnet/S3/Inputs/BucketNoncurrentVersionExpirationArgs.cs index a8f1c8a2f1..98e9a77439 100644 --- a/sdk/dotnet/S3/Inputs/BucketNoncurrentVersionExpirationArgs.cs +++ b/sdk/dotnet/S3/Inputs/BucketNoncurrentVersionExpirationArgs.cs @@ -10,20 +10,11 @@ namespace Pulumi.AwsNative.S3.Inputs { - /// - /// Container for the expiration rule that describes when noncurrent objects are expired. If your bucket is versioning-enabled (or versioning is suspended), you can set this action to request that Amazon S3 expire noncurrent object versions at a specific period in the object's lifetime - /// public sealed class BucketNoncurrentVersionExpirationArgs : global::Pulumi.ResourceArgs { - /// - /// Specified the number of newer noncurrent and current versions that must exists before performing the associated action - /// [Input("newerNoncurrentVersions")] public Input? NewerNoncurrentVersions { get; set; } - /// - /// Specified the number of days an object is noncurrent before Amazon S3 can perform the associated action - /// [Input("noncurrentDays", required: true)] public Input NoncurrentDays { get; set; } = null!; diff --git a/sdk/dotnet/S3/Inputs/BucketNoncurrentVersionTransitionArgs.cs b/sdk/dotnet/S3/Inputs/BucketNoncurrentVersionTransitionArgs.cs index 1080ce88ef..e22ada617d 100644 --- a/sdk/dotnet/S3/Inputs/BucketNoncurrentVersionTransitionArgs.cs +++ b/sdk/dotnet/S3/Inputs/BucketNoncurrentVersionTransitionArgs.cs @@ -10,26 +10,14 @@ namespace Pulumi.AwsNative.S3.Inputs { - /// - /// Container for the transition rule that describes when noncurrent objects transition to the STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER_IR, GLACIER, or DEEP_ARCHIVE storage class. If your bucket is versioning-enabled (or versioning is suspended), you can set this action to request that Amazon S3 transition noncurrent object versions to the STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER_IR, GLACIER, or DEEP_ARCHIVE storage class at a specific period in the object's lifetime. - /// public sealed class BucketNoncurrentVersionTransitionArgs : global::Pulumi.ResourceArgs { - /// - /// Specified the number of newer noncurrent and current versions that must exists before performing the associated action - /// [Input("newerNoncurrentVersions")] public Input? NewerNoncurrentVersions { get; set; } - /// - /// The class of storage used to store the object. - /// [Input("storageClass", required: true)] - public Input StorageClass { get; set; } = null!; + public Input StorageClass { get; set; } = null!; - /// - /// Specifies the number of days an object is noncurrent before Amazon S3 can perform the associated action. - /// [Input("transitionInDays", required: true)] public Input TransitionInDays { get; set; } = null!; diff --git a/sdk/dotnet/S3/Inputs/BucketNotificationConfigurationArgs.cs b/sdk/dotnet/S3/Inputs/BucketNotificationConfigurationArgs.cs index eac75733b2..47b56f62d8 100644 --- a/sdk/dotnet/S3/Inputs/BucketNotificationConfigurationArgs.cs +++ b/sdk/dotnet/S3/Inputs/BucketNotificationConfigurationArgs.cs @@ -10,9 +10,6 @@ namespace Pulumi.AwsNative.S3.Inputs { - /// - /// Describes the notification configuration for an Amazon S3 bucket. - /// public sealed class BucketNotificationConfigurationArgs : global::Pulumi.ResourceArgs { [Input("eventBridgeConfiguration")] diff --git a/sdk/dotnet/S3/Inputs/BucketNotificationFilterArgs.cs b/sdk/dotnet/S3/Inputs/BucketNotificationFilterArgs.cs index 94150a54bd..ed5033223f 100644 --- a/sdk/dotnet/S3/Inputs/BucketNotificationFilterArgs.cs +++ b/sdk/dotnet/S3/Inputs/BucketNotificationFilterArgs.cs @@ -10,9 +10,6 @@ namespace Pulumi.AwsNative.S3.Inputs { - /// - /// Specifies object key name filtering rules. - /// public sealed class BucketNotificationFilterArgs : global::Pulumi.ResourceArgs { [Input("s3Key", required: true)] diff --git a/sdk/dotnet/S3/Inputs/BucketObjectLockRuleArgs.cs b/sdk/dotnet/S3/Inputs/BucketObjectLockRuleArgs.cs index 3a8f443f94..f6fcc62fcd 100644 --- a/sdk/dotnet/S3/Inputs/BucketObjectLockRuleArgs.cs +++ b/sdk/dotnet/S3/Inputs/BucketObjectLockRuleArgs.cs @@ -10,9 +10,6 @@ namespace Pulumi.AwsNative.S3.Inputs { - /// - /// The Object Lock rule in place for the specified object. - /// public sealed class BucketObjectLockRuleArgs : global::Pulumi.ResourceArgs { [Input("defaultRetention")] diff --git a/sdk/dotnet/S3/Inputs/BucketOwnershipControlsRuleArgs.cs b/sdk/dotnet/S3/Inputs/BucketOwnershipControlsRuleArgs.cs index e4585f06a1..df065a5b0c 100644 --- a/sdk/dotnet/S3/Inputs/BucketOwnershipControlsRuleArgs.cs +++ b/sdk/dotnet/S3/Inputs/BucketOwnershipControlsRuleArgs.cs @@ -12,11 +12,8 @@ namespace Pulumi.AwsNative.S3.Inputs public sealed class BucketOwnershipControlsRuleArgs : global::Pulumi.ResourceArgs { - /// - /// Specifies an object ownership rule. - /// [Input("objectOwnership")] - public Input? ObjectOwnership { get; set; } + public Input? ObjectOwnership { get; set; } public BucketOwnershipControlsRuleArgs() { diff --git a/sdk/dotnet/S3/Inputs/BucketPublicAccessBlockConfigurationArgs.cs b/sdk/dotnet/S3/Inputs/BucketPublicAccessBlockConfigurationArgs.cs index a4e8bffb03..19730f1dbc 100644 --- a/sdk/dotnet/S3/Inputs/BucketPublicAccessBlockConfigurationArgs.cs +++ b/sdk/dotnet/S3/Inputs/BucketPublicAccessBlockConfigurationArgs.cs @@ -10,38 +10,17 @@ namespace Pulumi.AwsNative.S3.Inputs { - /// - /// Configuration that defines how Amazon S3 handles public access. - /// public sealed class BucketPublicAccessBlockConfigurationArgs : global::Pulumi.ResourceArgs { - /// - /// Specifies whether Amazon S3 should block public access control lists (ACLs) for this bucket and objects in this bucket. Setting this element to TRUE causes the following behavior: - /// - PUT Bucket acl and PUT Object acl calls fail if the specified ACL is public. - /// - PUT Object calls fail if the request includes a public ACL. - /// Enabling this setting doesn't affect existing policies or ACLs. - /// [Input("blockPublicAcls")] public Input? BlockPublicAcls { get; set; } - /// - /// Specifies whether Amazon S3 should block public bucket policies for this bucket. Setting this element to TRUE causes Amazon S3 to reject calls to PUT Bucket policy if the specified bucket policy allows public access. - /// Enabling this setting doesn't affect existing bucket policies. - /// [Input("blockPublicPolicy")] public Input? BlockPublicPolicy { get; set; } - /// - /// Specifies whether Amazon S3 should ignore public ACLs for this bucket and objects in this bucket. Setting this element to TRUE causes Amazon S3 to ignore all public ACLs on this bucket and objects in this bucket. - /// Enabling this setting doesn't affect the persistence of any existing ACLs and doesn't prevent new public ACLs from being set. - /// [Input("ignorePublicAcls")] public Input? IgnorePublicAcls { get; set; } - /// - /// Specifies whether Amazon S3 should restrict public bucket policies for this bucket. Setting this element to TRUE restricts access to this bucket to only AWS services and authorized users within this account if the bucket has a public policy. - /// Enabling this setting doesn't affect previously stored bucket policies, except that public and cross-account access within any public bucket policy, including non-public delegation to specific accounts, is blocked. - /// [Input("restrictPublicBuckets")] public Input? RestrictPublicBuckets { get; set; } diff --git a/sdk/dotnet/S3/Inputs/BucketQueueConfigurationArgs.cs b/sdk/dotnet/S3/Inputs/BucketQueueConfigurationArgs.cs index fcc88cd08a..eaf9f3f7e8 100644 --- a/sdk/dotnet/S3/Inputs/BucketQueueConfigurationArgs.cs +++ b/sdk/dotnet/S3/Inputs/BucketQueueConfigurationArgs.cs @@ -10,26 +10,14 @@ namespace Pulumi.AwsNative.S3.Inputs { - /// - /// The Amazon Simple Queue Service queues to publish messages to and the events for which to publish messages. - /// public sealed class BucketQueueConfigurationArgs : global::Pulumi.ResourceArgs { - /// - /// The Amazon S3 bucket event about which you want to publish messages to Amazon SQS. - /// [Input("event", required: true)] public Input Event { get; set; } = null!; - /// - /// The filtering rules that determine which objects trigger notifications. - /// [Input("filter")] public Input? Filter { get; set; } - /// - /// The Amazon Resource Name (ARN) of the Amazon SQS queue to which Amazon S3 publishes a message when it detects events of the specified type. - /// [Input("queue", required: true)] public Input Queue { get; set; } = null!; diff --git a/sdk/dotnet/S3/Inputs/BucketRedirectAllRequestsToArgs.cs b/sdk/dotnet/S3/Inputs/BucketRedirectAllRequestsToArgs.cs index 6217717209..8bd5fc0459 100644 --- a/sdk/dotnet/S3/Inputs/BucketRedirectAllRequestsToArgs.cs +++ b/sdk/dotnet/S3/Inputs/BucketRedirectAllRequestsToArgs.cs @@ -10,22 +10,13 @@ namespace Pulumi.AwsNative.S3.Inputs { - /// - /// Specifies the redirect behavior of all requests to a website endpoint of an Amazon S3 bucket. - /// public sealed class BucketRedirectAllRequestsToArgs : global::Pulumi.ResourceArgs { - /// - /// Name of the host where requests are redirected. - /// [Input("hostName", required: true)] public Input HostName { get; set; } = null!; - /// - /// Protocol to use when redirecting requests. The default is the protocol that is used in the original request. - /// [Input("protocol")] - public Input? Protocol { get; set; } + public Input? Protocol { get; set; } public BucketRedirectAllRequestsToArgs() { diff --git a/sdk/dotnet/S3/Inputs/BucketRedirectRuleArgs.cs b/sdk/dotnet/S3/Inputs/BucketRedirectRuleArgs.cs index e7adedf65d..d2dc3d1a98 100644 --- a/sdk/dotnet/S3/Inputs/BucketRedirectRuleArgs.cs +++ b/sdk/dotnet/S3/Inputs/BucketRedirectRuleArgs.cs @@ -10,38 +10,20 @@ namespace Pulumi.AwsNative.S3.Inputs { - /// - /// Specifies how requests are redirected. In the event of an error, you can specify a different error code to return. - /// public sealed class BucketRedirectRuleArgs : global::Pulumi.ResourceArgs { - /// - /// The host name to use in the redirect request. - /// [Input("hostName")] public Input? HostName { get; set; } - /// - /// The HTTP redirect code to use on the response. Not required if one of the siblings is present. - /// [Input("httpRedirectCode")] public Input? HttpRedirectCode { get; set; } - /// - /// Protocol to use when redirecting requests. The default is the protocol that is used in the original request. - /// [Input("protocol")] - public Input? Protocol { get; set; } + public Input? Protocol { get; set; } - /// - /// The object key prefix to use in the redirect request. - /// [Input("replaceKeyPrefixWith")] public Input? ReplaceKeyPrefixWith { get; set; } - /// - /// The specific object key to use in the redirect request.d - /// [Input("replaceKeyWith")] public Input? ReplaceKeyWith { get; set; } diff --git a/sdk/dotnet/S3/Inputs/BucketReplicaModificationsArgs.cs b/sdk/dotnet/S3/Inputs/BucketReplicaModificationsArgs.cs index 0f966dcfd7..877e222fa4 100644 --- a/sdk/dotnet/S3/Inputs/BucketReplicaModificationsArgs.cs +++ b/sdk/dotnet/S3/Inputs/BucketReplicaModificationsArgs.cs @@ -12,11 +12,8 @@ namespace Pulumi.AwsNative.S3.Inputs public sealed class BucketReplicaModificationsArgs : global::Pulumi.ResourceArgs { - /// - /// Specifies whether Amazon S3 replicates modifications on replicas. - /// [Input("status", required: true)] - public Input Status { get; set; } = null!; + public Input Status { get; set; } = null!; public BucketReplicaModificationsArgs() { diff --git a/sdk/dotnet/S3/Inputs/BucketReplicationConfigurationArgs.cs b/sdk/dotnet/S3/Inputs/BucketReplicationConfigurationArgs.cs index 97db7e76a7..b330b771c0 100644 --- a/sdk/dotnet/S3/Inputs/BucketReplicationConfigurationArgs.cs +++ b/sdk/dotnet/S3/Inputs/BucketReplicationConfigurationArgs.cs @@ -10,23 +10,13 @@ namespace Pulumi.AwsNative.S3.Inputs { - /// - /// A container for replication rules. You can add up to 1,000 rules. The maximum size of a replication configuration is 2 MB. - /// public sealed class BucketReplicationConfigurationArgs : global::Pulumi.ResourceArgs { - /// - /// The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that Amazon S3 assumes when replicating objects. - /// [Input("role", required: true)] public Input Role { get; set; } = null!; [Input("rules", required: true)] private InputList? _rules; - - /// - /// A container for one or more replication rules. - /// public InputList Rules { get => _rules ?? (_rules = new InputList()); diff --git a/sdk/dotnet/S3/Inputs/BucketReplicationDestinationArgs.cs b/sdk/dotnet/S3/Inputs/BucketReplicationDestinationArgs.cs index 1d769c5910..8008e038bb 100644 --- a/sdk/dotnet/S3/Inputs/BucketReplicationDestinationArgs.cs +++ b/sdk/dotnet/S3/Inputs/BucketReplicationDestinationArgs.cs @@ -10,9 +10,6 @@ namespace Pulumi.AwsNative.S3.Inputs { - /// - /// Specifies which Amazon S3 bucket to store replicated objects in and their storage class. - /// public sealed class BucketReplicationDestinationArgs : global::Pulumi.ResourceArgs { [Input("accessControlTranslation")] @@ -33,11 +30,8 @@ public sealed class BucketReplicationDestinationArgs : global::Pulumi.ResourceAr [Input("replicationTime")] public Input? ReplicationTime { get; set; } - /// - /// The storage class to use when replicating objects, such as S3 Standard or reduced redundancy. - /// [Input("storageClass")] - public Input? StorageClass { get; set; } + public Input? StorageClass { get; set; } public BucketReplicationDestinationArgs() { diff --git a/sdk/dotnet/S3/Inputs/BucketReplicationRuleArgs.cs b/sdk/dotnet/S3/Inputs/BucketReplicationRuleArgs.cs index 829780baa8..e0a16205b2 100644 --- a/sdk/dotnet/S3/Inputs/BucketReplicationRuleArgs.cs +++ b/sdk/dotnet/S3/Inputs/BucketReplicationRuleArgs.cs @@ -10,9 +10,6 @@ namespace Pulumi.AwsNative.S3.Inputs { - /// - /// Specifies which Amazon S3 objects to replicate and where to store the replicas. - /// public sealed class BucketReplicationRuleArgs : global::Pulumi.ResourceArgs { [Input("deleteMarkerReplication")] @@ -24,15 +21,9 @@ public sealed class BucketReplicationRuleArgs : global::Pulumi.ResourceArgs [Input("filter")] public Input? Filter { get; set; } - /// - /// A unique identifier for the rule. - /// [Input("id")] public Input? Id { get; set; } - /// - /// An object key name prefix that identifies the object or objects to which the rule applies. - /// [Input("prefix")] public Input? Prefix { get; set; } @@ -42,11 +33,8 @@ public sealed class BucketReplicationRuleArgs : global::Pulumi.ResourceArgs [Input("sourceSelectionCriteria")] public Input? SourceSelectionCriteria { get; set; } - /// - /// Specifies whether the rule is enabled. - /// [Input("status", required: true)] - public Input Status { get; set; } = null!; + public Input Status { get; set; } = null!; public BucketReplicationRuleArgs() { diff --git a/sdk/dotnet/S3/Inputs/BucketReplicationTimeArgs.cs b/sdk/dotnet/S3/Inputs/BucketReplicationTimeArgs.cs index 9f38c9b053..3f1e68307e 100644 --- a/sdk/dotnet/S3/Inputs/BucketReplicationTimeArgs.cs +++ b/sdk/dotnet/S3/Inputs/BucketReplicationTimeArgs.cs @@ -13,7 +13,7 @@ namespace Pulumi.AwsNative.S3.Inputs public sealed class BucketReplicationTimeArgs : global::Pulumi.ResourceArgs { [Input("status", required: true)] - public Input Status { get; set; } = null!; + public Input Status { get; set; } = null!; [Input("time", required: true)] public Input Time { get; set; } = null!; diff --git a/sdk/dotnet/S3/Inputs/BucketRoutingRuleArgs.cs b/sdk/dotnet/S3/Inputs/BucketRoutingRuleArgs.cs index e11c8d3d56..0a54a26e8e 100644 --- a/sdk/dotnet/S3/Inputs/BucketRoutingRuleArgs.cs +++ b/sdk/dotnet/S3/Inputs/BucketRoutingRuleArgs.cs @@ -10,14 +10,8 @@ namespace Pulumi.AwsNative.S3.Inputs { - /// - /// Specifies the redirect behavior and when a redirect is applied. - /// public sealed class BucketRoutingRuleArgs : global::Pulumi.ResourceArgs { - /// - /// Container for redirect information. You can redirect requests to another host, to another page, or with another protocol. In the event of an error, you can specify a different error code to return. - /// [Input("redirectRule", required: true)] public Input RedirectRule { get; set; } = null!; diff --git a/sdk/dotnet/S3/Inputs/BucketRoutingRuleConditionArgs.cs b/sdk/dotnet/S3/Inputs/BucketRoutingRuleConditionArgs.cs index faff23983d..54478ee412 100644 --- a/sdk/dotnet/S3/Inputs/BucketRoutingRuleConditionArgs.cs +++ b/sdk/dotnet/S3/Inputs/BucketRoutingRuleConditionArgs.cs @@ -10,20 +10,11 @@ namespace Pulumi.AwsNative.S3.Inputs { - /// - /// A container for describing a condition that must be met for the specified redirect to apply.You must specify at least one of HttpErrorCodeReturnedEquals and KeyPrefixEquals - /// public sealed class BucketRoutingRuleConditionArgs : global::Pulumi.ResourceArgs { - /// - /// The HTTP error code when the redirect is applied. - /// [Input("httpErrorCodeReturnedEquals")] public Input? HttpErrorCodeReturnedEquals { get; set; } - /// - /// The object key name prefix when the redirect is applied. - /// [Input("keyPrefixEquals")] public Input? KeyPrefixEquals { get; set; } diff --git a/sdk/dotnet/S3/Inputs/BucketRuleArgs.cs b/sdk/dotnet/S3/Inputs/BucketRuleArgs.cs index 4e37776ffb..238bdec59c 100644 --- a/sdk/dotnet/S3/Inputs/BucketRuleArgs.cs +++ b/sdk/dotnet/S3/Inputs/BucketRuleArgs.cs @@ -10,9 +10,6 @@ namespace Pulumi.AwsNative.S3.Inputs { - /// - /// You must specify at least one of the following properties: AbortIncompleteMultipartUpload, ExpirationDate, ExpirationInDays, NoncurrentVersionExpirationInDays, NoncurrentVersionTransition, NoncurrentVersionTransitions, Transition, or Transitions. - /// public sealed class BucketRuleArgs : global::Pulumi.ResourceArgs { [Input("abortIncompleteMultipartUpload")] @@ -48,16 +45,16 @@ public InputList NoncurrentVersion } [Input("objectSizeGreaterThan")] - public Input? ObjectSizeGreaterThan { get; set; } + public Input? ObjectSizeGreaterThan { get; set; } [Input("objectSizeLessThan")] - public Input? ObjectSizeLessThan { get; set; } + public Input? ObjectSizeLessThan { get; set; } [Input("prefix")] public Input? Prefix { get; set; } [Input("status", required: true)] - public Input Status { get; set; } = null!; + public Input Status { get; set; } = null!; [Input("tagFilters")] private InputList? _tagFilters; diff --git a/sdk/dotnet/S3/Inputs/BucketS3KeyFilterArgs.cs b/sdk/dotnet/S3/Inputs/BucketS3KeyFilterArgs.cs index c691ddcc25..7d87efbecb 100644 --- a/sdk/dotnet/S3/Inputs/BucketS3KeyFilterArgs.cs +++ b/sdk/dotnet/S3/Inputs/BucketS3KeyFilterArgs.cs @@ -10,9 +10,6 @@ namespace Pulumi.AwsNative.S3.Inputs { - /// - /// A container for object key name prefix and suffix filtering rules. - /// public sealed class BucketS3KeyFilterArgs : global::Pulumi.ResourceArgs { [Input("rules", required: true)] diff --git a/sdk/dotnet/S3/Inputs/BucketServerSideEncryptionByDefaultArgs.cs b/sdk/dotnet/S3/Inputs/BucketServerSideEncryptionByDefaultArgs.cs index a2099b299f..c55fc37a7e 100644 --- a/sdk/dotnet/S3/Inputs/BucketServerSideEncryptionByDefaultArgs.cs +++ b/sdk/dotnet/S3/Inputs/BucketServerSideEncryptionByDefaultArgs.cs @@ -10,19 +10,13 @@ namespace Pulumi.AwsNative.S3.Inputs { - /// - /// Specifies the default server-side encryption to apply to new objects in the bucket. If a PUT Object request doesn't specify any server-side encryption, this default encryption will be applied. - /// public sealed class BucketServerSideEncryptionByDefaultArgs : global::Pulumi.ResourceArgs { - /// - /// "KMSMasterKeyID" can only be used when you set the value of SSEAlgorithm as aws:kms or aws:kms:dsse. - /// [Input("kmsMasterKeyId")] public Input? KmsMasterKeyId { get; set; } [Input("sseAlgorithm", required: true)] - public Input SseAlgorithm { get; set; } = null!; + public Input SseAlgorithm { get; set; } = null!; public BucketServerSideEncryptionByDefaultArgs() { diff --git a/sdk/dotnet/S3/Inputs/BucketServerSideEncryptionRuleArgs.cs b/sdk/dotnet/S3/Inputs/BucketServerSideEncryptionRuleArgs.cs index 5476d0814c..5137e32566 100644 --- a/sdk/dotnet/S3/Inputs/BucketServerSideEncryptionRuleArgs.cs +++ b/sdk/dotnet/S3/Inputs/BucketServerSideEncryptionRuleArgs.cs @@ -10,14 +10,8 @@ namespace Pulumi.AwsNative.S3.Inputs { - /// - /// Specifies the default server-side encryption configuration. - /// public sealed class BucketServerSideEncryptionRuleArgs : global::Pulumi.ResourceArgs { - /// - /// Specifies whether Amazon S3 should use an S3 Bucket Key with server-side encryption using KMS (SSE-KMS) for new objects in the bucket. Existing objects are not affected. Setting the BucketKeyEnabled element to true causes Amazon S3 to use an S3 Bucket Key. By default, S3 Bucket Key is not enabled. - /// [Input("bucketKeyEnabled")] public Input? BucketKeyEnabled { get; set; } diff --git a/sdk/dotnet/S3/Inputs/BucketSourceSelectionCriteriaArgs.cs b/sdk/dotnet/S3/Inputs/BucketSourceSelectionCriteriaArgs.cs index 62bea9955e..ecea24de51 100644 --- a/sdk/dotnet/S3/Inputs/BucketSourceSelectionCriteriaArgs.cs +++ b/sdk/dotnet/S3/Inputs/BucketSourceSelectionCriteriaArgs.cs @@ -10,20 +10,11 @@ namespace Pulumi.AwsNative.S3.Inputs { - /// - /// A container that describes additional filters for identifying the source objects that you want to replicate. - /// public sealed class BucketSourceSelectionCriteriaArgs : global::Pulumi.ResourceArgs { - /// - /// A filter that you can specify for selection for modifications on replicas. - /// [Input("replicaModifications")] public Input? ReplicaModifications { get; set; } - /// - /// A container for filter information for the selection of Amazon S3 objects encrypted with AWS KMS. - /// [Input("sseKmsEncryptedObjects")] public Input? SseKmsEncryptedObjects { get; set; } diff --git a/sdk/dotnet/S3/Inputs/BucketSseKmsEncryptedObjectsArgs.cs b/sdk/dotnet/S3/Inputs/BucketSseKmsEncryptedObjectsArgs.cs index 0125df57cc..f3dbae2a10 100644 --- a/sdk/dotnet/S3/Inputs/BucketSseKmsEncryptedObjectsArgs.cs +++ b/sdk/dotnet/S3/Inputs/BucketSseKmsEncryptedObjectsArgs.cs @@ -10,16 +10,10 @@ namespace Pulumi.AwsNative.S3.Inputs { - /// - /// A container for filter information for the selection of S3 objects encrypted with AWS KMS. - /// public sealed class BucketSseKmsEncryptedObjectsArgs : global::Pulumi.ResourceArgs { - /// - /// Specifies whether Amazon S3 replicates objects created with server-side encryption using a customer master key (CMK) stored in AWS Key Management Service. - /// [Input("status", required: true)] - public Input Status { get; set; } = null!; + public Input Status { get; set; } = null!; public BucketSseKmsEncryptedObjectsArgs() { diff --git a/sdk/dotnet/S3/Inputs/BucketStorageClassAnalysisArgs.cs b/sdk/dotnet/S3/Inputs/BucketStorageClassAnalysisArgs.cs index 28320c51a5..6257e178e9 100644 --- a/sdk/dotnet/S3/Inputs/BucketStorageClassAnalysisArgs.cs +++ b/sdk/dotnet/S3/Inputs/BucketStorageClassAnalysisArgs.cs @@ -10,9 +10,6 @@ namespace Pulumi.AwsNative.S3.Inputs { - /// - /// Specifies data related to access patterns to be collected and made available to analyze the tradeoffs between different storage classes for an Amazon S3 bucket. - /// public sealed class BucketStorageClassAnalysisArgs : global::Pulumi.ResourceArgs { [Input("dataExport")] diff --git a/sdk/dotnet/S3/Inputs/BucketTagFilterArgs.cs b/sdk/dotnet/S3/Inputs/BucketTagFilterArgs.cs index 334c735cb5..a8c64e00c2 100644 --- a/sdk/dotnet/S3/Inputs/BucketTagFilterArgs.cs +++ b/sdk/dotnet/S3/Inputs/BucketTagFilterArgs.cs @@ -10,9 +10,6 @@ namespace Pulumi.AwsNative.S3.Inputs { - /// - /// Tags to use to identify a subset of objects for an Amazon S3 bucket. - /// public sealed class BucketTagFilterArgs : global::Pulumi.ResourceArgs { [Input("key", required: true)] diff --git a/sdk/dotnet/S3/Inputs/BucketTieringArgs.cs b/sdk/dotnet/S3/Inputs/BucketTieringArgs.cs index 65cdbf6aaa..d838a1b366 100644 --- a/sdk/dotnet/S3/Inputs/BucketTieringArgs.cs +++ b/sdk/dotnet/S3/Inputs/BucketTieringArgs.cs @@ -12,15 +12,9 @@ namespace Pulumi.AwsNative.S3.Inputs public sealed class BucketTieringArgs : global::Pulumi.ResourceArgs { - /// - /// S3 Intelligent-Tiering access tier. See Storage class for automatically optimizing frequently and infrequently accessed objects for a list of access tiers in the S3 Intelligent-Tiering storage class. - /// [Input("accessTier", required: true)] - public Input AccessTier { get; set; } = null!; + public Input AccessTier { get; set; } = null!; - /// - /// The number of consecutive days of no access after which an object will be eligible to be transitioned to the corresponding tier. The minimum number of days specified for Archive Access tier must be at least 90 days and Deep Archive Access tier must be at least 180 days. The maximum can be up to 2 years (730 days). - /// [Input("days", required: true)] public Input Days { get; set; } = null!; diff --git a/sdk/dotnet/S3/Inputs/BucketTopicConfigurationArgs.cs b/sdk/dotnet/S3/Inputs/BucketTopicConfigurationArgs.cs index 394b6ff10e..8a1a452194 100644 --- a/sdk/dotnet/S3/Inputs/BucketTopicConfigurationArgs.cs +++ b/sdk/dotnet/S3/Inputs/BucketTopicConfigurationArgs.cs @@ -10,26 +10,14 @@ namespace Pulumi.AwsNative.S3.Inputs { - /// - /// The topic to which notifications are sent and the events for which notifications are generated. - /// public sealed class BucketTopicConfigurationArgs : global::Pulumi.ResourceArgs { - /// - /// The Amazon S3 bucket event about which to send notifications. - /// [Input("event", required: true)] public Input Event { get; set; } = null!; - /// - /// The filtering rules that determine for which objects to send notifications. - /// [Input("filter")] public Input? Filter { get; set; } - /// - /// The Amazon Resource Name (ARN) of the Amazon SNS topic to which Amazon S3 publishes a message when it detects events of the specified type. - /// [Input("topic", required: true)] public Input Topic { get; set; } = null!; diff --git a/sdk/dotnet/S3/Inputs/BucketTransitionArgs.cs b/sdk/dotnet/S3/Inputs/BucketTransitionArgs.cs index 95989bdd18..35bb9a0666 100644 --- a/sdk/dotnet/S3/Inputs/BucketTransitionArgs.cs +++ b/sdk/dotnet/S3/Inputs/BucketTransitionArgs.cs @@ -10,13 +10,10 @@ namespace Pulumi.AwsNative.S3.Inputs { - /// - /// You must specify at least one of "TransitionDate" and "TransitionInDays" - /// public sealed class BucketTransitionArgs : global::Pulumi.ResourceArgs { [Input("storageClass", required: true)] - public Input StorageClass { get; set; } = null!; + public Input StorageClass { get; set; } = null!; [Input("transitionDate")] public Input? TransitionDate { get; set; } diff --git a/sdk/dotnet/S3/Inputs/BucketVersioningConfigurationArgs.cs b/sdk/dotnet/S3/Inputs/BucketVersioningConfigurationArgs.cs index f1c14d025a..b6a86d7d3e 100644 --- a/sdk/dotnet/S3/Inputs/BucketVersioningConfigurationArgs.cs +++ b/sdk/dotnet/S3/Inputs/BucketVersioningConfigurationArgs.cs @@ -10,16 +10,10 @@ namespace Pulumi.AwsNative.S3.Inputs { - /// - /// Describes the versioning state of an Amazon S3 bucket. - /// public sealed class BucketVersioningConfigurationArgs : global::Pulumi.ResourceArgs { - /// - /// The versioning state of the bucket. - /// [Input("status", required: true)] - public Input Status { get; set; } = null!; + public Input Status { get; set; } = null!; public BucketVersioningConfigurationArgs() { diff --git a/sdk/dotnet/S3/Inputs/BucketWebsiteConfigurationArgs.cs b/sdk/dotnet/S3/Inputs/BucketWebsiteConfigurationArgs.cs index eb2910aaf7..a159bcc703 100644 --- a/sdk/dotnet/S3/Inputs/BucketWebsiteConfigurationArgs.cs +++ b/sdk/dotnet/S3/Inputs/BucketWebsiteConfigurationArgs.cs @@ -10,20 +10,11 @@ namespace Pulumi.AwsNative.S3.Inputs { - /// - /// Specifies website configuration parameters for an Amazon S3 bucket. - /// public sealed class BucketWebsiteConfigurationArgs : global::Pulumi.ResourceArgs { - /// - /// The name of the error document for the website. - /// [Input("errorDocument")] public Input? ErrorDocument { get; set; } - /// - /// The name of the index document for the website. - /// [Input("indexDocument")] public Input? IndexDocument { get; set; } diff --git a/sdk/dotnet/S3/Outputs/BucketAbortIncompleteMultipartUpload.cs b/sdk/dotnet/S3/Outputs/BucketAbortIncompleteMultipartUpload.cs index e4832db4e6..3438941125 100644 --- a/sdk/dotnet/S3/Outputs/BucketAbortIncompleteMultipartUpload.cs +++ b/sdk/dotnet/S3/Outputs/BucketAbortIncompleteMultipartUpload.cs @@ -10,15 +10,9 @@ namespace Pulumi.AwsNative.S3.Outputs { - /// - /// Specifies the days since the initiation of an incomplete multipart upload that Amazon S3 will wait before permanently removing all parts of the upload. - /// [OutputType] public sealed class BucketAbortIncompleteMultipartUpload { - /// - /// Specifies the number of days after which Amazon S3 aborts an incomplete multipart upload. - /// public readonly int DaysAfterInitiation; [OutputConstructor] diff --git a/sdk/dotnet/S3/Outputs/BucketAccelerateConfiguration.cs b/sdk/dotnet/S3/Outputs/BucketAccelerateConfiguration.cs index 59b9f1951a..16e603fec5 100644 --- a/sdk/dotnet/S3/Outputs/BucketAccelerateConfiguration.cs +++ b/sdk/dotnet/S3/Outputs/BucketAccelerateConfiguration.cs @@ -13,13 +13,10 @@ namespace Pulumi.AwsNative.S3.Outputs [OutputType] public sealed class BucketAccelerateConfiguration { - /// - /// Configures the transfer acceleration state for an Amazon S3 bucket. - /// - public readonly Pulumi.AwsNative.S3.BucketAccelerateConfigurationAccelerationStatus AccelerationStatus; + public readonly string AccelerationStatus; [OutputConstructor] - private BucketAccelerateConfiguration(Pulumi.AwsNative.S3.BucketAccelerateConfigurationAccelerationStatus accelerationStatus) + private BucketAccelerateConfiguration(string accelerationStatus) { AccelerationStatus = accelerationStatus; } diff --git a/sdk/dotnet/S3/Outputs/BucketAccessControlTranslation.cs b/sdk/dotnet/S3/Outputs/BucketAccessControlTranslation.cs index 5c0b93bfcb..9332e06501 100644 --- a/sdk/dotnet/S3/Outputs/BucketAccessControlTranslation.cs +++ b/sdk/dotnet/S3/Outputs/BucketAccessControlTranslation.cs @@ -10,9 +10,6 @@ namespace Pulumi.AwsNative.S3.Outputs { - /// - /// Specify this only in a cross-account scenario (where source and destination bucket owners are not the same), and you want to change replica ownership to the AWS account that owns the destination bucket. If this is not specified in the replication configuration, the replicas are owned by same AWS account that owns the source object. - /// [OutputType] public sealed class BucketAccessControlTranslation { diff --git a/sdk/dotnet/S3/Outputs/BucketAnalyticsConfiguration.cs b/sdk/dotnet/S3/Outputs/BucketAnalyticsConfiguration.cs index 8bc493235f..702d35ffc8 100644 --- a/sdk/dotnet/S3/Outputs/BucketAnalyticsConfiguration.cs +++ b/sdk/dotnet/S3/Outputs/BucketAnalyticsConfiguration.cs @@ -10,19 +10,10 @@ namespace Pulumi.AwsNative.S3.Outputs { - /// - /// Specifies the configuration and any analyses for the analytics filter of an Amazon S3 bucket. - /// [OutputType] public sealed class BucketAnalyticsConfiguration { - /// - /// The ID that identifies the analytics configuration. - /// public readonly string Id; - /// - /// The prefix that an object must have to be included in the analytics results. - /// public readonly string? Prefix; public readonly Outputs.BucketStorageClassAnalysis StorageClassAnalysis; public readonly ImmutableArray TagFilters; diff --git a/sdk/dotnet/S3/Outputs/BucketCorsRule.cs b/sdk/dotnet/S3/Outputs/BucketCorsRule.cs index 2f1448ede8..14b54f47f3 100644 --- a/sdk/dotnet/S3/Outputs/BucketCorsRule.cs +++ b/sdk/dotnet/S3/Outputs/BucketCorsRule.cs @@ -10,42 +10,21 @@ namespace Pulumi.AwsNative.S3.Outputs { - /// - /// A set of origins and methods (cross-origin access that you want to allow). You can add up to 100 rules to the configuration. - /// [OutputType] public sealed class BucketCorsRule { - /// - /// Headers that are specified in the Access-Control-Request-Headers header. - /// public readonly ImmutableArray AllowedHeaders; - /// - /// An HTTP method that you allow the origin to execute. - /// - public readonly ImmutableArray AllowedMethods; - /// - /// One or more origins you want customers to be able to access the bucket from. - /// + public readonly ImmutableArray AllowedMethods; public readonly ImmutableArray AllowedOrigins; - /// - /// One or more headers in the response that you want customers to be able to access from their applications (for example, from a JavaScript XMLHttpRequest object). - /// public readonly ImmutableArray ExposedHeaders; - /// - /// A unique identifier for this rule. - /// public readonly string? Id; - /// - /// The time in seconds that your browser is to cache the preflight response for the specified resource. - /// public readonly int? MaxAge; [OutputConstructor] private BucketCorsRule( ImmutableArray allowedHeaders, - ImmutableArray allowedMethods, + ImmutableArray allowedMethods, ImmutableArray allowedOrigins, diff --git a/sdk/dotnet/S3/Outputs/BucketDataExport.cs b/sdk/dotnet/S3/Outputs/BucketDataExport.cs index c7307c8e43..03120a432b 100644 --- a/sdk/dotnet/S3/Outputs/BucketDataExport.cs +++ b/sdk/dotnet/S3/Outputs/BucketDataExport.cs @@ -10,16 +10,10 @@ namespace Pulumi.AwsNative.S3.Outputs { - /// - /// Specifies how data related to the storage class analysis for an Amazon S3 bucket should be exported. - /// [OutputType] public sealed class BucketDataExport { public readonly Outputs.BucketDestination Destination; - /// - /// The version of the output schema to use when exporting data. - /// public readonly string OutputSchemaVersion; [OutputConstructor] diff --git a/sdk/dotnet/S3/Outputs/BucketDefaultRetention.cs b/sdk/dotnet/S3/Outputs/BucketDefaultRetention.cs index d471230366..dcb06ffe83 100644 --- a/sdk/dotnet/S3/Outputs/BucketDefaultRetention.cs +++ b/sdk/dotnet/S3/Outputs/BucketDefaultRetention.cs @@ -10,21 +10,18 @@ namespace Pulumi.AwsNative.S3.Outputs { - /// - /// The default retention period that you want to apply to new objects placed in the specified bucket. - /// [OutputType] public sealed class BucketDefaultRetention { public readonly int? Days; - public readonly Pulumi.AwsNative.S3.BucketDefaultRetentionMode? Mode; + public readonly string? Mode; public readonly int? Years; [OutputConstructor] private BucketDefaultRetention( int? days, - Pulumi.AwsNative.S3.BucketDefaultRetentionMode? mode, + string? mode, int? years) { diff --git a/sdk/dotnet/S3/Outputs/BucketDeleteMarkerReplication.cs b/sdk/dotnet/S3/Outputs/BucketDeleteMarkerReplication.cs index a99dc975d1..5545c3c906 100644 --- a/sdk/dotnet/S3/Outputs/BucketDeleteMarkerReplication.cs +++ b/sdk/dotnet/S3/Outputs/BucketDeleteMarkerReplication.cs @@ -13,10 +13,10 @@ namespace Pulumi.AwsNative.S3.Outputs [OutputType] public sealed class BucketDeleteMarkerReplication { - public readonly Pulumi.AwsNative.S3.BucketDeleteMarkerReplicationStatus? Status; + public readonly string? Status; [OutputConstructor] - private BucketDeleteMarkerReplication(Pulumi.AwsNative.S3.BucketDeleteMarkerReplicationStatus? status) + private BucketDeleteMarkerReplication(string? status) { Status = status; } diff --git a/sdk/dotnet/S3/Outputs/BucketDestination.cs b/sdk/dotnet/S3/Outputs/BucketDestination.cs index 3dd0bcd8e8..1c004a785d 100644 --- a/sdk/dotnet/S3/Outputs/BucketDestination.cs +++ b/sdk/dotnet/S3/Outputs/BucketDestination.cs @@ -10,27 +10,12 @@ namespace Pulumi.AwsNative.S3.Outputs { - /// - /// Specifies information about where to publish analysis or configuration results for an Amazon S3 bucket and S3 Replication Time Control (S3 RTC). - /// [OutputType] public sealed class BucketDestination { - /// - /// The account ID that owns the destination S3 bucket. - /// public readonly string? BucketAccountId; - /// - /// The Amazon Resource Name (ARN) of the bucket to which data is exported. - /// public readonly string BucketArn; - /// - /// Specifies the file format used when exporting data to Amazon S3. - /// - public readonly Pulumi.AwsNative.S3.BucketDestinationFormat Format; - /// - /// The prefix to use when exporting data. The prefix is prepended to all results. - /// + public readonly string Format; public readonly string? Prefix; [OutputConstructor] @@ -39,7 +24,7 @@ private BucketDestination( string bucketArn, - Pulumi.AwsNative.S3.BucketDestinationFormat format, + string format, string? prefix) { diff --git a/sdk/dotnet/S3/Outputs/BucketEncryption.cs b/sdk/dotnet/S3/Outputs/BucketEncryption.cs index 0076e68fff..c4c73d3188 100644 --- a/sdk/dotnet/S3/Outputs/BucketEncryption.cs +++ b/sdk/dotnet/S3/Outputs/BucketEncryption.cs @@ -10,15 +10,9 @@ namespace Pulumi.AwsNative.S3.Outputs { - /// - /// Specifies default encryption for a bucket using server-side encryption with either Amazon S3-managed keys (SSE-S3) or AWS KMS-managed keys (SSE-KMS). - /// [OutputType] public sealed class BucketEncryption { - /// - /// Specifies the default server-side-encryption configuration. - /// public readonly ImmutableArray ServerSideEncryptionConfiguration; [OutputConstructor] diff --git a/sdk/dotnet/S3/Outputs/BucketEncryptionConfiguration.cs b/sdk/dotnet/S3/Outputs/BucketEncryptionConfiguration.cs index f6657b96b9..0ccc87b365 100644 --- a/sdk/dotnet/S3/Outputs/BucketEncryptionConfiguration.cs +++ b/sdk/dotnet/S3/Outputs/BucketEncryptionConfiguration.cs @@ -10,15 +10,9 @@ namespace Pulumi.AwsNative.S3.Outputs { - /// - /// Specifies encryption-related information for an Amazon S3 bucket that is a destination for replicated objects. - /// [OutputType] public sealed class BucketEncryptionConfiguration { - /// - /// Specifies the ID (Key ARN or Alias ARN) of the customer managed customer master key (CMK) stored in AWS Key Management Service (KMS) for the destination bucket. - /// public readonly string ReplicaKmsKeyId; [OutputConstructor] diff --git a/sdk/dotnet/S3/Outputs/BucketEventBridgeConfiguration.cs b/sdk/dotnet/S3/Outputs/BucketEventBridgeConfiguration.cs index d9d8294690..6024569016 100644 --- a/sdk/dotnet/S3/Outputs/BucketEventBridgeConfiguration.cs +++ b/sdk/dotnet/S3/Outputs/BucketEventBridgeConfiguration.cs @@ -10,19 +10,13 @@ namespace Pulumi.AwsNative.S3.Outputs { - /// - /// Describes the Amazon EventBridge notification configuration for an Amazon S3 bucket. - /// [OutputType] public sealed class BucketEventBridgeConfiguration { - /// - /// Specifies whether to send notifications to Amazon EventBridge when events occur in an Amazon S3 bucket. - /// - public readonly bool EventBridgeEnabled; + public readonly bool? EventBridgeEnabled; [OutputConstructor] - private BucketEventBridgeConfiguration(bool eventBridgeEnabled) + private BucketEventBridgeConfiguration(bool? eventBridgeEnabled) { EventBridgeEnabled = eventBridgeEnabled; } diff --git a/sdk/dotnet/S3/Outputs/BucketFilterRule.cs b/sdk/dotnet/S3/Outputs/BucketFilterRule.cs index aa622ae64e..c23bdcd613 100644 --- a/sdk/dotnet/S3/Outputs/BucketFilterRule.cs +++ b/sdk/dotnet/S3/Outputs/BucketFilterRule.cs @@ -10,9 +10,6 @@ namespace Pulumi.AwsNative.S3.Outputs { - /// - /// Specifies the Amazon S3 object key name to filter on and whether to filter on the suffix or prefix of the key name. - /// [OutputType] public sealed class BucketFilterRule { diff --git a/sdk/dotnet/S3/Outputs/BucketIntelligentTieringConfiguration.cs b/sdk/dotnet/S3/Outputs/BucketIntelligentTieringConfiguration.cs index 5f90ee15d8..2574363226 100644 --- a/sdk/dotnet/S3/Outputs/BucketIntelligentTieringConfiguration.cs +++ b/sdk/dotnet/S3/Outputs/BucketIntelligentTieringConfiguration.cs @@ -13,25 +13,10 @@ namespace Pulumi.AwsNative.S3.Outputs [OutputType] public sealed class BucketIntelligentTieringConfiguration { - /// - /// The ID used to identify the S3 Intelligent-Tiering configuration. - /// public readonly string Id; - /// - /// An object key name prefix that identifies the subset of objects to which the rule applies. - /// public readonly string? Prefix; - /// - /// Specifies the status of the configuration. - /// - public readonly Pulumi.AwsNative.S3.BucketIntelligentTieringConfigurationStatus Status; - /// - /// A container for a key-value pair. - /// + public readonly string Status; public readonly ImmutableArray TagFilters; - /// - /// Specifies a list of S3 Intelligent-Tiering storage class tiers in the configuration. At least one tier must be defined in the list. At most, you can specify two tiers in the list, one for each available AccessTier: ARCHIVE_ACCESS and DEEP_ARCHIVE_ACCESS. - /// public readonly ImmutableArray Tierings; [OutputConstructor] @@ -40,7 +25,7 @@ private BucketIntelligentTieringConfiguration( string? prefix, - Pulumi.AwsNative.S3.BucketIntelligentTieringConfigurationStatus status, + string status, ImmutableArray tagFilters, diff --git a/sdk/dotnet/S3/Outputs/BucketInventoryConfiguration.cs b/sdk/dotnet/S3/Outputs/BucketInventoryConfiguration.cs index a4e16151b8..8c1c43a237 100644 --- a/sdk/dotnet/S3/Outputs/BucketInventoryConfiguration.cs +++ b/sdk/dotnet/S3/Outputs/BucketInventoryConfiguration.cs @@ -14,30 +14,12 @@ namespace Pulumi.AwsNative.S3.Outputs public sealed class BucketInventoryConfiguration { public readonly Outputs.BucketDestination Destination; - /// - /// Specifies whether the inventory is enabled or disabled. - /// public readonly bool Enabled; - /// - /// The ID used to identify the inventory configuration. - /// public readonly string Id; - /// - /// Object versions to include in the inventory list. - /// - public readonly Pulumi.AwsNative.S3.BucketInventoryConfigurationIncludedObjectVersions IncludedObjectVersions; - /// - /// Contains the optional fields that are included in the inventory results. - /// - public readonly ImmutableArray OptionalFields; - /// - /// The prefix that is prepended to all inventory results. - /// + public readonly string IncludedObjectVersions; + public readonly ImmutableArray OptionalFields; public readonly string? Prefix; - /// - /// Specifies the schedule for generating inventory results. - /// - public readonly Pulumi.AwsNative.S3.BucketInventoryConfigurationScheduleFrequency ScheduleFrequency; + public readonly string ScheduleFrequency; [OutputConstructor] private BucketInventoryConfiguration( @@ -47,13 +29,13 @@ private BucketInventoryConfiguration( string id, - Pulumi.AwsNative.S3.BucketInventoryConfigurationIncludedObjectVersions includedObjectVersions, + string includedObjectVersions, - ImmutableArray optionalFields, + ImmutableArray optionalFields, string? prefix, - Pulumi.AwsNative.S3.BucketInventoryConfigurationScheduleFrequency scheduleFrequency) + string scheduleFrequency) { Destination = destination; Enabled = enabled; diff --git a/sdk/dotnet/S3/Outputs/BucketLambdaConfiguration.cs b/sdk/dotnet/S3/Outputs/BucketLambdaConfiguration.cs index b542037901..47865b5377 100644 --- a/sdk/dotnet/S3/Outputs/BucketLambdaConfiguration.cs +++ b/sdk/dotnet/S3/Outputs/BucketLambdaConfiguration.cs @@ -10,23 +10,11 @@ namespace Pulumi.AwsNative.S3.Outputs { - /// - /// Describes the AWS Lambda functions to invoke and the events for which to invoke them. - /// [OutputType] public sealed class BucketLambdaConfiguration { - /// - /// The Amazon S3 bucket event for which to invoke the AWS Lambda function. - /// public readonly string Event; - /// - /// The filtering rules that determine which objects invoke the AWS Lambda function. - /// public readonly Outputs.BucketNotificationFilter? Filter; - /// - /// The Amazon Resource Name (ARN) of the AWS Lambda function that Amazon S3 invokes when the specified event type occurs. - /// public readonly string Function; [OutputConstructor] diff --git a/sdk/dotnet/S3/Outputs/BucketLifecycleConfiguration.cs b/sdk/dotnet/S3/Outputs/BucketLifecycleConfiguration.cs index 23276cd011..cd5884607c 100644 --- a/sdk/dotnet/S3/Outputs/BucketLifecycleConfiguration.cs +++ b/sdk/dotnet/S3/Outputs/BucketLifecycleConfiguration.cs @@ -13,9 +13,6 @@ namespace Pulumi.AwsNative.S3.Outputs [OutputType] public sealed class BucketLifecycleConfiguration { - /// - /// A lifecycle rule for individual objects in an Amazon S3 bucket. - /// public readonly ImmutableArray Rules; [OutputConstructor] diff --git a/sdk/dotnet/S3/Outputs/BucketLoggingConfiguration.cs b/sdk/dotnet/S3/Outputs/BucketLoggingConfiguration.cs index 1378ba68ab..b5f7615fba 100644 --- a/sdk/dotnet/S3/Outputs/BucketLoggingConfiguration.cs +++ b/sdk/dotnet/S3/Outputs/BucketLoggingConfiguration.cs @@ -13,9 +13,6 @@ namespace Pulumi.AwsNative.S3.Outputs [OutputType] public sealed class BucketLoggingConfiguration { - /// - /// The name of an Amazon S3 bucket where Amazon S3 store server access log files. You can store log files in any bucket that you own. By default, logs are stored in the bucket where the LoggingConfiguration property is defined. - /// public readonly string? DestinationBucketName; public readonly string? LogFilePrefix; diff --git a/sdk/dotnet/S3/Outputs/BucketMetrics.cs b/sdk/dotnet/S3/Outputs/BucketMetrics.cs index 18945d9026..89f8b83afe 100644 --- a/sdk/dotnet/S3/Outputs/BucketMetrics.cs +++ b/sdk/dotnet/S3/Outputs/BucketMetrics.cs @@ -14,13 +14,13 @@ namespace Pulumi.AwsNative.S3.Outputs public sealed class BucketMetrics { public readonly Outputs.BucketReplicationTimeValue? EventThreshold; - public readonly Pulumi.AwsNative.S3.BucketMetricsStatus Status; + public readonly string Status; [OutputConstructor] private BucketMetrics( Outputs.BucketReplicationTimeValue? eventThreshold, - Pulumi.AwsNative.S3.BucketMetricsStatus status) + string status) { EventThreshold = eventThreshold; Status = status; diff --git a/sdk/dotnet/S3/Outputs/BucketNoncurrentVersionExpiration.cs b/sdk/dotnet/S3/Outputs/BucketNoncurrentVersionExpiration.cs index 34a3a0b20b..6127f8d66e 100644 --- a/sdk/dotnet/S3/Outputs/BucketNoncurrentVersionExpiration.cs +++ b/sdk/dotnet/S3/Outputs/BucketNoncurrentVersionExpiration.cs @@ -10,19 +10,10 @@ namespace Pulumi.AwsNative.S3.Outputs { - /// - /// Container for the expiration rule that describes when noncurrent objects are expired. If your bucket is versioning-enabled (or versioning is suspended), you can set this action to request that Amazon S3 expire noncurrent object versions at a specific period in the object's lifetime - /// [OutputType] public sealed class BucketNoncurrentVersionExpiration { - /// - /// Specified the number of newer noncurrent and current versions that must exists before performing the associated action - /// public readonly int? NewerNoncurrentVersions; - /// - /// Specified the number of days an object is noncurrent before Amazon S3 can perform the associated action - /// public readonly int NoncurrentDays; [OutputConstructor] diff --git a/sdk/dotnet/S3/Outputs/BucketNoncurrentVersionTransition.cs b/sdk/dotnet/S3/Outputs/BucketNoncurrentVersionTransition.cs index 468774dbbc..957754a319 100644 --- a/sdk/dotnet/S3/Outputs/BucketNoncurrentVersionTransition.cs +++ b/sdk/dotnet/S3/Outputs/BucketNoncurrentVersionTransition.cs @@ -10,30 +10,18 @@ namespace Pulumi.AwsNative.S3.Outputs { - /// - /// Container for the transition rule that describes when noncurrent objects transition to the STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER_IR, GLACIER, or DEEP_ARCHIVE storage class. If your bucket is versioning-enabled (or versioning is suspended), you can set this action to request that Amazon S3 transition noncurrent object versions to the STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER_IR, GLACIER, or DEEP_ARCHIVE storage class at a specific period in the object's lifetime. - /// [OutputType] public sealed class BucketNoncurrentVersionTransition { - /// - /// Specified the number of newer noncurrent and current versions that must exists before performing the associated action - /// public readonly int? NewerNoncurrentVersions; - /// - /// The class of storage used to store the object. - /// - public readonly Pulumi.AwsNative.S3.BucketNoncurrentVersionTransitionStorageClass StorageClass; - /// - /// Specifies the number of days an object is noncurrent before Amazon S3 can perform the associated action. - /// + public readonly string StorageClass; public readonly int TransitionInDays; [OutputConstructor] private BucketNoncurrentVersionTransition( int? newerNoncurrentVersions, - Pulumi.AwsNative.S3.BucketNoncurrentVersionTransitionStorageClass storageClass, + string storageClass, int transitionInDays) { diff --git a/sdk/dotnet/S3/Outputs/BucketNotificationConfiguration.cs b/sdk/dotnet/S3/Outputs/BucketNotificationConfiguration.cs index 99359bd634..6779b6c427 100644 --- a/sdk/dotnet/S3/Outputs/BucketNotificationConfiguration.cs +++ b/sdk/dotnet/S3/Outputs/BucketNotificationConfiguration.cs @@ -10,9 +10,6 @@ namespace Pulumi.AwsNative.S3.Outputs { - /// - /// Describes the notification configuration for an Amazon S3 bucket. - /// [OutputType] public sealed class BucketNotificationConfiguration { diff --git a/sdk/dotnet/S3/Outputs/BucketNotificationFilter.cs b/sdk/dotnet/S3/Outputs/BucketNotificationFilter.cs index ff0fed749e..255cba0254 100644 --- a/sdk/dotnet/S3/Outputs/BucketNotificationFilter.cs +++ b/sdk/dotnet/S3/Outputs/BucketNotificationFilter.cs @@ -10,9 +10,6 @@ namespace Pulumi.AwsNative.S3.Outputs { - /// - /// Specifies object key name filtering rules. - /// [OutputType] public sealed class BucketNotificationFilter { diff --git a/sdk/dotnet/S3/Outputs/BucketObjectLockRule.cs b/sdk/dotnet/S3/Outputs/BucketObjectLockRule.cs index 5c7478230a..eecb907ce2 100644 --- a/sdk/dotnet/S3/Outputs/BucketObjectLockRule.cs +++ b/sdk/dotnet/S3/Outputs/BucketObjectLockRule.cs @@ -10,9 +10,6 @@ namespace Pulumi.AwsNative.S3.Outputs { - /// - /// The Object Lock rule in place for the specified object. - /// [OutputType] public sealed class BucketObjectLockRule { diff --git a/sdk/dotnet/S3/Outputs/BucketOwnershipControlsRule.cs b/sdk/dotnet/S3/Outputs/BucketOwnershipControlsRule.cs index cdca980a65..41e8897cb0 100644 --- a/sdk/dotnet/S3/Outputs/BucketOwnershipControlsRule.cs +++ b/sdk/dotnet/S3/Outputs/BucketOwnershipControlsRule.cs @@ -13,13 +13,10 @@ namespace Pulumi.AwsNative.S3.Outputs [OutputType] public sealed class BucketOwnershipControlsRule { - /// - /// Specifies an object ownership rule. - /// - public readonly Pulumi.AwsNative.S3.BucketOwnershipControlsRuleObjectOwnership? ObjectOwnership; + public readonly string? ObjectOwnership; [OutputConstructor] - private BucketOwnershipControlsRule(Pulumi.AwsNative.S3.BucketOwnershipControlsRuleObjectOwnership? objectOwnership) + private BucketOwnershipControlsRule(string? objectOwnership) { ObjectOwnership = objectOwnership; } diff --git a/sdk/dotnet/S3/Outputs/BucketPublicAccessBlockConfiguration.cs b/sdk/dotnet/S3/Outputs/BucketPublicAccessBlockConfiguration.cs index 1691e68fd9..3e7ef36447 100644 --- a/sdk/dotnet/S3/Outputs/BucketPublicAccessBlockConfiguration.cs +++ b/sdk/dotnet/S3/Outputs/BucketPublicAccessBlockConfiguration.cs @@ -10,33 +10,12 @@ namespace Pulumi.AwsNative.S3.Outputs { - /// - /// Configuration that defines how Amazon S3 handles public access. - /// [OutputType] public sealed class BucketPublicAccessBlockConfiguration { - /// - /// Specifies whether Amazon S3 should block public access control lists (ACLs) for this bucket and objects in this bucket. Setting this element to TRUE causes the following behavior: - /// - PUT Bucket acl and PUT Object acl calls fail if the specified ACL is public. - /// - PUT Object calls fail if the request includes a public ACL. - /// Enabling this setting doesn't affect existing policies or ACLs. - /// public readonly bool? BlockPublicAcls; - /// - /// Specifies whether Amazon S3 should block public bucket policies for this bucket. Setting this element to TRUE causes Amazon S3 to reject calls to PUT Bucket policy if the specified bucket policy allows public access. - /// Enabling this setting doesn't affect existing bucket policies. - /// public readonly bool? BlockPublicPolicy; - /// - /// Specifies whether Amazon S3 should ignore public ACLs for this bucket and objects in this bucket. Setting this element to TRUE causes Amazon S3 to ignore all public ACLs on this bucket and objects in this bucket. - /// Enabling this setting doesn't affect the persistence of any existing ACLs and doesn't prevent new public ACLs from being set. - /// public readonly bool? IgnorePublicAcls; - /// - /// Specifies whether Amazon S3 should restrict public bucket policies for this bucket. Setting this element to TRUE restricts access to this bucket to only AWS services and authorized users within this account if the bucket has a public policy. - /// Enabling this setting doesn't affect previously stored bucket policies, except that public and cross-account access within any public bucket policy, including non-public delegation to specific accounts, is blocked. - /// public readonly bool? RestrictPublicBuckets; [OutputConstructor] diff --git a/sdk/dotnet/S3/Outputs/BucketQueueConfiguration.cs b/sdk/dotnet/S3/Outputs/BucketQueueConfiguration.cs index 223e6d2048..b3368e1b3d 100644 --- a/sdk/dotnet/S3/Outputs/BucketQueueConfiguration.cs +++ b/sdk/dotnet/S3/Outputs/BucketQueueConfiguration.cs @@ -10,23 +10,11 @@ namespace Pulumi.AwsNative.S3.Outputs { - /// - /// The Amazon Simple Queue Service queues to publish messages to and the events for which to publish messages. - /// [OutputType] public sealed class BucketQueueConfiguration { - /// - /// The Amazon S3 bucket event about which you want to publish messages to Amazon SQS. - /// public readonly string Event; - /// - /// The filtering rules that determine which objects trigger notifications. - /// public readonly Outputs.BucketNotificationFilter? Filter; - /// - /// The Amazon Resource Name (ARN) of the Amazon SQS queue to which Amazon S3 publishes a message when it detects events of the specified type. - /// public readonly string Queue; [OutputConstructor] diff --git a/sdk/dotnet/S3/Outputs/BucketRedirectAllRequestsTo.cs b/sdk/dotnet/S3/Outputs/BucketRedirectAllRequestsTo.cs index 539017f3e7..33bfe8f927 100644 --- a/sdk/dotnet/S3/Outputs/BucketRedirectAllRequestsTo.cs +++ b/sdk/dotnet/S3/Outputs/BucketRedirectAllRequestsTo.cs @@ -10,26 +10,17 @@ namespace Pulumi.AwsNative.S3.Outputs { - /// - /// Specifies the redirect behavior of all requests to a website endpoint of an Amazon S3 bucket. - /// [OutputType] public sealed class BucketRedirectAllRequestsTo { - /// - /// Name of the host where requests are redirected. - /// public readonly string HostName; - /// - /// Protocol to use when redirecting requests. The default is the protocol that is used in the original request. - /// - public readonly Pulumi.AwsNative.S3.BucketRedirectAllRequestsToProtocol? Protocol; + public readonly string? Protocol; [OutputConstructor] private BucketRedirectAllRequestsTo( string hostName, - Pulumi.AwsNative.S3.BucketRedirectAllRequestsToProtocol? protocol) + string? protocol) { HostName = hostName; Protocol = protocol; diff --git a/sdk/dotnet/S3/Outputs/BucketRedirectRule.cs b/sdk/dotnet/S3/Outputs/BucketRedirectRule.cs index 3a91bd5c1b..a1ba4fb49b 100644 --- a/sdk/dotnet/S3/Outputs/BucketRedirectRule.cs +++ b/sdk/dotnet/S3/Outputs/BucketRedirectRule.cs @@ -10,31 +10,13 @@ namespace Pulumi.AwsNative.S3.Outputs { - /// - /// Specifies how requests are redirected. In the event of an error, you can specify a different error code to return. - /// [OutputType] public sealed class BucketRedirectRule { - /// - /// The host name to use in the redirect request. - /// public readonly string? HostName; - /// - /// The HTTP redirect code to use on the response. Not required if one of the siblings is present. - /// public readonly string? HttpRedirectCode; - /// - /// Protocol to use when redirecting requests. The default is the protocol that is used in the original request. - /// - public readonly Pulumi.AwsNative.S3.BucketRedirectRuleProtocol? Protocol; - /// - /// The object key prefix to use in the redirect request. - /// + public readonly string? Protocol; public readonly string? ReplaceKeyPrefixWith; - /// - /// The specific object key to use in the redirect request.d - /// public readonly string? ReplaceKeyWith; [OutputConstructor] @@ -43,7 +25,7 @@ private BucketRedirectRule( string? httpRedirectCode, - Pulumi.AwsNative.S3.BucketRedirectRuleProtocol? protocol, + string? protocol, string? replaceKeyPrefixWith, diff --git a/sdk/dotnet/S3/Outputs/BucketReplicaModifications.cs b/sdk/dotnet/S3/Outputs/BucketReplicaModifications.cs index 8209edef5c..73e786f48e 100644 --- a/sdk/dotnet/S3/Outputs/BucketReplicaModifications.cs +++ b/sdk/dotnet/S3/Outputs/BucketReplicaModifications.cs @@ -13,13 +13,10 @@ namespace Pulumi.AwsNative.S3.Outputs [OutputType] public sealed class BucketReplicaModifications { - /// - /// Specifies whether Amazon S3 replicates modifications on replicas. - /// - public readonly Pulumi.AwsNative.S3.BucketReplicaModificationsStatus Status; + public readonly string Status; [OutputConstructor] - private BucketReplicaModifications(Pulumi.AwsNative.S3.BucketReplicaModificationsStatus status) + private BucketReplicaModifications(string status) { Status = status; } diff --git a/sdk/dotnet/S3/Outputs/BucketReplicationConfiguration.cs b/sdk/dotnet/S3/Outputs/BucketReplicationConfiguration.cs index 028d4c9a1f..cc1a98f1f9 100644 --- a/sdk/dotnet/S3/Outputs/BucketReplicationConfiguration.cs +++ b/sdk/dotnet/S3/Outputs/BucketReplicationConfiguration.cs @@ -10,19 +10,10 @@ namespace Pulumi.AwsNative.S3.Outputs { - /// - /// A container for replication rules. You can add up to 1,000 rules. The maximum size of a replication configuration is 2 MB. - /// [OutputType] public sealed class BucketReplicationConfiguration { - /// - /// The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that Amazon S3 assumes when replicating objects. - /// public readonly string Role; - /// - /// A container for one or more replication rules. - /// public readonly ImmutableArray Rules; [OutputConstructor] diff --git a/sdk/dotnet/S3/Outputs/BucketReplicationDestination.cs b/sdk/dotnet/S3/Outputs/BucketReplicationDestination.cs index 804ee0196c..b85cd8940c 100644 --- a/sdk/dotnet/S3/Outputs/BucketReplicationDestination.cs +++ b/sdk/dotnet/S3/Outputs/BucketReplicationDestination.cs @@ -10,9 +10,6 @@ namespace Pulumi.AwsNative.S3.Outputs { - /// - /// Specifies which Amazon S3 bucket to store replicated objects in and their storage class. - /// [OutputType] public sealed class BucketReplicationDestination { @@ -22,10 +19,7 @@ public sealed class BucketReplicationDestination public readonly Outputs.BucketEncryptionConfiguration? EncryptionConfiguration; public readonly Outputs.BucketMetrics? Metrics; public readonly Outputs.BucketReplicationTime? ReplicationTime; - /// - /// The storage class to use when replicating objects, such as S3 Standard or reduced redundancy. - /// - public readonly Pulumi.AwsNative.S3.BucketReplicationDestinationStorageClass? StorageClass; + public readonly string? StorageClass; [OutputConstructor] private BucketReplicationDestination( @@ -41,7 +35,7 @@ private BucketReplicationDestination( Outputs.BucketReplicationTime? replicationTime, - Pulumi.AwsNative.S3.BucketReplicationDestinationStorageClass? storageClass) + string? storageClass) { AccessControlTranslation = accessControlTranslation; Account = account; diff --git a/sdk/dotnet/S3/Outputs/BucketReplicationRule.cs b/sdk/dotnet/S3/Outputs/BucketReplicationRule.cs index 30a0cbf3f9..88ef8d6ed9 100644 --- a/sdk/dotnet/S3/Outputs/BucketReplicationRule.cs +++ b/sdk/dotnet/S3/Outputs/BucketReplicationRule.cs @@ -10,29 +10,17 @@ namespace Pulumi.AwsNative.S3.Outputs { - /// - /// Specifies which Amazon S3 objects to replicate and where to store the replicas. - /// [OutputType] public sealed class BucketReplicationRule { public readonly Outputs.BucketDeleteMarkerReplication? DeleteMarkerReplication; public readonly Outputs.BucketReplicationDestination Destination; public readonly Outputs.BucketReplicationRuleFilter? Filter; - /// - /// A unique identifier for the rule. - /// public readonly string? Id; - /// - /// An object key name prefix that identifies the object or objects to which the rule applies. - /// public readonly string? Prefix; public readonly int? Priority; public readonly Outputs.BucketSourceSelectionCriteria? SourceSelectionCriteria; - /// - /// Specifies whether the rule is enabled. - /// - public readonly Pulumi.AwsNative.S3.BucketReplicationRuleStatus Status; + public readonly string Status; [OutputConstructor] private BucketReplicationRule( @@ -50,7 +38,7 @@ private BucketReplicationRule( Outputs.BucketSourceSelectionCriteria? sourceSelectionCriteria, - Pulumi.AwsNative.S3.BucketReplicationRuleStatus status) + string status) { DeleteMarkerReplication = deleteMarkerReplication; Destination = destination; diff --git a/sdk/dotnet/S3/Outputs/BucketReplicationTime.cs b/sdk/dotnet/S3/Outputs/BucketReplicationTime.cs index 06437230f5..ddefcd288b 100644 --- a/sdk/dotnet/S3/Outputs/BucketReplicationTime.cs +++ b/sdk/dotnet/S3/Outputs/BucketReplicationTime.cs @@ -13,12 +13,12 @@ namespace Pulumi.AwsNative.S3.Outputs [OutputType] public sealed class BucketReplicationTime { - public readonly Pulumi.AwsNative.S3.BucketReplicationTimeStatus Status; + public readonly string Status; public readonly Outputs.BucketReplicationTimeValue Time; [OutputConstructor] private BucketReplicationTime( - Pulumi.AwsNative.S3.BucketReplicationTimeStatus status, + string status, Outputs.BucketReplicationTimeValue time) { diff --git a/sdk/dotnet/S3/Outputs/BucketRoutingRule.cs b/sdk/dotnet/S3/Outputs/BucketRoutingRule.cs index eb808651a1..a67ca0dc5b 100644 --- a/sdk/dotnet/S3/Outputs/BucketRoutingRule.cs +++ b/sdk/dotnet/S3/Outputs/BucketRoutingRule.cs @@ -10,15 +10,9 @@ namespace Pulumi.AwsNative.S3.Outputs { - /// - /// Specifies the redirect behavior and when a redirect is applied. - /// [OutputType] public sealed class BucketRoutingRule { - /// - /// Container for redirect information. You can redirect requests to another host, to another page, or with another protocol. In the event of an error, you can specify a different error code to return. - /// public readonly Outputs.BucketRedirectRule RedirectRule; public readonly Outputs.BucketRoutingRuleCondition? RoutingRuleCondition; diff --git a/sdk/dotnet/S3/Outputs/BucketRoutingRuleCondition.cs b/sdk/dotnet/S3/Outputs/BucketRoutingRuleCondition.cs index ca96421cad..f805cf587f 100644 --- a/sdk/dotnet/S3/Outputs/BucketRoutingRuleCondition.cs +++ b/sdk/dotnet/S3/Outputs/BucketRoutingRuleCondition.cs @@ -10,19 +10,10 @@ namespace Pulumi.AwsNative.S3.Outputs { - /// - /// A container for describing a condition that must be met for the specified redirect to apply.You must specify at least one of HttpErrorCodeReturnedEquals and KeyPrefixEquals - /// [OutputType] public sealed class BucketRoutingRuleCondition { - /// - /// The HTTP error code when the redirect is applied. - /// public readonly string? HttpErrorCodeReturnedEquals; - /// - /// The object key name prefix when the redirect is applied. - /// public readonly string? KeyPrefixEquals; [OutputConstructor] diff --git a/sdk/dotnet/S3/Outputs/BucketRule.cs b/sdk/dotnet/S3/Outputs/BucketRule.cs index 66c00c175d..c16b2b58be 100644 --- a/sdk/dotnet/S3/Outputs/BucketRule.cs +++ b/sdk/dotnet/S3/Outputs/BucketRule.cs @@ -10,9 +10,6 @@ namespace Pulumi.AwsNative.S3.Outputs { - /// - /// You must specify at least one of the following properties: AbortIncompleteMultipartUpload, ExpirationDate, ExpirationInDays, NoncurrentVersionExpirationInDays, NoncurrentVersionTransition, NoncurrentVersionTransitions, Transition, or Transitions. - /// [OutputType] public sealed class BucketRule { @@ -25,10 +22,10 @@ public sealed class BucketRule public readonly int? NoncurrentVersionExpirationInDays; public readonly Outputs.BucketNoncurrentVersionTransition? NoncurrentVersionTransition; public readonly ImmutableArray NoncurrentVersionTransitions; - public readonly string? ObjectSizeGreaterThan; - public readonly string? ObjectSizeLessThan; + public readonly int? ObjectSizeGreaterThan; + public readonly int? ObjectSizeLessThan; public readonly string? Prefix; - public readonly Pulumi.AwsNative.S3.BucketRuleStatus Status; + public readonly string Status; public readonly ImmutableArray TagFilters; public readonly Outputs.BucketTransition? Transition; public readonly ImmutableArray Transitions; @@ -53,13 +50,13 @@ private BucketRule( ImmutableArray noncurrentVersionTransitions, - string? objectSizeGreaterThan, + int? objectSizeGreaterThan, - string? objectSizeLessThan, + int? objectSizeLessThan, string? prefix, - Pulumi.AwsNative.S3.BucketRuleStatus status, + string status, ImmutableArray tagFilters, diff --git a/sdk/dotnet/S3/Outputs/BucketS3KeyFilter.cs b/sdk/dotnet/S3/Outputs/BucketS3KeyFilter.cs index 9bcfacb749..2cf6aa2dd7 100644 --- a/sdk/dotnet/S3/Outputs/BucketS3KeyFilter.cs +++ b/sdk/dotnet/S3/Outputs/BucketS3KeyFilter.cs @@ -10,9 +10,6 @@ namespace Pulumi.AwsNative.S3.Outputs { - /// - /// A container for object key name prefix and suffix filtering rules. - /// [OutputType] public sealed class BucketS3KeyFilter { diff --git a/sdk/dotnet/S3/Outputs/BucketServerSideEncryptionByDefault.cs b/sdk/dotnet/S3/Outputs/BucketServerSideEncryptionByDefault.cs index 7d2934a76a..ead8f0bff8 100644 --- a/sdk/dotnet/S3/Outputs/BucketServerSideEncryptionByDefault.cs +++ b/sdk/dotnet/S3/Outputs/BucketServerSideEncryptionByDefault.cs @@ -10,23 +10,17 @@ namespace Pulumi.AwsNative.S3.Outputs { - /// - /// Specifies the default server-side encryption to apply to new objects in the bucket. If a PUT Object request doesn't specify any server-side encryption, this default encryption will be applied. - /// [OutputType] public sealed class BucketServerSideEncryptionByDefault { - /// - /// "KMSMasterKeyID" can only be used when you set the value of SSEAlgorithm as aws:kms or aws:kms:dsse. - /// public readonly string? KmsMasterKeyId; - public readonly Pulumi.AwsNative.S3.BucketServerSideEncryptionByDefaultSseAlgorithm SseAlgorithm; + public readonly string SseAlgorithm; [OutputConstructor] private BucketServerSideEncryptionByDefault( string? kmsMasterKeyId, - Pulumi.AwsNative.S3.BucketServerSideEncryptionByDefaultSseAlgorithm sseAlgorithm) + string sseAlgorithm) { KmsMasterKeyId = kmsMasterKeyId; SseAlgorithm = sseAlgorithm; diff --git a/sdk/dotnet/S3/Outputs/BucketServerSideEncryptionRule.cs b/sdk/dotnet/S3/Outputs/BucketServerSideEncryptionRule.cs index 20e1721bf2..da9dd1b84a 100644 --- a/sdk/dotnet/S3/Outputs/BucketServerSideEncryptionRule.cs +++ b/sdk/dotnet/S3/Outputs/BucketServerSideEncryptionRule.cs @@ -10,15 +10,9 @@ namespace Pulumi.AwsNative.S3.Outputs { - /// - /// Specifies the default server-side encryption configuration. - /// [OutputType] public sealed class BucketServerSideEncryptionRule { - /// - /// Specifies whether Amazon S3 should use an S3 Bucket Key with server-side encryption using KMS (SSE-KMS) for new objects in the bucket. Existing objects are not affected. Setting the BucketKeyEnabled element to true causes Amazon S3 to use an S3 Bucket Key. By default, S3 Bucket Key is not enabled. - /// public readonly bool? BucketKeyEnabled; public readonly Outputs.BucketServerSideEncryptionByDefault? ServerSideEncryptionByDefault; diff --git a/sdk/dotnet/S3/Outputs/BucketSourceSelectionCriteria.cs b/sdk/dotnet/S3/Outputs/BucketSourceSelectionCriteria.cs index ec8eb61e7f..59e6c3fd4b 100644 --- a/sdk/dotnet/S3/Outputs/BucketSourceSelectionCriteria.cs +++ b/sdk/dotnet/S3/Outputs/BucketSourceSelectionCriteria.cs @@ -10,19 +10,10 @@ namespace Pulumi.AwsNative.S3.Outputs { - /// - /// A container that describes additional filters for identifying the source objects that you want to replicate. - /// [OutputType] public sealed class BucketSourceSelectionCriteria { - /// - /// A filter that you can specify for selection for modifications on replicas. - /// public readonly Outputs.BucketReplicaModifications? ReplicaModifications; - /// - /// A container for filter information for the selection of Amazon S3 objects encrypted with AWS KMS. - /// public readonly Outputs.BucketSseKmsEncryptedObjects? SseKmsEncryptedObjects; [OutputConstructor] diff --git a/sdk/dotnet/S3/Outputs/BucketSseKmsEncryptedObjects.cs b/sdk/dotnet/S3/Outputs/BucketSseKmsEncryptedObjects.cs index 9f0e5a363f..67a451fb34 100644 --- a/sdk/dotnet/S3/Outputs/BucketSseKmsEncryptedObjects.cs +++ b/sdk/dotnet/S3/Outputs/BucketSseKmsEncryptedObjects.cs @@ -10,19 +10,13 @@ namespace Pulumi.AwsNative.S3.Outputs { - /// - /// A container for filter information for the selection of S3 objects encrypted with AWS KMS. - /// [OutputType] public sealed class BucketSseKmsEncryptedObjects { - /// - /// Specifies whether Amazon S3 replicates objects created with server-side encryption using a customer master key (CMK) stored in AWS Key Management Service. - /// - public readonly Pulumi.AwsNative.S3.BucketSseKmsEncryptedObjectsStatus Status; + public readonly string Status; [OutputConstructor] - private BucketSseKmsEncryptedObjects(Pulumi.AwsNative.S3.BucketSseKmsEncryptedObjectsStatus status) + private BucketSseKmsEncryptedObjects(string status) { Status = status; } diff --git a/sdk/dotnet/S3/Outputs/BucketStorageClassAnalysis.cs b/sdk/dotnet/S3/Outputs/BucketStorageClassAnalysis.cs index d2f37e7d4c..b3d856a685 100644 --- a/sdk/dotnet/S3/Outputs/BucketStorageClassAnalysis.cs +++ b/sdk/dotnet/S3/Outputs/BucketStorageClassAnalysis.cs @@ -10,9 +10,6 @@ namespace Pulumi.AwsNative.S3.Outputs { - /// - /// Specifies data related to access patterns to be collected and made available to analyze the tradeoffs between different storage classes for an Amazon S3 bucket. - /// [OutputType] public sealed class BucketStorageClassAnalysis { diff --git a/sdk/dotnet/S3/Outputs/BucketTagFilter.cs b/sdk/dotnet/S3/Outputs/BucketTagFilter.cs index b1943b2c66..fc48da2ea6 100644 --- a/sdk/dotnet/S3/Outputs/BucketTagFilter.cs +++ b/sdk/dotnet/S3/Outputs/BucketTagFilter.cs @@ -10,9 +10,6 @@ namespace Pulumi.AwsNative.S3.Outputs { - /// - /// Tags to use to identify a subset of objects for an Amazon S3 bucket. - /// [OutputType] public sealed class BucketTagFilter { diff --git a/sdk/dotnet/S3/Outputs/BucketTiering.cs b/sdk/dotnet/S3/Outputs/BucketTiering.cs index db0503f6c7..5a216f323b 100644 --- a/sdk/dotnet/S3/Outputs/BucketTiering.cs +++ b/sdk/dotnet/S3/Outputs/BucketTiering.cs @@ -13,18 +13,12 @@ namespace Pulumi.AwsNative.S3.Outputs [OutputType] public sealed class BucketTiering { - /// - /// S3 Intelligent-Tiering access tier. See Storage class for automatically optimizing frequently and infrequently accessed objects for a list of access tiers in the S3 Intelligent-Tiering storage class. - /// - public readonly Pulumi.AwsNative.S3.BucketTieringAccessTier AccessTier; - /// - /// The number of consecutive days of no access after which an object will be eligible to be transitioned to the corresponding tier. The minimum number of days specified for Archive Access tier must be at least 90 days and Deep Archive Access tier must be at least 180 days. The maximum can be up to 2 years (730 days). - /// + public readonly string AccessTier; public readonly int Days; [OutputConstructor] private BucketTiering( - Pulumi.AwsNative.S3.BucketTieringAccessTier accessTier, + string accessTier, int days) { diff --git a/sdk/dotnet/S3/Outputs/BucketTopicConfiguration.cs b/sdk/dotnet/S3/Outputs/BucketTopicConfiguration.cs index 3e5b240e91..fe55e4ea6c 100644 --- a/sdk/dotnet/S3/Outputs/BucketTopicConfiguration.cs +++ b/sdk/dotnet/S3/Outputs/BucketTopicConfiguration.cs @@ -10,23 +10,11 @@ namespace Pulumi.AwsNative.S3.Outputs { - /// - /// The topic to which notifications are sent and the events for which notifications are generated. - /// [OutputType] public sealed class BucketTopicConfiguration { - /// - /// The Amazon S3 bucket event about which to send notifications. - /// public readonly string Event; - /// - /// The filtering rules that determine for which objects to send notifications. - /// public readonly Outputs.BucketNotificationFilter? Filter; - /// - /// The Amazon Resource Name (ARN) of the Amazon SNS topic to which Amazon S3 publishes a message when it detects events of the specified type. - /// public readonly string Topic; [OutputConstructor] diff --git a/sdk/dotnet/S3/Outputs/BucketTransition.cs b/sdk/dotnet/S3/Outputs/BucketTransition.cs index 99718a000b..4bb0d7a466 100644 --- a/sdk/dotnet/S3/Outputs/BucketTransition.cs +++ b/sdk/dotnet/S3/Outputs/BucketTransition.cs @@ -10,19 +10,16 @@ namespace Pulumi.AwsNative.S3.Outputs { - /// - /// You must specify at least one of "TransitionDate" and "TransitionInDays" - /// [OutputType] public sealed class BucketTransition { - public readonly Pulumi.AwsNative.S3.BucketTransitionStorageClass StorageClass; + public readonly string StorageClass; public readonly string? TransitionDate; public readonly int? TransitionInDays; [OutputConstructor] private BucketTransition( - Pulumi.AwsNative.S3.BucketTransitionStorageClass storageClass, + string storageClass, string? transitionDate, diff --git a/sdk/dotnet/S3/Outputs/BucketVersioningConfiguration.cs b/sdk/dotnet/S3/Outputs/BucketVersioningConfiguration.cs index e8564d14d5..90bb8b0fa7 100644 --- a/sdk/dotnet/S3/Outputs/BucketVersioningConfiguration.cs +++ b/sdk/dotnet/S3/Outputs/BucketVersioningConfiguration.cs @@ -10,19 +10,13 @@ namespace Pulumi.AwsNative.S3.Outputs { - /// - /// Describes the versioning state of an Amazon S3 bucket. - /// [OutputType] public sealed class BucketVersioningConfiguration { - /// - /// The versioning state of the bucket. - /// - public readonly Pulumi.AwsNative.S3.BucketVersioningConfigurationStatus Status; + public readonly string Status; [OutputConstructor] - private BucketVersioningConfiguration(Pulumi.AwsNative.S3.BucketVersioningConfigurationStatus status) + private BucketVersioningConfiguration(string status) { Status = status; } diff --git a/sdk/dotnet/S3/Outputs/BucketWebsiteConfiguration.cs b/sdk/dotnet/S3/Outputs/BucketWebsiteConfiguration.cs index 7aa0a97fe1..bc65ad9285 100644 --- a/sdk/dotnet/S3/Outputs/BucketWebsiteConfiguration.cs +++ b/sdk/dotnet/S3/Outputs/BucketWebsiteConfiguration.cs @@ -10,19 +10,10 @@ namespace Pulumi.AwsNative.S3.Outputs { - /// - /// Specifies website configuration parameters for an Amazon S3 bucket. - /// [OutputType] public sealed class BucketWebsiteConfiguration { - /// - /// The name of the error document for the website. - /// public readonly string? ErrorDocument; - /// - /// The name of the index document for the website. - /// public readonly string? IndexDocument; public readonly Outputs.BucketRedirectAllRequestsTo? RedirectAllRequestsTo; public readonly ImmutableArray RoutingRules; diff --git a/sdk/dotnet/SageMaker/Inputs/DataQualityJobDefinitionBatchTransformInputArgs.cs b/sdk/dotnet/SageMaker/Inputs/DataQualityJobDefinitionBatchTransformInputArgs.cs index f45bfc5103..d097d78a48 100644 --- a/sdk/dotnet/SageMaker/Inputs/DataQualityJobDefinitionBatchTransformInputArgs.cs +++ b/sdk/dotnet/SageMaker/Inputs/DataQualityJobDefinitionBatchTransformInputArgs.cs @@ -24,6 +24,12 @@ public sealed class DataQualityJobDefinitionBatchTransformInputArgs : global::Pu [Input("datasetFormat", required: true)] public Input DatasetFormat { get; set; } = null!; + /// + /// Indexes or names of the features to be excluded from analysis + /// + [Input("excludeFeaturesAttribute")] + public Input? ExcludeFeaturesAttribute { get; set; } + /// /// Path to the filesystem where the endpoint data is available to the container. /// diff --git a/sdk/dotnet/SageMaker/Inputs/DataQualityJobDefinitionEndpointInputArgs.cs b/sdk/dotnet/SageMaker/Inputs/DataQualityJobDefinitionEndpointInputArgs.cs index 36af32b27d..1e5e9df155 100644 --- a/sdk/dotnet/SageMaker/Inputs/DataQualityJobDefinitionEndpointInputArgs.cs +++ b/sdk/dotnet/SageMaker/Inputs/DataQualityJobDefinitionEndpointInputArgs.cs @@ -18,6 +18,12 @@ public sealed class DataQualityJobDefinitionEndpointInputArgs : global::Pulumi.R [Input("endpointName", required: true)] public Input EndpointName { get; set; } = null!; + /// + /// Indexes or names of the features to be excluded from analysis + /// + [Input("excludeFeaturesAttribute")] + public Input? ExcludeFeaturesAttribute { get; set; } + /// /// Path to the filesystem where the endpoint data is available to the container. /// diff --git a/sdk/dotnet/SageMaker/Inputs/MonitoringScheduleBatchTransformInputArgs.cs b/sdk/dotnet/SageMaker/Inputs/MonitoringScheduleBatchTransformInputArgs.cs index cb6199145d..0cacdf318a 100644 --- a/sdk/dotnet/SageMaker/Inputs/MonitoringScheduleBatchTransformInputArgs.cs +++ b/sdk/dotnet/SageMaker/Inputs/MonitoringScheduleBatchTransformInputArgs.cs @@ -24,6 +24,12 @@ public sealed class MonitoringScheduleBatchTransformInputArgs : global::Pulumi.R [Input("datasetFormat", required: true)] public Input DatasetFormat { get; set; } = null!; + /// + /// Indexes or names of the features to be excluded from analysis + /// + [Input("excludeFeaturesAttribute")] + public Input? ExcludeFeaturesAttribute { get; set; } + /// /// Path to the filesystem where the endpoint data is available to the container. /// diff --git a/sdk/dotnet/SageMaker/Inputs/MonitoringScheduleEndpointInputArgs.cs b/sdk/dotnet/SageMaker/Inputs/MonitoringScheduleEndpointInputArgs.cs index b7ed7dc3d4..ac24c66577 100644 --- a/sdk/dotnet/SageMaker/Inputs/MonitoringScheduleEndpointInputArgs.cs +++ b/sdk/dotnet/SageMaker/Inputs/MonitoringScheduleEndpointInputArgs.cs @@ -18,6 +18,12 @@ public sealed class MonitoringScheduleEndpointInputArgs : global::Pulumi.Resourc [Input("endpointName", required: true)] public Input EndpointName { get; set; } = null!; + /// + /// Indexes or names of the features to be excluded from analysis + /// + [Input("excludeFeaturesAttribute")] + public Input? ExcludeFeaturesAttribute { get; set; } + /// /// Path to the filesystem where the endpoint data is available to the container. /// diff --git a/sdk/dotnet/SageMaker/Inputs/MonitoringScheduleScheduleConfigArgs.cs b/sdk/dotnet/SageMaker/Inputs/MonitoringScheduleScheduleConfigArgs.cs index 17b1f4c967..268c515675 100644 --- a/sdk/dotnet/SageMaker/Inputs/MonitoringScheduleScheduleConfigArgs.cs +++ b/sdk/dotnet/SageMaker/Inputs/MonitoringScheduleScheduleConfigArgs.cs @@ -16,7 +16,19 @@ namespace Pulumi.AwsNative.SageMaker.Inputs public sealed class MonitoringScheduleScheduleConfigArgs : global::Pulumi.ResourceArgs { /// - /// A cron expression that describes details about the monitoring schedule. + /// Data Analysis end time, e.g. PT0H + /// + [Input("dataAnalysisEndTime")] + public Input? DataAnalysisEndTime { get; set; } + + /// + /// Data Analysis start time, e.g. -PT1H + /// + [Input("dataAnalysisStartTime")] + public Input? DataAnalysisStartTime { get; set; } + + /// + /// A cron expression or 'NOW' that describes details about the monitoring schedule. /// [Input("scheduleExpression", required: true)] public Input ScheduleExpression { get; set; } = null!; diff --git a/sdk/dotnet/SageMaker/Outputs/DataQualityJobDefinitionBatchTransformInput.cs b/sdk/dotnet/SageMaker/Outputs/DataQualityJobDefinitionBatchTransformInput.cs index d691bf7790..8a9619f7cb 100644 --- a/sdk/dotnet/SageMaker/Outputs/DataQualityJobDefinitionBatchTransformInput.cs +++ b/sdk/dotnet/SageMaker/Outputs/DataQualityJobDefinitionBatchTransformInput.cs @@ -22,6 +22,10 @@ public sealed class DataQualityJobDefinitionBatchTransformInput public readonly string DataCapturedDestinationS3Uri; public readonly Outputs.DataQualityJobDefinitionDatasetFormat DatasetFormat; /// + /// Indexes or names of the features to be excluded from analysis + /// + public readonly string? ExcludeFeaturesAttribute; + /// /// Path to the filesystem where the endpoint data is available to the container. /// public readonly string LocalPath; @@ -40,6 +44,8 @@ private DataQualityJobDefinitionBatchTransformInput( Outputs.DataQualityJobDefinitionDatasetFormat datasetFormat, + string? excludeFeaturesAttribute, + string localPath, Pulumi.AwsNative.SageMaker.DataQualityJobDefinitionBatchTransformInputS3DataDistributionType? s3DataDistributionType, @@ -48,6 +54,7 @@ private DataQualityJobDefinitionBatchTransformInput( { DataCapturedDestinationS3Uri = dataCapturedDestinationS3Uri; DatasetFormat = datasetFormat; + ExcludeFeaturesAttribute = excludeFeaturesAttribute; LocalPath = localPath; S3DataDistributionType = s3DataDistributionType; S3InputMode = s3InputMode; diff --git a/sdk/dotnet/SageMaker/Outputs/DataQualityJobDefinitionEndpointInput.cs b/sdk/dotnet/SageMaker/Outputs/DataQualityJobDefinitionEndpointInput.cs index 91ba0a573e..34f1deb022 100644 --- a/sdk/dotnet/SageMaker/Outputs/DataQualityJobDefinitionEndpointInput.cs +++ b/sdk/dotnet/SageMaker/Outputs/DataQualityJobDefinitionEndpointInput.cs @@ -18,6 +18,10 @@ public sealed class DataQualityJobDefinitionEndpointInput { public readonly string EndpointName; /// + /// Indexes or names of the features to be excluded from analysis + /// + public readonly string? ExcludeFeaturesAttribute; + /// /// Path to the filesystem where the endpoint data is available to the container. /// public readonly string LocalPath; @@ -34,6 +38,8 @@ public sealed class DataQualityJobDefinitionEndpointInput private DataQualityJobDefinitionEndpointInput( string endpointName, + string? excludeFeaturesAttribute, + string localPath, Pulumi.AwsNative.SageMaker.DataQualityJobDefinitionEndpointInputS3DataDistributionType? s3DataDistributionType, @@ -41,6 +47,7 @@ private DataQualityJobDefinitionEndpointInput( Pulumi.AwsNative.SageMaker.DataQualityJobDefinitionEndpointInputS3InputMode? s3InputMode) { EndpointName = endpointName; + ExcludeFeaturesAttribute = excludeFeaturesAttribute; LocalPath = localPath; S3DataDistributionType = s3DataDistributionType; S3InputMode = s3InputMode; diff --git a/sdk/dotnet/SageMaker/Outputs/MonitoringScheduleBatchTransformInput.cs b/sdk/dotnet/SageMaker/Outputs/MonitoringScheduleBatchTransformInput.cs index 109f961356..d9f15be4b0 100644 --- a/sdk/dotnet/SageMaker/Outputs/MonitoringScheduleBatchTransformInput.cs +++ b/sdk/dotnet/SageMaker/Outputs/MonitoringScheduleBatchTransformInput.cs @@ -22,6 +22,10 @@ public sealed class MonitoringScheduleBatchTransformInput public readonly string DataCapturedDestinationS3Uri; public readonly Outputs.MonitoringScheduleDatasetFormat DatasetFormat; /// + /// Indexes or names of the features to be excluded from analysis + /// + public readonly string? ExcludeFeaturesAttribute; + /// /// Path to the filesystem where the endpoint data is available to the container. /// public readonly string LocalPath; @@ -40,6 +44,8 @@ private MonitoringScheduleBatchTransformInput( Outputs.MonitoringScheduleDatasetFormat datasetFormat, + string? excludeFeaturesAttribute, + string localPath, Pulumi.AwsNative.SageMaker.MonitoringScheduleBatchTransformInputS3DataDistributionType? s3DataDistributionType, @@ -48,6 +54,7 @@ private MonitoringScheduleBatchTransformInput( { DataCapturedDestinationS3Uri = dataCapturedDestinationS3Uri; DatasetFormat = datasetFormat; + ExcludeFeaturesAttribute = excludeFeaturesAttribute; LocalPath = localPath; S3DataDistributionType = s3DataDistributionType; S3InputMode = s3InputMode; diff --git a/sdk/dotnet/SageMaker/Outputs/MonitoringScheduleEndpointInput.cs b/sdk/dotnet/SageMaker/Outputs/MonitoringScheduleEndpointInput.cs index d22d5c00ba..724b2aed42 100644 --- a/sdk/dotnet/SageMaker/Outputs/MonitoringScheduleEndpointInput.cs +++ b/sdk/dotnet/SageMaker/Outputs/MonitoringScheduleEndpointInput.cs @@ -18,6 +18,10 @@ public sealed class MonitoringScheduleEndpointInput { public readonly string EndpointName; /// + /// Indexes or names of the features to be excluded from analysis + /// + public readonly string? ExcludeFeaturesAttribute; + /// /// Path to the filesystem where the endpoint data is available to the container. /// public readonly string LocalPath; @@ -34,6 +38,8 @@ public sealed class MonitoringScheduleEndpointInput private MonitoringScheduleEndpointInput( string endpointName, + string? excludeFeaturesAttribute, + string localPath, Pulumi.AwsNative.SageMaker.MonitoringScheduleEndpointInputS3DataDistributionType? s3DataDistributionType, @@ -41,6 +47,7 @@ private MonitoringScheduleEndpointInput( Pulumi.AwsNative.SageMaker.MonitoringScheduleEndpointInputS3InputMode? s3InputMode) { EndpointName = endpointName; + ExcludeFeaturesAttribute = excludeFeaturesAttribute; LocalPath = localPath; S3DataDistributionType = s3DataDistributionType; S3InputMode = s3InputMode; diff --git a/sdk/dotnet/SageMaker/Outputs/MonitoringScheduleScheduleConfig.cs b/sdk/dotnet/SageMaker/Outputs/MonitoringScheduleScheduleConfig.cs index 983a930d78..a6c21219b9 100644 --- a/sdk/dotnet/SageMaker/Outputs/MonitoringScheduleScheduleConfig.cs +++ b/sdk/dotnet/SageMaker/Outputs/MonitoringScheduleScheduleConfig.cs @@ -17,13 +17,28 @@ namespace Pulumi.AwsNative.SageMaker.Outputs public sealed class MonitoringScheduleScheduleConfig { /// - /// A cron expression that describes details about the monitoring schedule. + /// Data Analysis end time, e.g. PT0H + /// + public readonly string? DataAnalysisEndTime; + /// + /// Data Analysis start time, e.g. -PT1H + /// + public readonly string? DataAnalysisStartTime; + /// + /// A cron expression or 'NOW' that describes details about the monitoring schedule. /// public readonly string ScheduleExpression; [OutputConstructor] - private MonitoringScheduleScheduleConfig(string scheduleExpression) + private MonitoringScheduleScheduleConfig( + string? dataAnalysisEndTime, + + string? dataAnalysisStartTime, + + string scheduleExpression) { + DataAnalysisEndTime = dataAnalysisEndTime; + DataAnalysisStartTime = dataAnalysisStartTime; ScheduleExpression = scheduleExpression; } } diff --git a/sdk/dotnet/ServiceCatalogAppRegistry/GetAttributeGroupAssociation.cs b/sdk/dotnet/ServiceCatalogAppRegistry/GetAttributeGroupAssociation.cs index 33300fff57..9d9de96001 100644 --- a/sdk/dotnet/ServiceCatalogAppRegistry/GetAttributeGroupAssociation.cs +++ b/sdk/dotnet/ServiceCatalogAppRegistry/GetAttributeGroupAssociation.cs @@ -27,8 +27,11 @@ public static Output Invoke(GetAttributeGrou public sealed class GetAttributeGroupAssociationArgs : global::Pulumi.InvokeArgs { - [Input("id", required: true)] - public string Id { get; set; } = null!; + [Input("applicationArn", required: true)] + public string ApplicationArn { get; set; } = null!; + + [Input("attributeGroupArn", required: true)] + public string AttributeGroupArn { get; set; } = null!; public GetAttributeGroupAssociationArgs() { @@ -38,8 +41,11 @@ public GetAttributeGroupAssociationArgs() public sealed class GetAttributeGroupAssociationInvokeArgs : global::Pulumi.InvokeArgs { - [Input("id", required: true)] - public Input Id { get; set; } = null!; + [Input("applicationArn", required: true)] + public Input ApplicationArn { get; set; } = null!; + + [Input("attributeGroupArn", required: true)] + public Input AttributeGroupArn { get; set; } = null!; public GetAttributeGroupAssociationInvokeArgs() { @@ -53,19 +59,15 @@ public sealed class GetAttributeGroupAssociationResult { public readonly string? ApplicationArn; public readonly string? AttributeGroupArn; - public readonly string? Id; [OutputConstructor] private GetAttributeGroupAssociationResult( string? applicationArn, - string? attributeGroupArn, - - string? id) + string? attributeGroupArn) { ApplicationArn = applicationArn; AttributeGroupArn = attributeGroupArn; - Id = id; } } } diff --git a/sdk/dotnet/ServiceCatalogAppRegistry/GetResourceAssociation.cs b/sdk/dotnet/ServiceCatalogAppRegistry/GetResourceAssociation.cs index 5bbc98c832..06e5605d0d 100644 --- a/sdk/dotnet/ServiceCatalogAppRegistry/GetResourceAssociation.cs +++ b/sdk/dotnet/ServiceCatalogAppRegistry/GetResourceAssociation.cs @@ -27,8 +27,17 @@ public static Output Invoke(GetResourceAssociation public sealed class GetResourceAssociationArgs : global::Pulumi.InvokeArgs { - [Input("id", required: true)] - public string Id { get; set; } = null!; + [Input("applicationArn", required: true)] + public string ApplicationArn { get; set; } = null!; + + [Input("resourceArn", required: true)] + public string ResourceArn { get; set; } = null!; + + /// + /// The type of the CFN Resource for now it's enum CFN_STACK. + /// + [Input("resourceType", required: true)] + public Pulumi.AwsNative.ServiceCatalogAppRegistry.ResourceAssociationResourceType ResourceType { get; set; } public GetResourceAssociationArgs() { @@ -38,8 +47,17 @@ public GetResourceAssociationArgs() public sealed class GetResourceAssociationInvokeArgs : global::Pulumi.InvokeArgs { - [Input("id", required: true)] - public Input Id { get; set; } = null!; + [Input("applicationArn", required: true)] + public Input ApplicationArn { get; set; } = null!; + + [Input("resourceArn", required: true)] + public Input ResourceArn { get; set; } = null!; + + /// + /// The type of the CFN Resource for now it's enum CFN_STACK. + /// + [Input("resourceType", required: true)] + public Input ResourceType { get; set; } = null!; public GetResourceAssociationInvokeArgs() { @@ -52,19 +70,15 @@ public GetResourceAssociationInvokeArgs() public sealed class GetResourceAssociationResult { public readonly string? ApplicationArn; - public readonly string? Id; public readonly string? ResourceArn; [OutputConstructor] private GetResourceAssociationResult( string? applicationArn, - string? id, - string? resourceArn) { ApplicationArn = applicationArn; - Id = id; ResourceArn = resourceArn; } } diff --git a/sdk/dotnet/Sns/GetTopic.cs b/sdk/dotnet/Sns/GetTopic.cs index 095d5fd39c..373898f306 100644 --- a/sdk/dotnet/Sns/GetTopic.cs +++ b/sdk/dotnet/Sns/GetTopic.cs @@ -51,6 +51,10 @@ public GetTopicInvokeArgs() [OutputType] public sealed class GetTopicResult { + /// + /// The archive policy determines the number of days Amazon SNS retains messages. You can set a retention period from 1 to 365 days. + /// + public readonly object? ArchivePolicy; /// /// Enables content-based deduplication for FIFO topics. By default, ContentBasedDeduplication is set to false. If you create a FIFO topic and this attribute is false, you must specify a value for the MessageDeduplicationId parameter for the Publish action. /// @@ -96,6 +100,8 @@ public sealed class GetTopicResult [OutputConstructor] private GetTopicResult( + object? archivePolicy, + bool? contentBasedDeduplication, object? dataProtectionPolicy, @@ -114,6 +120,7 @@ private GetTopicResult( string? tracingConfig) { + ArchivePolicy = archivePolicy; ContentBasedDeduplication = contentBasedDeduplication; DataProtectionPolicy = dataProtectionPolicy; DisplayName = displayName; diff --git a/sdk/dotnet/Sns/Topic.cs b/sdk/dotnet/Sns/Topic.cs index 39fa1e7158..4de1039413 100644 --- a/sdk/dotnet/Sns/Topic.cs +++ b/sdk/dotnet/Sns/Topic.cs @@ -15,6 +15,12 @@ namespace Pulumi.AwsNative.Sns [AwsNativeResourceType("aws-native:sns:Topic")] public partial class Topic : global::Pulumi.CustomResource { + /// + /// The archive policy determines the number of days Amazon SNS retains messages. You can set a retention period from 1 to 365 days. + /// + [Output("archivePolicy")] + public Output ArchivePolicy { get; private set; } = null!; + /// /// Enables content-based deduplication for FIFO topics. By default, ContentBasedDeduplication is set to false. If you create a FIFO topic and this attribute is false, you must specify a value for the MessageDeduplicationId parameter for the Publish action. /// @@ -139,6 +145,12 @@ public static Topic Get(string name, Input id, CustomResourceOptions? op public sealed class TopicArgs : global::Pulumi.ResourceArgs { + /// + /// The archive policy determines the number of days Amazon SNS retains messages. You can set a retention period from 1 to 365 days. + /// + [Input("archivePolicy")] + public Input? ArchivePolicy { get; set; } + /// /// Enables content-based deduplication for FIFO topics. By default, ContentBasedDeduplication is set to false. If you create a FIFO topic and this attribute is false, you must specify a value for the MessageDeduplicationId parameter for the Publish action. /// diff --git a/sdk/dotnet/Sqs/GetQueuePolicy.cs b/sdk/dotnet/Sqs/GetQueuePolicy.cs index 8c103a63b0..67ae795009 100644 --- a/sdk/dotnet/Sqs/GetQueuePolicy.cs +++ b/sdk/dotnet/Sqs/GetQueuePolicy.cs @@ -12,13 +12,13 @@ namespace Pulumi.AwsNative.Sqs public static class GetQueuePolicy { /// - /// Resource Type definition for AWS::SQS::QueuePolicy + /// The ``AWS::SQS::QueuePolicy`` type applies a policy to SQS queues. For an example snippet, see [Declaring an policy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-iam.html#scenario-sqs-policy) in the *User Guide*. /// public static Task InvokeAsync(GetQueuePolicyArgs args, InvokeOptions? options = null) => global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:sqs:getQueuePolicy", args ?? new GetQueuePolicyArgs(), options.WithDefaults()); /// - /// Resource Type definition for AWS::SQS::QueuePolicy + /// The ``AWS::SQS::QueuePolicy`` type applies a policy to SQS queues. For an example snippet, see [Declaring an policy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-iam.html#scenario-sqs-policy) in the *User Guide*. /// public static Output Invoke(GetQueuePolicyInvokeArgs args, InvokeOptions? options = null) => global::Pulumi.Deployment.Instance.Invoke("aws-native:sqs:getQueuePolicy", args ?? new GetQueuePolicyInvokeArgs(), options.WithDefaults()); @@ -62,11 +62,11 @@ public sealed class GetQueuePolicyResult /// public readonly string? Id; /// - /// A policy document that contains the permissions for the specified Amazon SQS queues. For more information about Amazon SQS policies, see Creating Custom Policies Using the Access Policy Language in the Amazon Simple Queue Service Developer Guide. + /// A policy document that contains the permissions for the specified SQS queues. For more information about SQS policies, see [Using custom policies with the access policy language](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-creating-custom-policies.html) in the *Developer Guide*. /// public readonly object? PolicyDocument; /// - /// The URLs of the queues to which you want to add the policy. You can use the Ref function to specify an AWS::SQS::Queue resource. + /// The URLs of the queues to which you want to add the policy. You can use the ``Ref`` function to specify an ``AWS::SQS::Queue`` resource. /// public readonly ImmutableArray Queues; diff --git a/sdk/dotnet/Sqs/QueuePolicy.cs b/sdk/dotnet/Sqs/QueuePolicy.cs index c9fef58ddd..e724e729b7 100644 --- a/sdk/dotnet/Sqs/QueuePolicy.cs +++ b/sdk/dotnet/Sqs/QueuePolicy.cs @@ -10,20 +10,20 @@ namespace Pulumi.AwsNative.Sqs { /// - /// Resource Type definition for AWS::SQS::QueuePolicy + /// The ``AWS::SQS::QueuePolicy`` type applies a policy to SQS queues. For an example snippet, see [Declaring an policy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-iam.html#scenario-sqs-policy) in the *User Guide*. /// [Obsolete(@"QueuePolicy is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.")] [AwsNativeResourceType("aws-native:sqs:QueuePolicy")] public partial class QueuePolicy : global::Pulumi.CustomResource { /// - /// A policy document that contains the permissions for the specified Amazon SQS queues. For more information about Amazon SQS policies, see Creating Custom Policies Using the Access Policy Language in the Amazon Simple Queue Service Developer Guide. + /// A policy document that contains the permissions for the specified SQS queues. For more information about SQS policies, see [Using custom policies with the access policy language](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-creating-custom-policies.html) in the *Developer Guide*. /// [Output("policyDocument")] public Output PolicyDocument { get; private set; } = null!; /// - /// The URLs of the queues to which you want to add the policy. You can use the Ref function to specify an AWS::SQS::Queue resource. + /// The URLs of the queues to which you want to add the policy. You can use the ``Ref`` function to specify an ``AWS::SQS::Queue`` resource. /// [Output("queues")] public Output> Queues { get; private set; } = null!; @@ -74,7 +74,7 @@ public static QueuePolicy Get(string name, Input id, CustomResourceOptio public sealed class QueuePolicyArgs : global::Pulumi.ResourceArgs { /// - /// A policy document that contains the permissions for the specified Amazon SQS queues. For more information about Amazon SQS policies, see Creating Custom Policies Using the Access Policy Language in the Amazon Simple Queue Service Developer Guide. + /// A policy document that contains the permissions for the specified SQS queues. For more information about SQS policies, see [Using custom policies with the access policy language](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-creating-custom-policies.html) in the *Developer Guide*. /// [Input("policyDocument", required: true)] public Input PolicyDocument { get; set; } = null!; @@ -83,7 +83,7 @@ public sealed class QueuePolicyArgs : global::Pulumi.ResourceArgs private InputList? _queues; /// - /// The URLs of the queues to which you want to add the policy. You can use the Ref function to specify an AWS::SQS::Queue resource. + /// The URLs of the queues to which you want to add the policy. You can use the ``Ref`` function to specify an ``AWS::SQS::Queue`` resource. /// public InputList Queues { diff --git a/sdk/go/aws/apigateway/account.go b/sdk/go/aws/apigateway/account.go index 6412187ebc..19a3aff795 100644 --- a/sdk/go/aws/apigateway/account.go +++ b/sdk/go/aws/apigateway/account.go @@ -12,11 +12,11 @@ import ( "github.com/pulumi/pulumi/sdk/v3/go/pulumix" ) -// Resource Type definition for AWS::ApiGateway::Account +// The “AWS::ApiGateway::Account“ resource specifies the IAM role that Amazon API Gateway uses to write API logs to Amazon CloudWatch Logs. To avoid overwriting other roles, you should only have one “AWS::ApiGateway::Account“ resource per region per account. type Account struct { pulumi.CustomResourceState - // The Amazon Resource Name (ARN) of an IAM role that has write access to CloudWatch Logs in your account. + // The ARN of an Amazon CloudWatch role for the current Account. CloudWatchRoleArn pulumi.StringPtrOutput `pulumi:"cloudWatchRoleArn"` } @@ -60,13 +60,13 @@ func (AccountState) ElementType() reflect.Type { } type accountArgs struct { - // The Amazon Resource Name (ARN) of an IAM role that has write access to CloudWatch Logs in your account. + // The ARN of an Amazon CloudWatch role for the current Account. CloudWatchRoleArn *string `pulumi:"cloudWatchRoleArn"` } // The set of arguments for constructing a Account resource. type AccountArgs struct { - // The Amazon Resource Name (ARN) of an IAM role that has write access to CloudWatch Logs in your account. + // The ARN of an Amazon CloudWatch role for the current Account. CloudWatchRoleArn pulumi.StringPtrInput } @@ -119,7 +119,7 @@ func (o AccountOutput) ToOutput(ctx context.Context) pulumix.Output[*Account] { } } -// The Amazon Resource Name (ARN) of an IAM role that has write access to CloudWatch Logs in your account. +// The ARN of an Amazon CloudWatch role for the current Account. func (o AccountOutput) CloudWatchRoleArn() pulumi.StringPtrOutput { return o.ApplyT(func(v *Account) pulumi.StringPtrOutput { return v.CloudWatchRoleArn }).(pulumi.StringPtrOutput) } diff --git a/sdk/go/aws/apigateway/authorizer.go b/sdk/go/aws/apigateway/authorizer.go index a47adeb939..2fe43e764a 100644 --- a/sdk/go/aws/apigateway/authorizer.go +++ b/sdk/go/aws/apigateway/authorizer.go @@ -13,30 +13,30 @@ import ( "github.com/pulumi/pulumi/sdk/v3/go/pulumix" ) -// Represents an authorization layer for methods. If enabled on a method, API Gateway will activate the authorizer when a client calls the method. +// The “AWS::ApiGateway::Authorizer“ resource creates an authorization layer that API Gateway activates for methods that have authorization enabled. API Gateway activates the authorizer when a client calls those methods. type Authorizer struct { pulumi.CustomResourceState // Optional customer-defined field, used in OpenAPI imports and exports without functional impact. AuthType pulumi.StringPtrOutput `pulumi:"authType"` - // Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. + // Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. To specify an IAM role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To use resource-based permissions on the Lambda function, specify null. AuthorizerCredentials pulumi.StringPtrOutput `pulumi:"authorizerCredentials"` AuthorizerId pulumi.StringOutput `pulumi:"authorizerId"` - // The TTL in seconds of cached authorizer results. + // The TTL in seconds of cached authorizer results. If it equals 0, authorization caching is disabled. If it is greater than 0, API Gateway will cache authorizer responses. If this field is not set, the default value is 300. The maximum value is 3600, or 1 hour. AuthorizerResultTtlInSeconds pulumi.IntPtrOutput `pulumi:"authorizerResultTtlInSeconds"` - // Specifies the authorizer's Uniform Resource Identifier (URI). + // Specifies the authorizer's Uniform Resource Identifier (URI). For ``TOKEN`` or ``REQUEST`` authorizers, this must be a well-formed Lambda function URI, for example, ``arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:{account_id}:function:{lambda_function_name}/invocations``. In general, the URI has this form ``arn:aws:apigateway:{region}:lambda:path/{service_api}``, where ``{region}`` is the same as the region hosting the Lambda function, ``path`` indicates that the remaining substring in the URI should be treated as the path to the resource, including the initial ``/``. For Lambda functions, this is usually of the form ``/2015-03-31/functions/[FunctionARN]/invocations``. AuthorizerUri pulumi.StringPtrOutput `pulumi:"authorizerUri"` - // The identity source for which authorization is requested. + // The identity source for which authorization is requested. For a ``TOKEN`` or ``COGNITO_USER_POOLS`` authorizer, this is required and specifies the request header mapping expression for the custom header holding the authorization token submitted by the client. For example, if the token header name is ``Auth``, the header mapping expression is ``method.request.header.Auth``. For the ``REQUEST`` authorizer, this is required when authorization caching is enabled. The value is a comma-separated string of one or more mapping expressions of the specified request parameters. For example, if an ``Auth`` header, a ``Name`` query string parameter are defined as identity sources, this value is ``method.request.header.Auth, method.request.querystring.Name``. These parameters will be used to derive the authorization caching key and to perform runtime validation of the ``REQUEST`` authorizer by verifying all of the identity-related request parameters are present, not null and non-empty. Only when this is true does the authorizer invoke the authorizer Lambda function, otherwise, it returns a 401 Unauthorized response without calling the Lambda function. The valid value is a string of comma-separated mapping expressions of the specified request parameters. When the authorization caching is not enabled, this property is optional. IdentitySource pulumi.StringPtrOutput `pulumi:"identitySource"` - // A validation expression for the incoming identity token. + // A validation expression for the incoming identity token. For ``TOKEN`` authorizers, this value is a regular expression. For ``COGNITO_USER_POOLS`` authorizers, API Gateway will match the ``aud`` field of the incoming token from the client against the specified regular expression. It will invoke the authorizer's Lambda function when there is a match. Otherwise, it will return a 401 Unauthorized response without calling the Lambda function. The validation expression does not apply to the ``REQUEST`` authorizer. IdentityValidationExpression pulumi.StringPtrOutput `pulumi:"identityValidationExpression"` // The name of the authorizer. Name pulumi.StringOutput `pulumi:"name"` - // A list of the Amazon Cognito user pool ARNs for the COGNITO_USER_POOLS authorizer. + // A list of the Amazon Cognito user pool ARNs for the ``COGNITO_USER_POOLS`` authorizer. Each element is of this format: ``arn:aws:cognito-idp:{region}:{account_id}:userpool/{user_pool_id}``. For a ``TOKEN`` or ``REQUEST`` authorizer, this is not defined. ProviderArns pulumi.StringArrayOutput `pulumi:"providerArns"` - // The identifier of the API. + // The string identifier of the associated RestApi. RestApiId pulumi.StringOutput `pulumi:"restApiId"` - // The authorizer type. + // The authorizer type. Valid values are ``TOKEN`` for a Lambda function using a single authorization token submitted in a custom header, ``REQUEST`` for a Lambda function using incoming request parameters, and ``COGNITO_USER_POOLS`` for using an Amazon Cognito user pool. Type pulumi.StringOutput `pulumi:"type"` } @@ -92,23 +92,23 @@ func (AuthorizerState) ElementType() reflect.Type { type authorizerArgs struct { // Optional customer-defined field, used in OpenAPI imports and exports without functional impact. AuthType *string `pulumi:"authType"` - // Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. + // Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. To specify an IAM role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To use resource-based permissions on the Lambda function, specify null. AuthorizerCredentials *string `pulumi:"authorizerCredentials"` - // The TTL in seconds of cached authorizer results. + // The TTL in seconds of cached authorizer results. If it equals 0, authorization caching is disabled. If it is greater than 0, API Gateway will cache authorizer responses. If this field is not set, the default value is 300. The maximum value is 3600, or 1 hour. AuthorizerResultTtlInSeconds *int `pulumi:"authorizerResultTtlInSeconds"` - // Specifies the authorizer's Uniform Resource Identifier (URI). + // Specifies the authorizer's Uniform Resource Identifier (URI). For ``TOKEN`` or ``REQUEST`` authorizers, this must be a well-formed Lambda function URI, for example, ``arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:{account_id}:function:{lambda_function_name}/invocations``. In general, the URI has this form ``arn:aws:apigateway:{region}:lambda:path/{service_api}``, where ``{region}`` is the same as the region hosting the Lambda function, ``path`` indicates that the remaining substring in the URI should be treated as the path to the resource, including the initial ``/``. For Lambda functions, this is usually of the form ``/2015-03-31/functions/[FunctionARN]/invocations``. AuthorizerUri *string `pulumi:"authorizerUri"` - // The identity source for which authorization is requested. + // The identity source for which authorization is requested. For a ``TOKEN`` or ``COGNITO_USER_POOLS`` authorizer, this is required and specifies the request header mapping expression for the custom header holding the authorization token submitted by the client. For example, if the token header name is ``Auth``, the header mapping expression is ``method.request.header.Auth``. For the ``REQUEST`` authorizer, this is required when authorization caching is enabled. The value is a comma-separated string of one or more mapping expressions of the specified request parameters. For example, if an ``Auth`` header, a ``Name`` query string parameter are defined as identity sources, this value is ``method.request.header.Auth, method.request.querystring.Name``. These parameters will be used to derive the authorization caching key and to perform runtime validation of the ``REQUEST`` authorizer by verifying all of the identity-related request parameters are present, not null and non-empty. Only when this is true does the authorizer invoke the authorizer Lambda function, otherwise, it returns a 401 Unauthorized response without calling the Lambda function. The valid value is a string of comma-separated mapping expressions of the specified request parameters. When the authorization caching is not enabled, this property is optional. IdentitySource *string `pulumi:"identitySource"` - // A validation expression for the incoming identity token. + // A validation expression for the incoming identity token. For ``TOKEN`` authorizers, this value is a regular expression. For ``COGNITO_USER_POOLS`` authorizers, API Gateway will match the ``aud`` field of the incoming token from the client against the specified regular expression. It will invoke the authorizer's Lambda function when there is a match. Otherwise, it will return a 401 Unauthorized response without calling the Lambda function. The validation expression does not apply to the ``REQUEST`` authorizer. IdentityValidationExpression *string `pulumi:"identityValidationExpression"` // The name of the authorizer. Name *string `pulumi:"name"` - // A list of the Amazon Cognito user pool ARNs for the COGNITO_USER_POOLS authorizer. + // A list of the Amazon Cognito user pool ARNs for the ``COGNITO_USER_POOLS`` authorizer. Each element is of this format: ``arn:aws:cognito-idp:{region}:{account_id}:userpool/{user_pool_id}``. For a ``TOKEN`` or ``REQUEST`` authorizer, this is not defined. ProviderArns []string `pulumi:"providerArns"` - // The identifier of the API. + // The string identifier of the associated RestApi. RestApiId string `pulumi:"restApiId"` - // The authorizer type. + // The authorizer type. Valid values are ``TOKEN`` for a Lambda function using a single authorization token submitted in a custom header, ``REQUEST`` for a Lambda function using incoming request parameters, and ``COGNITO_USER_POOLS`` for using an Amazon Cognito user pool. Type string `pulumi:"type"` } @@ -116,23 +116,23 @@ type authorizerArgs struct { type AuthorizerArgs struct { // Optional customer-defined field, used in OpenAPI imports and exports without functional impact. AuthType pulumi.StringPtrInput - // Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. + // Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. To specify an IAM role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To use resource-based permissions on the Lambda function, specify null. AuthorizerCredentials pulumi.StringPtrInput - // The TTL in seconds of cached authorizer results. + // The TTL in seconds of cached authorizer results. If it equals 0, authorization caching is disabled. If it is greater than 0, API Gateway will cache authorizer responses. If this field is not set, the default value is 300. The maximum value is 3600, or 1 hour. AuthorizerResultTtlInSeconds pulumi.IntPtrInput - // Specifies the authorizer's Uniform Resource Identifier (URI). + // Specifies the authorizer's Uniform Resource Identifier (URI). For ``TOKEN`` or ``REQUEST`` authorizers, this must be a well-formed Lambda function URI, for example, ``arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:{account_id}:function:{lambda_function_name}/invocations``. In general, the URI has this form ``arn:aws:apigateway:{region}:lambda:path/{service_api}``, where ``{region}`` is the same as the region hosting the Lambda function, ``path`` indicates that the remaining substring in the URI should be treated as the path to the resource, including the initial ``/``. For Lambda functions, this is usually of the form ``/2015-03-31/functions/[FunctionARN]/invocations``. AuthorizerUri pulumi.StringPtrInput - // The identity source for which authorization is requested. + // The identity source for which authorization is requested. For a ``TOKEN`` or ``COGNITO_USER_POOLS`` authorizer, this is required and specifies the request header mapping expression for the custom header holding the authorization token submitted by the client. For example, if the token header name is ``Auth``, the header mapping expression is ``method.request.header.Auth``. For the ``REQUEST`` authorizer, this is required when authorization caching is enabled. The value is a comma-separated string of one or more mapping expressions of the specified request parameters. For example, if an ``Auth`` header, a ``Name`` query string parameter are defined as identity sources, this value is ``method.request.header.Auth, method.request.querystring.Name``. These parameters will be used to derive the authorization caching key and to perform runtime validation of the ``REQUEST`` authorizer by verifying all of the identity-related request parameters are present, not null and non-empty. Only when this is true does the authorizer invoke the authorizer Lambda function, otherwise, it returns a 401 Unauthorized response without calling the Lambda function. The valid value is a string of comma-separated mapping expressions of the specified request parameters. When the authorization caching is not enabled, this property is optional. IdentitySource pulumi.StringPtrInput - // A validation expression for the incoming identity token. + // A validation expression for the incoming identity token. For ``TOKEN`` authorizers, this value is a regular expression. For ``COGNITO_USER_POOLS`` authorizers, API Gateway will match the ``aud`` field of the incoming token from the client against the specified regular expression. It will invoke the authorizer's Lambda function when there is a match. Otherwise, it will return a 401 Unauthorized response without calling the Lambda function. The validation expression does not apply to the ``REQUEST`` authorizer. IdentityValidationExpression pulumi.StringPtrInput // The name of the authorizer. Name pulumi.StringPtrInput - // A list of the Amazon Cognito user pool ARNs for the COGNITO_USER_POOLS authorizer. + // A list of the Amazon Cognito user pool ARNs for the ``COGNITO_USER_POOLS`` authorizer. Each element is of this format: ``arn:aws:cognito-idp:{region}:{account_id}:userpool/{user_pool_id}``. For a ``TOKEN`` or ``REQUEST`` authorizer, this is not defined. ProviderArns pulumi.StringArrayInput - // The identifier of the API. + // The string identifier of the associated RestApi. RestApiId pulumi.StringInput - // The authorizer type. + // The authorizer type. Valid values are ``TOKEN`` for a Lambda function using a single authorization token submitted in a custom header, ``REQUEST`` for a Lambda function using incoming request parameters, and ``COGNITO_USER_POOLS`` for using an Amazon Cognito user pool. Type pulumi.StringInput } @@ -190,7 +190,7 @@ func (o AuthorizerOutput) AuthType() pulumi.StringPtrOutput { return o.ApplyT(func(v *Authorizer) pulumi.StringPtrOutput { return v.AuthType }).(pulumi.StringPtrOutput) } -// Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. +// Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. To specify an IAM role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To use resource-based permissions on the Lambda function, specify null. func (o AuthorizerOutput) AuthorizerCredentials() pulumi.StringPtrOutput { return o.ApplyT(func(v *Authorizer) pulumi.StringPtrOutput { return v.AuthorizerCredentials }).(pulumi.StringPtrOutput) } @@ -199,22 +199,22 @@ func (o AuthorizerOutput) AuthorizerId() pulumi.StringOutput { return o.ApplyT(func(v *Authorizer) pulumi.StringOutput { return v.AuthorizerId }).(pulumi.StringOutput) } -// The TTL in seconds of cached authorizer results. +// The TTL in seconds of cached authorizer results. If it equals 0, authorization caching is disabled. If it is greater than 0, API Gateway will cache authorizer responses. If this field is not set, the default value is 300. The maximum value is 3600, or 1 hour. func (o AuthorizerOutput) AuthorizerResultTtlInSeconds() pulumi.IntPtrOutput { return o.ApplyT(func(v *Authorizer) pulumi.IntPtrOutput { return v.AuthorizerResultTtlInSeconds }).(pulumi.IntPtrOutput) } -// Specifies the authorizer's Uniform Resource Identifier (URI). +// Specifies the authorizer's Uniform Resource Identifier (URI). For “TOKEN“ or “REQUEST“ authorizers, this must be a well-formed Lambda function URI, for example, “arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:{account_id}:function:{lambda_function_name}/invocations“. In general, the URI has this form “arn:aws:apigateway:{region}:lambda:path/{service_api}“, where “{region}“ is the same as the region hosting the Lambda function, “path“ indicates that the remaining substring in the URI should be treated as the path to the resource, including the initial “/“. For Lambda functions, this is usually of the form “/2015-03-31/functions/[FunctionARN]/invocations“. func (o AuthorizerOutput) AuthorizerUri() pulumi.StringPtrOutput { return o.ApplyT(func(v *Authorizer) pulumi.StringPtrOutput { return v.AuthorizerUri }).(pulumi.StringPtrOutput) } -// The identity source for which authorization is requested. +// The identity source for which authorization is requested. For a “TOKEN“ or “COGNITO_USER_POOLS“ authorizer, this is required and specifies the request header mapping expression for the custom header holding the authorization token submitted by the client. For example, if the token header name is “Auth“, the header mapping expression is “method.request.header.Auth“. For the “REQUEST“ authorizer, this is required when authorization caching is enabled. The value is a comma-separated string of one or more mapping expressions of the specified request parameters. For example, if an “Auth“ header, a “Name“ query string parameter are defined as identity sources, this value is “method.request.header.Auth, method.request.querystring.Name“. These parameters will be used to derive the authorization caching key and to perform runtime validation of the “REQUEST“ authorizer by verifying all of the identity-related request parameters are present, not null and non-empty. Only when this is true does the authorizer invoke the authorizer Lambda function, otherwise, it returns a 401 Unauthorized response without calling the Lambda function. The valid value is a string of comma-separated mapping expressions of the specified request parameters. When the authorization caching is not enabled, this property is optional. func (o AuthorizerOutput) IdentitySource() pulumi.StringPtrOutput { return o.ApplyT(func(v *Authorizer) pulumi.StringPtrOutput { return v.IdentitySource }).(pulumi.StringPtrOutput) } -// A validation expression for the incoming identity token. +// A validation expression for the incoming identity token. For “TOKEN“ authorizers, this value is a regular expression. For “COGNITO_USER_POOLS“ authorizers, API Gateway will match the “aud“ field of the incoming token from the client against the specified regular expression. It will invoke the authorizer's Lambda function when there is a match. Otherwise, it will return a 401 Unauthorized response without calling the Lambda function. The validation expression does not apply to the “REQUEST“ authorizer. func (o AuthorizerOutput) IdentityValidationExpression() pulumi.StringPtrOutput { return o.ApplyT(func(v *Authorizer) pulumi.StringPtrOutput { return v.IdentityValidationExpression }).(pulumi.StringPtrOutput) } @@ -224,17 +224,17 @@ func (o AuthorizerOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v *Authorizer) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) } -// A list of the Amazon Cognito user pool ARNs for the COGNITO_USER_POOLS authorizer. +// A list of the Amazon Cognito user pool ARNs for the “COGNITO_USER_POOLS“ authorizer. Each element is of this format: “arn:aws:cognito-idp:{region}:{account_id}:userpool/{user_pool_id}“. For a “TOKEN“ or “REQUEST“ authorizer, this is not defined. func (o AuthorizerOutput) ProviderArns() pulumi.StringArrayOutput { return o.ApplyT(func(v *Authorizer) pulumi.StringArrayOutput { return v.ProviderArns }).(pulumi.StringArrayOutput) } -// The identifier of the API. +// The string identifier of the associated RestApi. func (o AuthorizerOutput) RestApiId() pulumi.StringOutput { return o.ApplyT(func(v *Authorizer) pulumi.StringOutput { return v.RestApiId }).(pulumi.StringOutput) } -// The authorizer type. +// The authorizer type. Valid values are “TOKEN“ for a Lambda function using a single authorization token submitted in a custom header, “REQUEST“ for a Lambda function using incoming request parameters, and “COGNITO_USER_POOLS“ for using an Amazon Cognito user pool. func (o AuthorizerOutput) Type() pulumi.StringOutput { return o.ApplyT(func(v *Authorizer) pulumi.StringOutput { return v.Type }).(pulumi.StringOutput) } diff --git a/sdk/go/aws/apigateway/deployment.go b/sdk/go/aws/apigateway/deployment.go index d23a2a3c7f..2391562f4a 100644 --- a/sdk/go/aws/apigateway/deployment.go +++ b/sdk/go/aws/apigateway/deployment.go @@ -13,21 +13,21 @@ import ( "github.com/pulumi/pulumi/sdk/v3/go/pulumix" ) -// Resource Type definition for AWS::ApiGateway::Deployment +// The “AWS::ApiGateway::Deployment“ resource deploys an API Gateway “RestApi“ resource to a stage so that clients can call the API over the internet. The stage acts as an environment. type Deployment struct { pulumi.CustomResourceState - // Specifies settings for the canary deployment. + // The input configuration for a canary deployment. DeploymentCanarySettings DeploymentCanarySettingsPtrOutput `pulumi:"deploymentCanarySettings"` // Primary Id for this resource DeploymentId pulumi.StringOutput `pulumi:"deploymentId"` - // A description of the purpose of the API Gateway deployment. + // The description for the Deployment resource to create. Description pulumi.StringPtrOutput `pulumi:"description"` - // The ID of the RestApi resource to deploy. + // The string identifier of the associated RestApi. RestApiId pulumi.StringOutput `pulumi:"restApiId"` - // Configures the stage that API Gateway creates with this deployment. + // The description of the Stage resource for the Deployment resource to create. To specify a stage description, you must also provide a stage name. StageDescription DeploymentStageDescriptionPtrOutput `pulumi:"stageDescription"` - // A name for the stage that API Gateway creates with this deployment. Use only alphanumeric characters. + // The name of the Stage resource for the Deployment resource to create. StageName pulumi.StringPtrOutput `pulumi:"stageName"` } @@ -79,29 +79,29 @@ func (DeploymentState) ElementType() reflect.Type { } type deploymentArgs struct { - // Specifies settings for the canary deployment. + // The input configuration for a canary deployment. DeploymentCanarySettings *DeploymentCanarySettings `pulumi:"deploymentCanarySettings"` - // A description of the purpose of the API Gateway deployment. + // The description for the Deployment resource to create. Description *string `pulumi:"description"` - // The ID of the RestApi resource to deploy. + // The string identifier of the associated RestApi. RestApiId string `pulumi:"restApiId"` - // Configures the stage that API Gateway creates with this deployment. + // The description of the Stage resource for the Deployment resource to create. To specify a stage description, you must also provide a stage name. StageDescription *DeploymentStageDescription `pulumi:"stageDescription"` - // A name for the stage that API Gateway creates with this deployment. Use only alphanumeric characters. + // The name of the Stage resource for the Deployment resource to create. StageName *string `pulumi:"stageName"` } // The set of arguments for constructing a Deployment resource. type DeploymentArgs struct { - // Specifies settings for the canary deployment. + // The input configuration for a canary deployment. DeploymentCanarySettings DeploymentCanarySettingsPtrInput - // A description of the purpose of the API Gateway deployment. + // The description for the Deployment resource to create. Description pulumi.StringPtrInput - // The ID of the RestApi resource to deploy. + // The string identifier of the associated RestApi. RestApiId pulumi.StringInput - // Configures the stage that API Gateway creates with this deployment. + // The description of the Stage resource for the Deployment resource to create. To specify a stage description, you must also provide a stage name. StageDescription DeploymentStageDescriptionPtrInput - // A name for the stage that API Gateway creates with this deployment. Use only alphanumeric characters. + // The name of the Stage resource for the Deployment resource to create. StageName pulumi.StringPtrInput } @@ -154,7 +154,7 @@ func (o DeploymentOutput) ToOutput(ctx context.Context) pulumix.Output[*Deployme } } -// Specifies settings for the canary deployment. +// The input configuration for a canary deployment. func (o DeploymentOutput) DeploymentCanarySettings() DeploymentCanarySettingsPtrOutput { return o.ApplyT(func(v *Deployment) DeploymentCanarySettingsPtrOutput { return v.DeploymentCanarySettings }).(DeploymentCanarySettingsPtrOutput) } @@ -164,22 +164,22 @@ func (o DeploymentOutput) DeploymentId() pulumi.StringOutput { return o.ApplyT(func(v *Deployment) pulumi.StringOutput { return v.DeploymentId }).(pulumi.StringOutput) } -// A description of the purpose of the API Gateway deployment. +// The description for the Deployment resource to create. func (o DeploymentOutput) Description() pulumi.StringPtrOutput { return o.ApplyT(func(v *Deployment) pulumi.StringPtrOutput { return v.Description }).(pulumi.StringPtrOutput) } -// The ID of the RestApi resource to deploy. +// The string identifier of the associated RestApi. func (o DeploymentOutput) RestApiId() pulumi.StringOutput { return o.ApplyT(func(v *Deployment) pulumi.StringOutput { return v.RestApiId }).(pulumi.StringOutput) } -// Configures the stage that API Gateway creates with this deployment. +// The description of the Stage resource for the Deployment resource to create. To specify a stage description, you must also provide a stage name. func (o DeploymentOutput) StageDescription() DeploymentStageDescriptionPtrOutput { return o.ApplyT(func(v *Deployment) DeploymentStageDescriptionPtrOutput { return v.StageDescription }).(DeploymentStageDescriptionPtrOutput) } -// A name for the stage that API Gateway creates with this deployment. Use only alphanumeric characters. +// The name of the Stage resource for the Deployment resource to create. func (o DeploymentOutput) StageName() pulumi.StringPtrOutput { return o.ApplyT(func(v *Deployment) pulumi.StringPtrOutput { return v.StageName }).(pulumi.StringPtrOutput) } diff --git a/sdk/go/aws/apigateway/documentationPart.go b/sdk/go/aws/apigateway/documentationPart.go index 52f0040c99..45a0bd2e69 100644 --- a/sdk/go/aws/apigateway/documentationPart.go +++ b/sdk/go/aws/apigateway/documentationPart.go @@ -13,17 +13,17 @@ import ( "github.com/pulumi/pulumi/sdk/v3/go/pulumix" ) -// Resource Type definition for AWS::ApiGateway::DocumentationPart +// The “AWS::ApiGateway::DocumentationPart“ resource creates a documentation part for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*. type DocumentationPart struct { pulumi.CustomResourceState // The identifier of the documentation Part. DocumentationPartId pulumi.StringOutput `pulumi:"documentationPartId"` - // The location of the API entity that the documentation applies to. + // The location of the targeted API entity of the to-be-created documentation part. Location DocumentationPartLocationOutput `pulumi:"location"` - // The documentation content map of the targeted API entity. + // The new documentation content map of the targeted API entity. Enclosed key-value pairs are API-specific, but only OpenAPI-compliant key-value pairs can be exported and, hence, published. Properties pulumi.StringOutput `pulumi:"properties"` - // Identifier of the targeted API entity + // The string identifier of the associated RestApi. RestApiId pulumi.StringOutput `pulumi:"restApiId"` } @@ -81,21 +81,21 @@ func (DocumentationPartState) ElementType() reflect.Type { } type documentationPartArgs struct { - // The location of the API entity that the documentation applies to. + // The location of the targeted API entity of the to-be-created documentation part. Location DocumentationPartLocation `pulumi:"location"` - // The documentation content map of the targeted API entity. + // The new documentation content map of the targeted API entity. Enclosed key-value pairs are API-specific, but only OpenAPI-compliant key-value pairs can be exported and, hence, published. Properties string `pulumi:"properties"` - // Identifier of the targeted API entity + // The string identifier of the associated RestApi. RestApiId string `pulumi:"restApiId"` } // The set of arguments for constructing a DocumentationPart resource. type DocumentationPartArgs struct { - // The location of the API entity that the documentation applies to. + // The location of the targeted API entity of the to-be-created documentation part. Location DocumentationPartLocationInput - // The documentation content map of the targeted API entity. + // The new documentation content map of the targeted API entity. Enclosed key-value pairs are API-specific, but only OpenAPI-compliant key-value pairs can be exported and, hence, published. Properties pulumi.StringInput - // Identifier of the targeted API entity + // The string identifier of the associated RestApi. RestApiId pulumi.StringInput } @@ -153,17 +153,17 @@ func (o DocumentationPartOutput) DocumentationPartId() pulumi.StringOutput { return o.ApplyT(func(v *DocumentationPart) pulumi.StringOutput { return v.DocumentationPartId }).(pulumi.StringOutput) } -// The location of the API entity that the documentation applies to. +// The location of the targeted API entity of the to-be-created documentation part. func (o DocumentationPartOutput) Location() DocumentationPartLocationOutput { return o.ApplyT(func(v *DocumentationPart) DocumentationPartLocationOutput { return v.Location }).(DocumentationPartLocationOutput) } -// The documentation content map of the targeted API entity. +// The new documentation content map of the targeted API entity. Enclosed key-value pairs are API-specific, but only OpenAPI-compliant key-value pairs can be exported and, hence, published. func (o DocumentationPartOutput) Properties() pulumi.StringOutput { return o.ApplyT(func(v *DocumentationPart) pulumi.StringOutput { return v.Properties }).(pulumi.StringOutput) } -// Identifier of the targeted API entity +// The string identifier of the associated RestApi. func (o DocumentationPartOutput) RestApiId() pulumi.StringOutput { return o.ApplyT(func(v *DocumentationPart) pulumi.StringOutput { return v.RestApiId }).(pulumi.StringOutput) } diff --git a/sdk/go/aws/apigateway/documentationVersion.go b/sdk/go/aws/apigateway/documentationVersion.go index f3f9806bb9..26807d6dc7 100644 --- a/sdk/go/aws/apigateway/documentationVersion.go +++ b/sdk/go/aws/apigateway/documentationVersion.go @@ -13,15 +13,15 @@ import ( "github.com/pulumi/pulumi/sdk/v3/go/pulumix" ) -// A snapshot of the documentation of an API. +// The “AWS::ApiGateway::DocumentationVersion“ resource creates a snapshot of the documentation for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*. type DocumentationVersion struct { pulumi.CustomResourceState - // The description of the API documentation snapshot. + // A description about the new documentation snapshot. Description pulumi.StringPtrOutput `pulumi:"description"` - // The version identifier of the API documentation snapshot. + // The version identifier of the to-be-updated documentation version. DocumentationVersion pulumi.StringOutput `pulumi:"documentationVersion"` - // The identifier of the API. + // The string identifier of the associated RestApi. RestApiId pulumi.StringOutput `pulumi:"restApiId"` } @@ -76,21 +76,21 @@ func (DocumentationVersionState) ElementType() reflect.Type { } type documentationVersionArgs struct { - // The description of the API documentation snapshot. + // A description about the new documentation snapshot. Description *string `pulumi:"description"` - // The version identifier of the API documentation snapshot. + // The version identifier of the to-be-updated documentation version. DocumentationVersion string `pulumi:"documentationVersion"` - // The identifier of the API. + // The string identifier of the associated RestApi. RestApiId string `pulumi:"restApiId"` } // The set of arguments for constructing a DocumentationVersion resource. type DocumentationVersionArgs struct { - // The description of the API documentation snapshot. + // A description about the new documentation snapshot. Description pulumi.StringPtrInput - // The version identifier of the API documentation snapshot. + // The version identifier of the to-be-updated documentation version. DocumentationVersion pulumi.StringInput - // The identifier of the API. + // The string identifier of the associated RestApi. RestApiId pulumi.StringInput } @@ -143,17 +143,17 @@ func (o DocumentationVersionOutput) ToOutput(ctx context.Context) pulumix.Output } } -// The description of the API documentation snapshot. +// A description about the new documentation snapshot. func (o DocumentationVersionOutput) Description() pulumi.StringPtrOutput { return o.ApplyT(func(v *DocumentationVersion) pulumi.StringPtrOutput { return v.Description }).(pulumi.StringPtrOutput) } -// The version identifier of the API documentation snapshot. +// The version identifier of the to-be-updated documentation version. func (o DocumentationVersionOutput) DocumentationVersion() pulumi.StringOutput { return o.ApplyT(func(v *DocumentationVersion) pulumi.StringOutput { return v.DocumentationVersion }).(pulumi.StringOutput) } -// The identifier of the API. +// The string identifier of the associated RestApi. func (o DocumentationVersionOutput) RestApiId() pulumi.StringOutput { return o.ApplyT(func(v *DocumentationVersion) pulumi.StringOutput { return v.RestApiId }).(pulumi.StringOutput) } diff --git a/sdk/go/aws/apigateway/getAccount.go b/sdk/go/aws/apigateway/getAccount.go index 4ef21b2cc9..76ff7ef07e 100644 --- a/sdk/go/aws/apigateway/getAccount.go +++ b/sdk/go/aws/apigateway/getAccount.go @@ -12,7 +12,7 @@ import ( "github.com/pulumi/pulumi/sdk/v3/go/pulumix" ) -// Resource Type definition for AWS::ApiGateway::Account +// The “AWS::ApiGateway::Account“ resource specifies the IAM role that Amazon API Gateway uses to write API logs to Amazon CloudWatch Logs. To avoid overwriting other roles, you should only have one “AWS::ApiGateway::Account“ resource per region per account. func LookupAccount(ctx *pulumi.Context, args *LookupAccountArgs, opts ...pulumi.InvokeOption) (*LookupAccountResult, error) { opts = internal.PkgInvokeDefaultOpts(opts) var rv LookupAccountResult @@ -29,7 +29,7 @@ type LookupAccountArgs struct { } type LookupAccountResult struct { - // The Amazon Resource Name (ARN) of an IAM role that has write access to CloudWatch Logs in your account. + // The ARN of an Amazon CloudWatch role for the current Account. CloudWatchRoleArn *string `pulumi:"cloudWatchRoleArn"` // Primary identifier which is manually generated. Id *string `pulumi:"id"` @@ -77,7 +77,7 @@ func (o LookupAccountResultOutput) ToOutput(ctx context.Context) pulumix.Output[ } } -// The Amazon Resource Name (ARN) of an IAM role that has write access to CloudWatch Logs in your account. +// The ARN of an Amazon CloudWatch role for the current Account. func (o LookupAccountResultOutput) CloudWatchRoleArn() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupAccountResult) *string { return v.CloudWatchRoleArn }).(pulumi.StringPtrOutput) } diff --git a/sdk/go/aws/apigateway/getAuthorizer.go b/sdk/go/aws/apigateway/getAuthorizer.go index a7edd13c7f..045319fdfe 100644 --- a/sdk/go/aws/apigateway/getAuthorizer.go +++ b/sdk/go/aws/apigateway/getAuthorizer.go @@ -12,7 +12,7 @@ import ( "github.com/pulumi/pulumi/sdk/v3/go/pulumix" ) -// Represents an authorization layer for methods. If enabled on a method, API Gateway will activate the authorizer when a client calls the method. +// The “AWS::ApiGateway::Authorizer“ resource creates an authorization layer that API Gateway activates for methods that have authorization enabled. API Gateway activates the authorizer when a client calls those methods. func LookupAuthorizer(ctx *pulumi.Context, args *LookupAuthorizerArgs, opts ...pulumi.InvokeOption) (*LookupAuthorizerResult, error) { opts = internal.PkgInvokeDefaultOpts(opts) var rv LookupAuthorizerResult @@ -25,29 +25,29 @@ func LookupAuthorizer(ctx *pulumi.Context, args *LookupAuthorizerArgs, opts ...p type LookupAuthorizerArgs struct { AuthorizerId string `pulumi:"authorizerId"` - // The identifier of the API. + // The string identifier of the associated RestApi. RestApiId string `pulumi:"restApiId"` } type LookupAuthorizerResult struct { // Optional customer-defined field, used in OpenAPI imports and exports without functional impact. AuthType *string `pulumi:"authType"` - // Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. + // Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. To specify an IAM role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To use resource-based permissions on the Lambda function, specify null. AuthorizerCredentials *string `pulumi:"authorizerCredentials"` AuthorizerId *string `pulumi:"authorizerId"` - // The TTL in seconds of cached authorizer results. + // The TTL in seconds of cached authorizer results. If it equals 0, authorization caching is disabled. If it is greater than 0, API Gateway will cache authorizer responses. If this field is not set, the default value is 300. The maximum value is 3600, or 1 hour. AuthorizerResultTtlInSeconds *int `pulumi:"authorizerResultTtlInSeconds"` - // Specifies the authorizer's Uniform Resource Identifier (URI). + // Specifies the authorizer's Uniform Resource Identifier (URI). For ``TOKEN`` or ``REQUEST`` authorizers, this must be a well-formed Lambda function URI, for example, ``arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:{account_id}:function:{lambda_function_name}/invocations``. In general, the URI has this form ``arn:aws:apigateway:{region}:lambda:path/{service_api}``, where ``{region}`` is the same as the region hosting the Lambda function, ``path`` indicates that the remaining substring in the URI should be treated as the path to the resource, including the initial ``/``. For Lambda functions, this is usually of the form ``/2015-03-31/functions/[FunctionARN]/invocations``. AuthorizerUri *string `pulumi:"authorizerUri"` - // The identity source for which authorization is requested. + // The identity source for which authorization is requested. For a ``TOKEN`` or ``COGNITO_USER_POOLS`` authorizer, this is required and specifies the request header mapping expression for the custom header holding the authorization token submitted by the client. For example, if the token header name is ``Auth``, the header mapping expression is ``method.request.header.Auth``. For the ``REQUEST`` authorizer, this is required when authorization caching is enabled. The value is a comma-separated string of one or more mapping expressions of the specified request parameters. For example, if an ``Auth`` header, a ``Name`` query string parameter are defined as identity sources, this value is ``method.request.header.Auth, method.request.querystring.Name``. These parameters will be used to derive the authorization caching key and to perform runtime validation of the ``REQUEST`` authorizer by verifying all of the identity-related request parameters are present, not null and non-empty. Only when this is true does the authorizer invoke the authorizer Lambda function, otherwise, it returns a 401 Unauthorized response without calling the Lambda function. The valid value is a string of comma-separated mapping expressions of the specified request parameters. When the authorization caching is not enabled, this property is optional. IdentitySource *string `pulumi:"identitySource"` - // A validation expression for the incoming identity token. + // A validation expression for the incoming identity token. For ``TOKEN`` authorizers, this value is a regular expression. For ``COGNITO_USER_POOLS`` authorizers, API Gateway will match the ``aud`` field of the incoming token from the client against the specified regular expression. It will invoke the authorizer's Lambda function when there is a match. Otherwise, it will return a 401 Unauthorized response without calling the Lambda function. The validation expression does not apply to the ``REQUEST`` authorizer. IdentityValidationExpression *string `pulumi:"identityValidationExpression"` // The name of the authorizer. Name *string `pulumi:"name"` - // A list of the Amazon Cognito user pool ARNs for the COGNITO_USER_POOLS authorizer. + // A list of the Amazon Cognito user pool ARNs for the ``COGNITO_USER_POOLS`` authorizer. Each element is of this format: ``arn:aws:cognito-idp:{region}:{account_id}:userpool/{user_pool_id}``. For a ``TOKEN`` or ``REQUEST`` authorizer, this is not defined. ProviderArns []string `pulumi:"providerArns"` - // The authorizer type. + // The authorizer type. Valid values are ``TOKEN`` for a Lambda function using a single authorization token submitted in a custom header, ``REQUEST`` for a Lambda function using incoming request parameters, and ``COGNITO_USER_POOLS`` for using an Amazon Cognito user pool. Type *string `pulumi:"type"` } @@ -66,7 +66,7 @@ func LookupAuthorizerOutput(ctx *pulumi.Context, args LookupAuthorizerOutputArgs type LookupAuthorizerOutputArgs struct { AuthorizerId pulumi.StringInput `pulumi:"authorizerId"` - // The identifier of the API. + // The string identifier of the associated RestApi. RestApiId pulumi.StringInput `pulumi:"restApiId"` } @@ -99,7 +99,7 @@ func (o LookupAuthorizerResultOutput) AuthType() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupAuthorizerResult) *string { return v.AuthType }).(pulumi.StringPtrOutput) } -// Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. +// Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. To specify an IAM role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To use resource-based permissions on the Lambda function, specify null. func (o LookupAuthorizerResultOutput) AuthorizerCredentials() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupAuthorizerResult) *string { return v.AuthorizerCredentials }).(pulumi.StringPtrOutput) } @@ -108,22 +108,22 @@ func (o LookupAuthorizerResultOutput) AuthorizerId() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupAuthorizerResult) *string { return v.AuthorizerId }).(pulumi.StringPtrOutput) } -// The TTL in seconds of cached authorizer results. +// The TTL in seconds of cached authorizer results. If it equals 0, authorization caching is disabled. If it is greater than 0, API Gateway will cache authorizer responses. If this field is not set, the default value is 300. The maximum value is 3600, or 1 hour. func (o LookupAuthorizerResultOutput) AuthorizerResultTtlInSeconds() pulumi.IntPtrOutput { return o.ApplyT(func(v LookupAuthorizerResult) *int { return v.AuthorizerResultTtlInSeconds }).(pulumi.IntPtrOutput) } -// Specifies the authorizer's Uniform Resource Identifier (URI). +// Specifies the authorizer's Uniform Resource Identifier (URI). For “TOKEN“ or “REQUEST“ authorizers, this must be a well-formed Lambda function URI, for example, “arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:{account_id}:function:{lambda_function_name}/invocations“. In general, the URI has this form “arn:aws:apigateway:{region}:lambda:path/{service_api}“, where “{region}“ is the same as the region hosting the Lambda function, “path“ indicates that the remaining substring in the URI should be treated as the path to the resource, including the initial “/“. For Lambda functions, this is usually of the form “/2015-03-31/functions/[FunctionARN]/invocations“. func (o LookupAuthorizerResultOutput) AuthorizerUri() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupAuthorizerResult) *string { return v.AuthorizerUri }).(pulumi.StringPtrOutput) } -// The identity source for which authorization is requested. +// The identity source for which authorization is requested. For a “TOKEN“ or “COGNITO_USER_POOLS“ authorizer, this is required and specifies the request header mapping expression for the custom header holding the authorization token submitted by the client. For example, if the token header name is “Auth“, the header mapping expression is “method.request.header.Auth“. For the “REQUEST“ authorizer, this is required when authorization caching is enabled. The value is a comma-separated string of one or more mapping expressions of the specified request parameters. For example, if an “Auth“ header, a “Name“ query string parameter are defined as identity sources, this value is “method.request.header.Auth, method.request.querystring.Name“. These parameters will be used to derive the authorization caching key and to perform runtime validation of the “REQUEST“ authorizer by verifying all of the identity-related request parameters are present, not null and non-empty. Only when this is true does the authorizer invoke the authorizer Lambda function, otherwise, it returns a 401 Unauthorized response without calling the Lambda function. The valid value is a string of comma-separated mapping expressions of the specified request parameters. When the authorization caching is not enabled, this property is optional. func (o LookupAuthorizerResultOutput) IdentitySource() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupAuthorizerResult) *string { return v.IdentitySource }).(pulumi.StringPtrOutput) } -// A validation expression for the incoming identity token. +// A validation expression for the incoming identity token. For “TOKEN“ authorizers, this value is a regular expression. For “COGNITO_USER_POOLS“ authorizers, API Gateway will match the “aud“ field of the incoming token from the client against the specified regular expression. It will invoke the authorizer's Lambda function when there is a match. Otherwise, it will return a 401 Unauthorized response without calling the Lambda function. The validation expression does not apply to the “REQUEST“ authorizer. func (o LookupAuthorizerResultOutput) IdentityValidationExpression() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupAuthorizerResult) *string { return v.IdentityValidationExpression }).(pulumi.StringPtrOutput) } @@ -133,12 +133,12 @@ func (o LookupAuthorizerResultOutput) Name() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupAuthorizerResult) *string { return v.Name }).(pulumi.StringPtrOutput) } -// A list of the Amazon Cognito user pool ARNs for the COGNITO_USER_POOLS authorizer. +// A list of the Amazon Cognito user pool ARNs for the “COGNITO_USER_POOLS“ authorizer. Each element is of this format: “arn:aws:cognito-idp:{region}:{account_id}:userpool/{user_pool_id}“. For a “TOKEN“ or “REQUEST“ authorizer, this is not defined. func (o LookupAuthorizerResultOutput) ProviderArns() pulumi.StringArrayOutput { return o.ApplyT(func(v LookupAuthorizerResult) []string { return v.ProviderArns }).(pulumi.StringArrayOutput) } -// The authorizer type. +// The authorizer type. Valid values are “TOKEN“ for a Lambda function using a single authorization token submitted in a custom header, “REQUEST“ for a Lambda function using incoming request parameters, and “COGNITO_USER_POOLS“ for using an Amazon Cognito user pool. func (o LookupAuthorizerResultOutput) Type() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupAuthorizerResult) *string { return v.Type }).(pulumi.StringPtrOutput) } diff --git a/sdk/go/aws/apigateway/getDeployment.go b/sdk/go/aws/apigateway/getDeployment.go index 3c24a0515d..61087d1cc5 100644 --- a/sdk/go/aws/apigateway/getDeployment.go +++ b/sdk/go/aws/apigateway/getDeployment.go @@ -12,7 +12,7 @@ import ( "github.com/pulumi/pulumi/sdk/v3/go/pulumix" ) -// Resource Type definition for AWS::ApiGateway::Deployment +// The “AWS::ApiGateway::Deployment“ resource deploys an API Gateway “RestApi“ resource to a stage so that clients can call the API over the internet. The stage acts as an environment. func LookupDeployment(ctx *pulumi.Context, args *LookupDeploymentArgs, opts ...pulumi.InvokeOption) (*LookupDeploymentResult, error) { opts = internal.PkgInvokeDefaultOpts(opts) var rv LookupDeploymentResult @@ -26,14 +26,14 @@ func LookupDeployment(ctx *pulumi.Context, args *LookupDeploymentArgs, opts ...p type LookupDeploymentArgs struct { // Primary Id for this resource DeploymentId string `pulumi:"deploymentId"` - // The ID of the RestApi resource to deploy. + // The string identifier of the associated RestApi. RestApiId string `pulumi:"restApiId"` } type LookupDeploymentResult struct { // Primary Id for this resource DeploymentId *string `pulumi:"deploymentId"` - // A description of the purpose of the API Gateway deployment. + // The description for the Deployment resource to create. Description *string `pulumi:"description"` } @@ -53,7 +53,7 @@ func LookupDeploymentOutput(ctx *pulumi.Context, args LookupDeploymentOutputArgs type LookupDeploymentOutputArgs struct { // Primary Id for this resource DeploymentId pulumi.StringInput `pulumi:"deploymentId"` - // The ID of the RestApi resource to deploy. + // The string identifier of the associated RestApi. RestApiId pulumi.StringInput `pulumi:"restApiId"` } @@ -86,7 +86,7 @@ func (o LookupDeploymentResultOutput) DeploymentId() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupDeploymentResult) *string { return v.DeploymentId }).(pulumi.StringPtrOutput) } -// A description of the purpose of the API Gateway deployment. +// The description for the Deployment resource to create. func (o LookupDeploymentResultOutput) Description() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupDeploymentResult) *string { return v.Description }).(pulumi.StringPtrOutput) } diff --git a/sdk/go/aws/apigateway/getDocumentationPart.go b/sdk/go/aws/apigateway/getDocumentationPart.go index 799234ea10..2550787fb0 100644 --- a/sdk/go/aws/apigateway/getDocumentationPart.go +++ b/sdk/go/aws/apigateway/getDocumentationPart.go @@ -12,7 +12,7 @@ import ( "github.com/pulumi/pulumi/sdk/v3/go/pulumix" ) -// Resource Type definition for AWS::ApiGateway::DocumentationPart +// The “AWS::ApiGateway::DocumentationPart“ resource creates a documentation part for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*. func LookupDocumentationPart(ctx *pulumi.Context, args *LookupDocumentationPartArgs, opts ...pulumi.InvokeOption) (*LookupDocumentationPartResult, error) { opts = internal.PkgInvokeDefaultOpts(opts) var rv LookupDocumentationPartResult @@ -26,14 +26,14 @@ func LookupDocumentationPart(ctx *pulumi.Context, args *LookupDocumentationPartA type LookupDocumentationPartArgs struct { // The identifier of the documentation Part. DocumentationPartId string `pulumi:"documentationPartId"` - // Identifier of the targeted API entity + // The string identifier of the associated RestApi. RestApiId string `pulumi:"restApiId"` } type LookupDocumentationPartResult struct { // The identifier of the documentation Part. DocumentationPartId *string `pulumi:"documentationPartId"` - // The documentation content map of the targeted API entity. + // The new documentation content map of the targeted API entity. Enclosed key-value pairs are API-specific, but only OpenAPI-compliant key-value pairs can be exported and, hence, published. Properties *string `pulumi:"properties"` } @@ -53,7 +53,7 @@ func LookupDocumentationPartOutput(ctx *pulumi.Context, args LookupDocumentation type LookupDocumentationPartOutputArgs struct { // The identifier of the documentation Part. DocumentationPartId pulumi.StringInput `pulumi:"documentationPartId"` - // Identifier of the targeted API entity + // The string identifier of the associated RestApi. RestApiId pulumi.StringInput `pulumi:"restApiId"` } @@ -86,7 +86,7 @@ func (o LookupDocumentationPartResultOutput) DocumentationPartId() pulumi.String return o.ApplyT(func(v LookupDocumentationPartResult) *string { return v.DocumentationPartId }).(pulumi.StringPtrOutput) } -// The documentation content map of the targeted API entity. +// The new documentation content map of the targeted API entity. Enclosed key-value pairs are API-specific, but only OpenAPI-compliant key-value pairs can be exported and, hence, published. func (o LookupDocumentationPartResultOutput) Properties() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupDocumentationPartResult) *string { return v.Properties }).(pulumi.StringPtrOutput) } diff --git a/sdk/go/aws/apigateway/getDocumentationVersion.go b/sdk/go/aws/apigateway/getDocumentationVersion.go index 68ce29866e..402326f585 100644 --- a/sdk/go/aws/apigateway/getDocumentationVersion.go +++ b/sdk/go/aws/apigateway/getDocumentationVersion.go @@ -12,7 +12,7 @@ import ( "github.com/pulumi/pulumi/sdk/v3/go/pulumix" ) -// A snapshot of the documentation of an API. +// The “AWS::ApiGateway::DocumentationVersion“ resource creates a snapshot of the documentation for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*. func LookupDocumentationVersion(ctx *pulumi.Context, args *LookupDocumentationVersionArgs, opts ...pulumi.InvokeOption) (*LookupDocumentationVersionResult, error) { opts = internal.PkgInvokeDefaultOpts(opts) var rv LookupDocumentationVersionResult @@ -24,14 +24,14 @@ func LookupDocumentationVersion(ctx *pulumi.Context, args *LookupDocumentationVe } type LookupDocumentationVersionArgs struct { - // The version identifier of the API documentation snapshot. + // The version identifier of the to-be-updated documentation version. DocumentationVersion string `pulumi:"documentationVersion"` - // The identifier of the API. + // The string identifier of the associated RestApi. RestApiId string `pulumi:"restApiId"` } type LookupDocumentationVersionResult struct { - // The description of the API documentation snapshot. + // A description about the new documentation snapshot. Description *string `pulumi:"description"` } @@ -49,9 +49,9 @@ func LookupDocumentationVersionOutput(ctx *pulumi.Context, args LookupDocumentat } type LookupDocumentationVersionOutputArgs struct { - // The version identifier of the API documentation snapshot. + // The version identifier of the to-be-updated documentation version. DocumentationVersion pulumi.StringInput `pulumi:"documentationVersion"` - // The identifier of the API. + // The string identifier of the associated RestApi. RestApiId pulumi.StringInput `pulumi:"restApiId"` } @@ -79,7 +79,7 @@ func (o LookupDocumentationVersionResultOutput) ToOutput(ctx context.Context) pu } } -// The description of the API documentation snapshot. +// A description about the new documentation snapshot. func (o LookupDocumentationVersionResultOutput) Description() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupDocumentationVersionResult) *string { return v.Description }).(pulumi.StringPtrOutput) } diff --git a/sdk/go/aws/apigateway/getMethod.go b/sdk/go/aws/apigateway/getMethod.go index 46fdc7aba7..8f2287dafd 100644 --- a/sdk/go/aws/apigateway/getMethod.go +++ b/sdk/go/aws/apigateway/getMethod.go @@ -12,7 +12,7 @@ import ( "github.com/pulumi/pulumi/sdk/v3/go/pulumix" ) -// Resource Type definition for AWS::ApiGateway::Method +// The “AWS::ApiGateway::Method“ resource creates API Gateway methods that define the parameters and body that clients must send in their requests. func LookupMethod(ctx *pulumi.Context, args *LookupMethodArgs, opts ...pulumi.InvokeOption) (*LookupMethodResult, error) { opts = internal.PkgInvokeDefaultOpts(opts) var rv LookupMethodResult @@ -24,34 +24,35 @@ func LookupMethod(ctx *pulumi.Context, args *LookupMethodArgs, opts ...pulumi.In } type LookupMethodArgs struct { - // The backend system that the method calls when it receives a request. + // The method's HTTP verb. HttpMethod string `pulumi:"httpMethod"` - // The ID of an API Gateway resource. + // The Resource identifier for the MethodResponse resource. ResourceId string `pulumi:"resourceId"` - // The ID of the RestApi resource in which API Gateway creates the method. + // The string identifier of the associated RestApi. RestApiId string `pulumi:"restApiId"` } type LookupMethodResult struct { - // Indicates whether the method requires clients to submit a valid API key. + // A boolean flag specifying whether a valid ApiKey is required to invoke this method. ApiKeyRequired *bool `pulumi:"apiKeyRequired"` - // A list of authorization scopes configured on the method. + // A list of authorization scopes configured on the method. The scopes are used with a ``COGNITO_USER_POOLS`` authorizer to authorize the method invocation. The authorization works by matching the method scopes against the scopes parsed from the access token in the incoming request. The method invocation is authorized if any method scopes matches a claimed scope in the access token. Otherwise, the invocation is not authorized. When the method scope is configured, the client must provide an access token instead of an identity token for authorization purposes. AuthorizationScopes []string `pulumi:"authorizationScopes"` - // The method's authorization type. + // The method's authorization type. This parameter is required. For valid values, see [Method](https://docs.aws.amazon.com/apigateway/latest/api/API_Method.html) in the *API Gateway API Reference*. + // If you specify the ``AuthorizerId`` property, specify ``CUSTOM`` or ``COGNITO_USER_POOLS`` for this property. AuthorizationType *MethodAuthorizationType `pulumi:"authorizationType"` - // The identifier of the authorizer to use on this method. + // The identifier of an authorizer to use on this method. The method's authorization type must be ``CUSTOM`` or ``COGNITO_USER_POOLS``. AuthorizerId *string `pulumi:"authorizerId"` - // The backend system that the method calls when it receives a request. + // Represents an ``HTTP``, ``HTTP_PROXY``, ``AWS``, ``AWS_PROXY``, or Mock integration. Integration *MethodIntegration `pulumi:"integration"` - // The responses that can be sent to the client who calls the method. + // Gets a method response associated with a given HTTP status code. MethodResponses []MethodResponse `pulumi:"methodResponses"` - // A friendly operation name for the method. + // A human-friendly operation identifier for the method. For example, you can assign the ``operationName`` of ``ListPets`` for the ``GET /pets`` method in the ``PetStore`` example. OperationName *string `pulumi:"operationName"` - // The resources that are used for the request's content type. Specify request models as key-value pairs (string-to-string mapping), with a content type as the key and a Model resource name as the value. + // A key-value map specifying data schemas, represented by Model resources, (as the mapped value) of the request payloads of given content types (as the mapping key). RequestModels interface{} `pulumi:"requestModels"` - // The request parameters that API Gateway accepts. Specify request parameters as key-value pairs (string-to-Boolean mapping), with a source as the key and a Boolean as the value. + // A key-value map defining required or optional method request parameters that can be accepted by API Gateway. A key is a method request parameter name matching the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and ``name`` is a valid and unique parameter name. The value associated with the key is a Boolean flag indicating whether the parameter is required (``true``) or optional (``false``). The method request parameter names defined here are available in Integration to be mapped to integration request parameters or templates. RequestParameters interface{} `pulumi:"requestParameters"` - // The ID of the associated request validator. + // The identifier of a RequestValidator for request validation. RequestValidatorId *string `pulumi:"requestValidatorId"` } @@ -69,11 +70,11 @@ func LookupMethodOutput(ctx *pulumi.Context, args LookupMethodOutputArgs, opts . } type LookupMethodOutputArgs struct { - // The backend system that the method calls when it receives a request. + // The method's HTTP verb. HttpMethod pulumi.StringInput `pulumi:"httpMethod"` - // The ID of an API Gateway resource. + // The Resource identifier for the MethodResponse resource. ResourceId pulumi.StringInput `pulumi:"resourceId"` - // The ID of the RestApi resource in which API Gateway creates the method. + // The string identifier of the associated RestApi. RestApiId pulumi.StringInput `pulumi:"restApiId"` } @@ -101,52 +102,54 @@ func (o LookupMethodResultOutput) ToOutput(ctx context.Context) pulumix.Output[L } } -// Indicates whether the method requires clients to submit a valid API key. +// A boolean flag specifying whether a valid ApiKey is required to invoke this method. func (o LookupMethodResultOutput) ApiKeyRequired() pulumi.BoolPtrOutput { return o.ApplyT(func(v LookupMethodResult) *bool { return v.ApiKeyRequired }).(pulumi.BoolPtrOutput) } -// A list of authorization scopes configured on the method. +// A list of authorization scopes configured on the method. The scopes are used with a “COGNITO_USER_POOLS“ authorizer to authorize the method invocation. The authorization works by matching the method scopes against the scopes parsed from the access token in the incoming request. The method invocation is authorized if any method scopes matches a claimed scope in the access token. Otherwise, the invocation is not authorized. When the method scope is configured, the client must provide an access token instead of an identity token for authorization purposes. func (o LookupMethodResultOutput) AuthorizationScopes() pulumi.StringArrayOutput { return o.ApplyT(func(v LookupMethodResult) []string { return v.AuthorizationScopes }).(pulumi.StringArrayOutput) } -// The method's authorization type. +// The method's authorization type. This parameter is required. For valid values, see [Method](https://docs.aws.amazon.com/apigateway/latest/api/API_Method.html) in the *API Gateway API Reference*. +// +// If you specify the ``AuthorizerId`` property, specify ``CUSTOM`` or ``COGNITO_USER_POOLS`` for this property. func (o LookupMethodResultOutput) AuthorizationType() MethodAuthorizationTypePtrOutput { return o.ApplyT(func(v LookupMethodResult) *MethodAuthorizationType { return v.AuthorizationType }).(MethodAuthorizationTypePtrOutput) } -// The identifier of the authorizer to use on this method. +// The identifier of an authorizer to use on this method. The method's authorization type must be “CUSTOM“ or “COGNITO_USER_POOLS“. func (o LookupMethodResultOutput) AuthorizerId() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupMethodResult) *string { return v.AuthorizerId }).(pulumi.StringPtrOutput) } -// The backend system that the method calls when it receives a request. +// Represents an “HTTP“, “HTTP_PROXY“, “AWS“, “AWS_PROXY“, or Mock integration. func (o LookupMethodResultOutput) Integration() MethodIntegrationPtrOutput { return o.ApplyT(func(v LookupMethodResult) *MethodIntegration { return v.Integration }).(MethodIntegrationPtrOutput) } -// The responses that can be sent to the client who calls the method. +// Gets a method response associated with a given HTTP status code. func (o LookupMethodResultOutput) MethodResponses() MethodResponseArrayOutput { return o.ApplyT(func(v LookupMethodResult) []MethodResponse { return v.MethodResponses }).(MethodResponseArrayOutput) } -// A friendly operation name for the method. +// A human-friendly operation identifier for the method. For example, you can assign the “operationName“ of “ListPets“ for the “GET /pets“ method in the “PetStore“ example. func (o LookupMethodResultOutput) OperationName() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupMethodResult) *string { return v.OperationName }).(pulumi.StringPtrOutput) } -// The resources that are used for the request's content type. Specify request models as key-value pairs (string-to-string mapping), with a content type as the key and a Model resource name as the value. +// A key-value map specifying data schemas, represented by Model resources, (as the mapped value) of the request payloads of given content types (as the mapping key). func (o LookupMethodResultOutput) RequestModels() pulumi.AnyOutput { return o.ApplyT(func(v LookupMethodResult) interface{} { return v.RequestModels }).(pulumi.AnyOutput) } -// The request parameters that API Gateway accepts. Specify request parameters as key-value pairs (string-to-Boolean mapping), with a source as the key and a Boolean as the value. +// A key-value map defining required or optional method request parameters that can be accepted by API Gateway. A key is a method request parameter name matching the pattern of “method.request.{location}.{name}“, where “location“ is “querystring“, “path“, or “header“ and “name“ is a valid and unique parameter name. The value associated with the key is a Boolean flag indicating whether the parameter is required (“true“) or optional (“false“). The method request parameter names defined here are available in Integration to be mapped to integration request parameters or templates. func (o LookupMethodResultOutput) RequestParameters() pulumi.AnyOutput { return o.ApplyT(func(v LookupMethodResult) interface{} { return v.RequestParameters }).(pulumi.AnyOutput) } -// The ID of the associated request validator. +// The identifier of a RequestValidator for request validation. func (o LookupMethodResultOutput) RequestValidatorId() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupMethodResult) *string { return v.RequestValidatorId }).(pulumi.StringPtrOutput) } diff --git a/sdk/go/aws/apigateway/getModel.go b/sdk/go/aws/apigateway/getModel.go index 7e0ac89ef7..b44cb62be6 100644 --- a/sdk/go/aws/apigateway/getModel.go +++ b/sdk/go/aws/apigateway/getModel.go @@ -12,7 +12,7 @@ import ( "github.com/pulumi/pulumi/sdk/v3/go/pulumix" ) -// Resource Type definition for AWS::ApiGateway::Model +// The “AWS::ApiGateway::Model“ resource defines the structure of a request or response payload for an API method. func LookupModel(ctx *pulumi.Context, args *LookupModelArgs, opts ...pulumi.InvokeOption) (*LookupModelResult, error) { opts = internal.PkgInvokeDefaultOpts(opts) var rv LookupModelResult @@ -24,16 +24,17 @@ func LookupModel(ctx *pulumi.Context, args *LookupModelArgs, opts ...pulumi.Invo } type LookupModelArgs struct { - // A name for the model. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the model name. + // A name for the model. If you don't specify a name, CFN generates a unique physical ID and uses that ID for the model name. For more information, see [Name Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html). + // 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. Name string `pulumi:"name"` - // The ID of a REST API with which to associate this model. + // The string identifier of the associated RestApi. RestApiId string `pulumi:"restApiId"` } type LookupModelResult struct { - // A description that identifies this model. + // The description of the model. Description *string `pulumi:"description"` - // The schema to use to transform data to one or more output formats. Specify null ({}) if you don't want to specify a schema. + // The schema for the model. For ``application/json`` models, this should be JSON schema draft 4 model. Do not include "\*/" characters in the description of any properties because such "\*/" characters may be interpreted as the closing marker for comments in some languages, such as Java or JavaScript, causing the installation of your API's SDK generated by API Gateway to fail. Schema interface{} `pulumi:"schema"` } @@ -51,9 +52,10 @@ func LookupModelOutput(ctx *pulumi.Context, args LookupModelOutputArgs, opts ... } type LookupModelOutputArgs struct { - // A name for the model. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the model name. + // A name for the model. If you don't specify a name, CFN generates a unique physical ID and uses that ID for the model name. For more information, see [Name Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html). + // 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. Name pulumi.StringInput `pulumi:"name"` - // The ID of a REST API with which to associate this model. + // The string identifier of the associated RestApi. RestApiId pulumi.StringInput `pulumi:"restApiId"` } @@ -81,12 +83,12 @@ func (o LookupModelResultOutput) ToOutput(ctx context.Context) pulumix.Output[Lo } } -// A description that identifies this model. +// The description of the model. func (o LookupModelResultOutput) Description() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupModelResult) *string { return v.Description }).(pulumi.StringPtrOutput) } -// The schema to use to transform data to one or more output formats. Specify null ({}) if you don't want to specify a schema. +// The schema for the model. For “application/json“ models, this should be JSON schema draft 4 model. Do not include "\*/" characters in the description of any properties because such "\*/" characters may be interpreted as the closing marker for comments in some languages, such as Java or JavaScript, causing the installation of your API's SDK generated by API Gateway to fail. func (o LookupModelResultOutput) Schema() pulumi.AnyOutput { return o.ApplyT(func(v LookupModelResult) interface{} { return v.Schema }).(pulumi.AnyOutput) } diff --git a/sdk/go/aws/apigateway/getResource.go b/sdk/go/aws/apigateway/getResource.go index d80b7bc4c9..62531975c2 100644 --- a/sdk/go/aws/apigateway/getResource.go +++ b/sdk/go/aws/apigateway/getResource.go @@ -12,7 +12,7 @@ import ( "github.com/pulumi/pulumi/sdk/v3/go/pulumix" ) -// Resource Type definition for AWS::ApiGateway::Resource +// The “AWS::ApiGateway::Resource“ resource creates a resource in an API. func LookupResource(ctx *pulumi.Context, args *LookupResourceArgs, opts ...pulumi.InvokeOption) (*LookupResourceResult, error) { opts = internal.PkgInvokeDefaultOpts(opts) var rv LookupResourceResult @@ -26,7 +26,7 @@ func LookupResource(ctx *pulumi.Context, args *LookupResourceArgs, opts ...pulum type LookupResourceArgs struct { // A unique primary identifier for a Resource ResourceId string `pulumi:"resourceId"` - // The ID of the RestApi resource in which you want to create this resource.. + // The string identifier of the associated RestApi. RestApiId string `pulumi:"restApiId"` } @@ -51,7 +51,7 @@ func LookupResourceOutput(ctx *pulumi.Context, args LookupResourceOutputArgs, op type LookupResourceOutputArgs struct { // A unique primary identifier for a Resource ResourceId pulumi.StringInput `pulumi:"resourceId"` - // The ID of the RestApi resource in which you want to create this resource.. + // The string identifier of the associated RestApi. RestApiId pulumi.StringInput `pulumi:"restApiId"` } diff --git a/sdk/go/aws/apigateway/getRestApi.go b/sdk/go/aws/apigateway/getRestApi.go index a6fabeac0e..47ec45fc1b 100644 --- a/sdk/go/aws/apigateway/getRestApi.go +++ b/sdk/go/aws/apigateway/getRestApi.go @@ -12,7 +12,9 @@ import ( "github.com/pulumi/pulumi/sdk/v3/go/pulumix" ) -// Resource Type definition for AWS::ApiGateway::RestApi. +// The “AWS::ApiGateway::RestApi“ resource creates a REST API. For more information, see [restapi:create](https://docs.aws.amazon.com/apigateway/latest/api/API_CreateRestApi.html) in the *Amazon API Gateway REST API Reference*. +// +// On January 1, 2016, the Swagger Specification was donated to the [OpenAPI initiative](https://docs.aws.amazon.com/https://www.openapis.org/), becoming the foundation of the OpenAPI Specification. func LookupRestApi(ctx *pulumi.Context, args *LookupRestApiArgs, opts ...pulumi.InvokeOption) (*LookupRestApiResult, error) { opts = internal.PkgInvokeDefaultOpts(opts) var rv LookupRestApiResult @@ -28,17 +30,26 @@ type LookupRestApiArgs struct { } type LookupRestApiResult struct { - ApiKeySourceType *string `pulumi:"apiKeySourceType"` - BinaryMediaTypes []string `pulumi:"binaryMediaTypes"` - Description *string `pulumi:"description"` - DisableExecuteApiEndpoint *bool `pulumi:"disableExecuteApiEndpoint"` - EndpointConfiguration *RestApiEndpointConfiguration `pulumi:"endpointConfiguration"` - MinimumCompressionSize *int `pulumi:"minimumCompressionSize"` - Name *string `pulumi:"name"` - Policy interface{} `pulumi:"policy"` - RestApiId *string `pulumi:"restApiId"` - RootResourceId *string `pulumi:"rootResourceId"` - Tags []RestApiTag `pulumi:"tags"` + // The source of the API key for metering requests according to a usage plan. Valid values are: ``HEADER`` to read the API key from the ``X-API-Key`` header of a request. ``AUTHORIZER`` to read the API key from the ``UsageIdentifierKey`` from a custom authorizer. + ApiKeySourceType *string `pulumi:"apiKeySourceType"` + // The list of binary media types supported by the RestApi. By default, the RestApi supports only UTF-8-encoded text payloads. + BinaryMediaTypes []string `pulumi:"binaryMediaTypes"` + // The description of the RestApi. + Description *string `pulumi:"description"` + // Specifies whether clients can invoke your API by using the default ``execute-api`` endpoint. By default, clients can invoke your API with the default ``https://{api_id}.execute-api.{region}.amazonaws.com`` endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint + DisableExecuteApiEndpoint *bool `pulumi:"disableExecuteApiEndpoint"` + // A list of the endpoint types of the API. Use this property when creating an API. When importing an existing API, specify the endpoint configuration types using the ``Parameters`` property. + EndpointConfiguration *RestApiEndpointConfiguration `pulumi:"endpointConfiguration"` + // A nullable integer that is used to enable compression (with non-negative between 0 and 10485760 (10M) bytes, inclusive) or disable compression (with a null value) on an API. When compression is enabled, compression or decompression is not applied on the payload if the payload size is smaller than this value. Setting it to zero allows compression for any payload size. + MinimumCompressionSize *int `pulumi:"minimumCompressionSize"` + // The name of the RestApi. A name is required if the REST API is not based on an OpenAPI specification. + Name *string `pulumi:"name"` + // A policy document that contains the permissions for the ``RestApi`` resource. To set the ARN for the policy, use the ``!Join`` intrinsic function with ``""`` as delimiter and values of ``"execute-api:/"`` and ``"*"``. + Policy interface{} `pulumi:"policy"` + RestApiId *string `pulumi:"restApiId"` + RootResourceId *string `pulumi:"rootResourceId"` + // The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with ``aws:``. The tag value can be up to 256 characters. + Tags []RestApiTag `pulumi:"tags"` } func LookupRestApiOutput(ctx *pulumi.Context, args LookupRestApiOutputArgs, opts ...pulumi.InvokeOption) LookupRestApiResultOutput { @@ -82,34 +93,42 @@ func (o LookupRestApiResultOutput) ToOutput(ctx context.Context) pulumix.Output[ } } +// The source of the API key for metering requests according to a usage plan. Valid values are: “HEADER“ to read the API key from the “X-API-Key“ header of a request. “AUTHORIZER“ to read the API key from the “UsageIdentifierKey“ from a custom authorizer. func (o LookupRestApiResultOutput) ApiKeySourceType() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupRestApiResult) *string { return v.ApiKeySourceType }).(pulumi.StringPtrOutput) } +// The list of binary media types supported by the RestApi. By default, the RestApi supports only UTF-8-encoded text payloads. func (o LookupRestApiResultOutput) BinaryMediaTypes() pulumi.StringArrayOutput { return o.ApplyT(func(v LookupRestApiResult) []string { return v.BinaryMediaTypes }).(pulumi.StringArrayOutput) } +// The description of the RestApi. func (o LookupRestApiResultOutput) Description() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupRestApiResult) *string { return v.Description }).(pulumi.StringPtrOutput) } +// Specifies whether clients can invoke your API by using the default “execute-api“ endpoint. By default, clients can invoke your API with the default “https://{api_id}.execute-api.{region}.amazonaws.com“ endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint func (o LookupRestApiResultOutput) DisableExecuteApiEndpoint() pulumi.BoolPtrOutput { return o.ApplyT(func(v LookupRestApiResult) *bool { return v.DisableExecuteApiEndpoint }).(pulumi.BoolPtrOutput) } +// A list of the endpoint types of the API. Use this property when creating an API. When importing an existing API, specify the endpoint configuration types using the “Parameters“ property. func (o LookupRestApiResultOutput) EndpointConfiguration() RestApiEndpointConfigurationPtrOutput { return o.ApplyT(func(v LookupRestApiResult) *RestApiEndpointConfiguration { return v.EndpointConfiguration }).(RestApiEndpointConfigurationPtrOutput) } +// A nullable integer that is used to enable compression (with non-negative between 0 and 10485760 (10M) bytes, inclusive) or disable compression (with a null value) on an API. When compression is enabled, compression or decompression is not applied on the payload if the payload size is smaller than this value. Setting it to zero allows compression for any payload size. func (o LookupRestApiResultOutput) MinimumCompressionSize() pulumi.IntPtrOutput { return o.ApplyT(func(v LookupRestApiResult) *int { return v.MinimumCompressionSize }).(pulumi.IntPtrOutput) } +// The name of the RestApi. A name is required if the REST API is not based on an OpenAPI specification. func (o LookupRestApiResultOutput) Name() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupRestApiResult) *string { return v.Name }).(pulumi.StringPtrOutput) } +// A policy document that contains the permissions for the “RestApi“ resource. To set the ARN for the policy, use the “!Join“ intrinsic function with “""“ as delimiter and values of “"execute-api:/"“ and “"*"“. func (o LookupRestApiResultOutput) Policy() pulumi.AnyOutput { return o.ApplyT(func(v LookupRestApiResult) interface{} { return v.Policy }).(pulumi.AnyOutput) } @@ -122,6 +141,7 @@ func (o LookupRestApiResultOutput) RootResourceId() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupRestApiResult) *string { return v.RootResourceId }).(pulumi.StringPtrOutput) } +// The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with “aws:“. The tag value can be up to 256 characters. func (o LookupRestApiResultOutput) Tags() RestApiTagArrayOutput { return o.ApplyT(func(v LookupRestApiResult) []RestApiTag { return v.Tags }).(RestApiTagArrayOutput) } diff --git a/sdk/go/aws/apigateway/getStage.go b/sdk/go/aws/apigateway/getStage.go index 3788ae5d0d..ffc2772915 100644 --- a/sdk/go/aws/apigateway/getStage.go +++ b/sdk/go/aws/apigateway/getStage.go @@ -12,7 +12,7 @@ import ( "github.com/pulumi/pulumi/sdk/v3/go/pulumix" ) -// Resource Type definition for AWS::ApiGateway::Stage +// The “AWS::ApiGateway::Stage“ resource creates a stage for a deployment. func LookupStage(ctx *pulumi.Context, args *LookupStageArgs, opts ...pulumi.InvokeOption) (*LookupStageResult, error) { opts = internal.PkgInvokeDefaultOpts(opts) var rv LookupStageResult @@ -24,36 +24,36 @@ func LookupStage(ctx *pulumi.Context, args *LookupStageArgs, opts ...pulumi.Invo } type LookupStageArgs struct { - // The ID of the RestApi resource that you're deploying with this stage. + // The string identifier of the associated RestApi. RestApiId string `pulumi:"restApiId"` - // The name of the stage, which API Gateway uses as the first path segment in the invoked Uniform Resource Identifier (URI). + // The name of the stage is the first path segment in the Uniform Resource Identifier (URI) of a call to API Gateway. Stage names can only contain alphanumeric characters, hyphens, and underscores. Maximum length is 128 characters. StageName string `pulumi:"stageName"` } type LookupStageResult struct { - // Specifies settings for logging access in this stage. + // Access log settings, including the access log format and access log destination ARN. AccessLogSetting *StageAccessLogSetting `pulumi:"accessLogSetting"` - // Indicates whether cache clustering is enabled for the stage. + // Specifies whether a cache cluster is enabled for the stage. CacheClusterEnabled *bool `pulumi:"cacheClusterEnabled"` - // The stage's cache cluster size. + // The stage's cache capacity in GB. For more information about choosing a cache size, see [Enabling API caching to enhance responsiveness](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html). CacheClusterSize *string `pulumi:"cacheClusterSize"` - // Specifies settings for the canary deployment in this stage. + // Settings for the canary deployment in this stage. CanarySetting *StageCanarySetting `pulumi:"canarySetting"` - // The ID of the client certificate that API Gateway uses to call your integration endpoints in the stage. + // The identifier of a client certificate for an API stage. ClientCertificateId *string `pulumi:"clientCertificateId"` - // The ID of the deployment that the stage is associated with. This parameter is required to create a stage. + // The identifier of the Deployment that the stage points to. DeploymentId *string `pulumi:"deploymentId"` - // A description of the stage. + // The stage's description. Description *string `pulumi:"description"` - // The version ID of the API documentation snapshot. + // The version of the associated API documentation. DocumentationVersion *string `pulumi:"documentationVersion"` - // Settings for all methods in the stage. + // A map that defines the method settings for a Stage resource. Keys (designated as ``/{method_setting_key`` below) are method paths defined as ``{resource_path}/{http_method}`` for an individual method override, or ``/\*/\*`` for overriding all methods in the stage. MethodSettings []StageMethodSetting `pulumi:"methodSettings"` - // An array of arbitrary tags (key-value pairs) to associate with the stage. + // The collection of tags. Each tag element is associated with a given resource. Tags []StageTag `pulumi:"tags"` - // Specifies whether active X-Ray tracing is enabled for this stage. + // Specifies whether active tracing with X-ray is enabled for the Stage. TracingEnabled *bool `pulumi:"tracingEnabled"` - // A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value. + // A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value. Variable names are limited to alphanumeric characters. Values must match the following regular expression: ``[A-Za-z0-9-._~:/?#&=,]+``. Variables interface{} `pulumi:"variables"` } @@ -71,9 +71,9 @@ func LookupStageOutput(ctx *pulumi.Context, args LookupStageOutputArgs, opts ... } type LookupStageOutputArgs struct { - // The ID of the RestApi resource that you're deploying with this stage. + // The string identifier of the associated RestApi. RestApiId pulumi.StringInput `pulumi:"restApiId"` - // The name of the stage, which API Gateway uses as the first path segment in the invoked Uniform Resource Identifier (URI). + // The name of the stage is the first path segment in the Uniform Resource Identifier (URI) of a call to API Gateway. Stage names can only contain alphanumeric characters, hyphens, and underscores. Maximum length is 128 characters. StageName pulumi.StringInput `pulumi:"stageName"` } @@ -101,62 +101,62 @@ func (o LookupStageResultOutput) ToOutput(ctx context.Context) pulumix.Output[Lo } } -// Specifies settings for logging access in this stage. +// Access log settings, including the access log format and access log destination ARN. func (o LookupStageResultOutput) AccessLogSetting() StageAccessLogSettingPtrOutput { return o.ApplyT(func(v LookupStageResult) *StageAccessLogSetting { return v.AccessLogSetting }).(StageAccessLogSettingPtrOutput) } -// Indicates whether cache clustering is enabled for the stage. +// Specifies whether a cache cluster is enabled for the stage. func (o LookupStageResultOutput) CacheClusterEnabled() pulumi.BoolPtrOutput { return o.ApplyT(func(v LookupStageResult) *bool { return v.CacheClusterEnabled }).(pulumi.BoolPtrOutput) } -// The stage's cache cluster size. +// The stage's cache capacity in GB. For more information about choosing a cache size, see [Enabling API caching to enhance responsiveness](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html). func (o LookupStageResultOutput) CacheClusterSize() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupStageResult) *string { return v.CacheClusterSize }).(pulumi.StringPtrOutput) } -// Specifies settings for the canary deployment in this stage. +// Settings for the canary deployment in this stage. func (o LookupStageResultOutput) CanarySetting() StageCanarySettingPtrOutput { return o.ApplyT(func(v LookupStageResult) *StageCanarySetting { return v.CanarySetting }).(StageCanarySettingPtrOutput) } -// The ID of the client certificate that API Gateway uses to call your integration endpoints in the stage. +// The identifier of a client certificate for an API stage. func (o LookupStageResultOutput) ClientCertificateId() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupStageResult) *string { return v.ClientCertificateId }).(pulumi.StringPtrOutput) } -// The ID of the deployment that the stage is associated with. This parameter is required to create a stage. +// The identifier of the Deployment that the stage points to. func (o LookupStageResultOutput) DeploymentId() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupStageResult) *string { return v.DeploymentId }).(pulumi.StringPtrOutput) } -// A description of the stage. +// The stage's description. func (o LookupStageResultOutput) Description() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupStageResult) *string { return v.Description }).(pulumi.StringPtrOutput) } -// The version ID of the API documentation snapshot. +// The version of the associated API documentation. func (o LookupStageResultOutput) DocumentationVersion() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupStageResult) *string { return v.DocumentationVersion }).(pulumi.StringPtrOutput) } -// Settings for all methods in the stage. +// A map that defines the method settings for a Stage resource. Keys (designated as “/{method_setting_key“ below) are method paths defined as “{resource_path}/{http_method}“ for an individual method override, or “/\*/\*“ for overriding all methods in the stage. func (o LookupStageResultOutput) MethodSettings() StageMethodSettingArrayOutput { return o.ApplyT(func(v LookupStageResult) []StageMethodSetting { return v.MethodSettings }).(StageMethodSettingArrayOutput) } -// An array of arbitrary tags (key-value pairs) to associate with the stage. +// The collection of tags. Each tag element is associated with a given resource. func (o LookupStageResultOutput) Tags() StageTagArrayOutput { return o.ApplyT(func(v LookupStageResult) []StageTag { return v.Tags }).(StageTagArrayOutput) } -// Specifies whether active X-Ray tracing is enabled for this stage. +// Specifies whether active tracing with X-ray is enabled for the Stage. func (o LookupStageResultOutput) TracingEnabled() pulumi.BoolPtrOutput { return o.ApplyT(func(v LookupStageResult) *bool { return v.TracingEnabled }).(pulumi.BoolPtrOutput) } -// A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value. +// A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value. Variable names are limited to alphanumeric characters. Values must match the following regular expression: “[A-Za-z0-9-._~:/?#&=,]+“. func (o LookupStageResultOutput) Variables() pulumi.AnyOutput { return o.ApplyT(func(v LookupStageResult) interface{} { return v.Variables }).(pulumi.AnyOutput) } diff --git a/sdk/go/aws/apigateway/getUsagePlanKey.go b/sdk/go/aws/apigateway/getUsagePlanKey.go index 929b90cafd..d22588af41 100644 --- a/sdk/go/aws/apigateway/getUsagePlanKey.go +++ b/sdk/go/aws/apigateway/getUsagePlanKey.go @@ -12,7 +12,7 @@ import ( "github.com/pulumi/pulumi/sdk/v3/go/pulumix" ) -// Resource Type definition for AWS::ApiGateway::UsagePlanKey +// The “AWS::ApiGateway::UsagePlanKey“ resource associates an API key with a usage plan. This association determines which users the usage plan is applied to. func LookupUsagePlanKey(ctx *pulumi.Context, args *LookupUsagePlanKeyArgs, opts ...pulumi.InvokeOption) (*LookupUsagePlanKeyResult, error) { opts = internal.PkgInvokeDefaultOpts(opts) var rv LookupUsagePlanKeyResult diff --git a/sdk/go/aws/apigateway/method.go b/sdk/go/aws/apigateway/method.go index abf10668f5..7b4c53c3ed 100644 --- a/sdk/go/aws/apigateway/method.go +++ b/sdk/go/aws/apigateway/method.go @@ -13,35 +13,36 @@ import ( "github.com/pulumi/pulumi/sdk/v3/go/pulumix" ) -// Resource Type definition for AWS::ApiGateway::Method +// The “AWS::ApiGateway::Method“ resource creates API Gateway methods that define the parameters and body that clients must send in their requests. type Method struct { pulumi.CustomResourceState - // Indicates whether the method requires clients to submit a valid API key. + // A boolean flag specifying whether a valid ApiKey is required to invoke this method. ApiKeyRequired pulumi.BoolPtrOutput `pulumi:"apiKeyRequired"` - // A list of authorization scopes configured on the method. + // A list of authorization scopes configured on the method. The scopes are used with a ``COGNITO_USER_POOLS`` authorizer to authorize the method invocation. The authorization works by matching the method scopes against the scopes parsed from the access token in the incoming request. The method invocation is authorized if any method scopes matches a claimed scope in the access token. Otherwise, the invocation is not authorized. When the method scope is configured, the client must provide an access token instead of an identity token for authorization purposes. AuthorizationScopes pulumi.StringArrayOutput `pulumi:"authorizationScopes"` - // The method's authorization type. + // The method's authorization type. This parameter is required. For valid values, see [Method](https://docs.aws.amazon.com/apigateway/latest/api/API_Method.html) in the *API Gateway API Reference*. + // If you specify the ``AuthorizerId`` property, specify ``CUSTOM`` or ``COGNITO_USER_POOLS`` for this property. AuthorizationType MethodAuthorizationTypePtrOutput `pulumi:"authorizationType"` - // The identifier of the authorizer to use on this method. + // The identifier of an authorizer to use on this method. The method's authorization type must be ``CUSTOM`` or ``COGNITO_USER_POOLS``. AuthorizerId pulumi.StringPtrOutput `pulumi:"authorizerId"` - // The backend system that the method calls when it receives a request. + // The method's HTTP verb. HttpMethod pulumi.StringOutput `pulumi:"httpMethod"` - // The backend system that the method calls when it receives a request. + // Represents an ``HTTP``, ``HTTP_PROXY``, ``AWS``, ``AWS_PROXY``, or Mock integration. Integration MethodIntegrationPtrOutput `pulumi:"integration"` - // The responses that can be sent to the client who calls the method. + // Gets a method response associated with a given HTTP status code. MethodResponses MethodResponseArrayOutput `pulumi:"methodResponses"` - // A friendly operation name for the method. + // A human-friendly operation identifier for the method. For example, you can assign the ``operationName`` of ``ListPets`` for the ``GET /pets`` method in the ``PetStore`` example. OperationName pulumi.StringPtrOutput `pulumi:"operationName"` - // The resources that are used for the request's content type. Specify request models as key-value pairs (string-to-string mapping), with a content type as the key and a Model resource name as the value. + // A key-value map specifying data schemas, represented by Model resources, (as the mapped value) of the request payloads of given content types (as the mapping key). RequestModels pulumi.AnyOutput `pulumi:"requestModels"` - // The request parameters that API Gateway accepts. Specify request parameters as key-value pairs (string-to-Boolean mapping), with a source as the key and a Boolean as the value. + // A key-value map defining required or optional method request parameters that can be accepted by API Gateway. A key is a method request parameter name matching the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and ``name`` is a valid and unique parameter name. The value associated with the key is a Boolean flag indicating whether the parameter is required (``true``) or optional (``false``). The method request parameter names defined here are available in Integration to be mapped to integration request parameters or templates. RequestParameters pulumi.AnyOutput `pulumi:"requestParameters"` - // The ID of the associated request validator. + // The identifier of a RequestValidator for request validation. RequestValidatorId pulumi.StringPtrOutput `pulumi:"requestValidatorId"` - // The ID of an API Gateway resource. + // The Resource identifier for the MethodResponse resource. ResourceId pulumi.StringOutput `pulumi:"resourceId"` - // The ID of the RestApi resource in which API Gateway creates the method. + // The string identifier of the associated RestApi. RestApiId pulumi.StringOutput `pulumi:"restApiId"` } @@ -100,61 +101,63 @@ func (MethodState) ElementType() reflect.Type { } type methodArgs struct { - // Indicates whether the method requires clients to submit a valid API key. + // A boolean flag specifying whether a valid ApiKey is required to invoke this method. ApiKeyRequired *bool `pulumi:"apiKeyRequired"` - // A list of authorization scopes configured on the method. + // A list of authorization scopes configured on the method. The scopes are used with a ``COGNITO_USER_POOLS`` authorizer to authorize the method invocation. The authorization works by matching the method scopes against the scopes parsed from the access token in the incoming request. The method invocation is authorized if any method scopes matches a claimed scope in the access token. Otherwise, the invocation is not authorized. When the method scope is configured, the client must provide an access token instead of an identity token for authorization purposes. AuthorizationScopes []string `pulumi:"authorizationScopes"` - // The method's authorization type. + // The method's authorization type. This parameter is required. For valid values, see [Method](https://docs.aws.amazon.com/apigateway/latest/api/API_Method.html) in the *API Gateway API Reference*. + // If you specify the ``AuthorizerId`` property, specify ``CUSTOM`` or ``COGNITO_USER_POOLS`` for this property. AuthorizationType *MethodAuthorizationType `pulumi:"authorizationType"` - // The identifier of the authorizer to use on this method. + // The identifier of an authorizer to use on this method. The method's authorization type must be ``CUSTOM`` or ``COGNITO_USER_POOLS``. AuthorizerId *string `pulumi:"authorizerId"` - // The backend system that the method calls when it receives a request. + // The method's HTTP verb. HttpMethod string `pulumi:"httpMethod"` - // The backend system that the method calls when it receives a request. + // Represents an ``HTTP``, ``HTTP_PROXY``, ``AWS``, ``AWS_PROXY``, or Mock integration. Integration *MethodIntegration `pulumi:"integration"` - // The responses that can be sent to the client who calls the method. + // Gets a method response associated with a given HTTP status code. MethodResponses []MethodResponse `pulumi:"methodResponses"` - // A friendly operation name for the method. + // A human-friendly operation identifier for the method. For example, you can assign the ``operationName`` of ``ListPets`` for the ``GET /pets`` method in the ``PetStore`` example. OperationName *string `pulumi:"operationName"` - // The resources that are used for the request's content type. Specify request models as key-value pairs (string-to-string mapping), with a content type as the key and a Model resource name as the value. + // A key-value map specifying data schemas, represented by Model resources, (as the mapped value) of the request payloads of given content types (as the mapping key). RequestModels interface{} `pulumi:"requestModels"` - // The request parameters that API Gateway accepts. Specify request parameters as key-value pairs (string-to-Boolean mapping), with a source as the key and a Boolean as the value. + // A key-value map defining required or optional method request parameters that can be accepted by API Gateway. A key is a method request parameter name matching the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and ``name`` is a valid and unique parameter name. The value associated with the key is a Boolean flag indicating whether the parameter is required (``true``) or optional (``false``). The method request parameter names defined here are available in Integration to be mapped to integration request parameters or templates. RequestParameters interface{} `pulumi:"requestParameters"` - // The ID of the associated request validator. + // The identifier of a RequestValidator for request validation. RequestValidatorId *string `pulumi:"requestValidatorId"` - // The ID of an API Gateway resource. + // The Resource identifier for the MethodResponse resource. ResourceId string `pulumi:"resourceId"` - // The ID of the RestApi resource in which API Gateway creates the method. + // The string identifier of the associated RestApi. RestApiId string `pulumi:"restApiId"` } // The set of arguments for constructing a Method resource. type MethodArgs struct { - // Indicates whether the method requires clients to submit a valid API key. + // A boolean flag specifying whether a valid ApiKey is required to invoke this method. ApiKeyRequired pulumi.BoolPtrInput - // A list of authorization scopes configured on the method. + // A list of authorization scopes configured on the method. The scopes are used with a ``COGNITO_USER_POOLS`` authorizer to authorize the method invocation. The authorization works by matching the method scopes against the scopes parsed from the access token in the incoming request. The method invocation is authorized if any method scopes matches a claimed scope in the access token. Otherwise, the invocation is not authorized. When the method scope is configured, the client must provide an access token instead of an identity token for authorization purposes. AuthorizationScopes pulumi.StringArrayInput - // The method's authorization type. + // The method's authorization type. This parameter is required. For valid values, see [Method](https://docs.aws.amazon.com/apigateway/latest/api/API_Method.html) in the *API Gateway API Reference*. + // If you specify the ``AuthorizerId`` property, specify ``CUSTOM`` or ``COGNITO_USER_POOLS`` for this property. AuthorizationType MethodAuthorizationTypePtrInput - // The identifier of the authorizer to use on this method. + // The identifier of an authorizer to use on this method. The method's authorization type must be ``CUSTOM`` or ``COGNITO_USER_POOLS``. AuthorizerId pulumi.StringPtrInput - // The backend system that the method calls when it receives a request. + // The method's HTTP verb. HttpMethod pulumi.StringInput - // The backend system that the method calls when it receives a request. + // Represents an ``HTTP``, ``HTTP_PROXY``, ``AWS``, ``AWS_PROXY``, or Mock integration. Integration MethodIntegrationPtrInput - // The responses that can be sent to the client who calls the method. + // Gets a method response associated with a given HTTP status code. MethodResponses MethodResponseArrayInput - // A friendly operation name for the method. + // A human-friendly operation identifier for the method. For example, you can assign the ``operationName`` of ``ListPets`` for the ``GET /pets`` method in the ``PetStore`` example. OperationName pulumi.StringPtrInput - // The resources that are used for the request's content type. Specify request models as key-value pairs (string-to-string mapping), with a content type as the key and a Model resource name as the value. + // A key-value map specifying data schemas, represented by Model resources, (as the mapped value) of the request payloads of given content types (as the mapping key). RequestModels pulumi.Input - // The request parameters that API Gateway accepts. Specify request parameters as key-value pairs (string-to-Boolean mapping), with a source as the key and a Boolean as the value. + // A key-value map defining required or optional method request parameters that can be accepted by API Gateway. A key is a method request parameter name matching the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and ``name`` is a valid and unique parameter name. The value associated with the key is a Boolean flag indicating whether the parameter is required (``true``) or optional (``false``). The method request parameter names defined here are available in Integration to be mapped to integration request parameters or templates. RequestParameters pulumi.Input - // The ID of the associated request validator. + // The identifier of a RequestValidator for request validation. RequestValidatorId pulumi.StringPtrInput - // The ID of an API Gateway resource. + // The Resource identifier for the MethodResponse resource. ResourceId pulumi.StringInput - // The ID of the RestApi resource in which API Gateway creates the method. + // The string identifier of the associated RestApi. RestApiId pulumi.StringInput } @@ -207,67 +210,69 @@ func (o MethodOutput) ToOutput(ctx context.Context) pulumix.Output[*Method] { } } -// Indicates whether the method requires clients to submit a valid API key. +// A boolean flag specifying whether a valid ApiKey is required to invoke this method. func (o MethodOutput) ApiKeyRequired() pulumi.BoolPtrOutput { return o.ApplyT(func(v *Method) pulumi.BoolPtrOutput { return v.ApiKeyRequired }).(pulumi.BoolPtrOutput) } -// A list of authorization scopes configured on the method. +// A list of authorization scopes configured on the method. The scopes are used with a “COGNITO_USER_POOLS“ authorizer to authorize the method invocation. The authorization works by matching the method scopes against the scopes parsed from the access token in the incoming request. The method invocation is authorized if any method scopes matches a claimed scope in the access token. Otherwise, the invocation is not authorized. When the method scope is configured, the client must provide an access token instead of an identity token for authorization purposes. func (o MethodOutput) AuthorizationScopes() pulumi.StringArrayOutput { return o.ApplyT(func(v *Method) pulumi.StringArrayOutput { return v.AuthorizationScopes }).(pulumi.StringArrayOutput) } -// The method's authorization type. +// The method's authorization type. This parameter is required. For valid values, see [Method](https://docs.aws.amazon.com/apigateway/latest/api/API_Method.html) in the *API Gateway API Reference*. +// +// If you specify the ``AuthorizerId`` property, specify ``CUSTOM`` or ``COGNITO_USER_POOLS`` for this property. func (o MethodOutput) AuthorizationType() MethodAuthorizationTypePtrOutput { return o.ApplyT(func(v *Method) MethodAuthorizationTypePtrOutput { return v.AuthorizationType }).(MethodAuthorizationTypePtrOutput) } -// The identifier of the authorizer to use on this method. +// The identifier of an authorizer to use on this method. The method's authorization type must be “CUSTOM“ or “COGNITO_USER_POOLS“. func (o MethodOutput) AuthorizerId() pulumi.StringPtrOutput { return o.ApplyT(func(v *Method) pulumi.StringPtrOutput { return v.AuthorizerId }).(pulumi.StringPtrOutput) } -// The backend system that the method calls when it receives a request. +// The method's HTTP verb. func (o MethodOutput) HttpMethod() pulumi.StringOutput { return o.ApplyT(func(v *Method) pulumi.StringOutput { return v.HttpMethod }).(pulumi.StringOutput) } -// The backend system that the method calls when it receives a request. +// Represents an “HTTP“, “HTTP_PROXY“, “AWS“, “AWS_PROXY“, or Mock integration. func (o MethodOutput) Integration() MethodIntegrationPtrOutput { return o.ApplyT(func(v *Method) MethodIntegrationPtrOutput { return v.Integration }).(MethodIntegrationPtrOutput) } -// The responses that can be sent to the client who calls the method. +// Gets a method response associated with a given HTTP status code. func (o MethodOutput) MethodResponses() MethodResponseArrayOutput { return o.ApplyT(func(v *Method) MethodResponseArrayOutput { return v.MethodResponses }).(MethodResponseArrayOutput) } -// A friendly operation name for the method. +// A human-friendly operation identifier for the method. For example, you can assign the “operationName“ of “ListPets“ for the “GET /pets“ method in the “PetStore“ example. func (o MethodOutput) OperationName() pulumi.StringPtrOutput { return o.ApplyT(func(v *Method) pulumi.StringPtrOutput { return v.OperationName }).(pulumi.StringPtrOutput) } -// The resources that are used for the request's content type. Specify request models as key-value pairs (string-to-string mapping), with a content type as the key and a Model resource name as the value. +// A key-value map specifying data schemas, represented by Model resources, (as the mapped value) of the request payloads of given content types (as the mapping key). func (o MethodOutput) RequestModels() pulumi.AnyOutput { return o.ApplyT(func(v *Method) pulumi.AnyOutput { return v.RequestModels }).(pulumi.AnyOutput) } -// The request parameters that API Gateway accepts. Specify request parameters as key-value pairs (string-to-Boolean mapping), with a source as the key and a Boolean as the value. +// A key-value map defining required or optional method request parameters that can be accepted by API Gateway. A key is a method request parameter name matching the pattern of “method.request.{location}.{name}“, where “location“ is “querystring“, “path“, or “header“ and “name“ is a valid and unique parameter name. The value associated with the key is a Boolean flag indicating whether the parameter is required (“true“) or optional (“false“). The method request parameter names defined here are available in Integration to be mapped to integration request parameters or templates. func (o MethodOutput) RequestParameters() pulumi.AnyOutput { return o.ApplyT(func(v *Method) pulumi.AnyOutput { return v.RequestParameters }).(pulumi.AnyOutput) } -// The ID of the associated request validator. +// The identifier of a RequestValidator for request validation. func (o MethodOutput) RequestValidatorId() pulumi.StringPtrOutput { return o.ApplyT(func(v *Method) pulumi.StringPtrOutput { return v.RequestValidatorId }).(pulumi.StringPtrOutput) } -// The ID of an API Gateway resource. +// The Resource identifier for the MethodResponse resource. func (o MethodOutput) ResourceId() pulumi.StringOutput { return o.ApplyT(func(v *Method) pulumi.StringOutput { return v.ResourceId }).(pulumi.StringOutput) } -// The ID of the RestApi resource in which API Gateway creates the method. +// The string identifier of the associated RestApi. func (o MethodOutput) RestApiId() pulumi.StringOutput { return o.ApplyT(func(v *Method) pulumi.StringOutput { return v.RestApiId }).(pulumi.StringOutput) } diff --git a/sdk/go/aws/apigateway/model.go b/sdk/go/aws/apigateway/model.go index dc434d3275..019b464fe5 100644 --- a/sdk/go/aws/apigateway/model.go +++ b/sdk/go/aws/apigateway/model.go @@ -13,19 +13,20 @@ import ( "github.com/pulumi/pulumi/sdk/v3/go/pulumix" ) -// Resource Type definition for AWS::ApiGateway::Model +// The “AWS::ApiGateway::Model“ resource defines the structure of a request or response payload for an API method. type Model struct { pulumi.CustomResourceState - // The content type for the model. + // The content-type for the model. ContentType pulumi.StringPtrOutput `pulumi:"contentType"` - // A description that identifies this model. + // The description of the model. Description pulumi.StringPtrOutput `pulumi:"description"` - // A name for the model. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the model name. + // A name for the model. If you don't specify a name, CFN generates a unique physical ID and uses that ID for the model name. For more information, see [Name Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html). + // 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. Name pulumi.StringPtrOutput `pulumi:"name"` - // The ID of a REST API with which to associate this model. + // The string identifier of the associated RestApi. RestApiId pulumi.StringOutput `pulumi:"restApiId"` - // The schema to use to transform data to one or more output formats. Specify null ({}) if you don't want to specify a schema. + // The schema for the model. For ``application/json`` models, this should be JSON schema draft 4 model. Do not include "\*/" characters in the description of any properties because such "\*/" characters may be interpreted as the closing marker for comments in some languages, such as Java or JavaScript, causing the installation of your API's SDK generated by API Gateway to fail. Schema pulumi.AnyOutput `pulumi:"schema"` } @@ -78,29 +79,31 @@ func (ModelState) ElementType() reflect.Type { } type modelArgs struct { - // The content type for the model. + // The content-type for the model. ContentType *string `pulumi:"contentType"` - // A description that identifies this model. + // The description of the model. Description *string `pulumi:"description"` - // A name for the model. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the model name. + // A name for the model. If you don't specify a name, CFN generates a unique physical ID and uses that ID for the model name. For more information, see [Name Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html). + // 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. Name *string `pulumi:"name"` - // The ID of a REST API with which to associate this model. + // The string identifier of the associated RestApi. RestApiId string `pulumi:"restApiId"` - // The schema to use to transform data to one or more output formats. Specify null ({}) if you don't want to specify a schema. + // The schema for the model. For ``application/json`` models, this should be JSON schema draft 4 model. Do not include "\*/" characters in the description of any properties because such "\*/" characters may be interpreted as the closing marker for comments in some languages, such as Java or JavaScript, causing the installation of your API's SDK generated by API Gateway to fail. Schema interface{} `pulumi:"schema"` } // The set of arguments for constructing a Model resource. type ModelArgs struct { - // The content type for the model. + // The content-type for the model. ContentType pulumi.StringPtrInput - // A description that identifies this model. + // The description of the model. Description pulumi.StringPtrInput - // A name for the model. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the model name. + // A name for the model. If you don't specify a name, CFN generates a unique physical ID and uses that ID for the model name. For more information, see [Name Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html). + // 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. Name pulumi.StringPtrInput - // The ID of a REST API with which to associate this model. + // The string identifier of the associated RestApi. RestApiId pulumi.StringInput - // The schema to use to transform data to one or more output formats. Specify null ({}) if you don't want to specify a schema. + // The schema for the model. For ``application/json`` models, this should be JSON schema draft 4 model. Do not include "\*/" characters in the description of any properties because such "\*/" characters may be interpreted as the closing marker for comments in some languages, such as Java or JavaScript, causing the installation of your API's SDK generated by API Gateway to fail. Schema pulumi.Input } @@ -153,27 +156,29 @@ func (o ModelOutput) ToOutput(ctx context.Context) pulumix.Output[*Model] { } } -// The content type for the model. +// The content-type for the model. func (o ModelOutput) ContentType() pulumi.StringPtrOutput { return o.ApplyT(func(v *Model) pulumi.StringPtrOutput { return v.ContentType }).(pulumi.StringPtrOutput) } -// A description that identifies this model. +// The description of the model. func (o ModelOutput) Description() pulumi.StringPtrOutput { return o.ApplyT(func(v *Model) pulumi.StringPtrOutput { return v.Description }).(pulumi.StringPtrOutput) } -// A name for the model. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the model name. +// A name for the model. If you don't specify a name, CFN generates a unique physical ID and uses that ID for the model name. For more information, see [Name Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html). +// +// 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. func (o ModelOutput) Name() pulumi.StringPtrOutput { return o.ApplyT(func(v *Model) pulumi.StringPtrOutput { return v.Name }).(pulumi.StringPtrOutput) } -// The ID of a REST API with which to associate this model. +// The string identifier of the associated RestApi. func (o ModelOutput) RestApiId() pulumi.StringOutput { return o.ApplyT(func(v *Model) pulumi.StringOutput { return v.RestApiId }).(pulumi.StringOutput) } -// The schema to use to transform data to one or more output formats. Specify null ({}) if you don't want to specify a schema. +// The schema for the model. For “application/json“ models, this should be JSON schema draft 4 model. Do not include "\*/" characters in the description of any properties because such "\*/" characters may be interpreted as the closing marker for comments in some languages, such as Java or JavaScript, causing the installation of your API's SDK generated by API Gateway to fail. func (o ModelOutput) Schema() pulumi.AnyOutput { return o.ApplyT(func(v *Model) pulumi.AnyOutput { return v.Schema }).(pulumi.AnyOutput) } diff --git a/sdk/go/aws/apigateway/pulumiEnums.go b/sdk/go/aws/apigateway/pulumiEnums.go index 9d5fb528d4..d81399f54c 100644 --- a/sdk/go/aws/apigateway/pulumiEnums.go +++ b/sdk/go/aws/apigateway/pulumiEnums.go @@ -11,7 +11,7 @@ import ( "github.com/pulumi/pulumi/sdk/v3/go/pulumix" ) -// The type of API entity that the documentation content applies to. +// The type of API entity to which the documentation content applies. Valid values are “API“, “AUTHORIZER“, “MODEL“, “RESOURCE“, “METHOD“, “PATH_PARAMETER“, “QUERY_PARAMETER“, “REQUEST_HEADER“, “REQUEST_BODY“, “RESPONSE“, “RESPONSE_HEADER“, and “RESPONSE_BODY“. Content inheritance does not apply to any entity of the “API“, “AUTHORIZER“, “METHOD“, “MODEL“, “REQUEST_BODY“, or “RESOURCE“ type. type DocumentationPartLocationType string const ( @@ -204,7 +204,9 @@ func (in *documentationPartLocationTypePtr) ToOutput(ctx context.Context) pulumi } } -// The method's authorization type. +// The method's authorization type. This parameter is required. For valid values, see [Method](https://docs.aws.amazon.com/apigateway/latest/api/API_Method.html) in the *API Gateway API Reference*. +// +// If you specify the ``AuthorizerId`` property, specify ``CUSTOM`` or ``COGNITO_USER_POOLS`` for this property. type MethodAuthorizationType string const ( @@ -389,7 +391,7 @@ func (in *methodAuthorizationTypePtr) ToOutput(ctx context.Context) pulumix.Outp } } -// The type of the network connection to the integration endpoint. +// The type of the network connection to the integration endpoint. The valid value is “INTERNET“ for connections through the public routable internet or “VPC_LINK“ for private connections between API Gateway and a network load balancer in a VPC. The default value is “INTERNET“. type MethodIntegrationConnectionType string const ( @@ -572,7 +574,9 @@ func (in *methodIntegrationConnectionTypePtr) ToOutput(ctx context.Context) pulu } } -// Specifies how to handle request payload content type conversions. +// Specifies how to handle request payload content type conversions. Supported values are “CONVERT_TO_BINARY“ and “CONVERT_TO_TEXT“, with the following behaviors: +// +// If this property is not defined, the request payload will be passed through from the method request to integration request without modification, provided that the ``passthroughBehavior`` is configured to support payload pass-through. type MethodIntegrationContentHandling string const ( @@ -755,7 +759,7 @@ func (in *methodIntegrationContentHandlingPtr) ToOutput(ctx context.Context) pul } } -// Indicates when API Gateway passes requests to the targeted backend. +// Specifies how the method request body of an unmapped content type will be passed through the integration request to the back end without transformation. A content type is unmapped if no mapping template is defined in the integration or the content type does not match any of the mapped content types, as specified in “requestTemplates“. The valid value is one of the following: “WHEN_NO_MATCH“: passes the method request body through the integration request to the back end without transformation when the method request content type does not match any content type associated with the mapping templates defined in the integration request. “WHEN_NO_TEMPLATES“: passes the method request body through the integration request to the back end without transformation when no mapping template is defined in the integration request. If a template is defined when this option is selected, the method request of an unmapped content-type will be rejected with an HTTP 415 Unsupported Media Type response. “NEVER“: rejects the method request with an HTTP 415 Unsupported Media Type response when either the method request content type does not match any content type associated with the mapping templates defined in the integration request or no mapping template is defined in the integration request. type MethodIntegrationPassthroughBehavior string const ( @@ -939,7 +943,9 @@ func (in *methodIntegrationPassthroughBehaviorPtr) ToOutput(ctx context.Context) } } -// Specifies how to handle request payload content type conversions. +// Specifies how to handle response payload content type conversions. Supported values are “CONVERT_TO_BINARY“ and “CONVERT_TO_TEXT“, with the following behaviors: +// +// If this property is not defined, the response payload will be passed through from the integration response to the method response without modification. type MethodIntegrationResponseContentHandling string const ( @@ -1122,7 +1128,9 @@ func (in *methodIntegrationResponseContentHandlingPtr) ToOutput(ctx context.Cont } } -// The type of backend that your method is running. +// Specifies an API method integration type. The valid value is one of the following: +// +// For the HTTP and HTTP proxy integrations, each integration can specify a protocol (``http/https``), port and path. Standard 80 and 443 ports are supported as well as custom ports above 1024. An HTTP or HTTP proxy integration with a ``connectionType`` of ``VPC_LINK`` is referred to as a private integration and uses a VpcLink to connect API Gateway to a network load balancer of a VPC. type MethodIntegrationType string const ( @@ -1308,7 +1316,7 @@ func (in *methodIntegrationTypePtr) ToOutput(ctx context.Context) pulumix.Output } } -// The type of usage plan key. Currently, the only valid key type is API_KEY. +// The type of a UsagePlanKey resource for a plan customer. type UsagePlanKeyKeyType string const ( diff --git a/sdk/go/aws/apigateway/pulumiTypes.go b/sdk/go/aws/apigateway/pulumiTypes.go index cddc739d03..b5d3efd197 100644 --- a/sdk/go/aws/apigateway/pulumiTypes.go +++ b/sdk/go/aws/apigateway/pulumiTypes.go @@ -398,10 +398,13 @@ func (o ClientCertificateTagArrayOutput) Index(i pulumi.IntInput) ClientCertific }).(ClientCertificateTagOutput) } +// The “AccessLogSetting“ property type specifies settings for logging access in this stage. +// +// ``AccessLogSetting`` is a property of the [StageDescription](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html) property type. type DeploymentAccessLogSetting struct { - // The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with amazon-apigateway-. + // The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with ``amazon-apigateway-``. DestinationArn *string `pulumi:"destinationArn"` - // A single line format of the access logs of data, as specified by selected $context variables. The format must include at least $context.requestId. + // A single line format of the access logs of data, as specified by selected $context variables. The format must include at least ``$context.requestId``. Format *string `pulumi:"format"` } @@ -416,10 +419,13 @@ type DeploymentAccessLogSettingInput interface { ToDeploymentAccessLogSettingOutputWithContext(context.Context) DeploymentAccessLogSettingOutput } +// The “AccessLogSetting“ property type specifies settings for logging access in this stage. +// +// ``AccessLogSetting`` is a property of the [StageDescription](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html) property type. type DeploymentAccessLogSettingArgs struct { - // The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with amazon-apigateway-. + // The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with ``amazon-apigateway-``. DestinationArn pulumi.StringPtrInput `pulumi:"destinationArn"` - // A single line format of the access logs of data, as specified by selected $context variables. The format must include at least $context.requestId. + // A single line format of the access logs of data, as specified by selected $context variables. The format must include at least ``$context.requestId``. Format pulumi.StringPtrInput `pulumi:"format"` } @@ -488,6 +494,9 @@ func (i *deploymentAccessLogSettingPtrType) ToOutput(ctx context.Context) pulumi } } +// The “AccessLogSetting“ property type specifies settings for logging access in this stage. +// +// ``AccessLogSetting`` is a property of the [StageDescription](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html) property type. type DeploymentAccessLogSettingOutput struct{ *pulumi.OutputState } func (DeploymentAccessLogSettingOutput) ElementType() reflect.Type { @@ -518,12 +527,12 @@ func (o DeploymentAccessLogSettingOutput) ToOutput(ctx context.Context) pulumix. } } -// The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with amazon-apigateway-. +// The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with “amazon-apigateway-“. func (o DeploymentAccessLogSettingOutput) DestinationArn() pulumi.StringPtrOutput { return o.ApplyT(func(v DeploymentAccessLogSetting) *string { return v.DestinationArn }).(pulumi.StringPtrOutput) } -// A single line format of the access logs of data, as specified by selected $context variables. The format must include at least $context.requestId. +// A single line format of the access logs of data, as specified by selected $context variables. The format must include at least “$context.requestId“. func (o DeploymentAccessLogSettingOutput) Format() pulumi.StringPtrOutput { return o.ApplyT(func(v DeploymentAccessLogSetting) *string { return v.Format }).(pulumi.StringPtrOutput) } @@ -558,7 +567,7 @@ func (o DeploymentAccessLogSettingPtrOutput) Elem() DeploymentAccessLogSettingOu }).(DeploymentAccessLogSettingOutput) } -// The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with amazon-apigateway-. +// The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with “amazon-apigateway-“. func (o DeploymentAccessLogSettingPtrOutput) DestinationArn() pulumi.StringPtrOutput { return o.ApplyT(func(v *DeploymentAccessLogSetting) *string { if v == nil { @@ -568,7 +577,7 @@ func (o DeploymentAccessLogSettingPtrOutput) DestinationArn() pulumi.StringPtrOu }).(pulumi.StringPtrOutput) } -// A single line format of the access logs of data, as specified by selected $context variables. The format must include at least $context.requestId. +// A single line format of the access logs of data, as specified by selected $context variables. The format must include at least “$context.requestId“. func (o DeploymentAccessLogSettingPtrOutput) Format() pulumi.StringPtrOutput { return o.ApplyT(func(v *DeploymentAccessLogSetting) *string { if v == nil { @@ -578,12 +587,15 @@ func (o DeploymentAccessLogSettingPtrOutput) Format() pulumi.StringPtrOutput { }).(pulumi.StringPtrOutput) } +// The “CanarySetting“ property type specifies settings for the canary deployment in this stage. +// +// ``CanarySetting`` is a property of the [StageDescription](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html) property type. type DeploymentCanarySetting struct { // The percent (0-100) of traffic diverted to a canary deployment. PercentTraffic *float64 `pulumi:"percentTraffic"` // Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values. StageVariableOverrides interface{} `pulumi:"stageVariableOverrides"` - // Whether the canary deployment uses the stage cache or not. + // A Boolean flag to indicate whether the canary deployment uses the stage cache or not. UseStageCache *bool `pulumi:"useStageCache"` } @@ -598,12 +610,15 @@ type DeploymentCanarySettingInput interface { ToDeploymentCanarySettingOutputWithContext(context.Context) DeploymentCanarySettingOutput } +// The “CanarySetting“ property type specifies settings for the canary deployment in this stage. +// +// ``CanarySetting`` is a property of the [StageDescription](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html) property type. type DeploymentCanarySettingArgs struct { // The percent (0-100) of traffic diverted to a canary deployment. PercentTraffic pulumi.Float64PtrInput `pulumi:"percentTraffic"` // Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values. StageVariableOverrides pulumi.Input `pulumi:"stageVariableOverrides"` - // Whether the canary deployment uses the stage cache or not. + // A Boolean flag to indicate whether the canary deployment uses the stage cache or not. UseStageCache pulumi.BoolPtrInput `pulumi:"useStageCache"` } @@ -672,6 +687,9 @@ func (i *deploymentCanarySettingPtrType) ToOutput(ctx context.Context) pulumix.O } } +// The “CanarySetting“ property type specifies settings for the canary deployment in this stage. +// +// ``CanarySetting`` is a property of the [StageDescription](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html) property type. type DeploymentCanarySettingOutput struct{ *pulumi.OutputState } func (DeploymentCanarySettingOutput) ElementType() reflect.Type { @@ -712,7 +730,7 @@ func (o DeploymentCanarySettingOutput) StageVariableOverrides() pulumi.AnyOutput return o.ApplyT(func(v DeploymentCanarySetting) interface{} { return v.StageVariableOverrides }).(pulumi.AnyOutput) } -// Whether the canary deployment uses the stage cache or not. +// A Boolean flag to indicate whether the canary deployment uses the stage cache or not. func (o DeploymentCanarySettingOutput) UseStageCache() pulumi.BoolPtrOutput { return o.ApplyT(func(v DeploymentCanarySetting) *bool { return v.UseStageCache }).(pulumi.BoolPtrOutput) } @@ -767,7 +785,7 @@ func (o DeploymentCanarySettingPtrOutput) StageVariableOverrides() pulumi.AnyOut }).(pulumi.AnyOutput) } -// Whether the canary deployment uses the stage cache or not. +// A Boolean flag to indicate whether the canary deployment uses the stage cache or not. func (o DeploymentCanarySettingPtrOutput) UseStageCache() pulumi.BoolPtrOutput { return o.ApplyT(func(v *DeploymentCanarySetting) *bool { if v == nil { @@ -777,12 +795,13 @@ func (o DeploymentCanarySettingPtrOutput) UseStageCache() pulumi.BoolPtrOutput { }).(pulumi.BoolPtrOutput) } +// The “DeploymentCanarySettings“ property type specifies settings for the canary deployment. type DeploymentCanarySettings struct { - // The percentage (0-100) of traffic diverted to a canary deployment. + // The percentage (0.0-100.0) of traffic routed to the canary deployment. PercentTraffic *float64 `pulumi:"percentTraffic"` - // Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values. Duplicates are not allowed. + // A stage variable overrides used for the canary release deployment. They can override existing stage variables or add new stage variables for the canary release deployment. These stage variables are represented as a string-to-string map between stage variable names and their values. StageVariableOverrides interface{} `pulumi:"stageVariableOverrides"` - // Whether the canary deployment uses the stage cache. + // A Boolean flag to indicate whether the canary release deployment uses the stage cache or not. UseStageCache *bool `pulumi:"useStageCache"` } @@ -797,12 +816,13 @@ type DeploymentCanarySettingsInput interface { ToDeploymentCanarySettingsOutputWithContext(context.Context) DeploymentCanarySettingsOutput } +// The “DeploymentCanarySettings“ property type specifies settings for the canary deployment. type DeploymentCanarySettingsArgs struct { - // The percentage (0-100) of traffic diverted to a canary deployment. + // The percentage (0.0-100.0) of traffic routed to the canary deployment. PercentTraffic pulumi.Float64PtrInput `pulumi:"percentTraffic"` - // Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values. Duplicates are not allowed. + // A stage variable overrides used for the canary release deployment. They can override existing stage variables or add new stage variables for the canary release deployment. These stage variables are represented as a string-to-string map between stage variable names and their values. StageVariableOverrides pulumi.Input `pulumi:"stageVariableOverrides"` - // Whether the canary deployment uses the stage cache. + // A Boolean flag to indicate whether the canary release deployment uses the stage cache or not. UseStageCache pulumi.BoolPtrInput `pulumi:"useStageCache"` } @@ -871,6 +891,7 @@ func (i *deploymentCanarySettingsPtrType) ToOutput(ctx context.Context) pulumix. } } +// The “DeploymentCanarySettings“ property type specifies settings for the canary deployment. type DeploymentCanarySettingsOutput struct{ *pulumi.OutputState } func (DeploymentCanarySettingsOutput) ElementType() reflect.Type { @@ -901,17 +922,17 @@ func (o DeploymentCanarySettingsOutput) ToOutput(ctx context.Context) pulumix.Ou } } -// The percentage (0-100) of traffic diverted to a canary deployment. +// The percentage (0.0-100.0) of traffic routed to the canary deployment. func (o DeploymentCanarySettingsOutput) PercentTraffic() pulumi.Float64PtrOutput { return o.ApplyT(func(v DeploymentCanarySettings) *float64 { return v.PercentTraffic }).(pulumi.Float64PtrOutput) } -// Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values. Duplicates are not allowed. +// A stage variable overrides used for the canary release deployment. They can override existing stage variables or add new stage variables for the canary release deployment. These stage variables are represented as a string-to-string map between stage variable names and their values. func (o DeploymentCanarySettingsOutput) StageVariableOverrides() pulumi.AnyOutput { return o.ApplyT(func(v DeploymentCanarySettings) interface{} { return v.StageVariableOverrides }).(pulumi.AnyOutput) } -// Whether the canary deployment uses the stage cache. +// A Boolean flag to indicate whether the canary release deployment uses the stage cache or not. func (o DeploymentCanarySettingsOutput) UseStageCache() pulumi.BoolPtrOutput { return o.ApplyT(func(v DeploymentCanarySettings) *bool { return v.UseStageCache }).(pulumi.BoolPtrOutput) } @@ -946,7 +967,7 @@ func (o DeploymentCanarySettingsPtrOutput) Elem() DeploymentCanarySettingsOutput }).(DeploymentCanarySettingsOutput) } -// The percentage (0-100) of traffic diverted to a canary deployment. +// The percentage (0.0-100.0) of traffic routed to the canary deployment. func (o DeploymentCanarySettingsPtrOutput) PercentTraffic() pulumi.Float64PtrOutput { return o.ApplyT(func(v *DeploymentCanarySettings) *float64 { if v == nil { @@ -956,7 +977,7 @@ func (o DeploymentCanarySettingsPtrOutput) PercentTraffic() pulumi.Float64PtrOut }).(pulumi.Float64PtrOutput) } -// Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values. Duplicates are not allowed. +// A stage variable overrides used for the canary release deployment. They can override existing stage variables or add new stage variables for the canary release deployment. These stage variables are represented as a string-to-string map between stage variable names and their values. func (o DeploymentCanarySettingsPtrOutput) StageVariableOverrides() pulumi.AnyOutput { return o.ApplyT(func(v *DeploymentCanarySettings) interface{} { if v == nil { @@ -966,7 +987,7 @@ func (o DeploymentCanarySettingsPtrOutput) StageVariableOverrides() pulumi.AnyOu }).(pulumi.AnyOutput) } -// Whether the canary deployment uses the stage cache. +// A Boolean flag to indicate whether the canary release deployment uses the stage cache or not. func (o DeploymentCanarySettingsPtrOutput) UseStageCache() pulumi.BoolPtrOutput { return o.ApplyT(func(v *DeploymentCanarySettings) *bool { if v == nil { @@ -976,26 +997,29 @@ func (o DeploymentCanarySettingsPtrOutput) UseStageCache() pulumi.BoolPtrOutput }).(pulumi.BoolPtrOutput) } +// The “MethodSetting“ property type configures settings for all methods in a stage. +// +// The ``MethodSettings`` property of the [Amazon API Gateway Deployment StageDescription](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html) property type contains a list of ``MethodSetting`` property types. type DeploymentMethodSetting struct { - // Indicates whether the cached responses are encrypted + // Specifies whether the cached responses are encrypted. CacheDataEncrypted *bool `pulumi:"cacheDataEncrypted"` - // The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. + // Specifies the time to live (TTL), in seconds, for cached responses. The higher the TTL, the longer the response will be cached. CacheTtlInSeconds *int `pulumi:"cacheTtlInSeconds"` - // Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses. + // Specifies whether responses should be cached and returned for requests. A cache cluster must be enabled on the stage for responses to be cached. CachingEnabled *bool `pulumi:"cachingEnabled"` - // Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs. + // Specifies whether data trace logging is enabled for this method, which affects the log entries pushed to Amazon CloudWatch Logs. This can be useful to troubleshoot APIs, but can result in logging sensitive data. We recommend that you don't enable this option for production APIs. DataTraceEnabled *bool `pulumi:"dataTraceEnabled"` // The HTTP method. HttpMethod *string `pulumi:"httpMethod"` - // The logging level for this method. For valid values, see the loggingLevel property of the Stage resource in the Amazon API Gateway API Reference. + // Specifies the logging level for this method, which affects the log entries pushed to Amazon CloudWatch Logs. Valid values are ``OFF``, ``ERROR``, and ``INFO``. Choose ``ERROR`` to write only error-level entries to CloudWatch Logs, or choose ``INFO`` to include all ``ERROR`` events as well as extra informational events. LoggingLevel *string `pulumi:"loggingLevel"` - // Indicates whether Amazon CloudWatch metrics are enabled for methods in the stage. + // Specifies whether Amazon CloudWatch metrics are enabled for this method. MetricsEnabled *bool `pulumi:"metricsEnabled"` - // The resource path for this method. Forward slashes (/) are encoded as ~1 and the initial slash must include a forward slash. + // The resource path for this method. Forward slashes (``/``) are encoded as ``~1`` and the initial slash must include a forward slash. For example, the path value ``/resource/subresource`` must be encoded as ``/~1resource~1subresource``. To specify the root path, use only a slash (``/``). ResourcePath *string `pulumi:"resourcePath"` - // The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. + // Specifies the throttling burst limit. ThrottlingBurstLimit *int `pulumi:"throttlingBurstLimit"` - // The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. + // Specifies the throttling rate limit. ThrottlingRateLimit *float64 `pulumi:"throttlingRateLimit"` } @@ -1010,26 +1034,29 @@ type DeploymentMethodSettingInput interface { ToDeploymentMethodSettingOutputWithContext(context.Context) DeploymentMethodSettingOutput } +// The “MethodSetting“ property type configures settings for all methods in a stage. +// +// The ``MethodSettings`` property of the [Amazon API Gateway Deployment StageDescription](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html) property type contains a list of ``MethodSetting`` property types. type DeploymentMethodSettingArgs struct { - // Indicates whether the cached responses are encrypted + // Specifies whether the cached responses are encrypted. CacheDataEncrypted pulumi.BoolPtrInput `pulumi:"cacheDataEncrypted"` - // The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. + // Specifies the time to live (TTL), in seconds, for cached responses. The higher the TTL, the longer the response will be cached. CacheTtlInSeconds pulumi.IntPtrInput `pulumi:"cacheTtlInSeconds"` - // Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses. + // Specifies whether responses should be cached and returned for requests. A cache cluster must be enabled on the stage for responses to be cached. CachingEnabled pulumi.BoolPtrInput `pulumi:"cachingEnabled"` - // Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs. + // Specifies whether data trace logging is enabled for this method, which affects the log entries pushed to Amazon CloudWatch Logs. This can be useful to troubleshoot APIs, but can result in logging sensitive data. We recommend that you don't enable this option for production APIs. DataTraceEnabled pulumi.BoolPtrInput `pulumi:"dataTraceEnabled"` // The HTTP method. HttpMethod pulumi.StringPtrInput `pulumi:"httpMethod"` - // The logging level for this method. For valid values, see the loggingLevel property of the Stage resource in the Amazon API Gateway API Reference. + // Specifies the logging level for this method, which affects the log entries pushed to Amazon CloudWatch Logs. Valid values are ``OFF``, ``ERROR``, and ``INFO``. Choose ``ERROR`` to write only error-level entries to CloudWatch Logs, or choose ``INFO`` to include all ``ERROR`` events as well as extra informational events. LoggingLevel pulumi.StringPtrInput `pulumi:"loggingLevel"` - // Indicates whether Amazon CloudWatch metrics are enabled for methods in the stage. + // Specifies whether Amazon CloudWatch metrics are enabled for this method. MetricsEnabled pulumi.BoolPtrInput `pulumi:"metricsEnabled"` - // The resource path for this method. Forward slashes (/) are encoded as ~1 and the initial slash must include a forward slash. + // The resource path for this method. Forward slashes (``/``) are encoded as ``~1`` and the initial slash must include a forward slash. For example, the path value ``/resource/subresource`` must be encoded as ``/~1resource~1subresource``. To specify the root path, use only a slash (``/``). ResourcePath pulumi.StringPtrInput `pulumi:"resourcePath"` - // The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. + // Specifies the throttling burst limit. ThrottlingBurstLimit pulumi.IntPtrInput `pulumi:"throttlingBurstLimit"` - // The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. + // Specifies the throttling rate limit. ThrottlingRateLimit pulumi.Float64PtrInput `pulumi:"throttlingRateLimit"` } @@ -1082,6 +1109,9 @@ func (i DeploymentMethodSettingArray) ToOutput(ctx context.Context) pulumix.Outp } } +// The “MethodSetting“ property type configures settings for all methods in a stage. +// +// The ``MethodSettings`` property of the [Amazon API Gateway Deployment StageDescription](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html) property type contains a list of ``MethodSetting`` property types. type DeploymentMethodSettingOutput struct{ *pulumi.OutputState } func (DeploymentMethodSettingOutput) ElementType() reflect.Type { @@ -1102,22 +1132,22 @@ func (o DeploymentMethodSettingOutput) ToOutput(ctx context.Context) pulumix.Out } } -// Indicates whether the cached responses are encrypted +// Specifies whether the cached responses are encrypted. func (o DeploymentMethodSettingOutput) CacheDataEncrypted() pulumi.BoolPtrOutput { return o.ApplyT(func(v DeploymentMethodSetting) *bool { return v.CacheDataEncrypted }).(pulumi.BoolPtrOutput) } -// The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. +// Specifies the time to live (TTL), in seconds, for cached responses. The higher the TTL, the longer the response will be cached. func (o DeploymentMethodSettingOutput) CacheTtlInSeconds() pulumi.IntPtrOutput { return o.ApplyT(func(v DeploymentMethodSetting) *int { return v.CacheTtlInSeconds }).(pulumi.IntPtrOutput) } -// Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses. +// Specifies whether responses should be cached and returned for requests. A cache cluster must be enabled on the stage for responses to be cached. func (o DeploymentMethodSettingOutput) CachingEnabled() pulumi.BoolPtrOutput { return o.ApplyT(func(v DeploymentMethodSetting) *bool { return v.CachingEnabled }).(pulumi.BoolPtrOutput) } -// Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs. +// Specifies whether data trace logging is enabled for this method, which affects the log entries pushed to Amazon CloudWatch Logs. This can be useful to troubleshoot APIs, but can result in logging sensitive data. We recommend that you don't enable this option for production APIs. func (o DeploymentMethodSettingOutput) DataTraceEnabled() pulumi.BoolPtrOutput { return o.ApplyT(func(v DeploymentMethodSetting) *bool { return v.DataTraceEnabled }).(pulumi.BoolPtrOutput) } @@ -1127,27 +1157,27 @@ func (o DeploymentMethodSettingOutput) HttpMethod() pulumi.StringPtrOutput { return o.ApplyT(func(v DeploymentMethodSetting) *string { return v.HttpMethod }).(pulumi.StringPtrOutput) } -// The logging level for this method. For valid values, see the loggingLevel property of the Stage resource in the Amazon API Gateway API Reference. +// Specifies the logging level for this method, which affects the log entries pushed to Amazon CloudWatch Logs. Valid values are “OFF“, “ERROR“, and “INFO“. Choose “ERROR“ to write only error-level entries to CloudWatch Logs, or choose “INFO“ to include all “ERROR“ events as well as extra informational events. func (o DeploymentMethodSettingOutput) LoggingLevel() pulumi.StringPtrOutput { return o.ApplyT(func(v DeploymentMethodSetting) *string { return v.LoggingLevel }).(pulumi.StringPtrOutput) } -// Indicates whether Amazon CloudWatch metrics are enabled for methods in the stage. +// Specifies whether Amazon CloudWatch metrics are enabled for this method. func (o DeploymentMethodSettingOutput) MetricsEnabled() pulumi.BoolPtrOutput { return o.ApplyT(func(v DeploymentMethodSetting) *bool { return v.MetricsEnabled }).(pulumi.BoolPtrOutput) } -// The resource path for this method. Forward slashes (/) are encoded as ~1 and the initial slash must include a forward slash. +// The resource path for this method. Forward slashes (“/“) are encoded as “~1“ and the initial slash must include a forward slash. For example, the path value “/resource/subresource“ must be encoded as “/~1resource~1subresource“. To specify the root path, use only a slash (“/“). func (o DeploymentMethodSettingOutput) ResourcePath() pulumi.StringPtrOutput { return o.ApplyT(func(v DeploymentMethodSetting) *string { return v.ResourcePath }).(pulumi.StringPtrOutput) } -// The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. +// Specifies the throttling burst limit. func (o DeploymentMethodSettingOutput) ThrottlingBurstLimit() pulumi.IntPtrOutput { return o.ApplyT(func(v DeploymentMethodSetting) *int { return v.ThrottlingBurstLimit }).(pulumi.IntPtrOutput) } -// The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. +// Specifies the throttling rate limit. func (o DeploymentMethodSettingOutput) ThrottlingRateLimit() pulumi.Float64PtrOutput { return o.ApplyT(func(v DeploymentMethodSetting) *float64 { return v.ThrottlingRateLimit }).(pulumi.Float64PtrOutput) } @@ -1178,18 +1208,19 @@ func (o DeploymentMethodSettingArrayOutput) Index(i pulumi.IntInput) DeploymentM }).(DeploymentMethodSettingOutput) } +// “StageDescription“ is a property of the [AWS::ApiGateway::Deployment](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-deployment.html) resource that configures a deployment stage. type DeploymentStageDescription struct { // Specifies settings for logging access in this stage. AccessLogSetting *DeploymentAccessLogSetting `pulumi:"accessLogSetting"` - // Indicates whether cache clustering is enabled for the stage. + // Specifies whether a cache cluster is enabled for the stage. CacheClusterEnabled *bool `pulumi:"cacheClusterEnabled"` - // The size of the stage's cache cluster. + // The size of the stage's cache cluster. For more information, see [cacheClusterSize](https://docs.aws.amazon.com/apigateway/latest/api/API_CreateStage.html#apigw-CreateStage-request-cacheClusterSize) in the *API Gateway API Reference*. CacheClusterSize *string `pulumi:"cacheClusterSize"` - // The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. + // Indicates whether the cached responses are encrypted. CacheDataEncrypted *bool `pulumi:"cacheDataEncrypted"` // The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. CacheTtlInSeconds *int `pulumi:"cacheTtlInSeconds"` - // Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses. + // Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses. For more information, see [Enable API Gateway Caching in a Stage to Enhance API Performance](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html) in the *API Gateway Developer Guide*. CachingEnabled *bool `pulumi:"cachingEnabled"` // Specifies settings for the canary deployment in this stage. CanarySetting *DeploymentCanarySetting `pulumi:"canarySetting"` @@ -1201,7 +1232,7 @@ type DeploymentStageDescription struct { Description *string `pulumi:"description"` // The version identifier of the API documentation snapshot. DocumentationVersion *string `pulumi:"documentationVersion"` - // The logging level for this method. For valid values, see the loggingLevel property of the Stage resource in the Amazon API Gateway API Reference. + // The logging level for this method. For valid values, see the ``loggingLevel`` property of the [MethodSetting](https://docs.aws.amazon.com/apigateway/latest/api/API_MethodSetting.html) resource in the *Amazon API Gateway API Reference*. LoggingLevel *string `pulumi:"loggingLevel"` // Configures settings for all of the stage's methods. MethodSettings []DeploymentMethodSetting `pulumi:"methodSettings"` @@ -1209,13 +1240,14 @@ type DeploymentStageDescription struct { MetricsEnabled *bool `pulumi:"metricsEnabled"` // An array of arbitrary tags (key-value pairs) to associate with the stage. Tags []DeploymentTag `pulumi:"tags"` - // The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. + // The target request burst rate limit. This allows more requests through for a period of time than the target rate limit. For more information, see [Manage API Request Throttling](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-request-throttling.html) in the *API Gateway Developer Guide*. ThrottlingBurstLimit *int `pulumi:"throttlingBurstLimit"` - // The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. + // The target request steady-state rate limit. For more information, see [Manage API Request Throttling](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-request-throttling.html) in the *API Gateway Developer Guide*. ThrottlingRateLimit *float64 `pulumi:"throttlingRateLimit"` // Specifies whether active tracing with X-ray is enabled for this stage. + // For more information, see [Trace API Gateway API Execution with X-Ray](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-xray.html) in the *API Gateway Developer Guide*. TracingEnabled *bool `pulumi:"tracingEnabled"` - // A map that defines the stage variables. Variable names must consist of alphanumeric characters, and the values must match the following regular expression: [A-Za-z0-9-._~:/?#&=,]+. + // A map that defines the stage variables. Variable names must consist of alphanumeric characters, and the values must match the following regular expression: ``[A-Za-z0-9-._~:/?#&=,]+``. Variables interface{} `pulumi:"variables"` } @@ -1230,18 +1262,19 @@ type DeploymentStageDescriptionInput interface { ToDeploymentStageDescriptionOutputWithContext(context.Context) DeploymentStageDescriptionOutput } +// “StageDescription“ is a property of the [AWS::ApiGateway::Deployment](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-deployment.html) resource that configures a deployment stage. type DeploymentStageDescriptionArgs struct { // Specifies settings for logging access in this stage. AccessLogSetting DeploymentAccessLogSettingPtrInput `pulumi:"accessLogSetting"` - // Indicates whether cache clustering is enabled for the stage. + // Specifies whether a cache cluster is enabled for the stage. CacheClusterEnabled pulumi.BoolPtrInput `pulumi:"cacheClusterEnabled"` - // The size of the stage's cache cluster. + // The size of the stage's cache cluster. For more information, see [cacheClusterSize](https://docs.aws.amazon.com/apigateway/latest/api/API_CreateStage.html#apigw-CreateStage-request-cacheClusterSize) in the *API Gateway API Reference*. CacheClusterSize pulumi.StringPtrInput `pulumi:"cacheClusterSize"` - // The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. + // Indicates whether the cached responses are encrypted. CacheDataEncrypted pulumi.BoolPtrInput `pulumi:"cacheDataEncrypted"` // The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. CacheTtlInSeconds pulumi.IntPtrInput `pulumi:"cacheTtlInSeconds"` - // Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses. + // Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses. For more information, see [Enable API Gateway Caching in a Stage to Enhance API Performance](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html) in the *API Gateway Developer Guide*. CachingEnabled pulumi.BoolPtrInput `pulumi:"cachingEnabled"` // Specifies settings for the canary deployment in this stage. CanarySetting DeploymentCanarySettingPtrInput `pulumi:"canarySetting"` @@ -1253,7 +1286,7 @@ type DeploymentStageDescriptionArgs struct { Description pulumi.StringPtrInput `pulumi:"description"` // The version identifier of the API documentation snapshot. DocumentationVersion pulumi.StringPtrInput `pulumi:"documentationVersion"` - // The logging level for this method. For valid values, see the loggingLevel property of the Stage resource in the Amazon API Gateway API Reference. + // The logging level for this method. For valid values, see the ``loggingLevel`` property of the [MethodSetting](https://docs.aws.amazon.com/apigateway/latest/api/API_MethodSetting.html) resource in the *Amazon API Gateway API Reference*. LoggingLevel pulumi.StringPtrInput `pulumi:"loggingLevel"` // Configures settings for all of the stage's methods. MethodSettings DeploymentMethodSettingArrayInput `pulumi:"methodSettings"` @@ -1261,13 +1294,14 @@ type DeploymentStageDescriptionArgs struct { MetricsEnabled pulumi.BoolPtrInput `pulumi:"metricsEnabled"` // An array of arbitrary tags (key-value pairs) to associate with the stage. Tags DeploymentTagArrayInput `pulumi:"tags"` - // The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. + // The target request burst rate limit. This allows more requests through for a period of time than the target rate limit. For more information, see [Manage API Request Throttling](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-request-throttling.html) in the *API Gateway Developer Guide*. ThrottlingBurstLimit pulumi.IntPtrInput `pulumi:"throttlingBurstLimit"` - // The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. + // The target request steady-state rate limit. For more information, see [Manage API Request Throttling](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-request-throttling.html) in the *API Gateway Developer Guide*. ThrottlingRateLimit pulumi.Float64PtrInput `pulumi:"throttlingRateLimit"` // Specifies whether active tracing with X-ray is enabled for this stage. + // For more information, see [Trace API Gateway API Execution with X-Ray](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-xray.html) in the *API Gateway Developer Guide*. TracingEnabled pulumi.BoolPtrInput `pulumi:"tracingEnabled"` - // A map that defines the stage variables. Variable names must consist of alphanumeric characters, and the values must match the following regular expression: [A-Za-z0-9-._~:/?#&=,]+. + // A map that defines the stage variables. Variable names must consist of alphanumeric characters, and the values must match the following regular expression: ``[A-Za-z0-9-._~:/?#&=,]+``. Variables pulumi.Input `pulumi:"variables"` } @@ -1336,6 +1370,7 @@ func (i *deploymentStageDescriptionPtrType) ToOutput(ctx context.Context) pulumi } } +// “StageDescription“ is a property of the [AWS::ApiGateway::Deployment](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-deployment.html) resource that configures a deployment stage. type DeploymentStageDescriptionOutput struct{ *pulumi.OutputState } func (DeploymentStageDescriptionOutput) ElementType() reflect.Type { @@ -1371,17 +1406,17 @@ func (o DeploymentStageDescriptionOutput) AccessLogSetting() DeploymentAccessLog return o.ApplyT(func(v DeploymentStageDescription) *DeploymentAccessLogSetting { return v.AccessLogSetting }).(DeploymentAccessLogSettingPtrOutput) } -// Indicates whether cache clustering is enabled for the stage. +// Specifies whether a cache cluster is enabled for the stage. func (o DeploymentStageDescriptionOutput) CacheClusterEnabled() pulumi.BoolPtrOutput { return o.ApplyT(func(v DeploymentStageDescription) *bool { return v.CacheClusterEnabled }).(pulumi.BoolPtrOutput) } -// The size of the stage's cache cluster. +// The size of the stage's cache cluster. For more information, see [cacheClusterSize](https://docs.aws.amazon.com/apigateway/latest/api/API_CreateStage.html#apigw-CreateStage-request-cacheClusterSize) in the *API Gateway API Reference*. func (o DeploymentStageDescriptionOutput) CacheClusterSize() pulumi.StringPtrOutput { return o.ApplyT(func(v DeploymentStageDescription) *string { return v.CacheClusterSize }).(pulumi.StringPtrOutput) } -// The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. +// Indicates whether the cached responses are encrypted. func (o DeploymentStageDescriptionOutput) CacheDataEncrypted() pulumi.BoolPtrOutput { return o.ApplyT(func(v DeploymentStageDescription) *bool { return v.CacheDataEncrypted }).(pulumi.BoolPtrOutput) } @@ -1391,7 +1426,7 @@ func (o DeploymentStageDescriptionOutput) CacheTtlInSeconds() pulumi.IntPtrOutpu return o.ApplyT(func(v DeploymentStageDescription) *int { return v.CacheTtlInSeconds }).(pulumi.IntPtrOutput) } -// Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses. +// Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses. For more information, see [Enable API Gateway Caching in a Stage to Enhance API Performance](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html) in the *API Gateway Developer Guide*. func (o DeploymentStageDescriptionOutput) CachingEnabled() pulumi.BoolPtrOutput { return o.ApplyT(func(v DeploymentStageDescription) *bool { return v.CachingEnabled }).(pulumi.BoolPtrOutput) } @@ -1421,7 +1456,7 @@ func (o DeploymentStageDescriptionOutput) DocumentationVersion() pulumi.StringPt return o.ApplyT(func(v DeploymentStageDescription) *string { return v.DocumentationVersion }).(pulumi.StringPtrOutput) } -// The logging level for this method. For valid values, see the loggingLevel property of the Stage resource in the Amazon API Gateway API Reference. +// The logging level for this method. For valid values, see the “loggingLevel“ property of the [MethodSetting](https://docs.aws.amazon.com/apigateway/latest/api/API_MethodSetting.html) resource in the *Amazon API Gateway API Reference*. func (o DeploymentStageDescriptionOutput) LoggingLevel() pulumi.StringPtrOutput { return o.ApplyT(func(v DeploymentStageDescription) *string { return v.LoggingLevel }).(pulumi.StringPtrOutput) } @@ -1441,22 +1476,24 @@ func (o DeploymentStageDescriptionOutput) Tags() DeploymentTagArrayOutput { return o.ApplyT(func(v DeploymentStageDescription) []DeploymentTag { return v.Tags }).(DeploymentTagArrayOutput) } -// The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. +// The target request burst rate limit. This allows more requests through for a period of time than the target rate limit. For more information, see [Manage API Request Throttling](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-request-throttling.html) in the *API Gateway Developer Guide*. func (o DeploymentStageDescriptionOutput) ThrottlingBurstLimit() pulumi.IntPtrOutput { return o.ApplyT(func(v DeploymentStageDescription) *int { return v.ThrottlingBurstLimit }).(pulumi.IntPtrOutput) } -// The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. +// The target request steady-state rate limit. For more information, see [Manage API Request Throttling](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-request-throttling.html) in the *API Gateway Developer Guide*. func (o DeploymentStageDescriptionOutput) ThrottlingRateLimit() pulumi.Float64PtrOutput { return o.ApplyT(func(v DeploymentStageDescription) *float64 { return v.ThrottlingRateLimit }).(pulumi.Float64PtrOutput) } // Specifies whether active tracing with X-ray is enabled for this stage. +// +// For more information, see [Trace API Gateway API Execution with X-Ray](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-xray.html) in the *API Gateway Developer Guide*. func (o DeploymentStageDescriptionOutput) TracingEnabled() pulumi.BoolPtrOutput { return o.ApplyT(func(v DeploymentStageDescription) *bool { return v.TracingEnabled }).(pulumi.BoolPtrOutput) } -// A map that defines the stage variables. Variable names must consist of alphanumeric characters, and the values must match the following regular expression: [A-Za-z0-9-._~:/?#&=,]+. +// A map that defines the stage variables. Variable names must consist of alphanumeric characters, and the values must match the following regular expression: “[A-Za-z0-9-._~:/?#&=,]+“. func (o DeploymentStageDescriptionOutput) Variables() pulumi.AnyOutput { return o.ApplyT(func(v DeploymentStageDescription) interface{} { return v.Variables }).(pulumi.AnyOutput) } @@ -1501,7 +1538,7 @@ func (o DeploymentStageDescriptionPtrOutput) AccessLogSetting() DeploymentAccess }).(DeploymentAccessLogSettingPtrOutput) } -// Indicates whether cache clustering is enabled for the stage. +// Specifies whether a cache cluster is enabled for the stage. func (o DeploymentStageDescriptionPtrOutput) CacheClusterEnabled() pulumi.BoolPtrOutput { return o.ApplyT(func(v *DeploymentStageDescription) *bool { if v == nil { @@ -1511,7 +1548,7 @@ func (o DeploymentStageDescriptionPtrOutput) CacheClusterEnabled() pulumi.BoolPt }).(pulumi.BoolPtrOutput) } -// The size of the stage's cache cluster. +// The size of the stage's cache cluster. For more information, see [cacheClusterSize](https://docs.aws.amazon.com/apigateway/latest/api/API_CreateStage.html#apigw-CreateStage-request-cacheClusterSize) in the *API Gateway API Reference*. func (o DeploymentStageDescriptionPtrOutput) CacheClusterSize() pulumi.StringPtrOutput { return o.ApplyT(func(v *DeploymentStageDescription) *string { if v == nil { @@ -1521,7 +1558,7 @@ func (o DeploymentStageDescriptionPtrOutput) CacheClusterSize() pulumi.StringPtr }).(pulumi.StringPtrOutput) } -// The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. +// Indicates whether the cached responses are encrypted. func (o DeploymentStageDescriptionPtrOutput) CacheDataEncrypted() pulumi.BoolPtrOutput { return o.ApplyT(func(v *DeploymentStageDescription) *bool { if v == nil { @@ -1541,7 +1578,7 @@ func (o DeploymentStageDescriptionPtrOutput) CacheTtlInSeconds() pulumi.IntPtrOu }).(pulumi.IntPtrOutput) } -// Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses. +// Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses. For more information, see [Enable API Gateway Caching in a Stage to Enhance API Performance](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html) in the *API Gateway Developer Guide*. func (o DeploymentStageDescriptionPtrOutput) CachingEnabled() pulumi.BoolPtrOutput { return o.ApplyT(func(v *DeploymentStageDescription) *bool { if v == nil { @@ -1601,7 +1638,7 @@ func (o DeploymentStageDescriptionPtrOutput) DocumentationVersion() pulumi.Strin }).(pulumi.StringPtrOutput) } -// The logging level for this method. For valid values, see the loggingLevel property of the Stage resource in the Amazon API Gateway API Reference. +// The logging level for this method. For valid values, see the “loggingLevel“ property of the [MethodSetting](https://docs.aws.amazon.com/apigateway/latest/api/API_MethodSetting.html) resource in the *Amazon API Gateway API Reference*. func (o DeploymentStageDescriptionPtrOutput) LoggingLevel() pulumi.StringPtrOutput { return o.ApplyT(func(v *DeploymentStageDescription) *string { if v == nil { @@ -1641,7 +1678,7 @@ func (o DeploymentStageDescriptionPtrOutput) Tags() DeploymentTagArrayOutput { }).(DeploymentTagArrayOutput) } -// The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. +// The target request burst rate limit. This allows more requests through for a period of time than the target rate limit. For more information, see [Manage API Request Throttling](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-request-throttling.html) in the *API Gateway Developer Guide*. func (o DeploymentStageDescriptionPtrOutput) ThrottlingBurstLimit() pulumi.IntPtrOutput { return o.ApplyT(func(v *DeploymentStageDescription) *int { if v == nil { @@ -1651,7 +1688,7 @@ func (o DeploymentStageDescriptionPtrOutput) ThrottlingBurstLimit() pulumi.IntPt }).(pulumi.IntPtrOutput) } -// The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. +// The target request steady-state rate limit. For more information, see [Manage API Request Throttling](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-request-throttling.html) in the *API Gateway Developer Guide*. func (o DeploymentStageDescriptionPtrOutput) ThrottlingRateLimit() pulumi.Float64PtrOutput { return o.ApplyT(func(v *DeploymentStageDescription) *float64 { if v == nil { @@ -1662,6 +1699,8 @@ func (o DeploymentStageDescriptionPtrOutput) ThrottlingRateLimit() pulumi.Float6 } // Specifies whether active tracing with X-ray is enabled for this stage. +// +// For more information, see [Trace API Gateway API Execution with X-Ray](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-xray.html) in the *API Gateway Developer Guide*. func (o DeploymentStageDescriptionPtrOutput) TracingEnabled() pulumi.BoolPtrOutput { return o.ApplyT(func(v *DeploymentStageDescription) *bool { if v == nil { @@ -1671,7 +1710,7 @@ func (o DeploymentStageDescriptionPtrOutput) TracingEnabled() pulumi.BoolPtrOutp }).(pulumi.BoolPtrOutput) } -// A map that defines the stage variables. Variable names must consist of alphanumeric characters, and the values must match the following regular expression: [A-Za-z0-9-._~:/?#&=,]+. +// A map that defines the stage variables. Variable names must consist of alphanumeric characters, and the values must match the following regular expression: “[A-Za-z0-9-._~:/?#&=,]+“. func (o DeploymentStageDescriptionPtrOutput) Variables() pulumi.AnyOutput { return o.ApplyT(func(v *DeploymentStageDescription) interface{} { if v == nil { @@ -1811,16 +1850,19 @@ func (o DeploymentTagArrayOutput) Index(i pulumi.IntInput) DeploymentTagOutput { }).(DeploymentTagOutput) } +// The “Location“ property specifies the location of the Amazon API Gateway API entity that the documentation applies to. “Location“ is a property of the [AWS::ApiGateway::DocumentationPart](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationpart.html) resource. +// +// For more information about each property, including constraints and valid values, see [DocumentationPart](https://docs.aws.amazon.com/apigateway/latest/api/API_DocumentationPartLocation.html) in the *Amazon API Gateway REST API Reference*. type DocumentationPartLocation struct { - // The HTTP verb of a method. + // The HTTP verb of a method. It is a valid field for the API entity types of ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``*`` for any method. When an applicable child entity inherits the content of an entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``method`` attribute must match that of the parent entity exactly. Method *string `pulumi:"method"` - // The name of the targeted API entity. + // The name of the targeted API entity. It is a valid and required field for the API entity types of ``AUTHORIZER``, ``MODEL``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY`` and ``RESPONSE_HEADER``. It is an invalid field for any other entity type. Name *string `pulumi:"name"` - // The URL path of the target. + // The URL path of the target. It is a valid field for the API entity types of ``RESOURCE``, ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``/`` for the root resource. When an applicable child entity inherits the content of another entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``path`` attribute must match that of the parent entity as a prefix. Path *string `pulumi:"path"` - // The HTTP status code of a response. + // The HTTP status code of a response. It is a valid field for the API entity types of ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``*`` for any status code. When an applicable child entity inherits the content of an entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``statusCode`` attribute must match that of the parent entity exactly. StatusCode *string `pulumi:"statusCode"` - // The type of API entity that the documentation content applies to. + // The type of API entity to which the documentation content applies. Valid values are ``API``, ``AUTHORIZER``, ``MODEL``, ``RESOURCE``, ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. Content inheritance does not apply to any entity of the ``API``, ``AUTHORIZER``, ``METHOD``, ``MODEL``, ``REQUEST_BODY``, or ``RESOURCE`` type. Type *DocumentationPartLocationType `pulumi:"type"` } @@ -1835,16 +1877,19 @@ type DocumentationPartLocationInput interface { ToDocumentationPartLocationOutputWithContext(context.Context) DocumentationPartLocationOutput } +// The “Location“ property specifies the location of the Amazon API Gateway API entity that the documentation applies to. “Location“ is a property of the [AWS::ApiGateway::DocumentationPart](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationpart.html) resource. +// +// For more information about each property, including constraints and valid values, see [DocumentationPart](https://docs.aws.amazon.com/apigateway/latest/api/API_DocumentationPartLocation.html) in the *Amazon API Gateway REST API Reference*. type DocumentationPartLocationArgs struct { - // The HTTP verb of a method. + // The HTTP verb of a method. It is a valid field for the API entity types of ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``*`` for any method. When an applicable child entity inherits the content of an entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``method`` attribute must match that of the parent entity exactly. Method pulumi.StringPtrInput `pulumi:"method"` - // The name of the targeted API entity. + // The name of the targeted API entity. It is a valid and required field for the API entity types of ``AUTHORIZER``, ``MODEL``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY`` and ``RESPONSE_HEADER``. It is an invalid field for any other entity type. Name pulumi.StringPtrInput `pulumi:"name"` - // The URL path of the target. + // The URL path of the target. It is a valid field for the API entity types of ``RESOURCE``, ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``/`` for the root resource. When an applicable child entity inherits the content of another entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``path`` attribute must match that of the parent entity as a prefix. Path pulumi.StringPtrInput `pulumi:"path"` - // The HTTP status code of a response. + // The HTTP status code of a response. It is a valid field for the API entity types of ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``*`` for any status code. When an applicable child entity inherits the content of an entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``statusCode`` attribute must match that of the parent entity exactly. StatusCode pulumi.StringPtrInput `pulumi:"statusCode"` - // The type of API entity that the documentation content applies to. + // The type of API entity to which the documentation content applies. Valid values are ``API``, ``AUTHORIZER``, ``MODEL``, ``RESOURCE``, ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. Content inheritance does not apply to any entity of the ``API``, ``AUTHORIZER``, ``METHOD``, ``MODEL``, ``REQUEST_BODY``, or ``RESOURCE`` type. Type DocumentationPartLocationTypePtrInput `pulumi:"type"` } @@ -1866,6 +1911,9 @@ func (i DocumentationPartLocationArgs) ToOutput(ctx context.Context) pulumix.Out } } +// The “Location“ property specifies the location of the Amazon API Gateway API entity that the documentation applies to. “Location“ is a property of the [AWS::ApiGateway::DocumentationPart](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationpart.html) resource. +// +// For more information about each property, including constraints and valid values, see [DocumentationPart](https://docs.aws.amazon.com/apigateway/latest/api/API_DocumentationPartLocation.html) in the *Amazon API Gateway REST API Reference*. type DocumentationPartLocationOutput struct{ *pulumi.OutputState } func (DocumentationPartLocationOutput) ElementType() reflect.Type { @@ -1886,27 +1934,27 @@ func (o DocumentationPartLocationOutput) ToOutput(ctx context.Context) pulumix.O } } -// The HTTP verb of a method. +// The HTTP verb of a method. It is a valid field for the API entity types of “METHOD“, “PATH_PARAMETER“, “QUERY_PARAMETER“, “REQUEST_HEADER“, “REQUEST_BODY“, “RESPONSE“, “RESPONSE_HEADER“, and “RESPONSE_BODY“. The default value is “*“ for any method. When an applicable child entity inherits the content of an entity of the same type with more general specifications of the other “location“ attributes, the child entity's “method“ attribute must match that of the parent entity exactly. func (o DocumentationPartLocationOutput) Method() pulumi.StringPtrOutput { return o.ApplyT(func(v DocumentationPartLocation) *string { return v.Method }).(pulumi.StringPtrOutput) } -// The name of the targeted API entity. +// The name of the targeted API entity. It is a valid and required field for the API entity types of “AUTHORIZER“, “MODEL“, “PATH_PARAMETER“, “QUERY_PARAMETER“, “REQUEST_HEADER“, “REQUEST_BODY“ and “RESPONSE_HEADER“. It is an invalid field for any other entity type. func (o DocumentationPartLocationOutput) Name() pulumi.StringPtrOutput { return o.ApplyT(func(v DocumentationPartLocation) *string { return v.Name }).(pulumi.StringPtrOutput) } -// The URL path of the target. +// The URL path of the target. It is a valid field for the API entity types of “RESOURCE“, “METHOD“, “PATH_PARAMETER“, “QUERY_PARAMETER“, “REQUEST_HEADER“, “REQUEST_BODY“, “RESPONSE“, “RESPONSE_HEADER“, and “RESPONSE_BODY“. The default value is “/“ for the root resource. When an applicable child entity inherits the content of another entity of the same type with more general specifications of the other “location“ attributes, the child entity's “path“ attribute must match that of the parent entity as a prefix. func (o DocumentationPartLocationOutput) Path() pulumi.StringPtrOutput { return o.ApplyT(func(v DocumentationPartLocation) *string { return v.Path }).(pulumi.StringPtrOutput) } -// The HTTP status code of a response. +// The HTTP status code of a response. It is a valid field for the API entity types of “RESPONSE“, “RESPONSE_HEADER“, and “RESPONSE_BODY“. The default value is “*“ for any status code. When an applicable child entity inherits the content of an entity of the same type with more general specifications of the other “location“ attributes, the child entity's “statusCode“ attribute must match that of the parent entity exactly. func (o DocumentationPartLocationOutput) StatusCode() pulumi.StringPtrOutput { return o.ApplyT(func(v DocumentationPartLocation) *string { return v.StatusCode }).(pulumi.StringPtrOutput) } -// The type of API entity that the documentation content applies to. +// The type of API entity to which the documentation content applies. Valid values are “API“, “AUTHORIZER“, “MODEL“, “RESOURCE“, “METHOD“, “PATH_PARAMETER“, “QUERY_PARAMETER“, “REQUEST_HEADER“, “REQUEST_BODY“, “RESPONSE“, “RESPONSE_HEADER“, and “RESPONSE_BODY“. Content inheritance does not apply to any entity of the “API“, “AUTHORIZER“, “METHOD“, “MODEL“, “REQUEST_BODY“, or “RESOURCE“ type. func (o DocumentationPartLocationOutput) Type() DocumentationPartLocationTypePtrOutput { return o.ApplyT(func(v DocumentationPartLocation) *DocumentationPartLocationType { return v.Type }).(DocumentationPartLocationTypePtrOutput) } @@ -2364,34 +2412,38 @@ func (o DomainNameTagArrayOutput) Index(i pulumi.IntInput) DomainNameTagOutput { }).(DomainNameTagOutput) } +// “Integration“ is a property of the [AWS::ApiGateway::Method](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html) resource that specifies information about the target backend that a method calls. type MethodIntegration struct { - // A list of request parameters whose values API Gateway caches. + // A list of request parameters whose values API Gateway caches. To be valid values for ``cacheKeyParameters``, these parameters must also be specified for Method ``requestParameters``. CacheKeyParameters []string `pulumi:"cacheKeyParameters"` - // An API-specific tag group of related cached parameters. + // Specifies a group of related cached parameters. By default, API Gateway uses the resource ID as the ``cacheNamespace``. You can specify the same ``cacheNamespace`` across resources to return the same cached data for requests to different resources. CacheNamespace *string `pulumi:"cacheNamespace"` - // The ID of the VpcLink used for the integration when connectionType=VPC_LINK, otherwise undefined. + // The ID of the VpcLink used for the integration when ``connectionType=VPC_LINK`` and undefined, otherwise. ConnectionId *string `pulumi:"connectionId"` - // The type of the network connection to the integration endpoint. + // The type of the network connection to the integration endpoint. The valid value is ``INTERNET`` for connections through the public routable internet or ``VPC_LINK`` for private connections between API Gateway and a network load balancer in a VPC. The default value is ``INTERNET``. ConnectionType *MethodIntegrationConnectionType `pulumi:"connectionType"` - // Specifies how to handle request payload content type conversions. + // Specifies how to handle request payload content type conversions. Supported values are ``CONVERT_TO_BINARY`` and ``CONVERT_TO_TEXT``, with the following behaviors: + // If this property is not defined, the request payload will be passed through from the method request to integration request without modification, provided that the ``passthroughBehavior`` is configured to support payload pass-through. ContentHandling *MethodIntegrationContentHandling `pulumi:"contentHandling"` - // The credentials that are required for the integration. + // Specifies the credentials required for the integration, if any. For AWS integrations, three options are available. To specify an IAM Role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To require that the caller's identity be passed through from the request, specify the string ``arn:aws:iam::\*:user/\*``. To use resource-based permissions on supported AWS services, specify null. Credentials *string `pulumi:"credentials"` - // The integration's HTTP method type. + // Specifies the integration's HTTP method type. For the Type property, if you specify ``MOCK``, this property is optional. For Lambda integrations, you must set the integration method to ``POST``. For all other types, you must specify this property. IntegrationHttpMethod *string `pulumi:"integrationHttpMethod"` - // The response that API Gateway provides after a method's backend completes processing a request. + // Specifies the integration's responses. IntegrationResponses []MethodIntegrationResponse `pulumi:"integrationResponses"` - // Indicates when API Gateway passes requests to the targeted backend. + // Specifies how the method request body of an unmapped content type will be passed through the integration request to the back end without transformation. A content type is unmapped if no mapping template is defined in the integration or the content type does not match any of the mapped content types, as specified in ``requestTemplates``. The valid value is one of the following: ``WHEN_NO_MATCH``: passes the method request body through the integration request to the back end without transformation when the method request content type does not match any content type associated with the mapping templates defined in the integration request. ``WHEN_NO_TEMPLATES``: passes the method request body through the integration request to the back end without transformation when no mapping template is defined in the integration request. If a template is defined when this option is selected, the method request of an unmapped content-type will be rejected with an HTTP 415 Unsupported Media Type response. ``NEVER``: rejects the method request with an HTTP 415 Unsupported Media Type response when either the method request content type does not match any content type associated with the mapping templates defined in the integration request or no mapping template is defined in the integration request. PassthroughBehavior *MethodIntegrationPassthroughBehavior `pulumi:"passthroughBehavior"` - // The request parameters that API Gateway sends with the backend request. + // A key-value map specifying request parameters that are passed from the method request to the back end. The key is an integration request parameter name and the associated value is a method request parameter value or static value that must be enclosed within single quotes and pre-encoded as required by the back end. The method request parameter value must match the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and ``name`` must be a valid and unique method request parameter name. RequestParameters interface{} `pulumi:"requestParameters"` - // A map of Apache Velocity templates that are applied on the request payload. + // Represents a map of Velocity templates that are applied on the request payload based on the value of the Content-Type header sent by the client. The content type value is the key in this map, and the template (as a String) is the value. RequestTemplates interface{} `pulumi:"requestTemplates"` - // Custom timeout between 50 and 29,000 milliseconds. + // Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds or 29 seconds. TimeoutInMillis *int `pulumi:"timeoutInMillis"` - // The type of backend that your method is running. + // Specifies an API method integration type. The valid value is one of the following: + // For the HTTP and HTTP proxy integrations, each integration can specify a protocol (``http/https``), port and path. Standard 80 and 443 ports are supported as well as custom ports above 1024. An HTTP or HTTP proxy integration with a ``connectionType`` of ``VPC_LINK`` is referred to as a private integration and uses a VpcLink to connect API Gateway to a network load balancer of a VPC. Type MethodIntegrationType `pulumi:"type"` - // The Uniform Resource Identifier (URI) for the integration. + // Specifies Uniform Resource Identifier (URI) of the integration endpoint. + // For ``HTTP`` or ``HTTP_PROXY`` integrations, the URI must be a fully formed, encoded HTTP(S) URL according to the RFC-3986 specification for standard integrations. If ``connectionType`` is ``VPC_LINK`` specify the Network Load Balancer DNS name. For ``AWS`` or ``AWS_PROXY`` integrations, the URI is of the form ``arn:aws:apigateway:{region}:{subdomain.service|service}:path|action/{service_api}``. Here, {Region} is the API Gateway region (e.g., us-east-1); {service} is the name of the integrated AWS service (e.g., s3); and {subdomain} is a designated subdomain supported by certain AWS service for fast host-name lookup. action can be used for an AWS service action-based API, using an Action={name}&{p1}={v1}&p2={v2}... query string. The ensuing {service_api} refers to a supported action {name} plus any required input parameters. Alternatively, path can be used for an AWS service path-based API. The ensuing service_api refers to the path to an AWS service resource, including the region of the integrated AWS service, if applicable. For example, for integration with the S3 API of GetObject, the uri can be either ``arn:aws:apigateway:us-west-2:s3:action/GetObject&Bucket={bucket}&Key={key}`` or ``arn:aws:apigateway:us-west-2:s3:path/{bucket}/{key}`` Uri *string `pulumi:"uri"` } @@ -2406,34 +2458,38 @@ type MethodIntegrationInput interface { ToMethodIntegrationOutputWithContext(context.Context) MethodIntegrationOutput } +// “Integration“ is a property of the [AWS::ApiGateway::Method](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html) resource that specifies information about the target backend that a method calls. type MethodIntegrationArgs struct { - // A list of request parameters whose values API Gateway caches. + // A list of request parameters whose values API Gateway caches. To be valid values for ``cacheKeyParameters``, these parameters must also be specified for Method ``requestParameters``. CacheKeyParameters pulumi.StringArrayInput `pulumi:"cacheKeyParameters"` - // An API-specific tag group of related cached parameters. + // Specifies a group of related cached parameters. By default, API Gateway uses the resource ID as the ``cacheNamespace``. You can specify the same ``cacheNamespace`` across resources to return the same cached data for requests to different resources. CacheNamespace pulumi.StringPtrInput `pulumi:"cacheNamespace"` - // The ID of the VpcLink used for the integration when connectionType=VPC_LINK, otherwise undefined. + // The ID of the VpcLink used for the integration when ``connectionType=VPC_LINK`` and undefined, otherwise. ConnectionId pulumi.StringPtrInput `pulumi:"connectionId"` - // The type of the network connection to the integration endpoint. + // The type of the network connection to the integration endpoint. The valid value is ``INTERNET`` for connections through the public routable internet or ``VPC_LINK`` for private connections between API Gateway and a network load balancer in a VPC. The default value is ``INTERNET``. ConnectionType MethodIntegrationConnectionTypePtrInput `pulumi:"connectionType"` - // Specifies how to handle request payload content type conversions. + // Specifies how to handle request payload content type conversions. Supported values are ``CONVERT_TO_BINARY`` and ``CONVERT_TO_TEXT``, with the following behaviors: + // If this property is not defined, the request payload will be passed through from the method request to integration request without modification, provided that the ``passthroughBehavior`` is configured to support payload pass-through. ContentHandling MethodIntegrationContentHandlingPtrInput `pulumi:"contentHandling"` - // The credentials that are required for the integration. + // Specifies the credentials required for the integration, if any. For AWS integrations, three options are available. To specify an IAM Role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To require that the caller's identity be passed through from the request, specify the string ``arn:aws:iam::\*:user/\*``. To use resource-based permissions on supported AWS services, specify null. Credentials pulumi.StringPtrInput `pulumi:"credentials"` - // The integration's HTTP method type. + // Specifies the integration's HTTP method type. For the Type property, if you specify ``MOCK``, this property is optional. For Lambda integrations, you must set the integration method to ``POST``. For all other types, you must specify this property. IntegrationHttpMethod pulumi.StringPtrInput `pulumi:"integrationHttpMethod"` - // The response that API Gateway provides after a method's backend completes processing a request. + // Specifies the integration's responses. IntegrationResponses MethodIntegrationResponseArrayInput `pulumi:"integrationResponses"` - // Indicates when API Gateway passes requests to the targeted backend. + // Specifies how the method request body of an unmapped content type will be passed through the integration request to the back end without transformation. A content type is unmapped if no mapping template is defined in the integration or the content type does not match any of the mapped content types, as specified in ``requestTemplates``. The valid value is one of the following: ``WHEN_NO_MATCH``: passes the method request body through the integration request to the back end without transformation when the method request content type does not match any content type associated with the mapping templates defined in the integration request. ``WHEN_NO_TEMPLATES``: passes the method request body through the integration request to the back end without transformation when no mapping template is defined in the integration request. If a template is defined when this option is selected, the method request of an unmapped content-type will be rejected with an HTTP 415 Unsupported Media Type response. ``NEVER``: rejects the method request with an HTTP 415 Unsupported Media Type response when either the method request content type does not match any content type associated with the mapping templates defined in the integration request or no mapping template is defined in the integration request. PassthroughBehavior MethodIntegrationPassthroughBehaviorPtrInput `pulumi:"passthroughBehavior"` - // The request parameters that API Gateway sends with the backend request. + // A key-value map specifying request parameters that are passed from the method request to the back end. The key is an integration request parameter name and the associated value is a method request parameter value or static value that must be enclosed within single quotes and pre-encoded as required by the back end. The method request parameter value must match the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and ``name`` must be a valid and unique method request parameter name. RequestParameters pulumi.Input `pulumi:"requestParameters"` - // A map of Apache Velocity templates that are applied on the request payload. + // Represents a map of Velocity templates that are applied on the request payload based on the value of the Content-Type header sent by the client. The content type value is the key in this map, and the template (as a String) is the value. RequestTemplates pulumi.Input `pulumi:"requestTemplates"` - // Custom timeout between 50 and 29,000 milliseconds. + // Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds or 29 seconds. TimeoutInMillis pulumi.IntPtrInput `pulumi:"timeoutInMillis"` - // The type of backend that your method is running. + // Specifies an API method integration type. The valid value is one of the following: + // For the HTTP and HTTP proxy integrations, each integration can specify a protocol (``http/https``), port and path. Standard 80 and 443 ports are supported as well as custom ports above 1024. An HTTP or HTTP proxy integration with a ``connectionType`` of ``VPC_LINK`` is referred to as a private integration and uses a VpcLink to connect API Gateway to a network load balancer of a VPC. Type MethodIntegrationTypeInput `pulumi:"type"` - // The Uniform Resource Identifier (URI) for the integration. + // Specifies Uniform Resource Identifier (URI) of the integration endpoint. + // For ``HTTP`` or ``HTTP_PROXY`` integrations, the URI must be a fully formed, encoded HTTP(S) URL according to the RFC-3986 specification for standard integrations. If ``connectionType`` is ``VPC_LINK`` specify the Network Load Balancer DNS name. For ``AWS`` or ``AWS_PROXY`` integrations, the URI is of the form ``arn:aws:apigateway:{region}:{subdomain.service|service}:path|action/{service_api}``. Here, {Region} is the API Gateway region (e.g., us-east-1); {service} is the name of the integrated AWS service (e.g., s3); and {subdomain} is a designated subdomain supported by certain AWS service for fast host-name lookup. action can be used for an AWS service action-based API, using an Action={name}&{p1}={v1}&p2={v2}... query string. The ensuing {service_api} refers to a supported action {name} plus any required input parameters. Alternatively, path can be used for an AWS service path-based API. The ensuing service_api refers to the path to an AWS service resource, including the region of the integrated AWS service, if applicable. For example, for integration with the S3 API of GetObject, the uri can be either ``arn:aws:apigateway:us-west-2:s3:action/GetObject&Bucket={bucket}&Key={key}`` or ``arn:aws:apigateway:us-west-2:s3:path/{bucket}/{key}`` Uri pulumi.StringPtrInput `pulumi:"uri"` } @@ -2502,6 +2558,7 @@ func (i *methodIntegrationPtrType) ToOutput(ctx context.Context) pulumix.Output[ } } +// “Integration“ is a property of the [AWS::ApiGateway::Method](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html) resource that specifies information about the target backend that a method calls. type MethodIntegrationOutput struct{ *pulumi.OutputState } func (MethodIntegrationOutput) ElementType() reflect.Type { @@ -2532,72 +2589,78 @@ func (o MethodIntegrationOutput) ToOutput(ctx context.Context) pulumix.Output[Me } } -// A list of request parameters whose values API Gateway caches. +// A list of request parameters whose values API Gateway caches. To be valid values for “cacheKeyParameters“, these parameters must also be specified for Method “requestParameters“. func (o MethodIntegrationOutput) CacheKeyParameters() pulumi.StringArrayOutput { return o.ApplyT(func(v MethodIntegration) []string { return v.CacheKeyParameters }).(pulumi.StringArrayOutput) } -// An API-specific tag group of related cached parameters. +// Specifies a group of related cached parameters. By default, API Gateway uses the resource ID as the “cacheNamespace“. You can specify the same “cacheNamespace“ across resources to return the same cached data for requests to different resources. func (o MethodIntegrationOutput) CacheNamespace() pulumi.StringPtrOutput { return o.ApplyT(func(v MethodIntegration) *string { return v.CacheNamespace }).(pulumi.StringPtrOutput) } -// The ID of the VpcLink used for the integration when connectionType=VPC_LINK, otherwise undefined. +// The ID of the VpcLink used for the integration when “connectionType=VPC_LINK“ and undefined, otherwise. func (o MethodIntegrationOutput) ConnectionId() pulumi.StringPtrOutput { return o.ApplyT(func(v MethodIntegration) *string { return v.ConnectionId }).(pulumi.StringPtrOutput) } -// The type of the network connection to the integration endpoint. +// The type of the network connection to the integration endpoint. The valid value is “INTERNET“ for connections through the public routable internet or “VPC_LINK“ for private connections between API Gateway and a network load balancer in a VPC. The default value is “INTERNET“. func (o MethodIntegrationOutput) ConnectionType() MethodIntegrationConnectionTypePtrOutput { return o.ApplyT(func(v MethodIntegration) *MethodIntegrationConnectionType { return v.ConnectionType }).(MethodIntegrationConnectionTypePtrOutput) } -// Specifies how to handle request payload content type conversions. +// Specifies how to handle request payload content type conversions. Supported values are “CONVERT_TO_BINARY“ and “CONVERT_TO_TEXT“, with the following behaviors: +// +// If this property is not defined, the request payload will be passed through from the method request to integration request without modification, provided that the ``passthroughBehavior`` is configured to support payload pass-through. func (o MethodIntegrationOutput) ContentHandling() MethodIntegrationContentHandlingPtrOutput { return o.ApplyT(func(v MethodIntegration) *MethodIntegrationContentHandling { return v.ContentHandling }).(MethodIntegrationContentHandlingPtrOutput) } -// The credentials that are required for the integration. +// Specifies the credentials required for the integration, if any. For AWS integrations, three options are available. To specify an IAM Role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To require that the caller's identity be passed through from the request, specify the string “arn:aws:iam::\*:user/\*“. To use resource-based permissions on supported AWS services, specify null. func (o MethodIntegrationOutput) Credentials() pulumi.StringPtrOutput { return o.ApplyT(func(v MethodIntegration) *string { return v.Credentials }).(pulumi.StringPtrOutput) } -// The integration's HTTP method type. +// Specifies the integration's HTTP method type. For the Type property, if you specify “MOCK“, this property is optional. For Lambda integrations, you must set the integration method to “POST“. For all other types, you must specify this property. func (o MethodIntegrationOutput) IntegrationHttpMethod() pulumi.StringPtrOutput { return o.ApplyT(func(v MethodIntegration) *string { return v.IntegrationHttpMethod }).(pulumi.StringPtrOutput) } -// The response that API Gateway provides after a method's backend completes processing a request. +// Specifies the integration's responses. func (o MethodIntegrationOutput) IntegrationResponses() MethodIntegrationResponseArrayOutput { return o.ApplyT(func(v MethodIntegration) []MethodIntegrationResponse { return v.IntegrationResponses }).(MethodIntegrationResponseArrayOutput) } -// Indicates when API Gateway passes requests to the targeted backend. +// Specifies how the method request body of an unmapped content type will be passed through the integration request to the back end without transformation. A content type is unmapped if no mapping template is defined in the integration or the content type does not match any of the mapped content types, as specified in “requestTemplates“. The valid value is one of the following: “WHEN_NO_MATCH“: passes the method request body through the integration request to the back end without transformation when the method request content type does not match any content type associated with the mapping templates defined in the integration request. “WHEN_NO_TEMPLATES“: passes the method request body through the integration request to the back end without transformation when no mapping template is defined in the integration request. If a template is defined when this option is selected, the method request of an unmapped content-type will be rejected with an HTTP 415 Unsupported Media Type response. “NEVER“: rejects the method request with an HTTP 415 Unsupported Media Type response when either the method request content type does not match any content type associated with the mapping templates defined in the integration request or no mapping template is defined in the integration request. func (o MethodIntegrationOutput) PassthroughBehavior() MethodIntegrationPassthroughBehaviorPtrOutput { return o.ApplyT(func(v MethodIntegration) *MethodIntegrationPassthroughBehavior { return v.PassthroughBehavior }).(MethodIntegrationPassthroughBehaviorPtrOutput) } -// The request parameters that API Gateway sends with the backend request. +// A key-value map specifying request parameters that are passed from the method request to the back end. The key is an integration request parameter name and the associated value is a method request parameter value or static value that must be enclosed within single quotes and pre-encoded as required by the back end. The method request parameter value must match the pattern of “method.request.{location}.{name}“, where “location“ is “querystring“, “path“, or “header“ and “name“ must be a valid and unique method request parameter name. func (o MethodIntegrationOutput) RequestParameters() pulumi.AnyOutput { return o.ApplyT(func(v MethodIntegration) interface{} { return v.RequestParameters }).(pulumi.AnyOutput) } -// A map of Apache Velocity templates that are applied on the request payload. +// Represents a map of Velocity templates that are applied on the request payload based on the value of the Content-Type header sent by the client. The content type value is the key in this map, and the template (as a String) is the value. func (o MethodIntegrationOutput) RequestTemplates() pulumi.AnyOutput { return o.ApplyT(func(v MethodIntegration) interface{} { return v.RequestTemplates }).(pulumi.AnyOutput) } -// Custom timeout between 50 and 29,000 milliseconds. +// Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds or 29 seconds. func (o MethodIntegrationOutput) TimeoutInMillis() pulumi.IntPtrOutput { return o.ApplyT(func(v MethodIntegration) *int { return v.TimeoutInMillis }).(pulumi.IntPtrOutput) } -// The type of backend that your method is running. +// Specifies an API method integration type. The valid value is one of the following: +// +// For the HTTP and HTTP proxy integrations, each integration can specify a protocol (``http/https``), port and path. Standard 80 and 443 ports are supported as well as custom ports above 1024. An HTTP or HTTP proxy integration with a ``connectionType`` of ``VPC_LINK`` is referred to as a private integration and uses a VpcLink to connect API Gateway to a network load balancer of a VPC. func (o MethodIntegrationOutput) Type() MethodIntegrationTypeOutput { return o.ApplyT(func(v MethodIntegration) MethodIntegrationType { return v.Type }).(MethodIntegrationTypeOutput) } -// The Uniform Resource Identifier (URI) for the integration. +// Specifies Uniform Resource Identifier (URI) of the integration endpoint. +// +// For ``HTTP`` or ``HTTP_PROXY`` integrations, the URI must be a fully formed, encoded HTTP(S) URL according to the RFC-3986 specification for standard integrations. If ``connectionType`` is ``VPC_LINK`` specify the Network Load Balancer DNS name. For ``AWS`` or ``AWS_PROXY`` integrations, the URI is of the form ``arn:aws:apigateway:{region}:{subdomain.service|service}:path|action/{service_api}``. Here, {Region} is the API Gateway region (e.g., us-east-1); {service} is the name of the integrated AWS service (e.g., s3); and {subdomain} is a designated subdomain supported by certain AWS service for fast host-name lookup. action can be used for an AWS service action-based API, using an Action={name}&{p1}={v1}&p2={v2}... query string. The ensuing {service_api} refers to a supported action {name} plus any required input parameters. Alternatively, path can be used for an AWS service path-based API. The ensuing service_api refers to the path to an AWS service resource, including the region of the integrated AWS service, if applicable. For example, for integration with the S3 API of GetObject, the uri can be either ``arn:aws:apigateway:us-west-2:s3:action/GetObject&Bucket={bucket}&Key={key}`` or ``arn:aws:apigateway:us-west-2:s3:path/{bucket}/{key}`` func (o MethodIntegrationOutput) Uri() pulumi.StringPtrOutput { return o.ApplyT(func(v MethodIntegration) *string { return v.Uri }).(pulumi.StringPtrOutput) } @@ -2632,7 +2695,7 @@ func (o MethodIntegrationPtrOutput) Elem() MethodIntegrationOutput { }).(MethodIntegrationOutput) } -// A list of request parameters whose values API Gateway caches. +// A list of request parameters whose values API Gateway caches. To be valid values for “cacheKeyParameters“, these parameters must also be specified for Method “requestParameters“. func (o MethodIntegrationPtrOutput) CacheKeyParameters() pulumi.StringArrayOutput { return o.ApplyT(func(v *MethodIntegration) []string { if v == nil { @@ -2642,7 +2705,7 @@ func (o MethodIntegrationPtrOutput) CacheKeyParameters() pulumi.StringArrayOutpu }).(pulumi.StringArrayOutput) } -// An API-specific tag group of related cached parameters. +// Specifies a group of related cached parameters. By default, API Gateway uses the resource ID as the “cacheNamespace“. You can specify the same “cacheNamespace“ across resources to return the same cached data for requests to different resources. func (o MethodIntegrationPtrOutput) CacheNamespace() pulumi.StringPtrOutput { return o.ApplyT(func(v *MethodIntegration) *string { if v == nil { @@ -2652,7 +2715,7 @@ func (o MethodIntegrationPtrOutput) CacheNamespace() pulumi.StringPtrOutput { }).(pulumi.StringPtrOutput) } -// The ID of the VpcLink used for the integration when connectionType=VPC_LINK, otherwise undefined. +// The ID of the VpcLink used for the integration when “connectionType=VPC_LINK“ and undefined, otherwise. func (o MethodIntegrationPtrOutput) ConnectionId() pulumi.StringPtrOutput { return o.ApplyT(func(v *MethodIntegration) *string { if v == nil { @@ -2662,7 +2725,7 @@ func (o MethodIntegrationPtrOutput) ConnectionId() pulumi.StringPtrOutput { }).(pulumi.StringPtrOutput) } -// The type of the network connection to the integration endpoint. +// The type of the network connection to the integration endpoint. The valid value is “INTERNET“ for connections through the public routable internet or “VPC_LINK“ for private connections between API Gateway and a network load balancer in a VPC. The default value is “INTERNET“. func (o MethodIntegrationPtrOutput) ConnectionType() MethodIntegrationConnectionTypePtrOutput { return o.ApplyT(func(v *MethodIntegration) *MethodIntegrationConnectionType { if v == nil { @@ -2672,7 +2735,9 @@ func (o MethodIntegrationPtrOutput) ConnectionType() MethodIntegrationConnection }).(MethodIntegrationConnectionTypePtrOutput) } -// Specifies how to handle request payload content type conversions. +// Specifies how to handle request payload content type conversions. Supported values are “CONVERT_TO_BINARY“ and “CONVERT_TO_TEXT“, with the following behaviors: +// +// If this property is not defined, the request payload will be passed through from the method request to integration request without modification, provided that the ``passthroughBehavior`` is configured to support payload pass-through. func (o MethodIntegrationPtrOutput) ContentHandling() MethodIntegrationContentHandlingPtrOutput { return o.ApplyT(func(v *MethodIntegration) *MethodIntegrationContentHandling { if v == nil { @@ -2682,7 +2747,7 @@ func (o MethodIntegrationPtrOutput) ContentHandling() MethodIntegrationContentHa }).(MethodIntegrationContentHandlingPtrOutput) } -// The credentials that are required for the integration. +// Specifies the credentials required for the integration, if any. For AWS integrations, three options are available. To specify an IAM Role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To require that the caller's identity be passed through from the request, specify the string “arn:aws:iam::\*:user/\*“. To use resource-based permissions on supported AWS services, specify null. func (o MethodIntegrationPtrOutput) Credentials() pulumi.StringPtrOutput { return o.ApplyT(func(v *MethodIntegration) *string { if v == nil { @@ -2692,7 +2757,7 @@ func (o MethodIntegrationPtrOutput) Credentials() pulumi.StringPtrOutput { }).(pulumi.StringPtrOutput) } -// The integration's HTTP method type. +// Specifies the integration's HTTP method type. For the Type property, if you specify “MOCK“, this property is optional. For Lambda integrations, you must set the integration method to “POST“. For all other types, you must specify this property. func (o MethodIntegrationPtrOutput) IntegrationHttpMethod() pulumi.StringPtrOutput { return o.ApplyT(func(v *MethodIntegration) *string { if v == nil { @@ -2702,7 +2767,7 @@ func (o MethodIntegrationPtrOutput) IntegrationHttpMethod() pulumi.StringPtrOutp }).(pulumi.StringPtrOutput) } -// The response that API Gateway provides after a method's backend completes processing a request. +// Specifies the integration's responses. func (o MethodIntegrationPtrOutput) IntegrationResponses() MethodIntegrationResponseArrayOutput { return o.ApplyT(func(v *MethodIntegration) []MethodIntegrationResponse { if v == nil { @@ -2712,7 +2777,7 @@ func (o MethodIntegrationPtrOutput) IntegrationResponses() MethodIntegrationResp }).(MethodIntegrationResponseArrayOutput) } -// Indicates when API Gateway passes requests to the targeted backend. +// Specifies how the method request body of an unmapped content type will be passed through the integration request to the back end without transformation. A content type is unmapped if no mapping template is defined in the integration or the content type does not match any of the mapped content types, as specified in “requestTemplates“. The valid value is one of the following: “WHEN_NO_MATCH“: passes the method request body through the integration request to the back end without transformation when the method request content type does not match any content type associated with the mapping templates defined in the integration request. “WHEN_NO_TEMPLATES“: passes the method request body through the integration request to the back end without transformation when no mapping template is defined in the integration request. If a template is defined when this option is selected, the method request of an unmapped content-type will be rejected with an HTTP 415 Unsupported Media Type response. “NEVER“: rejects the method request with an HTTP 415 Unsupported Media Type response when either the method request content type does not match any content type associated with the mapping templates defined in the integration request or no mapping template is defined in the integration request. func (o MethodIntegrationPtrOutput) PassthroughBehavior() MethodIntegrationPassthroughBehaviorPtrOutput { return o.ApplyT(func(v *MethodIntegration) *MethodIntegrationPassthroughBehavior { if v == nil { @@ -2722,7 +2787,7 @@ func (o MethodIntegrationPtrOutput) PassthroughBehavior() MethodIntegrationPasst }).(MethodIntegrationPassthroughBehaviorPtrOutput) } -// The request parameters that API Gateway sends with the backend request. +// A key-value map specifying request parameters that are passed from the method request to the back end. The key is an integration request parameter name and the associated value is a method request parameter value or static value that must be enclosed within single quotes and pre-encoded as required by the back end. The method request parameter value must match the pattern of “method.request.{location}.{name}“, where “location“ is “querystring“, “path“, or “header“ and “name“ must be a valid and unique method request parameter name. func (o MethodIntegrationPtrOutput) RequestParameters() pulumi.AnyOutput { return o.ApplyT(func(v *MethodIntegration) interface{} { if v == nil { @@ -2732,7 +2797,7 @@ func (o MethodIntegrationPtrOutput) RequestParameters() pulumi.AnyOutput { }).(pulumi.AnyOutput) } -// A map of Apache Velocity templates that are applied on the request payload. +// Represents a map of Velocity templates that are applied on the request payload based on the value of the Content-Type header sent by the client. The content type value is the key in this map, and the template (as a String) is the value. func (o MethodIntegrationPtrOutput) RequestTemplates() pulumi.AnyOutput { return o.ApplyT(func(v *MethodIntegration) interface{} { if v == nil { @@ -2742,7 +2807,7 @@ func (o MethodIntegrationPtrOutput) RequestTemplates() pulumi.AnyOutput { }).(pulumi.AnyOutput) } -// Custom timeout between 50 and 29,000 milliseconds. +// Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds or 29 seconds. func (o MethodIntegrationPtrOutput) TimeoutInMillis() pulumi.IntPtrOutput { return o.ApplyT(func(v *MethodIntegration) *int { if v == nil { @@ -2752,7 +2817,9 @@ func (o MethodIntegrationPtrOutput) TimeoutInMillis() pulumi.IntPtrOutput { }).(pulumi.IntPtrOutput) } -// The type of backend that your method is running. +// Specifies an API method integration type. The valid value is one of the following: +// +// For the HTTP and HTTP proxy integrations, each integration can specify a protocol (``http/https``), port and path. Standard 80 and 443 ports are supported as well as custom ports above 1024. An HTTP or HTTP proxy integration with a ``connectionType`` of ``VPC_LINK`` is referred to as a private integration and uses a VpcLink to connect API Gateway to a network load balancer of a VPC. func (o MethodIntegrationPtrOutput) Type() MethodIntegrationTypePtrOutput { return o.ApplyT(func(v *MethodIntegration) *MethodIntegrationType { if v == nil { @@ -2762,7 +2829,9 @@ func (o MethodIntegrationPtrOutput) Type() MethodIntegrationTypePtrOutput { }).(MethodIntegrationTypePtrOutput) } -// The Uniform Resource Identifier (URI) for the integration. +// Specifies Uniform Resource Identifier (URI) of the integration endpoint. +// +// For ``HTTP`` or ``HTTP_PROXY`` integrations, the URI must be a fully formed, encoded HTTP(S) URL according to the RFC-3986 specification for standard integrations. If ``connectionType`` is ``VPC_LINK`` specify the Network Load Balancer DNS name. For ``AWS`` or ``AWS_PROXY`` integrations, the URI is of the form ``arn:aws:apigateway:{region}:{subdomain.service|service}:path|action/{service_api}``. Here, {Region} is the API Gateway region (e.g., us-east-1); {service} is the name of the integrated AWS service (e.g., s3); and {subdomain} is a designated subdomain supported by certain AWS service for fast host-name lookup. action can be used for an AWS service action-based API, using an Action={name}&{p1}={v1}&p2={v2}... query string. The ensuing {service_api} refers to a supported action {name} plus any required input parameters. Alternatively, path can be used for an AWS service path-based API. The ensuing service_api refers to the path to an AWS service resource, including the region of the integrated AWS service, if applicable. For example, for integration with the S3 API of GetObject, the uri can be either ``arn:aws:apigateway:us-west-2:s3:action/GetObject&Bucket={bucket}&Key={key}`` or ``arn:aws:apigateway:us-west-2:s3:path/{bucket}/{key}`` func (o MethodIntegrationPtrOutput) Uri() pulumi.StringPtrOutput { return o.ApplyT(func(v *MethodIntegration) *string { if v == nil { @@ -2772,16 +2841,18 @@ func (o MethodIntegrationPtrOutput) Uri() pulumi.StringPtrOutput { }).(pulumi.StringPtrOutput) } +// “IntegrationResponse“ is a property of the [Amazon API Gateway Method Integration](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html) property type that specifies the response that API Gateway sends after a method's backend finishes processing a request. type MethodIntegrationResponse struct { - // Specifies how to handle request payload content type conversions. + // Specifies how to handle response payload content type conversions. Supported values are ``CONVERT_TO_BINARY`` and ``CONVERT_TO_TEXT``, with the following behaviors: + // If this property is not defined, the response payload will be passed through from the integration response to the method response without modification. ContentHandling *MethodIntegrationResponseContentHandling `pulumi:"contentHandling"` - // The response parameters from the backend response that API Gateway sends to the method response. + // A key-value map specifying response parameters that are passed to the method response from the back end. The key is a method response header parameter name and the mapped value is an integration response header value, a static value enclosed within a pair of single quotes, or a JSON expression from the integration response body. The mapping key must match the pattern of ``method.response.header.{name}``, where ``name`` is a valid and unique header name. The mapped non-static value must match the pattern of ``integration.response.header.{name}`` or ``integration.response.body.{JSON-expression}``, where ``name`` is a valid and unique response header name and ``JSON-expression`` is a valid JSON expression without the ``$`` prefix. ResponseParameters interface{} `pulumi:"responseParameters"` - // The templates that are used to transform the integration response body. Specify templates as key-value pairs (string-to-string mappings), with a content type as the key and a template as the value. + // Specifies the templates used to transform the integration response body. Response templates are represented as a key/value map, with a content-type as the key and a template as the value. ResponseTemplates interface{} `pulumi:"responseTemplates"` - // A regular expression that specifies which error strings or status codes from the backend map to the integration response. + // Specifies the regular expression (regex) pattern used to choose an integration response based on the response from the back end. For example, if the success response returns nothing and the error response returns some string, you could use the ``.+`` regex to match error response. However, make sure that the error response does not contain any newline (``\n``) character in such cases. If the back end is an LAMlong function, the LAMlong function error header is matched. For all other HTTP and AWS back ends, the HTTP status code is matched. SelectionPattern *string `pulumi:"selectionPattern"` - // The status code that API Gateway uses to map the integration response to a MethodResponse status code. + // Specifies the status code that is used to map the integration response to an existing MethodResponse. StatusCode string `pulumi:"statusCode"` } @@ -2796,16 +2867,18 @@ type MethodIntegrationResponseInput interface { ToMethodIntegrationResponseOutputWithContext(context.Context) MethodIntegrationResponseOutput } +// “IntegrationResponse“ is a property of the [Amazon API Gateway Method Integration](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html) property type that specifies the response that API Gateway sends after a method's backend finishes processing a request. type MethodIntegrationResponseArgs struct { - // Specifies how to handle request payload content type conversions. + // Specifies how to handle response payload content type conversions. Supported values are ``CONVERT_TO_BINARY`` and ``CONVERT_TO_TEXT``, with the following behaviors: + // If this property is not defined, the response payload will be passed through from the integration response to the method response without modification. ContentHandling MethodIntegrationResponseContentHandlingPtrInput `pulumi:"contentHandling"` - // The response parameters from the backend response that API Gateway sends to the method response. + // A key-value map specifying response parameters that are passed to the method response from the back end. The key is a method response header parameter name and the mapped value is an integration response header value, a static value enclosed within a pair of single quotes, or a JSON expression from the integration response body. The mapping key must match the pattern of ``method.response.header.{name}``, where ``name`` is a valid and unique header name. The mapped non-static value must match the pattern of ``integration.response.header.{name}`` or ``integration.response.body.{JSON-expression}``, where ``name`` is a valid and unique response header name and ``JSON-expression`` is a valid JSON expression without the ``$`` prefix. ResponseParameters pulumi.Input `pulumi:"responseParameters"` - // The templates that are used to transform the integration response body. Specify templates as key-value pairs (string-to-string mappings), with a content type as the key and a template as the value. + // Specifies the templates used to transform the integration response body. Response templates are represented as a key/value map, with a content-type as the key and a template as the value. ResponseTemplates pulumi.Input `pulumi:"responseTemplates"` - // A regular expression that specifies which error strings or status codes from the backend map to the integration response. + // Specifies the regular expression (regex) pattern used to choose an integration response based on the response from the back end. For example, if the success response returns nothing and the error response returns some string, you could use the ``.+`` regex to match error response. However, make sure that the error response does not contain any newline (``\n``) character in such cases. If the back end is an LAMlong function, the LAMlong function error header is matched. For all other HTTP and AWS back ends, the HTTP status code is matched. SelectionPattern pulumi.StringPtrInput `pulumi:"selectionPattern"` - // The status code that API Gateway uses to map the integration response to a MethodResponse status code. + // Specifies the status code that is used to map the integration response to an existing MethodResponse. StatusCode pulumi.StringInput `pulumi:"statusCode"` } @@ -2858,6 +2931,7 @@ func (i MethodIntegrationResponseArray) ToOutput(ctx context.Context) pulumix.Ou } } +// “IntegrationResponse“ is a property of the [Amazon API Gateway Method Integration](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html) property type that specifies the response that API Gateway sends after a method's backend finishes processing a request. type MethodIntegrationResponseOutput struct{ *pulumi.OutputState } func (MethodIntegrationResponseOutput) ElementType() reflect.Type { @@ -2878,27 +2952,29 @@ func (o MethodIntegrationResponseOutput) ToOutput(ctx context.Context) pulumix.O } } -// Specifies how to handle request payload content type conversions. +// Specifies how to handle response payload content type conversions. Supported values are “CONVERT_TO_BINARY“ and “CONVERT_TO_TEXT“, with the following behaviors: +// +// If this property is not defined, the response payload will be passed through from the integration response to the method response without modification. func (o MethodIntegrationResponseOutput) ContentHandling() MethodIntegrationResponseContentHandlingPtrOutput { return o.ApplyT(func(v MethodIntegrationResponse) *MethodIntegrationResponseContentHandling { return v.ContentHandling }).(MethodIntegrationResponseContentHandlingPtrOutput) } -// The response parameters from the backend response that API Gateway sends to the method response. +// A key-value map specifying response parameters that are passed to the method response from the back end. The key is a method response header parameter name and the mapped value is an integration response header value, a static value enclosed within a pair of single quotes, or a JSON expression from the integration response body. The mapping key must match the pattern of “method.response.header.{name}“, where “name“ is a valid and unique header name. The mapped non-static value must match the pattern of “integration.response.header.{name}“ or “integration.response.body.{JSON-expression}“, where “name“ is a valid and unique response header name and “JSON-expression“ is a valid JSON expression without the “$“ prefix. func (o MethodIntegrationResponseOutput) ResponseParameters() pulumi.AnyOutput { return o.ApplyT(func(v MethodIntegrationResponse) interface{} { return v.ResponseParameters }).(pulumi.AnyOutput) } -// The templates that are used to transform the integration response body. Specify templates as key-value pairs (string-to-string mappings), with a content type as the key and a template as the value. +// Specifies the templates used to transform the integration response body. Response templates are represented as a key/value map, with a content-type as the key and a template as the value. func (o MethodIntegrationResponseOutput) ResponseTemplates() pulumi.AnyOutput { return o.ApplyT(func(v MethodIntegrationResponse) interface{} { return v.ResponseTemplates }).(pulumi.AnyOutput) } -// A regular expression that specifies which error strings or status codes from the backend map to the integration response. +// Specifies the regular expression (regex) pattern used to choose an integration response based on the response from the back end. For example, if the success response returns nothing and the error response returns some string, you could use the “.+“ regex to match error response. However, make sure that the error response does not contain any newline (“\n“) character in such cases. If the back end is an LAMlong function, the LAMlong function error header is matched. For all other HTTP and AWS back ends, the HTTP status code is matched. func (o MethodIntegrationResponseOutput) SelectionPattern() pulumi.StringPtrOutput { return o.ApplyT(func(v MethodIntegrationResponse) *string { return v.SelectionPattern }).(pulumi.StringPtrOutput) } -// The status code that API Gateway uses to map the integration response to a MethodResponse status code. +// Specifies the status code that is used to map the integration response to an existing MethodResponse. func (o MethodIntegrationResponseOutput) StatusCode() pulumi.StringOutput { return o.ApplyT(func(v MethodIntegrationResponse) string { return v.StatusCode }).(pulumi.StringOutput) } @@ -2929,12 +3005,13 @@ func (o MethodIntegrationResponseArrayOutput) Index(i pulumi.IntInput) MethodInt }).(MethodIntegrationResponseOutput) } +// Represents a method response of a given HTTP status code returned to the client. The method response is passed from the back end through the associated integration response that can be transformed using a mapping template. type MethodResponse struct { - // The resources used for the response's content type. Specify response models as key-value pairs (string-to-string maps), with a content type as the key and a Model resource name as the value. + // Specifies the Model resources used for the response's content-type. Response models are represented as a key/value map, with a content-type as the key and a Model name as the value. ResponseModels interface{} `pulumi:"responseModels"` - // Response parameters that API Gateway sends to the client that called a method. Specify response parameters as key-value pairs (string-to-Boolean maps), with a destination as the key and a Boolean as the value. + // A key-value map specifying required or optional response parameters that API Gateway can send back to the caller. A key defines a method response header and the value specifies whether the associated method response header is required or not. The expression of the key must match the pattern ``method.response.header.{name}``, where ``name`` is a valid and unique header name. API Gateway passes certain integration response data to the method response headers specified here according to the mapping you prescribe in the API's IntegrationResponse. The integration response data that can be mapped include an integration response header expressed in ``integration.response.header.{name}``, a static value enclosed within a pair of single quotes (e.g., ``'application/json'``), or a JSON expression from the back-end response payload in the form of ``integration.response.body.{JSON-expression}``, where ``JSON-expression`` is a valid JSON expression without the ``$`` prefix.) ResponseParameters interface{} `pulumi:"responseParameters"` - // The method response's status code, which you map to an IntegrationResponse. + // The method response's status code. StatusCode string `pulumi:"statusCode"` } @@ -2949,12 +3026,13 @@ type MethodResponseInput interface { ToMethodResponseOutputWithContext(context.Context) MethodResponseOutput } +// Represents a method response of a given HTTP status code returned to the client. The method response is passed from the back end through the associated integration response that can be transformed using a mapping template. type MethodResponseArgs struct { - // The resources used for the response's content type. Specify response models as key-value pairs (string-to-string maps), with a content type as the key and a Model resource name as the value. + // Specifies the Model resources used for the response's content-type. Response models are represented as a key/value map, with a content-type as the key and a Model name as the value. ResponseModels pulumi.Input `pulumi:"responseModels"` - // Response parameters that API Gateway sends to the client that called a method. Specify response parameters as key-value pairs (string-to-Boolean maps), with a destination as the key and a Boolean as the value. + // A key-value map specifying required or optional response parameters that API Gateway can send back to the caller. A key defines a method response header and the value specifies whether the associated method response header is required or not. The expression of the key must match the pattern ``method.response.header.{name}``, where ``name`` is a valid and unique header name. API Gateway passes certain integration response data to the method response headers specified here according to the mapping you prescribe in the API's IntegrationResponse. The integration response data that can be mapped include an integration response header expressed in ``integration.response.header.{name}``, a static value enclosed within a pair of single quotes (e.g., ``'application/json'``), or a JSON expression from the back-end response payload in the form of ``integration.response.body.{JSON-expression}``, where ``JSON-expression`` is a valid JSON expression without the ``$`` prefix.) ResponseParameters pulumi.Input `pulumi:"responseParameters"` - // The method response's status code, which you map to an IntegrationResponse. + // The method response's status code. StatusCode pulumi.StringInput `pulumi:"statusCode"` } @@ -3007,6 +3085,7 @@ func (i MethodResponseArray) ToOutput(ctx context.Context) pulumix.Output[[]Meth } } +// Represents a method response of a given HTTP status code returned to the client. The method response is passed from the back end through the associated integration response that can be transformed using a mapping template. type MethodResponseOutput struct{ *pulumi.OutputState } func (MethodResponseOutput) ElementType() reflect.Type { @@ -3027,17 +3106,17 @@ func (o MethodResponseOutput) ToOutput(ctx context.Context) pulumix.Output[Metho } } -// The resources used for the response's content type. Specify response models as key-value pairs (string-to-string maps), with a content type as the key and a Model resource name as the value. +// Specifies the Model resources used for the response's content-type. Response models are represented as a key/value map, with a content-type as the key and a Model name as the value. func (o MethodResponseOutput) ResponseModels() pulumi.AnyOutput { return o.ApplyT(func(v MethodResponse) interface{} { return v.ResponseModels }).(pulumi.AnyOutput) } -// Response parameters that API Gateway sends to the client that called a method. Specify response parameters as key-value pairs (string-to-Boolean maps), with a destination as the key and a Boolean as the value. +// A key-value map specifying required or optional response parameters that API Gateway can send back to the caller. A key defines a method response header and the value specifies whether the associated method response header is required or not. The expression of the key must match the pattern “method.response.header.{name}“, where “name“ is a valid and unique header name. API Gateway passes certain integration response data to the method response headers specified here according to the mapping you prescribe in the API's IntegrationResponse. The integration response data that can be mapped include an integration response header expressed in “integration.response.header.{name}“, a static value enclosed within a pair of single quotes (e.g., “'application/json'“), or a JSON expression from the back-end response payload in the form of “integration.response.body.{JSON-expression}“, where “JSON-expression“ is a valid JSON expression without the “$“ prefix.) func (o MethodResponseOutput) ResponseParameters() pulumi.AnyOutput { return o.ApplyT(func(v MethodResponse) interface{} { return v.ResponseParameters }).(pulumi.AnyOutput) } -// The method response's status code, which you map to an IntegrationResponse. +// The method response's status code. func (o MethodResponseOutput) StatusCode() pulumi.StringOutput { return o.ApplyT(func(v MethodResponse) string { return v.StatusCode }).(pulumi.StringOutput) } @@ -3068,8 +3147,13 @@ func (o MethodResponseArrayOutput) Index(i pulumi.IntInput) MethodResponseOutput }).(MethodResponseOutput) } +// The “EndpointConfiguration“ property type specifies the endpoint types of a REST API. +// +// ``EndpointConfiguration`` is a property of the [AWS::ApiGateway::RestApi](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html) resource. type RestApiEndpointConfiguration struct { - Types []string `pulumi:"types"` + // A list of endpoint types of an API (RestApi) or its custom domain name (DomainName). For an edge-optimized API and its custom domain name, the endpoint type is ``"EDGE"``. For a regional API and its custom domain name, the endpoint type is ``REGIONAL``. For a private API, the endpoint type is ``PRIVATE``. + Types []string `pulumi:"types"` + // A list of VpcEndpointIds of an API (RestApi) against which to create Route53 ALIASes. It is only supported for ``PRIVATE`` endpoint type. VpcEndpointIds []string `pulumi:"vpcEndpointIds"` } @@ -3084,8 +3168,13 @@ type RestApiEndpointConfigurationInput interface { ToRestApiEndpointConfigurationOutputWithContext(context.Context) RestApiEndpointConfigurationOutput } +// The “EndpointConfiguration“ property type specifies the endpoint types of a REST API. +// +// ``EndpointConfiguration`` is a property of the [AWS::ApiGateway::RestApi](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html) resource. type RestApiEndpointConfigurationArgs struct { - Types pulumi.StringArrayInput `pulumi:"types"` + // A list of endpoint types of an API (RestApi) or its custom domain name (DomainName). For an edge-optimized API and its custom domain name, the endpoint type is ``"EDGE"``. For a regional API and its custom domain name, the endpoint type is ``REGIONAL``. For a private API, the endpoint type is ``PRIVATE``. + Types pulumi.StringArrayInput `pulumi:"types"` + // A list of VpcEndpointIds of an API (RestApi) against which to create Route53 ALIASes. It is only supported for ``PRIVATE`` endpoint type. VpcEndpointIds pulumi.StringArrayInput `pulumi:"vpcEndpointIds"` } @@ -3154,6 +3243,9 @@ func (i *restApiEndpointConfigurationPtrType) ToOutput(ctx context.Context) pulu } } +// The “EndpointConfiguration“ property type specifies the endpoint types of a REST API. +// +// ``EndpointConfiguration`` is a property of the [AWS::ApiGateway::RestApi](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html) resource. type RestApiEndpointConfigurationOutput struct{ *pulumi.OutputState } func (RestApiEndpointConfigurationOutput) ElementType() reflect.Type { @@ -3184,10 +3276,12 @@ func (o RestApiEndpointConfigurationOutput) ToOutput(ctx context.Context) pulumi } } +// A list of endpoint types of an API (RestApi) or its custom domain name (DomainName). For an edge-optimized API and its custom domain name, the endpoint type is “"EDGE"“. For a regional API and its custom domain name, the endpoint type is “REGIONAL“. For a private API, the endpoint type is “PRIVATE“. func (o RestApiEndpointConfigurationOutput) Types() pulumi.StringArrayOutput { return o.ApplyT(func(v RestApiEndpointConfiguration) []string { return v.Types }).(pulumi.StringArrayOutput) } +// A list of VpcEndpointIds of an API (RestApi) against which to create Route53 ALIASes. It is only supported for “PRIVATE“ endpoint type. func (o RestApiEndpointConfigurationOutput) VpcEndpointIds() pulumi.StringArrayOutput { return o.ApplyT(func(v RestApiEndpointConfiguration) []string { return v.VpcEndpointIds }).(pulumi.StringArrayOutput) } @@ -3222,6 +3316,7 @@ func (o RestApiEndpointConfigurationPtrOutput) Elem() RestApiEndpointConfigurati }).(RestApiEndpointConfigurationOutput) } +// A list of endpoint types of an API (RestApi) or its custom domain name (DomainName). For an edge-optimized API and its custom domain name, the endpoint type is “"EDGE"“. For a regional API and its custom domain name, the endpoint type is “REGIONAL“. For a private API, the endpoint type is “PRIVATE“. func (o RestApiEndpointConfigurationPtrOutput) Types() pulumi.StringArrayOutput { return o.ApplyT(func(v *RestApiEndpointConfiguration) []string { if v == nil { @@ -3231,6 +3326,7 @@ func (o RestApiEndpointConfigurationPtrOutput) Types() pulumi.StringArrayOutput }).(pulumi.StringArrayOutput) } +// A list of VpcEndpointIds of an API (RestApi) against which to create Route53 ALIASes. It is only supported for “PRIVATE“ endpoint type. func (o RestApiEndpointConfigurationPtrOutput) VpcEndpointIds() pulumi.StringArrayOutput { return o.ApplyT(func(v *RestApiEndpointConfiguration) []string { if v == nil { @@ -3240,10 +3336,17 @@ func (o RestApiEndpointConfigurationPtrOutput) VpcEndpointIds() pulumi.StringArr }).(pulumi.StringArrayOutput) } +// “S3Location“ is a property of the [AWS::ApiGateway::RestApi](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html) resource that specifies the Amazon S3 location of a OpenAPI (formerly Swagger) file that defines a set of RESTful APIs in JSON or YAML. +// +// On January 1, 2016, the Swagger Specification was donated to the [OpenAPI initiative](https://docs.aws.amazon.com/https://www.openapis.org/), becoming the foundation of the OpenAPI Specification. type RestApiS3Location struct { - Bucket *string `pulumi:"bucket"` - ETag *string `pulumi:"eTag"` - Key *string `pulumi:"key"` + // The name of the S3 bucket where the OpenAPI file is stored. + Bucket *string `pulumi:"bucket"` + // The Amazon S3 ETag (a file checksum) of the OpenAPI file. If you don't specify a value, API Gateway skips ETag validation of your OpenAPI file. + ETag *string `pulumi:"eTag"` + // The file name of the OpenAPI file (Amazon S3 object name). + Key *string `pulumi:"key"` + // For versioning-enabled buckets, a specific version of the OpenAPI file. Version *string `pulumi:"version"` } @@ -3258,10 +3361,17 @@ type RestApiS3LocationInput interface { ToRestApiS3LocationOutputWithContext(context.Context) RestApiS3LocationOutput } +// “S3Location“ is a property of the [AWS::ApiGateway::RestApi](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html) resource that specifies the Amazon S3 location of a OpenAPI (formerly Swagger) file that defines a set of RESTful APIs in JSON or YAML. +// +// On January 1, 2016, the Swagger Specification was donated to the [OpenAPI initiative](https://docs.aws.amazon.com/https://www.openapis.org/), becoming the foundation of the OpenAPI Specification. type RestApiS3LocationArgs struct { - Bucket pulumi.StringPtrInput `pulumi:"bucket"` - ETag pulumi.StringPtrInput `pulumi:"eTag"` - Key pulumi.StringPtrInput `pulumi:"key"` + // The name of the S3 bucket where the OpenAPI file is stored. + Bucket pulumi.StringPtrInput `pulumi:"bucket"` + // The Amazon S3 ETag (a file checksum) of the OpenAPI file. If you don't specify a value, API Gateway skips ETag validation of your OpenAPI file. + ETag pulumi.StringPtrInput `pulumi:"eTag"` + // The file name of the OpenAPI file (Amazon S3 object name). + Key pulumi.StringPtrInput `pulumi:"key"` + // For versioning-enabled buckets, a specific version of the OpenAPI file. Version pulumi.StringPtrInput `pulumi:"version"` } @@ -3330,6 +3440,9 @@ func (i *restApiS3LocationPtrType) ToOutput(ctx context.Context) pulumix.Output[ } } +// “S3Location“ is a property of the [AWS::ApiGateway::RestApi](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html) resource that specifies the Amazon S3 location of a OpenAPI (formerly Swagger) file that defines a set of RESTful APIs in JSON or YAML. +// +// On January 1, 2016, the Swagger Specification was donated to the [OpenAPI initiative](https://docs.aws.amazon.com/https://www.openapis.org/), becoming the foundation of the OpenAPI Specification. type RestApiS3LocationOutput struct{ *pulumi.OutputState } func (RestApiS3LocationOutput) ElementType() reflect.Type { @@ -3360,18 +3473,22 @@ func (o RestApiS3LocationOutput) ToOutput(ctx context.Context) pulumix.Output[Re } } +// The name of the S3 bucket where the OpenAPI file is stored. func (o RestApiS3LocationOutput) Bucket() pulumi.StringPtrOutput { return o.ApplyT(func(v RestApiS3Location) *string { return v.Bucket }).(pulumi.StringPtrOutput) } +// The Amazon S3 ETag (a file checksum) of the OpenAPI file. If you don't specify a value, API Gateway skips ETag validation of your OpenAPI file. func (o RestApiS3LocationOutput) ETag() pulumi.StringPtrOutput { return o.ApplyT(func(v RestApiS3Location) *string { return v.ETag }).(pulumi.StringPtrOutput) } +// The file name of the OpenAPI file (Amazon S3 object name). func (o RestApiS3LocationOutput) Key() pulumi.StringPtrOutput { return o.ApplyT(func(v RestApiS3Location) *string { return v.Key }).(pulumi.StringPtrOutput) } +// For versioning-enabled buckets, a specific version of the OpenAPI file. func (o RestApiS3LocationOutput) Version() pulumi.StringPtrOutput { return o.ApplyT(func(v RestApiS3Location) *string { return v.Version }).(pulumi.StringPtrOutput) } @@ -3406,6 +3523,7 @@ func (o RestApiS3LocationPtrOutput) Elem() RestApiS3LocationOutput { }).(RestApiS3LocationOutput) } +// The name of the S3 bucket where the OpenAPI file is stored. func (o RestApiS3LocationPtrOutput) Bucket() pulumi.StringPtrOutput { return o.ApplyT(func(v *RestApiS3Location) *string { if v == nil { @@ -3415,6 +3533,7 @@ func (o RestApiS3LocationPtrOutput) Bucket() pulumi.StringPtrOutput { }).(pulumi.StringPtrOutput) } +// The Amazon S3 ETag (a file checksum) of the OpenAPI file. If you don't specify a value, API Gateway skips ETag validation of your OpenAPI file. func (o RestApiS3LocationPtrOutput) ETag() pulumi.StringPtrOutput { return o.ApplyT(func(v *RestApiS3Location) *string { if v == nil { @@ -3424,6 +3543,7 @@ func (o RestApiS3LocationPtrOutput) ETag() pulumi.StringPtrOutput { }).(pulumi.StringPtrOutput) } +// The file name of the OpenAPI file (Amazon S3 object name). func (o RestApiS3LocationPtrOutput) Key() pulumi.StringPtrOutput { return o.ApplyT(func(v *RestApiS3Location) *string { if v == nil { @@ -3433,6 +3553,7 @@ func (o RestApiS3LocationPtrOutput) Key() pulumi.StringPtrOutput { }).(pulumi.StringPtrOutput) } +// For versioning-enabled buckets, a specific version of the OpenAPI file. func (o RestApiS3LocationPtrOutput) Version() pulumi.StringPtrOutput { return o.ApplyT(func(v *RestApiS3Location) *string { if v == nil { @@ -3566,11 +3687,13 @@ func (o RestApiTagArrayOutput) Index(i pulumi.IntInput) RestApiTagOutput { }).(RestApiTagOutput) } -// Specifies settings for logging access in this stage. +// The “AccessLogSetting“ property type specifies settings for logging access in this stage. +// +// ``AccessLogSetting`` is a property of the [AWS::ApiGateway::Stage](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html) resource. type StageAccessLogSetting struct { - // The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with amazon-apigateway-. This parameter is required to enable access logging. + // The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with ``amazon-apigateway-``. This parameter is required to enable access logging. DestinationArn *string `pulumi:"destinationArn"` - // A single line format of the access logs of data, as specified by selected $context variables (https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html#context-variable-reference). The format must include at least $context.requestId. This parameter is required to enable access logging. + // A single line format of the access logs of data, as specified by selected [$context variables](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html#context-variable-reference). The format must include at least ``$context.requestId``. This parameter is required to enable access logging. Format *string `pulumi:"format"` } @@ -3585,11 +3708,13 @@ type StageAccessLogSettingInput interface { ToStageAccessLogSettingOutputWithContext(context.Context) StageAccessLogSettingOutput } -// Specifies settings for logging access in this stage. +// The “AccessLogSetting“ property type specifies settings for logging access in this stage. +// +// ``AccessLogSetting`` is a property of the [AWS::ApiGateway::Stage](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html) resource. type StageAccessLogSettingArgs struct { - // The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with amazon-apigateway-. This parameter is required to enable access logging. + // The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with ``amazon-apigateway-``. This parameter is required to enable access logging. DestinationArn pulumi.StringPtrInput `pulumi:"destinationArn"` - // A single line format of the access logs of data, as specified by selected $context variables (https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html#context-variable-reference). The format must include at least $context.requestId. This parameter is required to enable access logging. + // A single line format of the access logs of data, as specified by selected [$context variables](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html#context-variable-reference). The format must include at least ``$context.requestId``. This parameter is required to enable access logging. Format pulumi.StringPtrInput `pulumi:"format"` } @@ -3658,7 +3783,9 @@ func (i *stageAccessLogSettingPtrType) ToOutput(ctx context.Context) pulumix.Out } } -// Specifies settings for logging access in this stage. +// The “AccessLogSetting“ property type specifies settings for logging access in this stage. +// +// ``AccessLogSetting`` is a property of the [AWS::ApiGateway::Stage](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html) resource. type StageAccessLogSettingOutput struct{ *pulumi.OutputState } func (StageAccessLogSettingOutput) ElementType() reflect.Type { @@ -3689,12 +3816,12 @@ func (o StageAccessLogSettingOutput) ToOutput(ctx context.Context) pulumix.Outpu } } -// The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with amazon-apigateway-. This parameter is required to enable access logging. +// The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with “amazon-apigateway-“. This parameter is required to enable access logging. func (o StageAccessLogSettingOutput) DestinationArn() pulumi.StringPtrOutput { return o.ApplyT(func(v StageAccessLogSetting) *string { return v.DestinationArn }).(pulumi.StringPtrOutput) } -// A single line format of the access logs of data, as specified by selected $context variables (https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html#context-variable-reference). The format must include at least $context.requestId. This parameter is required to enable access logging. +// A single line format of the access logs of data, as specified by selected [$context variables](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html#context-variable-reference). The format must include at least “$context.requestId“. This parameter is required to enable access logging. func (o StageAccessLogSettingOutput) Format() pulumi.StringPtrOutput { return o.ApplyT(func(v StageAccessLogSetting) *string { return v.Format }).(pulumi.StringPtrOutput) } @@ -3729,7 +3856,7 @@ func (o StageAccessLogSettingPtrOutput) Elem() StageAccessLogSettingOutput { }).(StageAccessLogSettingOutput) } -// The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with amazon-apigateway-. This parameter is required to enable access logging. +// The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with “amazon-apigateway-“. This parameter is required to enable access logging. func (o StageAccessLogSettingPtrOutput) DestinationArn() pulumi.StringPtrOutput { return o.ApplyT(func(v *StageAccessLogSetting) *string { if v == nil { @@ -3739,7 +3866,7 @@ func (o StageAccessLogSettingPtrOutput) DestinationArn() pulumi.StringPtrOutput }).(pulumi.StringPtrOutput) } -// A single line format of the access logs of data, as specified by selected $context variables (https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html#context-variable-reference). The format must include at least $context.requestId. This parameter is required to enable access logging. +// A single line format of the access logs of data, as specified by selected [$context variables](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html#context-variable-reference). The format must include at least “$context.requestId“. This parameter is required to enable access logging. func (o StageAccessLogSettingPtrOutput) Format() pulumi.StringPtrOutput { return o.ApplyT(func(v *StageAccessLogSetting) *string { if v == nil { @@ -3749,15 +3876,15 @@ func (o StageAccessLogSettingPtrOutput) Format() pulumi.StringPtrOutput { }).(pulumi.StringPtrOutput) } -// Specifies settings for the canary deployment in this stage. +// Configuration settings of a canary deployment. type StageCanarySetting struct { - // The identifier of the deployment that the stage points to. + // The ID of the canary deployment. DeploymentId *string `pulumi:"deploymentId"` - // The percentage (0-100) of traffic diverted to a canary deployment. + // The percent (0-100) of traffic diverted to a canary deployment. PercentTraffic *float64 `pulumi:"percentTraffic"` // Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values. StageVariableOverrides interface{} `pulumi:"stageVariableOverrides"` - // Whether the canary deployment uses the stage cache or not. + // A Boolean flag to indicate whether the canary deployment uses the stage cache or not. UseStageCache *bool `pulumi:"useStageCache"` } @@ -3772,15 +3899,15 @@ type StageCanarySettingInput interface { ToStageCanarySettingOutputWithContext(context.Context) StageCanarySettingOutput } -// Specifies settings for the canary deployment in this stage. +// Configuration settings of a canary deployment. type StageCanarySettingArgs struct { - // The identifier of the deployment that the stage points to. + // The ID of the canary deployment. DeploymentId pulumi.StringPtrInput `pulumi:"deploymentId"` - // The percentage (0-100) of traffic diverted to a canary deployment. + // The percent (0-100) of traffic diverted to a canary deployment. PercentTraffic pulumi.Float64PtrInput `pulumi:"percentTraffic"` // Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values. StageVariableOverrides pulumi.Input `pulumi:"stageVariableOverrides"` - // Whether the canary deployment uses the stage cache or not. + // A Boolean flag to indicate whether the canary deployment uses the stage cache or not. UseStageCache pulumi.BoolPtrInput `pulumi:"useStageCache"` } @@ -3849,7 +3976,7 @@ func (i *stageCanarySettingPtrType) ToOutput(ctx context.Context) pulumix.Output } } -// Specifies settings for the canary deployment in this stage. +// Configuration settings of a canary deployment. type StageCanarySettingOutput struct{ *pulumi.OutputState } func (StageCanarySettingOutput) ElementType() reflect.Type { @@ -3880,12 +4007,12 @@ func (o StageCanarySettingOutput) ToOutput(ctx context.Context) pulumix.Output[S } } -// The identifier of the deployment that the stage points to. +// The ID of the canary deployment. func (o StageCanarySettingOutput) DeploymentId() pulumi.StringPtrOutput { return o.ApplyT(func(v StageCanarySetting) *string { return v.DeploymentId }).(pulumi.StringPtrOutput) } -// The percentage (0-100) of traffic diverted to a canary deployment. +// The percent (0-100) of traffic diverted to a canary deployment. func (o StageCanarySettingOutput) PercentTraffic() pulumi.Float64PtrOutput { return o.ApplyT(func(v StageCanarySetting) *float64 { return v.PercentTraffic }).(pulumi.Float64PtrOutput) } @@ -3895,7 +4022,7 @@ func (o StageCanarySettingOutput) StageVariableOverrides() pulumi.AnyOutput { return o.ApplyT(func(v StageCanarySetting) interface{} { return v.StageVariableOverrides }).(pulumi.AnyOutput) } -// Whether the canary deployment uses the stage cache or not. +// A Boolean flag to indicate whether the canary deployment uses the stage cache or not. func (o StageCanarySettingOutput) UseStageCache() pulumi.BoolPtrOutput { return o.ApplyT(func(v StageCanarySetting) *bool { return v.UseStageCache }).(pulumi.BoolPtrOutput) } @@ -3930,7 +4057,7 @@ func (o StageCanarySettingPtrOutput) Elem() StageCanarySettingOutput { }).(StageCanarySettingOutput) } -// The identifier of the deployment that the stage points to. +// The ID of the canary deployment. func (o StageCanarySettingPtrOutput) DeploymentId() pulumi.StringPtrOutput { return o.ApplyT(func(v *StageCanarySetting) *string { if v == nil { @@ -3940,7 +4067,7 @@ func (o StageCanarySettingPtrOutput) DeploymentId() pulumi.StringPtrOutput { }).(pulumi.StringPtrOutput) } -// The percentage (0-100) of traffic diverted to a canary deployment. +// The percent (0-100) of traffic diverted to a canary deployment. func (o StageCanarySettingPtrOutput) PercentTraffic() pulumi.Float64PtrOutput { return o.ApplyT(func(v *StageCanarySetting) *float64 { if v == nil { @@ -3960,7 +4087,7 @@ func (o StageCanarySettingPtrOutput) StageVariableOverrides() pulumi.AnyOutput { }).(pulumi.AnyOutput) } -// Whether the canary deployment uses the stage cache or not. +// A Boolean flag to indicate whether the canary deployment uses the stage cache or not. func (o StageCanarySettingPtrOutput) UseStageCache() pulumi.BoolPtrOutput { return o.ApplyT(func(v *StageCanarySetting) *bool { if v == nil { @@ -3970,27 +4097,29 @@ func (o StageCanarySettingPtrOutput) UseStageCache() pulumi.BoolPtrOutput { }).(pulumi.BoolPtrOutput) } -// Configures settings for all methods in a stage. +// The “MethodSetting“ property type configures settings for all methods in a stage. +// +// The ``MethodSettings`` property of the ``AWS::ApiGateway::Stage`` resource contains a list of ``MethodSetting`` property types. type StageMethodSetting struct { - // Indicates whether the cached responses are encrypted. + // Specifies whether the cached responses are encrypted. CacheDataEncrypted *bool `pulumi:"cacheDataEncrypted"` - // The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. + // Specifies the time to live (TTL), in seconds, for cached responses. The higher the TTL, the longer the response will be cached. CacheTtlInSeconds *int `pulumi:"cacheTtlInSeconds"` - // Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses. + // Specifies whether responses should be cached and returned for requests. A cache cluster must be enabled on the stage for responses to be cached. CachingEnabled *bool `pulumi:"cachingEnabled"` - // Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs. + // Specifies whether data trace logging is enabled for this method, which affects the log entries pushed to Amazon CloudWatch Logs. This can be useful to troubleshoot APIs, but can result in logging sensitive data. We recommend that you don't enable this option for production APIs. DataTraceEnabled *bool `pulumi:"dataTraceEnabled"` - // The HTTP method. You can use an asterisk (*) as a wildcard to apply method settings to multiple methods. + // The HTTP method. To apply settings to multiple resources and methods, specify an asterisk (``*``) for the ``HttpMethod`` and ``/*`` for the ``ResourcePath``. This parameter is required when you specify a ``MethodSetting``. HttpMethod *string `pulumi:"httpMethod"` - // The logging level for this method. For valid values, see the loggingLevel property of the Stage (https://docs.aws.amazon.com/apigateway/api-reference/resource/stage/#loggingLevel) resource in the Amazon API Gateway API Reference. + // Specifies the logging level for this method, which affects the log entries pushed to Amazon CloudWatch Logs. Valid values are ``OFF``, ``ERROR``, and ``INFO``. Choose ``ERROR`` to write only error-level entries to CloudWatch Logs, or choose ``INFO`` to include all ``ERROR`` events as well as extra informational events. LoggingLevel *string `pulumi:"loggingLevel"` - // Indicates whether Amazon CloudWatch metrics are enabled for methods in the stage. + // Specifies whether Amazon CloudWatch metrics are enabled for this method. MetricsEnabled *bool `pulumi:"metricsEnabled"` - // The resource path for this method. Forward slashes (/) are encoded as ~1 and the initial slash must include a forward slash. For example, the path value /resource/subresource must be encoded as /~1resource~1subresource. To specify the root path, use only a slash (/). You can use an asterisk (*) as a wildcard to apply method settings to multiple methods. + // The resource path for this method. Forward slashes (``/``) are encoded as ``~1`` and the initial slash must include a forward slash. For example, the path value ``/resource/subresource`` must be encoded as ``/~1resource~1subresource``. To specify the root path, use only a slash (``/``). To apply settings to multiple resources and methods, specify an asterisk (``*``) for the ``HttpMethod`` and ``/*`` for the ``ResourcePath``. This parameter is required when you specify a ``MethodSetting``. ResourcePath *string `pulumi:"resourcePath"` - // The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. + // Specifies the throttling burst limit. ThrottlingBurstLimit *int `pulumi:"throttlingBurstLimit"` - // The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. + // Specifies the throttling rate limit. ThrottlingRateLimit *float64 `pulumi:"throttlingRateLimit"` } @@ -4005,27 +4134,29 @@ type StageMethodSettingInput interface { ToStageMethodSettingOutputWithContext(context.Context) StageMethodSettingOutput } -// Configures settings for all methods in a stage. +// The “MethodSetting“ property type configures settings for all methods in a stage. +// +// The ``MethodSettings`` property of the ``AWS::ApiGateway::Stage`` resource contains a list of ``MethodSetting`` property types. type StageMethodSettingArgs struct { - // Indicates whether the cached responses are encrypted. + // Specifies whether the cached responses are encrypted. CacheDataEncrypted pulumi.BoolPtrInput `pulumi:"cacheDataEncrypted"` - // The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. + // Specifies the time to live (TTL), in seconds, for cached responses. The higher the TTL, the longer the response will be cached. CacheTtlInSeconds pulumi.IntPtrInput `pulumi:"cacheTtlInSeconds"` - // Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses. + // Specifies whether responses should be cached and returned for requests. A cache cluster must be enabled on the stage for responses to be cached. CachingEnabled pulumi.BoolPtrInput `pulumi:"cachingEnabled"` - // Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs. + // Specifies whether data trace logging is enabled for this method, which affects the log entries pushed to Amazon CloudWatch Logs. This can be useful to troubleshoot APIs, but can result in logging sensitive data. We recommend that you don't enable this option for production APIs. DataTraceEnabled pulumi.BoolPtrInput `pulumi:"dataTraceEnabled"` - // The HTTP method. You can use an asterisk (*) as a wildcard to apply method settings to multiple methods. + // The HTTP method. To apply settings to multiple resources and methods, specify an asterisk (``*``) for the ``HttpMethod`` and ``/*`` for the ``ResourcePath``. This parameter is required when you specify a ``MethodSetting``. HttpMethod pulumi.StringPtrInput `pulumi:"httpMethod"` - // The logging level for this method. For valid values, see the loggingLevel property of the Stage (https://docs.aws.amazon.com/apigateway/api-reference/resource/stage/#loggingLevel) resource in the Amazon API Gateway API Reference. + // Specifies the logging level for this method, which affects the log entries pushed to Amazon CloudWatch Logs. Valid values are ``OFF``, ``ERROR``, and ``INFO``. Choose ``ERROR`` to write only error-level entries to CloudWatch Logs, or choose ``INFO`` to include all ``ERROR`` events as well as extra informational events. LoggingLevel pulumi.StringPtrInput `pulumi:"loggingLevel"` - // Indicates whether Amazon CloudWatch metrics are enabled for methods in the stage. + // Specifies whether Amazon CloudWatch metrics are enabled for this method. MetricsEnabled pulumi.BoolPtrInput `pulumi:"metricsEnabled"` - // The resource path for this method. Forward slashes (/) are encoded as ~1 and the initial slash must include a forward slash. For example, the path value /resource/subresource must be encoded as /~1resource~1subresource. To specify the root path, use only a slash (/). You can use an asterisk (*) as a wildcard to apply method settings to multiple methods. + // The resource path for this method. Forward slashes (``/``) are encoded as ``~1`` and the initial slash must include a forward slash. For example, the path value ``/resource/subresource`` must be encoded as ``/~1resource~1subresource``. To specify the root path, use only a slash (``/``). To apply settings to multiple resources and methods, specify an asterisk (``*``) for the ``HttpMethod`` and ``/*`` for the ``ResourcePath``. This parameter is required when you specify a ``MethodSetting``. ResourcePath pulumi.StringPtrInput `pulumi:"resourcePath"` - // The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. + // Specifies the throttling burst limit. ThrottlingBurstLimit pulumi.IntPtrInput `pulumi:"throttlingBurstLimit"` - // The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. + // Specifies the throttling rate limit. ThrottlingRateLimit pulumi.Float64PtrInput `pulumi:"throttlingRateLimit"` } @@ -4078,7 +4209,9 @@ func (i StageMethodSettingArray) ToOutput(ctx context.Context) pulumix.Output[[] } } -// Configures settings for all methods in a stage. +// The “MethodSetting“ property type configures settings for all methods in a stage. +// +// The ``MethodSettings`` property of the ``AWS::ApiGateway::Stage`` resource contains a list of ``MethodSetting`` property types. type StageMethodSettingOutput struct{ *pulumi.OutputState } func (StageMethodSettingOutput) ElementType() reflect.Type { @@ -4099,52 +4232,52 @@ func (o StageMethodSettingOutput) ToOutput(ctx context.Context) pulumix.Output[S } } -// Indicates whether the cached responses are encrypted. +// Specifies whether the cached responses are encrypted. func (o StageMethodSettingOutput) CacheDataEncrypted() pulumi.BoolPtrOutput { return o.ApplyT(func(v StageMethodSetting) *bool { return v.CacheDataEncrypted }).(pulumi.BoolPtrOutput) } -// The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. +// Specifies the time to live (TTL), in seconds, for cached responses. The higher the TTL, the longer the response will be cached. func (o StageMethodSettingOutput) CacheTtlInSeconds() pulumi.IntPtrOutput { return o.ApplyT(func(v StageMethodSetting) *int { return v.CacheTtlInSeconds }).(pulumi.IntPtrOutput) } -// Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses. +// Specifies whether responses should be cached and returned for requests. A cache cluster must be enabled on the stage for responses to be cached. func (o StageMethodSettingOutput) CachingEnabled() pulumi.BoolPtrOutput { return o.ApplyT(func(v StageMethodSetting) *bool { return v.CachingEnabled }).(pulumi.BoolPtrOutput) } -// Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs. +// Specifies whether data trace logging is enabled for this method, which affects the log entries pushed to Amazon CloudWatch Logs. This can be useful to troubleshoot APIs, but can result in logging sensitive data. We recommend that you don't enable this option for production APIs. func (o StageMethodSettingOutput) DataTraceEnabled() pulumi.BoolPtrOutput { return o.ApplyT(func(v StageMethodSetting) *bool { return v.DataTraceEnabled }).(pulumi.BoolPtrOutput) } -// The HTTP method. You can use an asterisk (*) as a wildcard to apply method settings to multiple methods. +// The HTTP method. To apply settings to multiple resources and methods, specify an asterisk (“*“) for the “HttpMethod“ and “/*“ for the “ResourcePath“. This parameter is required when you specify a “MethodSetting“. func (o StageMethodSettingOutput) HttpMethod() pulumi.StringPtrOutput { return o.ApplyT(func(v StageMethodSetting) *string { return v.HttpMethod }).(pulumi.StringPtrOutput) } -// The logging level for this method. For valid values, see the loggingLevel property of the Stage (https://docs.aws.amazon.com/apigateway/api-reference/resource/stage/#loggingLevel) resource in the Amazon API Gateway API Reference. +// Specifies the logging level for this method, which affects the log entries pushed to Amazon CloudWatch Logs. Valid values are “OFF“, “ERROR“, and “INFO“. Choose “ERROR“ to write only error-level entries to CloudWatch Logs, or choose “INFO“ to include all “ERROR“ events as well as extra informational events. func (o StageMethodSettingOutput) LoggingLevel() pulumi.StringPtrOutput { return o.ApplyT(func(v StageMethodSetting) *string { return v.LoggingLevel }).(pulumi.StringPtrOutput) } -// Indicates whether Amazon CloudWatch metrics are enabled for methods in the stage. +// Specifies whether Amazon CloudWatch metrics are enabled for this method. func (o StageMethodSettingOutput) MetricsEnabled() pulumi.BoolPtrOutput { return o.ApplyT(func(v StageMethodSetting) *bool { return v.MetricsEnabled }).(pulumi.BoolPtrOutput) } -// The resource path for this method. Forward slashes (/) are encoded as ~1 and the initial slash must include a forward slash. For example, the path value /resource/subresource must be encoded as /~1resource~1subresource. To specify the root path, use only a slash (/). You can use an asterisk (*) as a wildcard to apply method settings to multiple methods. +// The resource path for this method. Forward slashes (“/“) are encoded as “~1“ and the initial slash must include a forward slash. For example, the path value “/resource/subresource“ must be encoded as “/~1resource~1subresource“. To specify the root path, use only a slash (“/“). To apply settings to multiple resources and methods, specify an asterisk (“*“) for the “HttpMethod“ and “/*“ for the “ResourcePath“. This parameter is required when you specify a “MethodSetting“. func (o StageMethodSettingOutput) ResourcePath() pulumi.StringPtrOutput { return o.ApplyT(func(v StageMethodSetting) *string { return v.ResourcePath }).(pulumi.StringPtrOutput) } -// The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. +// Specifies the throttling burst limit. func (o StageMethodSettingOutput) ThrottlingBurstLimit() pulumi.IntPtrOutput { return o.ApplyT(func(v StageMethodSetting) *int { return v.ThrottlingBurstLimit }).(pulumi.IntPtrOutput) } -// The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. +// Specifies the throttling rate limit. func (o StageMethodSettingOutput) ThrottlingRateLimit() pulumi.Float64PtrOutput { return o.ApplyT(func(v StageMethodSetting) *float64 { return v.ThrottlingRateLimit }).(pulumi.Float64PtrOutput) } diff --git a/sdk/go/aws/apigateway/resource.go b/sdk/go/aws/apigateway/resource.go index 19caa84395..2eba2a77b0 100644 --- a/sdk/go/aws/apigateway/resource.go +++ b/sdk/go/aws/apigateway/resource.go @@ -13,7 +13,7 @@ import ( "github.com/pulumi/pulumi/sdk/v3/go/pulumix" ) -// Resource Type definition for AWS::ApiGateway::Resource +// The “AWS::ApiGateway::Resource“ resource creates a resource in an API. type Resource struct { pulumi.CustomResourceState @@ -23,7 +23,7 @@ type Resource struct { PathPart pulumi.StringOutput `pulumi:"pathPart"` // A unique primary identifier for a Resource ResourceId pulumi.StringOutput `pulumi:"resourceId"` - // The ID of the RestApi resource in which you want to create this resource.. + // The string identifier of the associated RestApi. RestApiId pulumi.StringOutput `pulumi:"restApiId"` } @@ -86,7 +86,7 @@ type resourceArgs struct { ParentId string `pulumi:"parentId"` // The last path segment for this resource. PathPart string `pulumi:"pathPart"` - // The ID of the RestApi resource in which you want to create this resource.. + // The string identifier of the associated RestApi. RestApiId string `pulumi:"restApiId"` } @@ -96,7 +96,7 @@ type ResourceArgs struct { ParentId pulumi.StringInput // The last path segment for this resource. PathPart pulumi.StringInput - // The ID of the RestApi resource in which you want to create this resource.. + // The string identifier of the associated RestApi. RestApiId pulumi.StringInput } @@ -164,7 +164,7 @@ func (o ResourceOutput) ResourceId() pulumi.StringOutput { return o.ApplyT(func(v *Resource) pulumi.StringOutput { return v.ResourceId }).(pulumi.StringOutput) } -// The ID of the RestApi resource in which you want to create this resource.. +// The string identifier of the associated RestApi. func (o ResourceOutput) RestApiId() pulumi.StringOutput { return o.ApplyT(func(v *Resource) pulumi.StringOutput { return v.RestApiId }).(pulumi.StringOutput) } diff --git a/sdk/go/aws/apigateway/restApi.go b/sdk/go/aws/apigateway/restApi.go index 7de787c518..fea688e053 100644 --- a/sdk/go/aws/apigateway/restApi.go +++ b/sdk/go/aws/apigateway/restApi.go @@ -12,27 +12,49 @@ import ( "github.com/pulumi/pulumi/sdk/v3/go/pulumix" ) -// Resource Type definition for AWS::ApiGateway::RestApi. +// The “AWS::ApiGateway::RestApi“ resource creates a REST API. For more information, see [restapi:create](https://docs.aws.amazon.com/apigateway/latest/api/API_CreateRestApi.html) in the *Amazon API Gateway REST API Reference*. +// +// On January 1, 2016, the Swagger Specification was donated to the [OpenAPI initiative](https://docs.aws.amazon.com/https://www.openapis.org/), becoming the foundation of the OpenAPI Specification. type RestApi struct { pulumi.CustomResourceState - ApiKeySourceType pulumi.StringPtrOutput `pulumi:"apiKeySourceType"` - BinaryMediaTypes pulumi.StringArrayOutput `pulumi:"binaryMediaTypes"` - Body pulumi.AnyOutput `pulumi:"body"` - BodyS3Location RestApiS3LocationPtrOutput `pulumi:"bodyS3Location"` - CloneFrom pulumi.StringPtrOutput `pulumi:"cloneFrom"` - Description pulumi.StringPtrOutput `pulumi:"description"` - DisableExecuteApiEndpoint pulumi.BoolPtrOutput `pulumi:"disableExecuteApiEndpoint"` - EndpointConfiguration RestApiEndpointConfigurationPtrOutput `pulumi:"endpointConfiguration"` - FailOnWarnings pulumi.BoolPtrOutput `pulumi:"failOnWarnings"` - MinimumCompressionSize pulumi.IntPtrOutput `pulumi:"minimumCompressionSize"` - Mode pulumi.StringPtrOutput `pulumi:"mode"` - Name pulumi.StringPtrOutput `pulumi:"name"` - Parameters pulumi.AnyOutput `pulumi:"parameters"` - Policy pulumi.AnyOutput `pulumi:"policy"` - RestApiId pulumi.StringOutput `pulumi:"restApiId"` - RootResourceId pulumi.StringOutput `pulumi:"rootResourceId"` - Tags RestApiTagArrayOutput `pulumi:"tags"` + // The source of the API key for metering requests according to a usage plan. Valid values are: ``HEADER`` to read the API key from the ``X-API-Key`` header of a request. ``AUTHORIZER`` to read the API key from the ``UsageIdentifierKey`` from a custom authorizer. + ApiKeySourceType pulumi.StringPtrOutput `pulumi:"apiKeySourceType"` + // The list of binary media types supported by the RestApi. By default, the RestApi supports only UTF-8-encoded text payloads. + BinaryMediaTypes pulumi.StringArrayOutput `pulumi:"binaryMediaTypes"` + // An OpenAPI specification that defines a set of RESTful APIs in JSON format. For YAML templates, you can also provide the specification in YAML format. + Body pulumi.AnyOutput `pulumi:"body"` + // The Amazon Simple Storage Service (Amazon S3) location that points to an OpenAPI file, which defines a set of RESTful APIs in JSON or YAML format. + BodyS3Location RestApiS3LocationPtrOutput `pulumi:"bodyS3Location"` + // The ID of the RestApi that you want to clone from. + CloneFrom pulumi.StringPtrOutput `pulumi:"cloneFrom"` + // The description of the RestApi. + Description pulumi.StringPtrOutput `pulumi:"description"` + // Specifies whether clients can invoke your API by using the default ``execute-api`` endpoint. By default, clients can invoke your API with the default ``https://{api_id}.execute-api.{region}.amazonaws.com`` endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint + DisableExecuteApiEndpoint pulumi.BoolPtrOutput `pulumi:"disableExecuteApiEndpoint"` + // A list of the endpoint types of the API. Use this property when creating an API. When importing an existing API, specify the endpoint configuration types using the ``Parameters`` property. + EndpointConfiguration RestApiEndpointConfigurationPtrOutput `pulumi:"endpointConfiguration"` + // A query parameter to indicate whether to rollback the API update (``true``) or not (``false``) when a warning is encountered. The default value is ``false``. + FailOnWarnings pulumi.BoolPtrOutput `pulumi:"failOnWarnings"` + // A nullable integer that is used to enable compression (with non-negative between 0 and 10485760 (10M) bytes, inclusive) or disable compression (with a null value) on an API. When compression is enabled, compression or decompression is not applied on the payload if the payload size is smaller than this value. Setting it to zero allows compression for any payload size. + MinimumCompressionSize pulumi.IntPtrOutput `pulumi:"minimumCompressionSize"` + // This property applies only when you use OpenAPI to define your REST API. The ``Mode`` determines how API Gateway handles resource updates. + // Valid values are ``overwrite`` or ``merge``. + // For ``overwrite``, the new API definition replaces the existing one. The existing API identifier remains unchanged. + // For ``merge``, the new API definition is merged with the existing API. + // If you don't specify this property, a default value is chosen. For REST APIs created before March 29, 2021, the default is ``overwrite``. For REST APIs created after March 29, 2021, the new API definition takes precedence, but any container types such as endpoint configurations and binary media types are merged with the existing API. + // Use the default mode to define top-level ``RestApi`` properties in addition to using OpenAPI. Generally, it's preferred to use API Gateway's OpenAPI extensions to model these properties. + Mode pulumi.StringPtrOutput `pulumi:"mode"` + // The name of the RestApi. A name is required if the REST API is not based on an OpenAPI specification. + Name pulumi.StringPtrOutput `pulumi:"name"` + // Custom header parameters as part of the request. For example, to exclude DocumentationParts from an imported API, set ``ignore=documentation`` as a ``parameters`` value, as in the AWS CLI command of ``aws apigateway import-rest-api --parameters ignore=documentation --body 'file:///path/to/imported-api-body.json'``. + Parameters pulumi.AnyOutput `pulumi:"parameters"` + // A policy document that contains the permissions for the ``RestApi`` resource. To set the ARN for the policy, use the ``!Join`` intrinsic function with ``""`` as delimiter and values of ``"execute-api:/"`` and ``"*"``. + Policy pulumi.AnyOutput `pulumi:"policy"` + RestApiId pulumi.StringOutput `pulumi:"restApiId"` + RootResourceId pulumi.StringOutput `pulumi:"rootResourceId"` + // The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with ``aws:``. The tag value can be up to 256 characters. + Tags RestApiTagArrayOutput `pulumi:"tags"` } // NewRestApi registers a new resource with the given unique name, arguments, and options. @@ -75,40 +97,80 @@ func (RestApiState) ElementType() reflect.Type { } type restApiArgs struct { - ApiKeySourceType *string `pulumi:"apiKeySourceType"` - BinaryMediaTypes []string `pulumi:"binaryMediaTypes"` - Body interface{} `pulumi:"body"` - BodyS3Location *RestApiS3Location `pulumi:"bodyS3Location"` - CloneFrom *string `pulumi:"cloneFrom"` - Description *string `pulumi:"description"` - DisableExecuteApiEndpoint *bool `pulumi:"disableExecuteApiEndpoint"` - EndpointConfiguration *RestApiEndpointConfiguration `pulumi:"endpointConfiguration"` - FailOnWarnings *bool `pulumi:"failOnWarnings"` - MinimumCompressionSize *int `pulumi:"minimumCompressionSize"` - Mode *string `pulumi:"mode"` - Name *string `pulumi:"name"` - Parameters interface{} `pulumi:"parameters"` - Policy interface{} `pulumi:"policy"` - Tags []RestApiTag `pulumi:"tags"` + // The source of the API key for metering requests according to a usage plan. Valid values are: ``HEADER`` to read the API key from the ``X-API-Key`` header of a request. ``AUTHORIZER`` to read the API key from the ``UsageIdentifierKey`` from a custom authorizer. + ApiKeySourceType *string `pulumi:"apiKeySourceType"` + // The list of binary media types supported by the RestApi. By default, the RestApi supports only UTF-8-encoded text payloads. + BinaryMediaTypes []string `pulumi:"binaryMediaTypes"` + // An OpenAPI specification that defines a set of RESTful APIs in JSON format. For YAML templates, you can also provide the specification in YAML format. + Body interface{} `pulumi:"body"` + // The Amazon Simple Storage Service (Amazon S3) location that points to an OpenAPI file, which defines a set of RESTful APIs in JSON or YAML format. + BodyS3Location *RestApiS3Location `pulumi:"bodyS3Location"` + // The ID of the RestApi that you want to clone from. + CloneFrom *string `pulumi:"cloneFrom"` + // The description of the RestApi. + Description *string `pulumi:"description"` + // Specifies whether clients can invoke your API by using the default ``execute-api`` endpoint. By default, clients can invoke your API with the default ``https://{api_id}.execute-api.{region}.amazonaws.com`` endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint + DisableExecuteApiEndpoint *bool `pulumi:"disableExecuteApiEndpoint"` + // A list of the endpoint types of the API. Use this property when creating an API. When importing an existing API, specify the endpoint configuration types using the ``Parameters`` property. + EndpointConfiguration *RestApiEndpointConfiguration `pulumi:"endpointConfiguration"` + // A query parameter to indicate whether to rollback the API update (``true``) or not (``false``) when a warning is encountered. The default value is ``false``. + FailOnWarnings *bool `pulumi:"failOnWarnings"` + // A nullable integer that is used to enable compression (with non-negative between 0 and 10485760 (10M) bytes, inclusive) or disable compression (with a null value) on an API. When compression is enabled, compression or decompression is not applied on the payload if the payload size is smaller than this value. Setting it to zero allows compression for any payload size. + MinimumCompressionSize *int `pulumi:"minimumCompressionSize"` + // This property applies only when you use OpenAPI to define your REST API. The ``Mode`` determines how API Gateway handles resource updates. + // Valid values are ``overwrite`` or ``merge``. + // For ``overwrite``, the new API definition replaces the existing one. The existing API identifier remains unchanged. + // For ``merge``, the new API definition is merged with the existing API. + // If you don't specify this property, a default value is chosen. For REST APIs created before March 29, 2021, the default is ``overwrite``. For REST APIs created after March 29, 2021, the new API definition takes precedence, but any container types such as endpoint configurations and binary media types are merged with the existing API. + // Use the default mode to define top-level ``RestApi`` properties in addition to using OpenAPI. Generally, it's preferred to use API Gateway's OpenAPI extensions to model these properties. + Mode *string `pulumi:"mode"` + // The name of the RestApi. A name is required if the REST API is not based on an OpenAPI specification. + Name *string `pulumi:"name"` + // Custom header parameters as part of the request. For example, to exclude DocumentationParts from an imported API, set ``ignore=documentation`` as a ``parameters`` value, as in the AWS CLI command of ``aws apigateway import-rest-api --parameters ignore=documentation --body 'file:///path/to/imported-api-body.json'``. + Parameters interface{} `pulumi:"parameters"` + // A policy document that contains the permissions for the ``RestApi`` resource. To set the ARN for the policy, use the ``!Join`` intrinsic function with ``""`` as delimiter and values of ``"execute-api:/"`` and ``"*"``. + Policy interface{} `pulumi:"policy"` + // The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with ``aws:``. The tag value can be up to 256 characters. + Tags []RestApiTag `pulumi:"tags"` } // The set of arguments for constructing a RestApi resource. type RestApiArgs struct { - ApiKeySourceType pulumi.StringPtrInput - BinaryMediaTypes pulumi.StringArrayInput - Body pulumi.Input - BodyS3Location RestApiS3LocationPtrInput - CloneFrom pulumi.StringPtrInput - Description pulumi.StringPtrInput + // The source of the API key for metering requests according to a usage plan. Valid values are: ``HEADER`` to read the API key from the ``X-API-Key`` header of a request. ``AUTHORIZER`` to read the API key from the ``UsageIdentifierKey`` from a custom authorizer. + ApiKeySourceType pulumi.StringPtrInput + // The list of binary media types supported by the RestApi. By default, the RestApi supports only UTF-8-encoded text payloads. + BinaryMediaTypes pulumi.StringArrayInput + // An OpenAPI specification that defines a set of RESTful APIs in JSON format. For YAML templates, you can also provide the specification in YAML format. + Body pulumi.Input + // The Amazon Simple Storage Service (Amazon S3) location that points to an OpenAPI file, which defines a set of RESTful APIs in JSON or YAML format. + BodyS3Location RestApiS3LocationPtrInput + // The ID of the RestApi that you want to clone from. + CloneFrom pulumi.StringPtrInput + // The description of the RestApi. + Description pulumi.StringPtrInput + // Specifies whether clients can invoke your API by using the default ``execute-api`` endpoint. By default, clients can invoke your API with the default ``https://{api_id}.execute-api.{region}.amazonaws.com`` endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint DisableExecuteApiEndpoint pulumi.BoolPtrInput - EndpointConfiguration RestApiEndpointConfigurationPtrInput - FailOnWarnings pulumi.BoolPtrInput - MinimumCompressionSize pulumi.IntPtrInput - Mode pulumi.StringPtrInput - Name pulumi.StringPtrInput - Parameters pulumi.Input - Policy pulumi.Input - Tags RestApiTagArrayInput + // A list of the endpoint types of the API. Use this property when creating an API. When importing an existing API, specify the endpoint configuration types using the ``Parameters`` property. + EndpointConfiguration RestApiEndpointConfigurationPtrInput + // A query parameter to indicate whether to rollback the API update (``true``) or not (``false``) when a warning is encountered. The default value is ``false``. + FailOnWarnings pulumi.BoolPtrInput + // A nullable integer that is used to enable compression (with non-negative between 0 and 10485760 (10M) bytes, inclusive) or disable compression (with a null value) on an API. When compression is enabled, compression or decompression is not applied on the payload if the payload size is smaller than this value. Setting it to zero allows compression for any payload size. + MinimumCompressionSize pulumi.IntPtrInput + // This property applies only when you use OpenAPI to define your REST API. The ``Mode`` determines how API Gateway handles resource updates. + // Valid values are ``overwrite`` or ``merge``. + // For ``overwrite``, the new API definition replaces the existing one. The existing API identifier remains unchanged. + // For ``merge``, the new API definition is merged with the existing API. + // If you don't specify this property, a default value is chosen. For REST APIs created before March 29, 2021, the default is ``overwrite``. For REST APIs created after March 29, 2021, the new API definition takes precedence, but any container types such as endpoint configurations and binary media types are merged with the existing API. + // Use the default mode to define top-level ``RestApi`` properties in addition to using OpenAPI. Generally, it's preferred to use API Gateway's OpenAPI extensions to model these properties. + Mode pulumi.StringPtrInput + // The name of the RestApi. A name is required if the REST API is not based on an OpenAPI specification. + Name pulumi.StringPtrInput + // Custom header parameters as part of the request. For example, to exclude DocumentationParts from an imported API, set ``ignore=documentation`` as a ``parameters`` value, as in the AWS CLI command of ``aws apigateway import-rest-api --parameters ignore=documentation --body 'file:///path/to/imported-api-body.json'``. + Parameters pulumi.Input + // A policy document that contains the permissions for the ``RestApi`` resource. To set the ARN for the policy, use the ``!Join`` intrinsic function with ``""`` as delimiter and values of ``"execute-api:/"`` and ``"*"``. + Policy pulumi.Input + // The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with ``aws:``. The tag value can be up to 256 characters. + Tags RestApiTagArrayInput } func (RestApiArgs) ElementType() reflect.Type { @@ -160,58 +222,78 @@ func (o RestApiOutput) ToOutput(ctx context.Context) pulumix.Output[*RestApi] { } } +// The source of the API key for metering requests according to a usage plan. Valid values are: “HEADER“ to read the API key from the “X-API-Key“ header of a request. “AUTHORIZER“ to read the API key from the “UsageIdentifierKey“ from a custom authorizer. func (o RestApiOutput) ApiKeySourceType() pulumi.StringPtrOutput { return o.ApplyT(func(v *RestApi) pulumi.StringPtrOutput { return v.ApiKeySourceType }).(pulumi.StringPtrOutput) } +// The list of binary media types supported by the RestApi. By default, the RestApi supports only UTF-8-encoded text payloads. func (o RestApiOutput) BinaryMediaTypes() pulumi.StringArrayOutput { return o.ApplyT(func(v *RestApi) pulumi.StringArrayOutput { return v.BinaryMediaTypes }).(pulumi.StringArrayOutput) } +// An OpenAPI specification that defines a set of RESTful APIs in JSON format. For YAML templates, you can also provide the specification in YAML format. func (o RestApiOutput) Body() pulumi.AnyOutput { return o.ApplyT(func(v *RestApi) pulumi.AnyOutput { return v.Body }).(pulumi.AnyOutput) } +// The Amazon Simple Storage Service (Amazon S3) location that points to an OpenAPI file, which defines a set of RESTful APIs in JSON or YAML format. func (o RestApiOutput) BodyS3Location() RestApiS3LocationPtrOutput { return o.ApplyT(func(v *RestApi) RestApiS3LocationPtrOutput { return v.BodyS3Location }).(RestApiS3LocationPtrOutput) } +// The ID of the RestApi that you want to clone from. func (o RestApiOutput) CloneFrom() pulumi.StringPtrOutput { return o.ApplyT(func(v *RestApi) pulumi.StringPtrOutput { return v.CloneFrom }).(pulumi.StringPtrOutput) } +// The description of the RestApi. func (o RestApiOutput) Description() pulumi.StringPtrOutput { return o.ApplyT(func(v *RestApi) pulumi.StringPtrOutput { return v.Description }).(pulumi.StringPtrOutput) } +// Specifies whether clients can invoke your API by using the default “execute-api“ endpoint. By default, clients can invoke your API with the default “https://{api_id}.execute-api.{region}.amazonaws.com“ endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint func (o RestApiOutput) DisableExecuteApiEndpoint() pulumi.BoolPtrOutput { return o.ApplyT(func(v *RestApi) pulumi.BoolPtrOutput { return v.DisableExecuteApiEndpoint }).(pulumi.BoolPtrOutput) } +// A list of the endpoint types of the API. Use this property when creating an API. When importing an existing API, specify the endpoint configuration types using the “Parameters“ property. func (o RestApiOutput) EndpointConfiguration() RestApiEndpointConfigurationPtrOutput { return o.ApplyT(func(v *RestApi) RestApiEndpointConfigurationPtrOutput { return v.EndpointConfiguration }).(RestApiEndpointConfigurationPtrOutput) } +// A query parameter to indicate whether to rollback the API update (“true“) or not (“false“) when a warning is encountered. The default value is “false“. func (o RestApiOutput) FailOnWarnings() pulumi.BoolPtrOutput { return o.ApplyT(func(v *RestApi) pulumi.BoolPtrOutput { return v.FailOnWarnings }).(pulumi.BoolPtrOutput) } +// A nullable integer that is used to enable compression (with non-negative between 0 and 10485760 (10M) bytes, inclusive) or disable compression (with a null value) on an API. When compression is enabled, compression or decompression is not applied on the payload if the payload size is smaller than this value. Setting it to zero allows compression for any payload size. func (o RestApiOutput) MinimumCompressionSize() pulumi.IntPtrOutput { return o.ApplyT(func(v *RestApi) pulumi.IntPtrOutput { return v.MinimumCompressionSize }).(pulumi.IntPtrOutput) } +// This property applies only when you use OpenAPI to define your REST API. The “Mode“ determines how API Gateway handles resource updates. +// +// Valid values are ``overwrite`` or ``merge``. +// For ``overwrite``, the new API definition replaces the existing one. The existing API identifier remains unchanged. +// For ``merge``, the new API definition is merged with the existing API. +// If you don't specify this property, a default value is chosen. For REST APIs created before March 29, 2021, the default is ``overwrite``. For REST APIs created after March 29, 2021, the new API definition takes precedence, but any container types such as endpoint configurations and binary media types are merged with the existing API. +// Use the default mode to define top-level ``RestApi`` properties in addition to using OpenAPI. Generally, it's preferred to use API Gateway's OpenAPI extensions to model these properties. func (o RestApiOutput) Mode() pulumi.StringPtrOutput { return o.ApplyT(func(v *RestApi) pulumi.StringPtrOutput { return v.Mode }).(pulumi.StringPtrOutput) } +// The name of the RestApi. A name is required if the REST API is not based on an OpenAPI specification. func (o RestApiOutput) Name() pulumi.StringPtrOutput { return o.ApplyT(func(v *RestApi) pulumi.StringPtrOutput { return v.Name }).(pulumi.StringPtrOutput) } +// Custom header parameters as part of the request. For example, to exclude DocumentationParts from an imported API, set “ignore=documentation“ as a “parameters“ value, as in the AWS CLI command of “aws apigateway import-rest-api --parameters ignore=documentation --body 'file:///path/to/imported-api-body.json'“. func (o RestApiOutput) Parameters() pulumi.AnyOutput { return o.ApplyT(func(v *RestApi) pulumi.AnyOutput { return v.Parameters }).(pulumi.AnyOutput) } +// A policy document that contains the permissions for the “RestApi“ resource. To set the ARN for the policy, use the “!Join“ intrinsic function with “""“ as delimiter and values of “"execute-api:/"“ and “"*"“. func (o RestApiOutput) Policy() pulumi.AnyOutput { return o.ApplyT(func(v *RestApi) pulumi.AnyOutput { return v.Policy }).(pulumi.AnyOutput) } @@ -224,6 +306,7 @@ func (o RestApiOutput) RootResourceId() pulumi.StringOutput { return o.ApplyT(func(v *RestApi) pulumi.StringOutput { return v.RootResourceId }).(pulumi.StringOutput) } +// The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with “aws:“. The tag value can be up to 256 characters. func (o RestApiOutput) Tags() RestApiTagArrayOutput { return o.ApplyT(func(v *RestApi) RestApiTagArrayOutput { return v.Tags }).(RestApiTagArrayOutput) } diff --git a/sdk/go/aws/apigateway/stage.go b/sdk/go/aws/apigateway/stage.go index 9468a31fa3..cd42d21626 100644 --- a/sdk/go/aws/apigateway/stage.go +++ b/sdk/go/aws/apigateway/stage.go @@ -13,37 +13,37 @@ import ( "github.com/pulumi/pulumi/sdk/v3/go/pulumix" ) -// Resource Type definition for AWS::ApiGateway::Stage +// The “AWS::ApiGateway::Stage“ resource creates a stage for a deployment. type Stage struct { pulumi.CustomResourceState - // Specifies settings for logging access in this stage. + // Access log settings, including the access log format and access log destination ARN. AccessLogSetting StageAccessLogSettingPtrOutput `pulumi:"accessLogSetting"` - // Indicates whether cache clustering is enabled for the stage. + // Specifies whether a cache cluster is enabled for the stage. CacheClusterEnabled pulumi.BoolPtrOutput `pulumi:"cacheClusterEnabled"` - // The stage's cache cluster size. + // The stage's cache capacity in GB. For more information about choosing a cache size, see [Enabling API caching to enhance responsiveness](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html). CacheClusterSize pulumi.StringPtrOutput `pulumi:"cacheClusterSize"` - // Specifies settings for the canary deployment in this stage. + // Settings for the canary deployment in this stage. CanarySetting StageCanarySettingPtrOutput `pulumi:"canarySetting"` - // The ID of the client certificate that API Gateway uses to call your integration endpoints in the stage. + // The identifier of a client certificate for an API stage. ClientCertificateId pulumi.StringPtrOutput `pulumi:"clientCertificateId"` - // The ID of the deployment that the stage is associated with. This parameter is required to create a stage. + // The identifier of the Deployment that the stage points to. DeploymentId pulumi.StringPtrOutput `pulumi:"deploymentId"` - // A description of the stage. + // The stage's description. Description pulumi.StringPtrOutput `pulumi:"description"` - // The version ID of the API documentation snapshot. + // The version of the associated API documentation. DocumentationVersion pulumi.StringPtrOutput `pulumi:"documentationVersion"` - // Settings for all methods in the stage. + // A map that defines the method settings for a Stage resource. Keys (designated as ``/{method_setting_key`` below) are method paths defined as ``{resource_path}/{http_method}`` for an individual method override, or ``/\*/\*`` for overriding all methods in the stage. MethodSettings StageMethodSettingArrayOutput `pulumi:"methodSettings"` - // The ID of the RestApi resource that you're deploying with this stage. + // The string identifier of the associated RestApi. RestApiId pulumi.StringOutput `pulumi:"restApiId"` - // The name of the stage, which API Gateway uses as the first path segment in the invoked Uniform Resource Identifier (URI). + // The name of the stage is the first path segment in the Uniform Resource Identifier (URI) of a call to API Gateway. Stage names can only contain alphanumeric characters, hyphens, and underscores. Maximum length is 128 characters. StageName pulumi.StringPtrOutput `pulumi:"stageName"` - // An array of arbitrary tags (key-value pairs) to associate with the stage. + // The collection of tags. Each tag element is associated with a given resource. Tags StageTagArrayOutput `pulumi:"tags"` - // Specifies whether active X-Ray tracing is enabled for this stage. + // Specifies whether active tracing with X-ray is enabled for the Stage. TracingEnabled pulumi.BoolPtrOutput `pulumi:"tracingEnabled"` - // A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value. + // A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value. Variable names are limited to alphanumeric characters. Values must match the following regular expression: ``[A-Za-z0-9-._~:/?#&=,]+``. Variables pulumi.AnyOutput `pulumi:"variables"` } @@ -95,65 +95,65 @@ func (StageState) ElementType() reflect.Type { } type stageArgs struct { - // Specifies settings for logging access in this stage. + // Access log settings, including the access log format and access log destination ARN. AccessLogSetting *StageAccessLogSetting `pulumi:"accessLogSetting"` - // Indicates whether cache clustering is enabled for the stage. + // Specifies whether a cache cluster is enabled for the stage. CacheClusterEnabled *bool `pulumi:"cacheClusterEnabled"` - // The stage's cache cluster size. + // The stage's cache capacity in GB. For more information about choosing a cache size, see [Enabling API caching to enhance responsiveness](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html). CacheClusterSize *string `pulumi:"cacheClusterSize"` - // Specifies settings for the canary deployment in this stage. + // Settings for the canary deployment in this stage. CanarySetting *StageCanarySetting `pulumi:"canarySetting"` - // The ID of the client certificate that API Gateway uses to call your integration endpoints in the stage. + // The identifier of a client certificate for an API stage. ClientCertificateId *string `pulumi:"clientCertificateId"` - // The ID of the deployment that the stage is associated with. This parameter is required to create a stage. + // The identifier of the Deployment that the stage points to. DeploymentId *string `pulumi:"deploymentId"` - // A description of the stage. + // The stage's description. Description *string `pulumi:"description"` - // The version ID of the API documentation snapshot. + // The version of the associated API documentation. DocumentationVersion *string `pulumi:"documentationVersion"` - // Settings for all methods in the stage. + // A map that defines the method settings for a Stage resource. Keys (designated as ``/{method_setting_key`` below) are method paths defined as ``{resource_path}/{http_method}`` for an individual method override, or ``/\*/\*`` for overriding all methods in the stage. MethodSettings []StageMethodSetting `pulumi:"methodSettings"` - // The ID of the RestApi resource that you're deploying with this stage. + // The string identifier of the associated RestApi. RestApiId string `pulumi:"restApiId"` - // The name of the stage, which API Gateway uses as the first path segment in the invoked Uniform Resource Identifier (URI). + // The name of the stage is the first path segment in the Uniform Resource Identifier (URI) of a call to API Gateway. Stage names can only contain alphanumeric characters, hyphens, and underscores. Maximum length is 128 characters. StageName *string `pulumi:"stageName"` - // An array of arbitrary tags (key-value pairs) to associate with the stage. + // The collection of tags. Each tag element is associated with a given resource. Tags []StageTag `pulumi:"tags"` - // Specifies whether active X-Ray tracing is enabled for this stage. + // Specifies whether active tracing with X-ray is enabled for the Stage. TracingEnabled *bool `pulumi:"tracingEnabled"` - // A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value. + // A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value. Variable names are limited to alphanumeric characters. Values must match the following regular expression: ``[A-Za-z0-9-._~:/?#&=,]+``. Variables interface{} `pulumi:"variables"` } // The set of arguments for constructing a Stage resource. type StageArgs struct { - // Specifies settings for logging access in this stage. + // Access log settings, including the access log format and access log destination ARN. AccessLogSetting StageAccessLogSettingPtrInput - // Indicates whether cache clustering is enabled for the stage. + // Specifies whether a cache cluster is enabled for the stage. CacheClusterEnabled pulumi.BoolPtrInput - // The stage's cache cluster size. + // The stage's cache capacity in GB. For more information about choosing a cache size, see [Enabling API caching to enhance responsiveness](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html). CacheClusterSize pulumi.StringPtrInput - // Specifies settings for the canary deployment in this stage. + // Settings for the canary deployment in this stage. CanarySetting StageCanarySettingPtrInput - // The ID of the client certificate that API Gateway uses to call your integration endpoints in the stage. + // The identifier of a client certificate for an API stage. ClientCertificateId pulumi.StringPtrInput - // The ID of the deployment that the stage is associated with. This parameter is required to create a stage. + // The identifier of the Deployment that the stage points to. DeploymentId pulumi.StringPtrInput - // A description of the stage. + // The stage's description. Description pulumi.StringPtrInput - // The version ID of the API documentation snapshot. + // The version of the associated API documentation. DocumentationVersion pulumi.StringPtrInput - // Settings for all methods in the stage. + // A map that defines the method settings for a Stage resource. Keys (designated as ``/{method_setting_key`` below) are method paths defined as ``{resource_path}/{http_method}`` for an individual method override, or ``/\*/\*`` for overriding all methods in the stage. MethodSettings StageMethodSettingArrayInput - // The ID of the RestApi resource that you're deploying with this stage. + // The string identifier of the associated RestApi. RestApiId pulumi.StringInput - // The name of the stage, which API Gateway uses as the first path segment in the invoked Uniform Resource Identifier (URI). + // The name of the stage is the first path segment in the Uniform Resource Identifier (URI) of a call to API Gateway. Stage names can only contain alphanumeric characters, hyphens, and underscores. Maximum length is 128 characters. StageName pulumi.StringPtrInput - // An array of arbitrary tags (key-value pairs) to associate with the stage. + // The collection of tags. Each tag element is associated with a given resource. Tags StageTagArrayInput - // Specifies whether active X-Ray tracing is enabled for this stage. + // Specifies whether active tracing with X-ray is enabled for the Stage. TracingEnabled pulumi.BoolPtrInput - // A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value. + // A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value. Variable names are limited to alphanumeric characters. Values must match the following regular expression: ``[A-Za-z0-9-._~:/?#&=,]+``. Variables pulumi.Input } @@ -206,72 +206,72 @@ func (o StageOutput) ToOutput(ctx context.Context) pulumix.Output[*Stage] { } } -// Specifies settings for logging access in this stage. +// Access log settings, including the access log format and access log destination ARN. func (o StageOutput) AccessLogSetting() StageAccessLogSettingPtrOutput { return o.ApplyT(func(v *Stage) StageAccessLogSettingPtrOutput { return v.AccessLogSetting }).(StageAccessLogSettingPtrOutput) } -// Indicates whether cache clustering is enabled for the stage. +// Specifies whether a cache cluster is enabled for the stage. func (o StageOutput) CacheClusterEnabled() pulumi.BoolPtrOutput { return o.ApplyT(func(v *Stage) pulumi.BoolPtrOutput { return v.CacheClusterEnabled }).(pulumi.BoolPtrOutput) } -// The stage's cache cluster size. +// The stage's cache capacity in GB. For more information about choosing a cache size, see [Enabling API caching to enhance responsiveness](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html). func (o StageOutput) CacheClusterSize() pulumi.StringPtrOutput { return o.ApplyT(func(v *Stage) pulumi.StringPtrOutput { return v.CacheClusterSize }).(pulumi.StringPtrOutput) } -// Specifies settings for the canary deployment in this stage. +// Settings for the canary deployment in this stage. func (o StageOutput) CanarySetting() StageCanarySettingPtrOutput { return o.ApplyT(func(v *Stage) StageCanarySettingPtrOutput { return v.CanarySetting }).(StageCanarySettingPtrOutput) } -// The ID of the client certificate that API Gateway uses to call your integration endpoints in the stage. +// The identifier of a client certificate for an API stage. func (o StageOutput) ClientCertificateId() pulumi.StringPtrOutput { return o.ApplyT(func(v *Stage) pulumi.StringPtrOutput { return v.ClientCertificateId }).(pulumi.StringPtrOutput) } -// The ID of the deployment that the stage is associated with. This parameter is required to create a stage. +// The identifier of the Deployment that the stage points to. func (o StageOutput) DeploymentId() pulumi.StringPtrOutput { return o.ApplyT(func(v *Stage) pulumi.StringPtrOutput { return v.DeploymentId }).(pulumi.StringPtrOutput) } -// A description of the stage. +// The stage's description. func (o StageOutput) Description() pulumi.StringPtrOutput { return o.ApplyT(func(v *Stage) pulumi.StringPtrOutput { return v.Description }).(pulumi.StringPtrOutput) } -// The version ID of the API documentation snapshot. +// The version of the associated API documentation. func (o StageOutput) DocumentationVersion() pulumi.StringPtrOutput { return o.ApplyT(func(v *Stage) pulumi.StringPtrOutput { return v.DocumentationVersion }).(pulumi.StringPtrOutput) } -// Settings for all methods in the stage. +// A map that defines the method settings for a Stage resource. Keys (designated as “/{method_setting_key“ below) are method paths defined as “{resource_path}/{http_method}“ for an individual method override, or “/\*/\*“ for overriding all methods in the stage. func (o StageOutput) MethodSettings() StageMethodSettingArrayOutput { return o.ApplyT(func(v *Stage) StageMethodSettingArrayOutput { return v.MethodSettings }).(StageMethodSettingArrayOutput) } -// The ID of the RestApi resource that you're deploying with this stage. +// The string identifier of the associated RestApi. func (o StageOutput) RestApiId() pulumi.StringOutput { return o.ApplyT(func(v *Stage) pulumi.StringOutput { return v.RestApiId }).(pulumi.StringOutput) } -// The name of the stage, which API Gateway uses as the first path segment in the invoked Uniform Resource Identifier (URI). +// The name of the stage is the first path segment in the Uniform Resource Identifier (URI) of a call to API Gateway. Stage names can only contain alphanumeric characters, hyphens, and underscores. Maximum length is 128 characters. func (o StageOutput) StageName() pulumi.StringPtrOutput { return o.ApplyT(func(v *Stage) pulumi.StringPtrOutput { return v.StageName }).(pulumi.StringPtrOutput) } -// An array of arbitrary tags (key-value pairs) to associate with the stage. +// The collection of tags. Each tag element is associated with a given resource. func (o StageOutput) Tags() StageTagArrayOutput { return o.ApplyT(func(v *Stage) StageTagArrayOutput { return v.Tags }).(StageTagArrayOutput) } -// Specifies whether active X-Ray tracing is enabled for this stage. +// Specifies whether active tracing with X-ray is enabled for the Stage. func (o StageOutput) TracingEnabled() pulumi.BoolPtrOutput { return o.ApplyT(func(v *Stage) pulumi.BoolPtrOutput { return v.TracingEnabled }).(pulumi.BoolPtrOutput) } -// A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value. +// A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value. Variable names are limited to alphanumeric characters. Values must match the following regular expression: “[A-Za-z0-9-._~:/?#&=,]+“. func (o StageOutput) Variables() pulumi.AnyOutput { return o.ApplyT(func(v *Stage) pulumi.AnyOutput { return v.Variables }).(pulumi.AnyOutput) } diff --git a/sdk/go/aws/apigateway/usagePlanKey.go b/sdk/go/aws/apigateway/usagePlanKey.go index 1cd0699ab5..4db324b3ac 100644 --- a/sdk/go/aws/apigateway/usagePlanKey.go +++ b/sdk/go/aws/apigateway/usagePlanKey.go @@ -13,15 +13,15 @@ import ( "github.com/pulumi/pulumi/sdk/v3/go/pulumix" ) -// Resource Type definition for AWS::ApiGateway::UsagePlanKey +// The “AWS::ApiGateway::UsagePlanKey“ resource associates an API key with a usage plan. This association determines which users the usage plan is applied to. type UsagePlanKey struct { pulumi.CustomResourceState - // The ID of the usage plan key. + // The Id of the UsagePlanKey resource. KeyId pulumi.StringOutput `pulumi:"keyId"` - // The type of usage plan key. Currently, the only valid key type is API_KEY. + // The type of a UsagePlanKey resource for a plan customer. KeyType UsagePlanKeyKeyTypeOutput `pulumi:"keyType"` - // The ID of the usage plan. + // The Id of the UsagePlan resource representing the usage plan containing the UsagePlanKey resource representing a plan customer. UsagePlanId pulumi.StringOutput `pulumi:"usagePlanId"` } @@ -80,21 +80,21 @@ func (UsagePlanKeyState) ElementType() reflect.Type { } type usagePlanKeyArgs struct { - // The ID of the usage plan key. + // The Id of the UsagePlanKey resource. KeyId string `pulumi:"keyId"` - // The type of usage plan key. Currently, the only valid key type is API_KEY. + // The type of a UsagePlanKey resource for a plan customer. KeyType UsagePlanKeyKeyType `pulumi:"keyType"` - // The ID of the usage plan. + // The Id of the UsagePlan resource representing the usage plan containing the UsagePlanKey resource representing a plan customer. UsagePlanId string `pulumi:"usagePlanId"` } // The set of arguments for constructing a UsagePlanKey resource. type UsagePlanKeyArgs struct { - // The ID of the usage plan key. + // The Id of the UsagePlanKey resource. KeyId pulumi.StringInput - // The type of usage plan key. Currently, the only valid key type is API_KEY. + // The type of a UsagePlanKey resource for a plan customer. KeyType UsagePlanKeyKeyTypeInput - // The ID of the usage plan. + // The Id of the UsagePlan resource representing the usage plan containing the UsagePlanKey resource representing a plan customer. UsagePlanId pulumi.StringInput } @@ -147,17 +147,17 @@ func (o UsagePlanKeyOutput) ToOutput(ctx context.Context) pulumix.Output[*UsageP } } -// The ID of the usage plan key. +// The Id of the UsagePlanKey resource. func (o UsagePlanKeyOutput) KeyId() pulumi.StringOutput { return o.ApplyT(func(v *UsagePlanKey) pulumi.StringOutput { return v.KeyId }).(pulumi.StringOutput) } -// The type of usage plan key. Currently, the only valid key type is API_KEY. +// The type of a UsagePlanKey resource for a plan customer. func (o UsagePlanKeyOutput) KeyType() UsagePlanKeyKeyTypeOutput { return o.ApplyT(func(v *UsagePlanKey) UsagePlanKeyKeyTypeOutput { return v.KeyType }).(UsagePlanKeyKeyTypeOutput) } -// The ID of the usage plan. +// The Id of the UsagePlan resource representing the usage plan containing the UsagePlanKey resource representing a plan customer. func (o UsagePlanKeyOutput) UsagePlanId() pulumi.StringOutput { return o.ApplyT(func(v *UsagePlanKey) pulumi.StringOutput { return v.UsagePlanId }).(pulumi.StringOutput) } diff --git a/sdk/go/aws/appconfig/application.go b/sdk/go/aws/appconfig/application.go index cee1abcef6..07708effdb 100644 --- a/sdk/go/aws/appconfig/application.go +++ b/sdk/go/aws/appconfig/application.go @@ -13,14 +13,17 @@ import ( ) // Resource Type definition for AWS::AppConfig::Application -// -// Deprecated: Application is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible. type Application struct { pulumi.CustomResourceState - Description pulumi.StringPtrOutput `pulumi:"description"` - Name pulumi.StringOutput `pulumi:"name"` - Tags ApplicationTagsArrayOutput `pulumi:"tags"` + // The application Id + ApplicationId pulumi.StringOutput `pulumi:"applicationId"` + // A description of the application. + Description pulumi.StringPtrOutput `pulumi:"description"` + // A name for the application. + Name pulumi.StringOutput `pulumi:"name"` + // Metadata to assign to the application. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define. + Tags ApplicationTagsArrayOutput `pulumi:"tags"` } // NewApplication registers a new resource with the given unique name, arguments, and options. @@ -63,16 +66,22 @@ func (ApplicationState) ElementType() reflect.Type { } type applicationArgs struct { - Description *string `pulumi:"description"` - Name *string `pulumi:"name"` - Tags []ApplicationTags `pulumi:"tags"` + // A description of the application. + Description *string `pulumi:"description"` + // A name for the application. + Name *string `pulumi:"name"` + // Metadata to assign to the application. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define. + Tags []ApplicationTags `pulumi:"tags"` } // The set of arguments for constructing a Application resource. type ApplicationArgs struct { + // A description of the application. Description pulumi.StringPtrInput - Name pulumi.StringPtrInput - Tags ApplicationTagsArrayInput + // A name for the application. + Name pulumi.StringPtrInput + // Metadata to assign to the application. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define. + Tags ApplicationTagsArrayInput } func (ApplicationArgs) ElementType() reflect.Type { @@ -124,14 +133,22 @@ func (o ApplicationOutput) ToOutput(ctx context.Context) pulumix.Output[*Applica } } +// The application Id +func (o ApplicationOutput) ApplicationId() pulumi.StringOutput { + return o.ApplyT(func(v *Application) pulumi.StringOutput { return v.ApplicationId }).(pulumi.StringOutput) +} + +// A description of the application. func (o ApplicationOutput) Description() pulumi.StringPtrOutput { return o.ApplyT(func(v *Application) pulumi.StringPtrOutput { return v.Description }).(pulumi.StringPtrOutput) } +// A name for the application. func (o ApplicationOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v *Application) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) } +// Metadata to assign to the application. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define. func (o ApplicationOutput) Tags() ApplicationTagsArrayOutput { return o.ApplyT(func(v *Application) ApplicationTagsArrayOutput { return v.Tags }).(ApplicationTagsArrayOutput) } diff --git a/sdk/go/aws/appconfig/configurationProfile.go b/sdk/go/aws/appconfig/configurationProfile.go index 6c8cbf86d1..30147f9c47 100644 --- a/sdk/go/aws/appconfig/configurationProfile.go +++ b/sdk/go/aws/appconfig/configurationProfile.go @@ -21,6 +21,7 @@ type ConfigurationProfile struct { ApplicationId pulumi.StringOutput `pulumi:"applicationId"` Description pulumi.StringPtrOutput `pulumi:"description"` + KmsKeyIdentifier pulumi.StringPtrOutput `pulumi:"kmsKeyIdentifier"` LocationUri pulumi.StringOutput `pulumi:"locationUri"` Name pulumi.StringOutput `pulumi:"name"` RetrievalRoleArn pulumi.StringPtrOutput `pulumi:"retrievalRoleArn"` @@ -83,6 +84,7 @@ func (ConfigurationProfileState) ElementType() reflect.Type { type configurationProfileArgs struct { ApplicationId string `pulumi:"applicationId"` Description *string `pulumi:"description"` + KmsKeyIdentifier *string `pulumi:"kmsKeyIdentifier"` LocationUri string `pulumi:"locationUri"` Name *string `pulumi:"name"` RetrievalRoleArn *string `pulumi:"retrievalRoleArn"` @@ -95,6 +97,7 @@ type configurationProfileArgs struct { type ConfigurationProfileArgs struct { ApplicationId pulumi.StringInput Description pulumi.StringPtrInput + KmsKeyIdentifier pulumi.StringPtrInput LocationUri pulumi.StringInput Name pulumi.StringPtrInput RetrievalRoleArn pulumi.StringPtrInput @@ -160,6 +163,10 @@ func (o ConfigurationProfileOutput) Description() pulumi.StringPtrOutput { return o.ApplyT(func(v *ConfigurationProfile) pulumi.StringPtrOutput { return v.Description }).(pulumi.StringPtrOutput) } +func (o ConfigurationProfileOutput) KmsKeyIdentifier() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ConfigurationProfile) pulumi.StringPtrOutput { return v.KmsKeyIdentifier }).(pulumi.StringPtrOutput) +} + func (o ConfigurationProfileOutput) LocationUri() pulumi.StringOutput { return o.ApplyT(func(v *ConfigurationProfile) pulumi.StringOutput { return v.LocationUri }).(pulumi.StringOutput) } diff --git a/sdk/go/aws/appconfig/getApplication.go b/sdk/go/aws/appconfig/getApplication.go index b41a8a91d1..cb4fb0910d 100644 --- a/sdk/go/aws/appconfig/getApplication.go +++ b/sdk/go/aws/appconfig/getApplication.go @@ -24,14 +24,19 @@ func LookupApplication(ctx *pulumi.Context, args *LookupApplicationArgs, opts .. } type LookupApplicationArgs struct { - Id string `pulumi:"id"` + // The application Id + ApplicationId string `pulumi:"applicationId"` } type LookupApplicationResult struct { - Description *string `pulumi:"description"` - Id *string `pulumi:"id"` - Name *string `pulumi:"name"` - Tags []ApplicationTags `pulumi:"tags"` + // The application Id + ApplicationId *string `pulumi:"applicationId"` + // A description of the application. + Description *string `pulumi:"description"` + // A name for the application. + Name *string `pulumi:"name"` + // Metadata to assign to the application. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define. + Tags []ApplicationTags `pulumi:"tags"` } func LookupApplicationOutput(ctx *pulumi.Context, args LookupApplicationOutputArgs, opts ...pulumi.InvokeOption) LookupApplicationResultOutput { @@ -48,7 +53,8 @@ func LookupApplicationOutput(ctx *pulumi.Context, args LookupApplicationOutputAr } type LookupApplicationOutputArgs struct { - Id pulumi.StringInput `pulumi:"id"` + // The application Id + ApplicationId pulumi.StringInput `pulumi:"applicationId"` } func (LookupApplicationOutputArgs) ElementType() reflect.Type { @@ -75,18 +81,22 @@ func (o LookupApplicationResultOutput) ToOutput(ctx context.Context) pulumix.Out } } -func (o LookupApplicationResultOutput) Description() pulumi.StringPtrOutput { - return o.ApplyT(func(v LookupApplicationResult) *string { return v.Description }).(pulumi.StringPtrOutput) +// The application Id +func (o LookupApplicationResultOutput) ApplicationId() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupApplicationResult) *string { return v.ApplicationId }).(pulumi.StringPtrOutput) } -func (o LookupApplicationResultOutput) Id() pulumi.StringPtrOutput { - return o.ApplyT(func(v LookupApplicationResult) *string { return v.Id }).(pulumi.StringPtrOutput) +// A description of the application. +func (o LookupApplicationResultOutput) Description() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupApplicationResult) *string { return v.Description }).(pulumi.StringPtrOutput) } +// A name for the application. func (o LookupApplicationResultOutput) Name() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupApplicationResult) *string { return v.Name }).(pulumi.StringPtrOutput) } +// Metadata to assign to the application. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define. func (o LookupApplicationResultOutput) Tags() ApplicationTagsArrayOutput { return o.ApplyT(func(v LookupApplicationResult) []ApplicationTags { return v.Tags }).(ApplicationTagsArrayOutput) } diff --git a/sdk/go/aws/appconfig/getConfigurationProfile.go b/sdk/go/aws/appconfig/getConfigurationProfile.go index 7d9cda176e..0a8da6ad34 100644 --- a/sdk/go/aws/appconfig/getConfigurationProfile.go +++ b/sdk/go/aws/appconfig/getConfigurationProfile.go @@ -30,6 +30,7 @@ type LookupConfigurationProfileArgs struct { type LookupConfigurationProfileResult struct { Description *string `pulumi:"description"` Id *string `pulumi:"id"` + KmsKeyIdentifier *string `pulumi:"kmsKeyIdentifier"` Name *string `pulumi:"name"` RetrievalRoleArn *string `pulumi:"retrievalRoleArn"` Tags []ConfigurationProfileTags `pulumi:"tags"` @@ -85,6 +86,10 @@ func (o LookupConfigurationProfileResultOutput) Id() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupConfigurationProfileResult) *string { return v.Id }).(pulumi.StringPtrOutput) } +func (o LookupConfigurationProfileResultOutput) KmsKeyIdentifier() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupConfigurationProfileResult) *string { return v.KmsKeyIdentifier }).(pulumi.StringPtrOutput) +} + func (o LookupConfigurationProfileResultOutput) Name() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupConfigurationProfileResult) *string { return v.Name }).(pulumi.StringPtrOutput) } diff --git a/sdk/go/aws/appconfig/pulumiTypes.go b/sdk/go/aws/appconfig/pulumiTypes.go index 2f41b7637b..595614ee47 100644 --- a/sdk/go/aws/appconfig/pulumiTypes.go +++ b/sdk/go/aws/appconfig/pulumiTypes.go @@ -14,9 +14,12 @@ import ( var _ = internal.GetEnvOrDefault +// Metadata to assign to the application. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define. type ApplicationTags struct { - Key *string `pulumi:"key"` - Value *string `pulumi:"value"` + // The key-value string map. The valid character set is [a-zA-Z1-9+-=._:/]. The tag key can be up to 128 characters and must not start with aws:. + Key string `pulumi:"key"` + // The tag value can be up to 256 characters. + Value string `pulumi:"value"` } // ApplicationTagsInput is an input type that accepts ApplicationTagsArgs and ApplicationTagsOutput values. @@ -30,9 +33,12 @@ type ApplicationTagsInput interface { ToApplicationTagsOutputWithContext(context.Context) ApplicationTagsOutput } +// Metadata to assign to the application. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define. type ApplicationTagsArgs struct { - Key pulumi.StringPtrInput `pulumi:"key"` - Value pulumi.StringPtrInput `pulumi:"value"` + // The key-value string map. The valid character set is [a-zA-Z1-9+-=._:/]. The tag key can be up to 128 characters and must not start with aws:. + Key pulumi.StringInput `pulumi:"key"` + // The tag value can be up to 256 characters. + Value pulumi.StringInput `pulumi:"value"` } func (ApplicationTagsArgs) ElementType() reflect.Type { @@ -84,6 +90,7 @@ func (i ApplicationTagsArray) ToOutput(ctx context.Context) pulumix.Output[[]App } } +// Metadata to assign to the application. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define. type ApplicationTagsOutput struct{ *pulumi.OutputState } func (ApplicationTagsOutput) ElementType() reflect.Type { @@ -104,12 +111,14 @@ func (o ApplicationTagsOutput) ToOutput(ctx context.Context) pulumix.Output[Appl } } -func (o ApplicationTagsOutput) Key() pulumi.StringPtrOutput { - return o.ApplyT(func(v ApplicationTags) *string { return v.Key }).(pulumi.StringPtrOutput) +// The key-value string map. The valid character set is [a-zA-Z1-9+-=._:/]. The tag key can be up to 128 characters and must not start with aws:. +func (o ApplicationTagsOutput) Key() pulumi.StringOutput { + return o.ApplyT(func(v ApplicationTags) string { return v.Key }).(pulumi.StringOutput) } -func (o ApplicationTagsOutput) Value() pulumi.StringPtrOutput { - return o.ApplyT(func(v ApplicationTags) *string { return v.Value }).(pulumi.StringPtrOutput) +// The tag value can be up to 256 characters. +func (o ApplicationTagsOutput) Value() pulumi.StringOutput { + return o.ApplyT(func(v ApplicationTags) string { return v.Value }).(pulumi.StringOutput) } type ApplicationTagsArrayOutput struct{ *pulumi.OutputState } diff --git a/sdk/go/aws/appsync/functionConfiguration.go b/sdk/go/aws/appsync/functionConfiguration.go index aa4eed405f..4dac25775d 100644 --- a/sdk/go/aws/appsync/functionConfiguration.go +++ b/sdk/go/aws/appsync/functionConfiguration.go @@ -13,28 +13,42 @@ import ( "github.com/pulumi/pulumi/sdk/v3/go/pulumix" ) -// Resource Type definition for AWS::AppSync::FunctionConfiguration -// -// Deprecated: FunctionConfiguration is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible. +// An example resource schema demonstrating some basic constructs and validation rules. type FunctionConfiguration struct { pulumi.CustomResourceState - ApiId pulumi.StringOutput `pulumi:"apiId"` - Code pulumi.StringPtrOutput `pulumi:"code"` - CodeS3Location pulumi.StringPtrOutput `pulumi:"codeS3Location"` - DataSourceName pulumi.StringOutput `pulumi:"dataSourceName"` - Description pulumi.StringPtrOutput `pulumi:"description"` - FunctionArn pulumi.StringOutput `pulumi:"functionArn"` - FunctionId pulumi.StringOutput `pulumi:"functionId"` - FunctionVersion pulumi.StringPtrOutput `pulumi:"functionVersion"` - MaxBatchSize pulumi.IntPtrOutput `pulumi:"maxBatchSize"` - Name pulumi.StringOutput `pulumi:"name"` - RequestMappingTemplate pulumi.StringPtrOutput `pulumi:"requestMappingTemplate"` - RequestMappingTemplateS3Location pulumi.StringPtrOutput `pulumi:"requestMappingTemplateS3Location"` - ResponseMappingTemplate pulumi.StringPtrOutput `pulumi:"responseMappingTemplate"` - ResponseMappingTemplateS3Location pulumi.StringPtrOutput `pulumi:"responseMappingTemplateS3Location"` - Runtime FunctionConfigurationAppSyncRuntimePtrOutput `pulumi:"runtime"` - SyncConfig FunctionConfigurationSyncConfigPtrOutput `pulumi:"syncConfig"` + // The AWS AppSync GraphQL API that you want to attach using this function. + ApiId pulumi.StringOutput `pulumi:"apiId"` + // The resolver code that contains the request and response functions. When code is used, the runtime is required. The runtime value must be APPSYNC_JS. + Code pulumi.StringPtrOutput `pulumi:"code"` + // The Amazon S3 endpoint (where the code is located??). + CodeS3Location pulumi.StringPtrOutput `pulumi:"codeS3Location"` + // The name of data source this function will attach. + DataSourceName pulumi.StringOutput `pulumi:"dataSourceName"` + // The function description. + Description pulumi.StringPtrOutput `pulumi:"description"` + // The ARN for the function generated by the service + FunctionArn pulumi.StringOutput `pulumi:"functionArn"` + // The unique identifier for the function generated by the service + FunctionId pulumi.StringOutput `pulumi:"functionId"` + // The version of the request mapping template. Currently, only the 2018-05-29 version of the template is supported. + FunctionVersion pulumi.StringPtrOutput `pulumi:"functionVersion"` + // The maximum number of resolver request inputs that will be sent to a single AWS Lambda function in a BatchInvoke operation. + MaxBatchSize pulumi.IntPtrOutput `pulumi:"maxBatchSize"` + // The name of the function. + Name pulumi.StringOutput `pulumi:"name"` + // The Function request mapping template. Functions support only the 2018-05-29 version of the request mapping template. + RequestMappingTemplate pulumi.StringPtrOutput `pulumi:"requestMappingTemplate"` + // Describes a Sync configuration for a resolver. Contains information on which Conflict Detection, as well as Resolution strategy, should be performed when the resolver is invoked. + RequestMappingTemplateS3Location pulumi.StringPtrOutput `pulumi:"requestMappingTemplateS3Location"` + // The Function response mapping template. + ResponseMappingTemplate pulumi.StringPtrOutput `pulumi:"responseMappingTemplate"` + // The location of a response mapping template in an Amazon S3 bucket. Use this if you want to provision with a template file in Amazon S3 rather than embedding it in your CloudFormation template. + ResponseMappingTemplateS3Location pulumi.StringPtrOutput `pulumi:"responseMappingTemplateS3Location"` + // Describes a runtime used by an AWS AppSync pipeline resolver or AWS AppSync function. Specifies the name and version of the runtime to use. Note that if a runtime is specified, code must also be specified. + Runtime FunctionConfigurationAppSyncRuntimePtrOutput `pulumi:"runtime"` + // Describes a Sync configuration for a resolver. Specifies which Conflict Detection strategy and Resolution strategy to use when the resolver is invoked. + SyncConfig FunctionConfigurationSyncConfigPtrOutput `pulumi:"syncConfig"` } // NewFunctionConfiguration registers a new resource with the given unique name, arguments, and options. @@ -87,38 +101,66 @@ func (FunctionConfigurationState) ElementType() reflect.Type { } type functionConfigurationArgs struct { - ApiId string `pulumi:"apiId"` - Code *string `pulumi:"code"` - CodeS3Location *string `pulumi:"codeS3Location"` - DataSourceName string `pulumi:"dataSourceName"` - Description *string `pulumi:"description"` - FunctionVersion *string `pulumi:"functionVersion"` - MaxBatchSize *int `pulumi:"maxBatchSize"` - Name *string `pulumi:"name"` - RequestMappingTemplate *string `pulumi:"requestMappingTemplate"` - RequestMappingTemplateS3Location *string `pulumi:"requestMappingTemplateS3Location"` - ResponseMappingTemplate *string `pulumi:"responseMappingTemplate"` - ResponseMappingTemplateS3Location *string `pulumi:"responseMappingTemplateS3Location"` - Runtime *FunctionConfigurationAppSyncRuntime `pulumi:"runtime"` - SyncConfig *FunctionConfigurationSyncConfig `pulumi:"syncConfig"` + // The AWS AppSync GraphQL API that you want to attach using this function. + ApiId string `pulumi:"apiId"` + // The resolver code that contains the request and response functions. When code is used, the runtime is required. The runtime value must be APPSYNC_JS. + Code *string `pulumi:"code"` + // The Amazon S3 endpoint (where the code is located??). + CodeS3Location *string `pulumi:"codeS3Location"` + // The name of data source this function will attach. + DataSourceName string `pulumi:"dataSourceName"` + // The function description. + Description *string `pulumi:"description"` + // The version of the request mapping template. Currently, only the 2018-05-29 version of the template is supported. + FunctionVersion *string `pulumi:"functionVersion"` + // The maximum number of resolver request inputs that will be sent to a single AWS Lambda function in a BatchInvoke operation. + MaxBatchSize *int `pulumi:"maxBatchSize"` + // The name of the function. + Name *string `pulumi:"name"` + // The Function request mapping template. Functions support only the 2018-05-29 version of the request mapping template. + RequestMappingTemplate *string `pulumi:"requestMappingTemplate"` + // Describes a Sync configuration for a resolver. Contains information on which Conflict Detection, as well as Resolution strategy, should be performed when the resolver is invoked. + RequestMappingTemplateS3Location *string `pulumi:"requestMappingTemplateS3Location"` + // The Function response mapping template. + ResponseMappingTemplate *string `pulumi:"responseMappingTemplate"` + // The location of a response mapping template in an Amazon S3 bucket. Use this if you want to provision with a template file in Amazon S3 rather than embedding it in your CloudFormation template. + ResponseMappingTemplateS3Location *string `pulumi:"responseMappingTemplateS3Location"` + // Describes a runtime used by an AWS AppSync pipeline resolver or AWS AppSync function. Specifies the name and version of the runtime to use. Note that if a runtime is specified, code must also be specified. + Runtime *FunctionConfigurationAppSyncRuntime `pulumi:"runtime"` + // Describes a Sync configuration for a resolver. Specifies which Conflict Detection strategy and Resolution strategy to use when the resolver is invoked. + SyncConfig *FunctionConfigurationSyncConfig `pulumi:"syncConfig"` } // The set of arguments for constructing a FunctionConfiguration resource. type FunctionConfigurationArgs struct { - ApiId pulumi.StringInput - Code pulumi.StringPtrInput - CodeS3Location pulumi.StringPtrInput - DataSourceName pulumi.StringInput - Description pulumi.StringPtrInput - FunctionVersion pulumi.StringPtrInput - MaxBatchSize pulumi.IntPtrInput - Name pulumi.StringPtrInput - RequestMappingTemplate pulumi.StringPtrInput - RequestMappingTemplateS3Location pulumi.StringPtrInput - ResponseMappingTemplate pulumi.StringPtrInput + // The AWS AppSync GraphQL API that you want to attach using this function. + ApiId pulumi.StringInput + // The resolver code that contains the request and response functions. When code is used, the runtime is required. The runtime value must be APPSYNC_JS. + Code pulumi.StringPtrInput + // The Amazon S3 endpoint (where the code is located??). + CodeS3Location pulumi.StringPtrInput + // The name of data source this function will attach. + DataSourceName pulumi.StringInput + // The function description. + Description pulumi.StringPtrInput + // The version of the request mapping template. Currently, only the 2018-05-29 version of the template is supported. + FunctionVersion pulumi.StringPtrInput + // The maximum number of resolver request inputs that will be sent to a single AWS Lambda function in a BatchInvoke operation. + MaxBatchSize pulumi.IntPtrInput + // The name of the function. + Name pulumi.StringPtrInput + // The Function request mapping template. Functions support only the 2018-05-29 version of the request mapping template. + RequestMappingTemplate pulumi.StringPtrInput + // Describes a Sync configuration for a resolver. Contains information on which Conflict Detection, as well as Resolution strategy, should be performed when the resolver is invoked. + RequestMappingTemplateS3Location pulumi.StringPtrInput + // The Function response mapping template. + ResponseMappingTemplate pulumi.StringPtrInput + // The location of a response mapping template in an Amazon S3 bucket. Use this if you want to provision with a template file in Amazon S3 rather than embedding it in your CloudFormation template. ResponseMappingTemplateS3Location pulumi.StringPtrInput - Runtime FunctionConfigurationAppSyncRuntimePtrInput - SyncConfig FunctionConfigurationSyncConfigPtrInput + // Describes a runtime used by an AWS AppSync pipeline resolver or AWS AppSync function. Specifies the name and version of the runtime to use. Note that if a runtime is specified, code must also be specified. + Runtime FunctionConfigurationAppSyncRuntimePtrInput + // Describes a Sync configuration for a resolver. Specifies which Conflict Detection strategy and Resolution strategy to use when the resolver is invoked. + SyncConfig FunctionConfigurationSyncConfigPtrInput } func (FunctionConfigurationArgs) ElementType() reflect.Type { @@ -170,66 +212,82 @@ func (o FunctionConfigurationOutput) ToOutput(ctx context.Context) pulumix.Outpu } } +// The AWS AppSync GraphQL API that you want to attach using this function. func (o FunctionConfigurationOutput) ApiId() pulumi.StringOutput { return o.ApplyT(func(v *FunctionConfiguration) pulumi.StringOutput { return v.ApiId }).(pulumi.StringOutput) } +// The resolver code that contains the request and response functions. When code is used, the runtime is required. The runtime value must be APPSYNC_JS. func (o FunctionConfigurationOutput) Code() pulumi.StringPtrOutput { return o.ApplyT(func(v *FunctionConfiguration) pulumi.StringPtrOutput { return v.Code }).(pulumi.StringPtrOutput) } +// The Amazon S3 endpoint (where the code is located??). func (o FunctionConfigurationOutput) CodeS3Location() pulumi.StringPtrOutput { return o.ApplyT(func(v *FunctionConfiguration) pulumi.StringPtrOutput { return v.CodeS3Location }).(pulumi.StringPtrOutput) } +// The name of data source this function will attach. func (o FunctionConfigurationOutput) DataSourceName() pulumi.StringOutput { return o.ApplyT(func(v *FunctionConfiguration) pulumi.StringOutput { return v.DataSourceName }).(pulumi.StringOutput) } +// The function description. func (o FunctionConfigurationOutput) Description() pulumi.StringPtrOutput { return o.ApplyT(func(v *FunctionConfiguration) pulumi.StringPtrOutput { return v.Description }).(pulumi.StringPtrOutput) } +// The ARN for the function generated by the service func (o FunctionConfigurationOutput) FunctionArn() pulumi.StringOutput { return o.ApplyT(func(v *FunctionConfiguration) pulumi.StringOutput { return v.FunctionArn }).(pulumi.StringOutput) } +// The unique identifier for the function generated by the service func (o FunctionConfigurationOutput) FunctionId() pulumi.StringOutput { return o.ApplyT(func(v *FunctionConfiguration) pulumi.StringOutput { return v.FunctionId }).(pulumi.StringOutput) } +// The version of the request mapping template. Currently, only the 2018-05-29 version of the template is supported. func (o FunctionConfigurationOutput) FunctionVersion() pulumi.StringPtrOutput { return o.ApplyT(func(v *FunctionConfiguration) pulumi.StringPtrOutput { return v.FunctionVersion }).(pulumi.StringPtrOutput) } +// The maximum number of resolver request inputs that will be sent to a single AWS Lambda function in a BatchInvoke operation. func (o FunctionConfigurationOutput) MaxBatchSize() pulumi.IntPtrOutput { return o.ApplyT(func(v *FunctionConfiguration) pulumi.IntPtrOutput { return v.MaxBatchSize }).(pulumi.IntPtrOutput) } +// The name of the function. func (o FunctionConfigurationOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v *FunctionConfiguration) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) } +// The Function request mapping template. Functions support only the 2018-05-29 version of the request mapping template. func (o FunctionConfigurationOutput) RequestMappingTemplate() pulumi.StringPtrOutput { return o.ApplyT(func(v *FunctionConfiguration) pulumi.StringPtrOutput { return v.RequestMappingTemplate }).(pulumi.StringPtrOutput) } +// Describes a Sync configuration for a resolver. Contains information on which Conflict Detection, as well as Resolution strategy, should be performed when the resolver is invoked. func (o FunctionConfigurationOutput) RequestMappingTemplateS3Location() pulumi.StringPtrOutput { return o.ApplyT(func(v *FunctionConfiguration) pulumi.StringPtrOutput { return v.RequestMappingTemplateS3Location }).(pulumi.StringPtrOutput) } +// The Function response mapping template. func (o FunctionConfigurationOutput) ResponseMappingTemplate() pulumi.StringPtrOutput { return o.ApplyT(func(v *FunctionConfiguration) pulumi.StringPtrOutput { return v.ResponseMappingTemplate }).(pulumi.StringPtrOutput) } +// The location of a response mapping template in an Amazon S3 bucket. Use this if you want to provision with a template file in Amazon S3 rather than embedding it in your CloudFormation template. func (o FunctionConfigurationOutput) ResponseMappingTemplateS3Location() pulumi.StringPtrOutput { return o.ApplyT(func(v *FunctionConfiguration) pulumi.StringPtrOutput { return v.ResponseMappingTemplateS3Location }).(pulumi.StringPtrOutput) } +// Describes a runtime used by an AWS AppSync pipeline resolver or AWS AppSync function. Specifies the name and version of the runtime to use. Note that if a runtime is specified, code must also be specified. func (o FunctionConfigurationOutput) Runtime() FunctionConfigurationAppSyncRuntimePtrOutput { return o.ApplyT(func(v *FunctionConfiguration) FunctionConfigurationAppSyncRuntimePtrOutput { return v.Runtime }).(FunctionConfigurationAppSyncRuntimePtrOutput) } +// Describes a Sync configuration for a resolver. Specifies which Conflict Detection strategy and Resolution strategy to use when the resolver is invoked. func (o FunctionConfigurationOutput) SyncConfig() FunctionConfigurationSyncConfigPtrOutput { return o.ApplyT(func(v *FunctionConfiguration) FunctionConfigurationSyncConfigPtrOutput { return v.SyncConfig }).(FunctionConfigurationSyncConfigPtrOutput) } diff --git a/sdk/go/aws/appsync/getFunctionConfiguration.go b/sdk/go/aws/appsync/getFunctionConfiguration.go index b8cabdea34..5c23d51771 100644 --- a/sdk/go/aws/appsync/getFunctionConfiguration.go +++ b/sdk/go/aws/appsync/getFunctionConfiguration.go @@ -12,7 +12,7 @@ import ( "github.com/pulumi/pulumi/sdk/v3/go/pulumix" ) -// Resource Type definition for AWS::AppSync::FunctionConfiguration +// An example resource schema demonstrating some basic constructs and validation rules. func LookupFunctionConfiguration(ctx *pulumi.Context, args *LookupFunctionConfigurationArgs, opts ...pulumi.InvokeOption) (*LookupFunctionConfigurationResult, error) { opts = internal.PkgInvokeDefaultOpts(opts) var rv LookupFunctionConfigurationResult @@ -24,26 +24,35 @@ func LookupFunctionConfiguration(ctx *pulumi.Context, args *LookupFunctionConfig } type LookupFunctionConfigurationArgs struct { - Id string `pulumi:"id"` + // The ARN for the function generated by the service + FunctionArn string `pulumi:"functionArn"` } type LookupFunctionConfigurationResult struct { - Code *string `pulumi:"code"` - CodeS3Location *string `pulumi:"codeS3Location"` - DataSourceName *string `pulumi:"dataSourceName"` - Description *string `pulumi:"description"` - FunctionArn *string `pulumi:"functionArn"` - FunctionId *string `pulumi:"functionId"` - FunctionVersion *string `pulumi:"functionVersion"` - Id *string `pulumi:"id"` - MaxBatchSize *int `pulumi:"maxBatchSize"` - Name *string `pulumi:"name"` - RequestMappingTemplate *string `pulumi:"requestMappingTemplate"` - RequestMappingTemplateS3Location *string `pulumi:"requestMappingTemplateS3Location"` - ResponseMappingTemplate *string `pulumi:"responseMappingTemplate"` - ResponseMappingTemplateS3Location *string `pulumi:"responseMappingTemplateS3Location"` - Runtime *FunctionConfigurationAppSyncRuntime `pulumi:"runtime"` - SyncConfig *FunctionConfigurationSyncConfig `pulumi:"syncConfig"` + // The resolver code that contains the request and response functions. When code is used, the runtime is required. The runtime value must be APPSYNC_JS. + Code *string `pulumi:"code"` + // The name of data source this function will attach. + DataSourceName *string `pulumi:"dataSourceName"` + // The function description. + Description *string `pulumi:"description"` + // The ARN for the function generated by the service + FunctionArn *string `pulumi:"functionArn"` + // The unique identifier for the function generated by the service + FunctionId *string `pulumi:"functionId"` + // The version of the request mapping template. Currently, only the 2018-05-29 version of the template is supported. + FunctionVersion *string `pulumi:"functionVersion"` + // The maximum number of resolver request inputs that will be sent to a single AWS Lambda function in a BatchInvoke operation. + MaxBatchSize *int `pulumi:"maxBatchSize"` + // The name of the function. + Name *string `pulumi:"name"` + // The Function request mapping template. Functions support only the 2018-05-29 version of the request mapping template. + RequestMappingTemplate *string `pulumi:"requestMappingTemplate"` + // The Function response mapping template. + ResponseMappingTemplate *string `pulumi:"responseMappingTemplate"` + // Describes a runtime used by an AWS AppSync pipeline resolver or AWS AppSync function. Specifies the name and version of the runtime to use. Note that if a runtime is specified, code must also be specified. + Runtime *FunctionConfigurationAppSyncRuntime `pulumi:"runtime"` + // Describes a Sync configuration for a resolver. Specifies which Conflict Detection strategy and Resolution strategy to use when the resolver is invoked. + SyncConfig *FunctionConfigurationSyncConfig `pulumi:"syncConfig"` } func LookupFunctionConfigurationOutput(ctx *pulumi.Context, args LookupFunctionConfigurationOutputArgs, opts ...pulumi.InvokeOption) LookupFunctionConfigurationResultOutput { @@ -60,7 +69,8 @@ func LookupFunctionConfigurationOutput(ctx *pulumi.Context, args LookupFunctionC } type LookupFunctionConfigurationOutputArgs struct { - Id pulumi.StringInput `pulumi:"id"` + // The ARN for the function generated by the service + FunctionArn pulumi.StringInput `pulumi:"functionArn"` } func (LookupFunctionConfigurationOutputArgs) ElementType() reflect.Type { @@ -87,66 +97,62 @@ func (o LookupFunctionConfigurationResultOutput) ToOutput(ctx context.Context) p } } +// The resolver code that contains the request and response functions. When code is used, the runtime is required. The runtime value must be APPSYNC_JS. func (o LookupFunctionConfigurationResultOutput) Code() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupFunctionConfigurationResult) *string { return v.Code }).(pulumi.StringPtrOutput) } -func (o LookupFunctionConfigurationResultOutput) CodeS3Location() pulumi.StringPtrOutput { - return o.ApplyT(func(v LookupFunctionConfigurationResult) *string { return v.CodeS3Location }).(pulumi.StringPtrOutput) -} - +// The name of data source this function will attach. func (o LookupFunctionConfigurationResultOutput) DataSourceName() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupFunctionConfigurationResult) *string { return v.DataSourceName }).(pulumi.StringPtrOutput) } +// The function description. func (o LookupFunctionConfigurationResultOutput) Description() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupFunctionConfigurationResult) *string { return v.Description }).(pulumi.StringPtrOutput) } +// The ARN for the function generated by the service func (o LookupFunctionConfigurationResultOutput) FunctionArn() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupFunctionConfigurationResult) *string { return v.FunctionArn }).(pulumi.StringPtrOutput) } +// The unique identifier for the function generated by the service func (o LookupFunctionConfigurationResultOutput) FunctionId() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupFunctionConfigurationResult) *string { return v.FunctionId }).(pulumi.StringPtrOutput) } +// The version of the request mapping template. Currently, only the 2018-05-29 version of the template is supported. func (o LookupFunctionConfigurationResultOutput) FunctionVersion() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupFunctionConfigurationResult) *string { return v.FunctionVersion }).(pulumi.StringPtrOutput) } -func (o LookupFunctionConfigurationResultOutput) Id() pulumi.StringPtrOutput { - return o.ApplyT(func(v LookupFunctionConfigurationResult) *string { return v.Id }).(pulumi.StringPtrOutput) -} - +// The maximum number of resolver request inputs that will be sent to a single AWS Lambda function in a BatchInvoke operation. func (o LookupFunctionConfigurationResultOutput) MaxBatchSize() pulumi.IntPtrOutput { return o.ApplyT(func(v LookupFunctionConfigurationResult) *int { return v.MaxBatchSize }).(pulumi.IntPtrOutput) } +// The name of the function. func (o LookupFunctionConfigurationResultOutput) Name() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupFunctionConfigurationResult) *string { return v.Name }).(pulumi.StringPtrOutput) } +// The Function request mapping template. Functions support only the 2018-05-29 version of the request mapping template. func (o LookupFunctionConfigurationResultOutput) RequestMappingTemplate() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupFunctionConfigurationResult) *string { return v.RequestMappingTemplate }).(pulumi.StringPtrOutput) } -func (o LookupFunctionConfigurationResultOutput) RequestMappingTemplateS3Location() pulumi.StringPtrOutput { - return o.ApplyT(func(v LookupFunctionConfigurationResult) *string { return v.RequestMappingTemplateS3Location }).(pulumi.StringPtrOutput) -} - +// The Function response mapping template. func (o LookupFunctionConfigurationResultOutput) ResponseMappingTemplate() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupFunctionConfigurationResult) *string { return v.ResponseMappingTemplate }).(pulumi.StringPtrOutput) } -func (o LookupFunctionConfigurationResultOutput) ResponseMappingTemplateS3Location() pulumi.StringPtrOutput { - return o.ApplyT(func(v LookupFunctionConfigurationResult) *string { return v.ResponseMappingTemplateS3Location }).(pulumi.StringPtrOutput) -} - +// Describes a runtime used by an AWS AppSync pipeline resolver or AWS AppSync function. Specifies the name and version of the runtime to use. Note that if a runtime is specified, code must also be specified. func (o LookupFunctionConfigurationResultOutput) Runtime() FunctionConfigurationAppSyncRuntimePtrOutput { return o.ApplyT(func(v LookupFunctionConfigurationResult) *FunctionConfigurationAppSyncRuntime { return v.Runtime }).(FunctionConfigurationAppSyncRuntimePtrOutput) } +// Describes a Sync configuration for a resolver. Specifies which Conflict Detection strategy and Resolution strategy to use when the resolver is invoked. func (o LookupFunctionConfigurationResultOutput) SyncConfig() FunctionConfigurationSyncConfigPtrOutput { return o.ApplyT(func(v LookupFunctionConfigurationResult) *FunctionConfigurationSyncConfig { return v.SyncConfig }).(FunctionConfigurationSyncConfigPtrOutput) } diff --git a/sdk/go/aws/appsync/pulumiTypes.go b/sdk/go/aws/appsync/pulumiTypes.go index ac96aaf6a4..d4ba0791e3 100644 --- a/sdk/go/aws/appsync/pulumiTypes.go +++ b/sdk/go/aws/appsync/pulumiTypes.go @@ -1983,8 +1983,11 @@ func (o DataSourceRelationalDatabaseConfigPtrOutput) RelationalDatabaseSourceTyp }).(pulumi.StringPtrOutput) } +// Describes a runtime used by an AWS AppSync pipeline resolver or AWS AppSync function. Specifies the name and version of the runtime to use. Note that if a runtime is specified, code must also be specified. type FunctionConfigurationAppSyncRuntime struct { - Name string `pulumi:"name"` + // The name of the runtime to use. Currently, the only allowed value is APPSYNC_JS. + Name string `pulumi:"name"` + // The version of the runtime to use. Currently, the only allowed version is 1.0.0. RuntimeVersion string `pulumi:"runtimeVersion"` } @@ -1999,8 +2002,11 @@ type FunctionConfigurationAppSyncRuntimeInput interface { ToFunctionConfigurationAppSyncRuntimeOutputWithContext(context.Context) FunctionConfigurationAppSyncRuntimeOutput } +// Describes a runtime used by an AWS AppSync pipeline resolver or AWS AppSync function. Specifies the name and version of the runtime to use. Note that if a runtime is specified, code must also be specified. type FunctionConfigurationAppSyncRuntimeArgs struct { - Name pulumi.StringInput `pulumi:"name"` + // The name of the runtime to use. Currently, the only allowed value is APPSYNC_JS. + Name pulumi.StringInput `pulumi:"name"` + // The version of the runtime to use. Currently, the only allowed version is 1.0.0. RuntimeVersion pulumi.StringInput `pulumi:"runtimeVersion"` } @@ -2069,6 +2075,7 @@ func (i *functionConfigurationAppSyncRuntimePtrType) ToOutput(ctx context.Contex } } +// Describes a runtime used by an AWS AppSync pipeline resolver or AWS AppSync function. Specifies the name and version of the runtime to use. Note that if a runtime is specified, code must also be specified. type FunctionConfigurationAppSyncRuntimeOutput struct{ *pulumi.OutputState } func (FunctionConfigurationAppSyncRuntimeOutput) ElementType() reflect.Type { @@ -2099,10 +2106,12 @@ func (o FunctionConfigurationAppSyncRuntimeOutput) ToOutput(ctx context.Context) } } +// The name of the runtime to use. Currently, the only allowed value is APPSYNC_JS. func (o FunctionConfigurationAppSyncRuntimeOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v FunctionConfigurationAppSyncRuntime) string { return v.Name }).(pulumi.StringOutput) } +// The version of the runtime to use. Currently, the only allowed version is 1.0.0. func (o FunctionConfigurationAppSyncRuntimeOutput) RuntimeVersion() pulumi.StringOutput { return o.ApplyT(func(v FunctionConfigurationAppSyncRuntime) string { return v.RuntimeVersion }).(pulumi.StringOutput) } @@ -2137,6 +2146,7 @@ func (o FunctionConfigurationAppSyncRuntimePtrOutput) Elem() FunctionConfigurati }).(FunctionConfigurationAppSyncRuntimeOutput) } +// The name of the runtime to use. Currently, the only allowed value is APPSYNC_JS. func (o FunctionConfigurationAppSyncRuntimePtrOutput) Name() pulumi.StringPtrOutput { return o.ApplyT(func(v *FunctionConfigurationAppSyncRuntime) *string { if v == nil { @@ -2146,6 +2156,7 @@ func (o FunctionConfigurationAppSyncRuntimePtrOutput) Name() pulumi.StringPtrOut }).(pulumi.StringPtrOutput) } +// The version of the runtime to use. Currently, the only allowed version is 1.0.0. func (o FunctionConfigurationAppSyncRuntimePtrOutput) RuntimeVersion() pulumi.StringPtrOutput { return o.ApplyT(func(v *FunctionConfigurationAppSyncRuntime) *string { if v == nil { @@ -2155,7 +2166,9 @@ func (o FunctionConfigurationAppSyncRuntimePtrOutput) RuntimeVersion() pulumi.St }).(pulumi.StringPtrOutput) } +// The LambdaConflictHandlerConfig when configuring LAMBDA as the Conflict Handler. type FunctionConfigurationLambdaConflictHandlerConfig struct { + // The Amazon Resource Name (ARN) for the Lambda function to use as the Conflict Handler. LambdaConflictHandlerArn *string `pulumi:"lambdaConflictHandlerArn"` } @@ -2170,7 +2183,9 @@ type FunctionConfigurationLambdaConflictHandlerConfigInput interface { ToFunctionConfigurationLambdaConflictHandlerConfigOutputWithContext(context.Context) FunctionConfigurationLambdaConflictHandlerConfigOutput } +// The LambdaConflictHandlerConfig when configuring LAMBDA as the Conflict Handler. type FunctionConfigurationLambdaConflictHandlerConfigArgs struct { + // The Amazon Resource Name (ARN) for the Lambda function to use as the Conflict Handler. LambdaConflictHandlerArn pulumi.StringPtrInput `pulumi:"lambdaConflictHandlerArn"` } @@ -2239,6 +2254,7 @@ func (i *functionConfigurationLambdaConflictHandlerConfigPtrType) ToOutput(ctx c } } +// The LambdaConflictHandlerConfig when configuring LAMBDA as the Conflict Handler. type FunctionConfigurationLambdaConflictHandlerConfigOutput struct{ *pulumi.OutputState } func (FunctionConfigurationLambdaConflictHandlerConfigOutput) ElementType() reflect.Type { @@ -2269,6 +2285,7 @@ func (o FunctionConfigurationLambdaConflictHandlerConfigOutput) ToOutput(ctx con } } +// The Amazon Resource Name (ARN) for the Lambda function to use as the Conflict Handler. func (o FunctionConfigurationLambdaConflictHandlerConfigOutput) LambdaConflictHandlerArn() pulumi.StringPtrOutput { return o.ApplyT(func(v FunctionConfigurationLambdaConflictHandlerConfig) *string { return v.LambdaConflictHandlerArn }).(pulumi.StringPtrOutput) } @@ -2303,6 +2320,7 @@ func (o FunctionConfigurationLambdaConflictHandlerConfigPtrOutput) Elem() Functi }).(FunctionConfigurationLambdaConflictHandlerConfigOutput) } +// The Amazon Resource Name (ARN) for the Lambda function to use as the Conflict Handler. func (o FunctionConfigurationLambdaConflictHandlerConfigPtrOutput) LambdaConflictHandlerArn() pulumi.StringPtrOutput { return o.ApplyT(func(v *FunctionConfigurationLambdaConflictHandlerConfig) *string { if v == nil { @@ -2312,8 +2330,11 @@ func (o FunctionConfigurationLambdaConflictHandlerConfigPtrOutput) LambdaConflic }).(pulumi.StringPtrOutput) } +// Describes a Sync configuration for a resolver. Specifies which Conflict Detection strategy and Resolution strategy to use when the resolver is invoked. type FunctionConfigurationSyncConfig struct { - ConflictDetection string `pulumi:"conflictDetection"` + // The Conflict Detection strategy to use. + ConflictDetection string `pulumi:"conflictDetection"` + // The Conflict Resolution strategy to perform in the event of a conflict. ConflictHandler *string `pulumi:"conflictHandler"` LambdaConflictHandlerConfig *FunctionConfigurationLambdaConflictHandlerConfig `pulumi:"lambdaConflictHandlerConfig"` } @@ -2329,8 +2350,11 @@ type FunctionConfigurationSyncConfigInput interface { ToFunctionConfigurationSyncConfigOutputWithContext(context.Context) FunctionConfigurationSyncConfigOutput } +// Describes a Sync configuration for a resolver. Specifies which Conflict Detection strategy and Resolution strategy to use when the resolver is invoked. type FunctionConfigurationSyncConfigArgs struct { - ConflictDetection pulumi.StringInput `pulumi:"conflictDetection"` + // The Conflict Detection strategy to use. + ConflictDetection pulumi.StringInput `pulumi:"conflictDetection"` + // The Conflict Resolution strategy to perform in the event of a conflict. ConflictHandler pulumi.StringPtrInput `pulumi:"conflictHandler"` LambdaConflictHandlerConfig FunctionConfigurationLambdaConflictHandlerConfigPtrInput `pulumi:"lambdaConflictHandlerConfig"` } @@ -2400,6 +2424,7 @@ func (i *functionConfigurationSyncConfigPtrType) ToOutput(ctx context.Context) p } } +// Describes a Sync configuration for a resolver. Specifies which Conflict Detection strategy and Resolution strategy to use when the resolver is invoked. type FunctionConfigurationSyncConfigOutput struct{ *pulumi.OutputState } func (FunctionConfigurationSyncConfigOutput) ElementType() reflect.Type { @@ -2430,10 +2455,12 @@ func (o FunctionConfigurationSyncConfigOutput) ToOutput(ctx context.Context) pul } } +// The Conflict Detection strategy to use. func (o FunctionConfigurationSyncConfigOutput) ConflictDetection() pulumi.StringOutput { return o.ApplyT(func(v FunctionConfigurationSyncConfig) string { return v.ConflictDetection }).(pulumi.StringOutput) } +// The Conflict Resolution strategy to perform in the event of a conflict. func (o FunctionConfigurationSyncConfigOutput) ConflictHandler() pulumi.StringPtrOutput { return o.ApplyT(func(v FunctionConfigurationSyncConfig) *string { return v.ConflictHandler }).(pulumi.StringPtrOutput) } @@ -2474,6 +2501,7 @@ func (o FunctionConfigurationSyncConfigPtrOutput) Elem() FunctionConfigurationSy }).(FunctionConfigurationSyncConfigOutput) } +// The Conflict Detection strategy to use. func (o FunctionConfigurationSyncConfigPtrOutput) ConflictDetection() pulumi.StringPtrOutput { return o.ApplyT(func(v *FunctionConfigurationSyncConfig) *string { if v == nil { @@ -2483,6 +2511,7 @@ func (o FunctionConfigurationSyncConfigPtrOutput) ConflictDetection() pulumi.Str }).(pulumi.StringPtrOutput) } +// The Conflict Resolution strategy to perform in the event of a conflict. func (o FunctionConfigurationSyncConfigPtrOutput) ConflictHandler() pulumi.StringPtrOutput { return o.ApplyT(func(v *FunctionConfigurationSyncConfig) *string { if v == nil { diff --git a/sdk/go/aws/cognito/getIdentityPool.go b/sdk/go/aws/cognito/getIdentityPool.go index f30ac4c68e..2a70ae53f5 100644 --- a/sdk/go/aws/cognito/getIdentityPool.go +++ b/sdk/go/aws/cognito/getIdentityPool.go @@ -30,16 +30,17 @@ type LookupIdentityPoolArgs struct { type LookupIdentityPoolResult struct { AllowClassicFlow *bool `pulumi:"allowClassicFlow"` AllowUnauthenticatedIdentities *bool `pulumi:"allowUnauthenticatedIdentities"` + CognitoEvents interface{} `pulumi:"cognitoEvents"` CognitoIdentityProviders []IdentityPoolCognitoIdentityProvider `pulumi:"cognitoIdentityProviders"` + CognitoStreams *IdentityPoolCognitoStreams `pulumi:"cognitoStreams"` DeveloperProviderName *string `pulumi:"developerProviderName"` Id *string `pulumi:"id"` IdentityPoolName *string `pulumi:"identityPoolName"` - // An array of key-value pairs to apply to this resource. - IdentityPoolTags []IdentityPoolTag `pulumi:"identityPoolTags"` - Name *string `pulumi:"name"` - OpenIdConnectProviderArns []string `pulumi:"openIdConnectProviderArns"` - SamlProviderArns []string `pulumi:"samlProviderArns"` - SupportedLoginProviders interface{} `pulumi:"supportedLoginProviders"` + Name *string `pulumi:"name"` + OpenIdConnectProviderArns []string `pulumi:"openIdConnectProviderArns"` + PushSync *IdentityPoolPushSync `pulumi:"pushSync"` + SamlProviderArns []string `pulumi:"samlProviderArns"` + SupportedLoginProviders interface{} `pulumi:"supportedLoginProviders"` } func LookupIdentityPoolOutput(ctx *pulumi.Context, args LookupIdentityPoolOutputArgs, opts ...pulumi.InvokeOption) LookupIdentityPoolResultOutput { @@ -91,12 +92,20 @@ func (o LookupIdentityPoolResultOutput) AllowUnauthenticatedIdentities() pulumi. return o.ApplyT(func(v LookupIdentityPoolResult) *bool { return v.AllowUnauthenticatedIdentities }).(pulumi.BoolPtrOutput) } +func (o LookupIdentityPoolResultOutput) CognitoEvents() pulumi.AnyOutput { + return o.ApplyT(func(v LookupIdentityPoolResult) interface{} { return v.CognitoEvents }).(pulumi.AnyOutput) +} + func (o LookupIdentityPoolResultOutput) CognitoIdentityProviders() IdentityPoolCognitoIdentityProviderArrayOutput { return o.ApplyT(func(v LookupIdentityPoolResult) []IdentityPoolCognitoIdentityProvider { return v.CognitoIdentityProviders }).(IdentityPoolCognitoIdentityProviderArrayOutput) } +func (o LookupIdentityPoolResultOutput) CognitoStreams() IdentityPoolCognitoStreamsPtrOutput { + return o.ApplyT(func(v LookupIdentityPoolResult) *IdentityPoolCognitoStreams { return v.CognitoStreams }).(IdentityPoolCognitoStreamsPtrOutput) +} + func (o LookupIdentityPoolResultOutput) DeveloperProviderName() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupIdentityPoolResult) *string { return v.DeveloperProviderName }).(pulumi.StringPtrOutput) } @@ -109,11 +118,6 @@ func (o LookupIdentityPoolResultOutput) IdentityPoolName() pulumi.StringPtrOutpu return o.ApplyT(func(v LookupIdentityPoolResult) *string { return v.IdentityPoolName }).(pulumi.StringPtrOutput) } -// An array of key-value pairs to apply to this resource. -func (o LookupIdentityPoolResultOutput) IdentityPoolTags() IdentityPoolTagArrayOutput { - return o.ApplyT(func(v LookupIdentityPoolResult) []IdentityPoolTag { return v.IdentityPoolTags }).(IdentityPoolTagArrayOutput) -} - func (o LookupIdentityPoolResultOutput) Name() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupIdentityPoolResult) *string { return v.Name }).(pulumi.StringPtrOutput) } @@ -122,6 +126,10 @@ func (o LookupIdentityPoolResultOutput) OpenIdConnectProviderArns() pulumi.Strin return o.ApplyT(func(v LookupIdentityPoolResult) []string { return v.OpenIdConnectProviderArns }).(pulumi.StringArrayOutput) } +func (o LookupIdentityPoolResultOutput) PushSync() IdentityPoolPushSyncPtrOutput { + return o.ApplyT(func(v LookupIdentityPoolResult) *IdentityPoolPushSync { return v.PushSync }).(IdentityPoolPushSyncPtrOutput) +} + func (o LookupIdentityPoolResultOutput) SamlProviderArns() pulumi.StringArrayOutput { return o.ApplyT(func(v LookupIdentityPoolResult) []string { return v.SamlProviderArns }).(pulumi.StringArrayOutput) } diff --git a/sdk/go/aws/cognito/getUserPool.go b/sdk/go/aws/cognito/getUserPool.go index 1278aeb5a6..8302b34c05 100644 --- a/sdk/go/aws/cognito/getUserPool.go +++ b/sdk/go/aws/cognito/getUserPool.go @@ -24,7 +24,7 @@ func LookupUserPool(ctx *pulumi.Context, args *LookupUserPoolArgs, opts ...pulum } type LookupUserPoolArgs struct { - Id string `pulumi:"id"` + UserPoolId string `pulumi:"userPoolId"` } type LookupUserPoolResult struct { @@ -38,8 +38,6 @@ type LookupUserPoolResult struct { EmailConfiguration *UserPoolEmailConfiguration `pulumi:"emailConfiguration"` EmailVerificationMessage *string `pulumi:"emailVerificationMessage"` EmailVerificationSubject *string `pulumi:"emailVerificationSubject"` - EnabledMfas []string `pulumi:"enabledMfas"` - Id *string `pulumi:"id"` LambdaConfig *UserPoolLambdaConfig `pulumi:"lambdaConfig"` MfaConfiguration *string `pulumi:"mfaConfiguration"` Policies *UserPoolPolicies `pulumi:"policies"` @@ -51,6 +49,7 @@ type LookupUserPoolResult struct { SmsVerificationMessage *string `pulumi:"smsVerificationMessage"` UserAttributeUpdateSettings *UserPoolUserAttributeUpdateSettings `pulumi:"userAttributeUpdateSettings"` UserPoolAddOns *UserPoolAddOns `pulumi:"userPoolAddOns"` + UserPoolId *string `pulumi:"userPoolId"` UserPoolName *string `pulumi:"userPoolName"` UserPoolTags interface{} `pulumi:"userPoolTags"` UsernameAttributes []string `pulumi:"usernameAttributes"` @@ -72,7 +71,7 @@ func LookupUserPoolOutput(ctx *pulumi.Context, args LookupUserPoolOutputArgs, op } type LookupUserPoolOutputArgs struct { - Id pulumi.StringInput `pulumi:"id"` + UserPoolId pulumi.StringInput `pulumi:"userPoolId"` } func (LookupUserPoolOutputArgs) ElementType() reflect.Type { @@ -139,14 +138,6 @@ func (o LookupUserPoolResultOutput) EmailVerificationSubject() pulumi.StringPtrO return o.ApplyT(func(v LookupUserPoolResult) *string { return v.EmailVerificationSubject }).(pulumi.StringPtrOutput) } -func (o LookupUserPoolResultOutput) EnabledMfas() pulumi.StringArrayOutput { - return o.ApplyT(func(v LookupUserPoolResult) []string { return v.EnabledMfas }).(pulumi.StringArrayOutput) -} - -func (o LookupUserPoolResultOutput) Id() pulumi.StringPtrOutput { - return o.ApplyT(func(v LookupUserPoolResult) *string { return v.Id }).(pulumi.StringPtrOutput) -} - func (o LookupUserPoolResultOutput) LambdaConfig() UserPoolLambdaConfigPtrOutput { return o.ApplyT(func(v LookupUserPoolResult) *UserPoolLambdaConfig { return v.LambdaConfig }).(UserPoolLambdaConfigPtrOutput) } @@ -193,6 +184,10 @@ func (o LookupUserPoolResultOutput) UserPoolAddOns() UserPoolAddOnsPtrOutput { return o.ApplyT(func(v LookupUserPoolResult) *UserPoolAddOns { return v.UserPoolAddOns }).(UserPoolAddOnsPtrOutput) } +func (o LookupUserPoolResultOutput) UserPoolId() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupUserPoolResult) *string { return v.UserPoolId }).(pulumi.StringPtrOutput) +} + func (o LookupUserPoolResultOutput) UserPoolName() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupUserPoolResult) *string { return v.UserPoolName }).(pulumi.StringPtrOutput) } diff --git a/sdk/go/aws/cognito/getUserPoolGroup.go b/sdk/go/aws/cognito/getUserPoolGroup.go index a96d500c46..4f6b39cf83 100644 --- a/sdk/go/aws/cognito/getUserPoolGroup.go +++ b/sdk/go/aws/cognito/getUserPoolGroup.go @@ -24,14 +24,14 @@ func LookupUserPoolGroup(ctx *pulumi.Context, args *LookupUserPoolGroupArgs, opt } type LookupUserPoolGroupArgs struct { - Id string `pulumi:"id"` + GroupName string `pulumi:"groupName"` + UserPoolId string `pulumi:"userPoolId"` } type LookupUserPoolGroupResult struct { - Description *string `pulumi:"description"` - Id *string `pulumi:"id"` - Precedence *float64 `pulumi:"precedence"` - RoleArn *string `pulumi:"roleArn"` + Description *string `pulumi:"description"` + Precedence *int `pulumi:"precedence"` + RoleArn *string `pulumi:"roleArn"` } func LookupUserPoolGroupOutput(ctx *pulumi.Context, args LookupUserPoolGroupOutputArgs, opts ...pulumi.InvokeOption) LookupUserPoolGroupResultOutput { @@ -48,7 +48,8 @@ func LookupUserPoolGroupOutput(ctx *pulumi.Context, args LookupUserPoolGroupOutp } type LookupUserPoolGroupOutputArgs struct { - Id pulumi.StringInput `pulumi:"id"` + GroupName pulumi.StringInput `pulumi:"groupName"` + UserPoolId pulumi.StringInput `pulumi:"userPoolId"` } func (LookupUserPoolGroupOutputArgs) ElementType() reflect.Type { @@ -79,12 +80,8 @@ func (o LookupUserPoolGroupResultOutput) Description() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupUserPoolGroupResult) *string { return v.Description }).(pulumi.StringPtrOutput) } -func (o LookupUserPoolGroupResultOutput) Id() pulumi.StringPtrOutput { - return o.ApplyT(func(v LookupUserPoolGroupResult) *string { return v.Id }).(pulumi.StringPtrOutput) -} - -func (o LookupUserPoolGroupResultOutput) Precedence() pulumi.Float64PtrOutput { - return o.ApplyT(func(v LookupUserPoolGroupResult) *float64 { return v.Precedence }).(pulumi.Float64PtrOutput) +func (o LookupUserPoolGroupResultOutput) Precedence() pulumi.IntPtrOutput { + return o.ApplyT(func(v LookupUserPoolGroupResult) *int { return v.Precedence }).(pulumi.IntPtrOutput) } func (o LookupUserPoolGroupResultOutput) RoleArn() pulumi.StringPtrOutput { diff --git a/sdk/go/aws/cognito/identityPool.go b/sdk/go/aws/cognito/identityPool.go index 7716110237..2a48c948a8 100644 --- a/sdk/go/aws/cognito/identityPool.go +++ b/sdk/go/aws/cognito/identityPool.go @@ -24,13 +24,11 @@ type IdentityPool struct { CognitoStreams IdentityPoolCognitoStreamsPtrOutput `pulumi:"cognitoStreams"` DeveloperProviderName pulumi.StringPtrOutput `pulumi:"developerProviderName"` IdentityPoolName pulumi.StringPtrOutput `pulumi:"identityPoolName"` - // An array of key-value pairs to apply to this resource. - IdentityPoolTags IdentityPoolTagArrayOutput `pulumi:"identityPoolTags"` - Name pulumi.StringOutput `pulumi:"name"` - OpenIdConnectProviderArns pulumi.StringArrayOutput `pulumi:"openIdConnectProviderArns"` - PushSync IdentityPoolPushSyncPtrOutput `pulumi:"pushSync"` - SamlProviderArns pulumi.StringArrayOutput `pulumi:"samlProviderArns"` - SupportedLoginProviders pulumi.AnyOutput `pulumi:"supportedLoginProviders"` + Name pulumi.StringOutput `pulumi:"name"` + OpenIdConnectProviderArns pulumi.StringArrayOutput `pulumi:"openIdConnectProviderArns"` + PushSync IdentityPoolPushSyncPtrOutput `pulumi:"pushSync"` + SamlProviderArns pulumi.StringArrayOutput `pulumi:"samlProviderArns"` + SupportedLoginProviders pulumi.AnyOutput `pulumi:"supportedLoginProviders"` } // NewIdentityPool registers a new resource with the given unique name, arguments, and options. @@ -83,12 +81,10 @@ type identityPoolArgs struct { CognitoStreams *IdentityPoolCognitoStreams `pulumi:"cognitoStreams"` DeveloperProviderName *string `pulumi:"developerProviderName"` IdentityPoolName *string `pulumi:"identityPoolName"` - // An array of key-value pairs to apply to this resource. - IdentityPoolTags []IdentityPoolTag `pulumi:"identityPoolTags"` - OpenIdConnectProviderArns []string `pulumi:"openIdConnectProviderArns"` - PushSync *IdentityPoolPushSync `pulumi:"pushSync"` - SamlProviderArns []string `pulumi:"samlProviderArns"` - SupportedLoginProviders interface{} `pulumi:"supportedLoginProviders"` + OpenIdConnectProviderArns []string `pulumi:"openIdConnectProviderArns"` + PushSync *IdentityPoolPushSync `pulumi:"pushSync"` + SamlProviderArns []string `pulumi:"samlProviderArns"` + SupportedLoginProviders interface{} `pulumi:"supportedLoginProviders"` } // The set of arguments for constructing a IdentityPool resource. @@ -100,12 +96,10 @@ type IdentityPoolArgs struct { CognitoStreams IdentityPoolCognitoStreamsPtrInput DeveloperProviderName pulumi.StringPtrInput IdentityPoolName pulumi.StringPtrInput - // An array of key-value pairs to apply to this resource. - IdentityPoolTags IdentityPoolTagArrayInput - OpenIdConnectProviderArns pulumi.StringArrayInput - PushSync IdentityPoolPushSyncPtrInput - SamlProviderArns pulumi.StringArrayInput - SupportedLoginProviders pulumi.Input + OpenIdConnectProviderArns pulumi.StringArrayInput + PushSync IdentityPoolPushSyncPtrInput + SamlProviderArns pulumi.StringArrayInput + SupportedLoginProviders pulumi.Input } func (IdentityPoolArgs) ElementType() reflect.Type { @@ -187,11 +181,6 @@ func (o IdentityPoolOutput) IdentityPoolName() pulumi.StringPtrOutput { return o.ApplyT(func(v *IdentityPool) pulumi.StringPtrOutput { return v.IdentityPoolName }).(pulumi.StringPtrOutput) } -// An array of key-value pairs to apply to this resource. -func (o IdentityPoolOutput) IdentityPoolTags() IdentityPoolTagArrayOutput { - return o.ApplyT(func(v *IdentityPool) IdentityPoolTagArrayOutput { return v.IdentityPoolTags }).(IdentityPoolTagArrayOutput) -} - func (o IdentityPoolOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v *IdentityPool) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) } diff --git a/sdk/go/aws/cognito/pulumiTypes.go b/sdk/go/aws/cognito/pulumiTypes.go index 1d7c2313b3..b40f134e1c 100644 --- a/sdk/go/aws/cognito/pulumiTypes.go +++ b/sdk/go/aws/cognito/pulumiTypes.go @@ -15,9 +15,9 @@ import ( var _ = internal.GetEnvOrDefault type IdentityPoolCognitoIdentityProvider struct { - ClientId string `pulumi:"clientId"` - ProviderName string `pulumi:"providerName"` - ServerSideTokenCheck *bool `pulumi:"serverSideTokenCheck"` + ClientId *string `pulumi:"clientId"` + ProviderName *string `pulumi:"providerName"` + ServerSideTokenCheck *bool `pulumi:"serverSideTokenCheck"` } // IdentityPoolCognitoIdentityProviderInput is an input type that accepts IdentityPoolCognitoIdentityProviderArgs and IdentityPoolCognitoIdentityProviderOutput values. @@ -32,9 +32,9 @@ type IdentityPoolCognitoIdentityProviderInput interface { } type IdentityPoolCognitoIdentityProviderArgs struct { - ClientId pulumi.StringInput `pulumi:"clientId"` - ProviderName pulumi.StringInput `pulumi:"providerName"` - ServerSideTokenCheck pulumi.BoolPtrInput `pulumi:"serverSideTokenCheck"` + ClientId pulumi.StringPtrInput `pulumi:"clientId"` + ProviderName pulumi.StringPtrInput `pulumi:"providerName"` + ServerSideTokenCheck pulumi.BoolPtrInput `pulumi:"serverSideTokenCheck"` } func (IdentityPoolCognitoIdentityProviderArgs) ElementType() reflect.Type { @@ -106,12 +106,12 @@ func (o IdentityPoolCognitoIdentityProviderOutput) ToOutput(ctx context.Context) } } -func (o IdentityPoolCognitoIdentityProviderOutput) ClientId() pulumi.StringOutput { - return o.ApplyT(func(v IdentityPoolCognitoIdentityProvider) string { return v.ClientId }).(pulumi.StringOutput) +func (o IdentityPoolCognitoIdentityProviderOutput) ClientId() pulumi.StringPtrOutput { + return o.ApplyT(func(v IdentityPoolCognitoIdentityProvider) *string { return v.ClientId }).(pulumi.StringPtrOutput) } -func (o IdentityPoolCognitoIdentityProviderOutput) ProviderName() pulumi.StringOutput { - return o.ApplyT(func(v IdentityPoolCognitoIdentityProvider) string { return v.ProviderName }).(pulumi.StringOutput) +func (o IdentityPoolCognitoIdentityProviderOutput) ProviderName() pulumi.StringPtrOutput { + return o.ApplyT(func(v IdentityPoolCognitoIdentityProvider) *string { return v.ProviderName }).(pulumi.StringPtrOutput) } func (o IdentityPoolCognitoIdentityProviderOutput) ServerSideTokenCheck() pulumi.BoolPtrOutput { @@ -503,139 +503,6 @@ func (o IdentityPoolPushSyncPtrOutput) RoleArn() pulumi.StringPtrOutput { }).(pulumi.StringPtrOutput) } -// A key-value pair to associate with a resource. -type IdentityPoolTag struct { - // The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. - Key string `pulumi:"key"` - // The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. - Value string `pulumi:"value"` -} - -// IdentityPoolTagInput is an input type that accepts IdentityPoolTagArgs and IdentityPoolTagOutput values. -// You can construct a concrete instance of `IdentityPoolTagInput` via: -// -// IdentityPoolTagArgs{...} -type IdentityPoolTagInput interface { - pulumi.Input - - ToIdentityPoolTagOutput() IdentityPoolTagOutput - ToIdentityPoolTagOutputWithContext(context.Context) IdentityPoolTagOutput -} - -// A key-value pair to associate with a resource. -type IdentityPoolTagArgs struct { - // The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. - Key pulumi.StringInput `pulumi:"key"` - // The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. - Value pulumi.StringInput `pulumi:"value"` -} - -func (IdentityPoolTagArgs) ElementType() reflect.Type { - return reflect.TypeOf((*IdentityPoolTag)(nil)).Elem() -} - -func (i IdentityPoolTagArgs) ToIdentityPoolTagOutput() IdentityPoolTagOutput { - return i.ToIdentityPoolTagOutputWithContext(context.Background()) -} - -func (i IdentityPoolTagArgs) ToIdentityPoolTagOutputWithContext(ctx context.Context) IdentityPoolTagOutput { - return pulumi.ToOutputWithContext(ctx, i).(IdentityPoolTagOutput) -} - -func (i IdentityPoolTagArgs) ToOutput(ctx context.Context) pulumix.Output[IdentityPoolTag] { - return pulumix.Output[IdentityPoolTag]{ - OutputState: i.ToIdentityPoolTagOutputWithContext(ctx).OutputState, - } -} - -// IdentityPoolTagArrayInput is an input type that accepts IdentityPoolTagArray and IdentityPoolTagArrayOutput values. -// You can construct a concrete instance of `IdentityPoolTagArrayInput` via: -// -// IdentityPoolTagArray{ IdentityPoolTagArgs{...} } -type IdentityPoolTagArrayInput interface { - pulumi.Input - - ToIdentityPoolTagArrayOutput() IdentityPoolTagArrayOutput - ToIdentityPoolTagArrayOutputWithContext(context.Context) IdentityPoolTagArrayOutput -} - -type IdentityPoolTagArray []IdentityPoolTagInput - -func (IdentityPoolTagArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]IdentityPoolTag)(nil)).Elem() -} - -func (i IdentityPoolTagArray) ToIdentityPoolTagArrayOutput() IdentityPoolTagArrayOutput { - return i.ToIdentityPoolTagArrayOutputWithContext(context.Background()) -} - -func (i IdentityPoolTagArray) ToIdentityPoolTagArrayOutputWithContext(ctx context.Context) IdentityPoolTagArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(IdentityPoolTagArrayOutput) -} - -func (i IdentityPoolTagArray) ToOutput(ctx context.Context) pulumix.Output[[]IdentityPoolTag] { - return pulumix.Output[[]IdentityPoolTag]{ - OutputState: i.ToIdentityPoolTagArrayOutputWithContext(ctx).OutputState, - } -} - -// A key-value pair to associate with a resource. -type IdentityPoolTagOutput struct{ *pulumi.OutputState } - -func (IdentityPoolTagOutput) ElementType() reflect.Type { - return reflect.TypeOf((*IdentityPoolTag)(nil)).Elem() -} - -func (o IdentityPoolTagOutput) ToIdentityPoolTagOutput() IdentityPoolTagOutput { - return o -} - -func (o IdentityPoolTagOutput) ToIdentityPoolTagOutputWithContext(ctx context.Context) IdentityPoolTagOutput { - return o -} - -func (o IdentityPoolTagOutput) ToOutput(ctx context.Context) pulumix.Output[IdentityPoolTag] { - return pulumix.Output[IdentityPoolTag]{ - OutputState: o.OutputState, - } -} - -// The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. -func (o IdentityPoolTagOutput) Key() pulumi.StringOutput { - return o.ApplyT(func(v IdentityPoolTag) string { return v.Key }).(pulumi.StringOutput) -} - -// The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. -func (o IdentityPoolTagOutput) Value() pulumi.StringOutput { - return o.ApplyT(func(v IdentityPoolTag) string { return v.Value }).(pulumi.StringOutput) -} - -type IdentityPoolTagArrayOutput struct{ *pulumi.OutputState } - -func (IdentityPoolTagArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]IdentityPoolTag)(nil)).Elem() -} - -func (o IdentityPoolTagArrayOutput) ToIdentityPoolTagArrayOutput() IdentityPoolTagArrayOutput { - return o -} - -func (o IdentityPoolTagArrayOutput) ToIdentityPoolTagArrayOutputWithContext(ctx context.Context) IdentityPoolTagArrayOutput { - return o -} - -func (o IdentityPoolTagArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]IdentityPoolTag] { - return pulumix.Output[[]IdentityPoolTag]{ - OutputState: o.OutputState, - } -} - -func (o IdentityPoolTagArrayOutput) Index(i pulumi.IntInput) IdentityPoolTagOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) IdentityPoolTag { - return vs[0].([]IdentityPoolTag)[vs[1].(int)] - }).(IdentityPoolTagOutput) -} - type LogDeliveryConfigurationCloudWatchLogsConfiguration struct { LogGroupArn *string `pulumi:"logGroupArn"` } @@ -6726,8 +6593,6 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*IdentityPoolCognitoStreamsPtrInput)(nil)).Elem(), IdentityPoolCognitoStreamsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*IdentityPoolPushSyncInput)(nil)).Elem(), IdentityPoolPushSyncArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*IdentityPoolPushSyncPtrInput)(nil)).Elem(), IdentityPoolPushSyncArgs{}) - pulumi.RegisterInputType(reflect.TypeOf((*IdentityPoolTagInput)(nil)).Elem(), IdentityPoolTagArgs{}) - pulumi.RegisterInputType(reflect.TypeOf((*IdentityPoolTagArrayInput)(nil)).Elem(), IdentityPoolTagArray{}) pulumi.RegisterInputType(reflect.TypeOf((*LogDeliveryConfigurationCloudWatchLogsConfigurationInput)(nil)).Elem(), LogDeliveryConfigurationCloudWatchLogsConfigurationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*LogDeliveryConfigurationCloudWatchLogsConfigurationPtrInput)(nil)).Elem(), LogDeliveryConfigurationCloudWatchLogsConfigurationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*LogDeliveryConfigurationLogConfigurationInput)(nil)).Elem(), LogDeliveryConfigurationLogConfigurationArgs{}) @@ -6802,8 +6667,6 @@ func init() { pulumi.RegisterOutputType(IdentityPoolCognitoStreamsPtrOutput{}) pulumi.RegisterOutputType(IdentityPoolPushSyncOutput{}) pulumi.RegisterOutputType(IdentityPoolPushSyncPtrOutput{}) - pulumi.RegisterOutputType(IdentityPoolTagOutput{}) - pulumi.RegisterOutputType(IdentityPoolTagArrayOutput{}) pulumi.RegisterOutputType(LogDeliveryConfigurationCloudWatchLogsConfigurationOutput{}) pulumi.RegisterOutputType(LogDeliveryConfigurationCloudWatchLogsConfigurationPtrOutput{}) pulumi.RegisterOutputType(LogDeliveryConfigurationLogConfigurationOutput{}) diff --git a/sdk/go/aws/cognito/userPool.go b/sdk/go/aws/cognito/userPool.go index bfb5eada18..1934b64a84 100644 --- a/sdk/go/aws/cognito/userPool.go +++ b/sdk/go/aws/cognito/userPool.go @@ -13,8 +13,6 @@ import ( ) // Resource Type definition for AWS::Cognito::UserPool -// -// Deprecated: UserPool is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible. type UserPool struct { pulumi.CustomResourceState @@ -40,6 +38,7 @@ type UserPool struct { SmsVerificationMessage pulumi.StringPtrOutput `pulumi:"smsVerificationMessage"` UserAttributeUpdateSettings UserPoolUserAttributeUpdateSettingsPtrOutput `pulumi:"userAttributeUpdateSettings"` UserPoolAddOns UserPoolAddOnsPtrOutput `pulumi:"userPoolAddOns"` + UserPoolId pulumi.StringOutput `pulumi:"userPoolId"` UserPoolName pulumi.StringPtrOutput `pulumi:"userPoolName"` UserPoolTags pulumi.AnyOutput `pulumi:"userPoolTags"` UsernameAttributes pulumi.StringArrayOutput `pulumi:"usernameAttributes"` @@ -278,6 +277,10 @@ func (o UserPoolOutput) UserPoolAddOns() UserPoolAddOnsPtrOutput { return o.ApplyT(func(v *UserPool) UserPoolAddOnsPtrOutput { return v.UserPoolAddOns }).(UserPoolAddOnsPtrOutput) } +func (o UserPoolOutput) UserPoolId() pulumi.StringOutput { + return o.ApplyT(func(v *UserPool) pulumi.StringOutput { return v.UserPoolId }).(pulumi.StringOutput) +} + func (o UserPoolOutput) UserPoolName() pulumi.StringPtrOutput { return o.ApplyT(func(v *UserPool) pulumi.StringPtrOutput { return v.UserPoolName }).(pulumi.StringPtrOutput) } diff --git a/sdk/go/aws/cognito/userPoolGroup.go b/sdk/go/aws/cognito/userPoolGroup.go index b650c9a2d9..1fe79daf4b 100644 --- a/sdk/go/aws/cognito/userPoolGroup.go +++ b/sdk/go/aws/cognito/userPoolGroup.go @@ -14,16 +14,14 @@ import ( ) // Resource Type definition for AWS::Cognito::UserPoolGroup -// -// Deprecated: UserPoolGroup is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible. type UserPoolGroup struct { pulumi.CustomResourceState - Description pulumi.StringPtrOutput `pulumi:"description"` - GroupName pulumi.StringPtrOutput `pulumi:"groupName"` - Precedence pulumi.Float64PtrOutput `pulumi:"precedence"` - RoleArn pulumi.StringPtrOutput `pulumi:"roleArn"` - UserPoolId pulumi.StringOutput `pulumi:"userPoolId"` + Description pulumi.StringPtrOutput `pulumi:"description"` + GroupName pulumi.StringPtrOutput `pulumi:"groupName"` + Precedence pulumi.IntPtrOutput `pulumi:"precedence"` + RoleArn pulumi.StringPtrOutput `pulumi:"roleArn"` + UserPoolId pulumi.StringOutput `pulumi:"userPoolId"` } // NewUserPoolGroup registers a new resource with the given unique name, arguments, and options. @@ -74,18 +72,18 @@ func (UserPoolGroupState) ElementType() reflect.Type { } type userPoolGroupArgs struct { - Description *string `pulumi:"description"` - GroupName *string `pulumi:"groupName"` - Precedence *float64 `pulumi:"precedence"` - RoleArn *string `pulumi:"roleArn"` - UserPoolId string `pulumi:"userPoolId"` + Description *string `pulumi:"description"` + GroupName *string `pulumi:"groupName"` + Precedence *int `pulumi:"precedence"` + RoleArn *string `pulumi:"roleArn"` + UserPoolId string `pulumi:"userPoolId"` } // The set of arguments for constructing a UserPoolGroup resource. type UserPoolGroupArgs struct { Description pulumi.StringPtrInput GroupName pulumi.StringPtrInput - Precedence pulumi.Float64PtrInput + Precedence pulumi.IntPtrInput RoleArn pulumi.StringPtrInput UserPoolId pulumi.StringInput } @@ -147,8 +145,8 @@ func (o UserPoolGroupOutput) GroupName() pulumi.StringPtrOutput { return o.ApplyT(func(v *UserPoolGroup) pulumi.StringPtrOutput { return v.GroupName }).(pulumi.StringPtrOutput) } -func (o UserPoolGroupOutput) Precedence() pulumi.Float64PtrOutput { - return o.ApplyT(func(v *UserPoolGroup) pulumi.Float64PtrOutput { return v.Precedence }).(pulumi.Float64PtrOutput) +func (o UserPoolGroupOutput) Precedence() pulumi.IntPtrOutput { + return o.ApplyT(func(v *UserPoolGroup) pulumi.IntPtrOutput { return v.Precedence }).(pulumi.IntPtrOutput) } func (o UserPoolGroupOutput) RoleArn() pulumi.StringPtrOutput { diff --git a/sdk/go/aws/connect/contactFlowModule.go b/sdk/go/aws/connect/contactFlowModule.go index f170ccbe20..939925f823 100644 --- a/sdk/go/aws/connect/contactFlowModule.go +++ b/sdk/go/aws/connect/contactFlowModule.go @@ -28,9 +28,9 @@ type ContactFlowModule struct { // The name of the contact flow module. Name pulumi.StringOutput `pulumi:"name"` // The state of the contact flow module. - State ContactFlowModuleStateEnumPtrOutput `pulumi:"state"` + State pulumi.StringPtrOutput `pulumi:"state"` // The status of the contact flow module. - Status ContactFlowModuleStatusOutput `pulumi:"status"` + Status pulumi.StringOutput `pulumi:"status"` // One or more tags. Tags ContactFlowModuleTagArrayOutput `pulumi:"tags"` } @@ -90,7 +90,7 @@ type contactFlowModuleArgs struct { // The name of the contact flow module. Name *string `pulumi:"name"` // The state of the contact flow module. - State *ContactFlowModuleStateEnum `pulumi:"state"` + State *string `pulumi:"state"` // One or more tags. Tags []ContactFlowModuleTag `pulumi:"tags"` } @@ -106,7 +106,7 @@ type ContactFlowModuleArgs struct { // The name of the contact flow module. Name pulumi.StringPtrInput // The state of the contact flow module. - State ContactFlowModuleStateEnumPtrInput + State pulumi.StringPtrInput // One or more tags. Tags ContactFlowModuleTagArrayInput } @@ -186,13 +186,13 @@ func (o ContactFlowModuleOutput) Name() pulumi.StringOutput { } // The state of the contact flow module. -func (o ContactFlowModuleOutput) State() ContactFlowModuleStateEnumPtrOutput { - return o.ApplyT(func(v *ContactFlowModule) ContactFlowModuleStateEnumPtrOutput { return v.State }).(ContactFlowModuleStateEnumPtrOutput) +func (o ContactFlowModuleOutput) State() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ContactFlowModule) pulumi.StringPtrOutput { return v.State }).(pulumi.StringPtrOutput) } // The status of the contact flow module. -func (o ContactFlowModuleOutput) Status() ContactFlowModuleStatusOutput { - return o.ApplyT(func(v *ContactFlowModule) ContactFlowModuleStatusOutput { return v.Status }).(ContactFlowModuleStatusOutput) +func (o ContactFlowModuleOutput) Status() pulumi.StringOutput { + return o.ApplyT(func(v *ContactFlowModule) pulumi.StringOutput { return v.Status }).(pulumi.StringOutput) } // One or more tags. diff --git a/sdk/go/aws/connect/getContactFlowModule.go b/sdk/go/aws/connect/getContactFlowModule.go index a6989c5e39..c2c27f1b04 100644 --- a/sdk/go/aws/connect/getContactFlowModule.go +++ b/sdk/go/aws/connect/getContactFlowModule.go @@ -40,9 +40,9 @@ type LookupContactFlowModuleResult struct { // The name of the contact flow module. Name *string `pulumi:"name"` // The state of the contact flow module. - State *ContactFlowModuleStateEnum `pulumi:"state"` + State *string `pulumi:"state"` // The status of the contact flow module. - Status *ContactFlowModuleStatus `pulumi:"status"` + Status *string `pulumi:"status"` // One or more tags. Tags []ContactFlowModuleTag `pulumi:"tags"` } @@ -115,13 +115,13 @@ func (o LookupContactFlowModuleResultOutput) Name() pulumi.StringPtrOutput { } // The state of the contact flow module. -func (o LookupContactFlowModuleResultOutput) State() ContactFlowModuleStateEnumPtrOutput { - return o.ApplyT(func(v LookupContactFlowModuleResult) *ContactFlowModuleStateEnum { return v.State }).(ContactFlowModuleStateEnumPtrOutput) +func (o LookupContactFlowModuleResultOutput) State() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupContactFlowModuleResult) *string { return v.State }).(pulumi.StringPtrOutput) } // The status of the contact flow module. -func (o LookupContactFlowModuleResultOutput) Status() ContactFlowModuleStatusPtrOutput { - return o.ApplyT(func(v LookupContactFlowModuleResult) *ContactFlowModuleStatus { return v.Status }).(ContactFlowModuleStatusPtrOutput) +func (o LookupContactFlowModuleResultOutput) Status() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupContactFlowModuleResult) *string { return v.Status }).(pulumi.StringPtrOutput) } // One or more tags. diff --git a/sdk/go/aws/connect/pulumiEnums.go b/sdk/go/aws/connect/pulumiEnums.go index cb70c7a490..c51dc47159 100644 --- a/sdk/go/aws/connect/pulumiEnums.go +++ b/sdk/go/aws/connect/pulumiEnums.go @@ -11,292 +11,6 @@ import ( "github.com/pulumi/pulumi/sdk/v3/go/pulumix" ) -// The state of the contact flow module. -type ContactFlowModuleStateEnum string - -const ( - ContactFlowModuleStateEnumActive = ContactFlowModuleStateEnum("ACTIVE") - ContactFlowModuleStateEnumArchived = ContactFlowModuleStateEnum("ARCHIVED") -) - -func (ContactFlowModuleStateEnum) ElementType() reflect.Type { - return reflect.TypeOf((*ContactFlowModuleStateEnum)(nil)).Elem() -} - -func (e ContactFlowModuleStateEnum) ToContactFlowModuleStateEnumOutput() ContactFlowModuleStateEnumOutput { - return pulumi.ToOutput(e).(ContactFlowModuleStateEnumOutput) -} - -func (e ContactFlowModuleStateEnum) ToContactFlowModuleStateEnumOutputWithContext(ctx context.Context) ContactFlowModuleStateEnumOutput { - return pulumi.ToOutputWithContext(ctx, e).(ContactFlowModuleStateEnumOutput) -} - -func (e ContactFlowModuleStateEnum) ToContactFlowModuleStateEnumPtrOutput() ContactFlowModuleStateEnumPtrOutput { - return e.ToContactFlowModuleStateEnumPtrOutputWithContext(context.Background()) -} - -func (e ContactFlowModuleStateEnum) ToContactFlowModuleStateEnumPtrOutputWithContext(ctx context.Context) ContactFlowModuleStateEnumPtrOutput { - return ContactFlowModuleStateEnum(e).ToContactFlowModuleStateEnumOutputWithContext(ctx).ToContactFlowModuleStateEnumPtrOutputWithContext(ctx) -} - -func (e ContactFlowModuleStateEnum) ToStringOutput() pulumi.StringOutput { - return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) -} - -func (e ContactFlowModuleStateEnum) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) -} - -func (e ContactFlowModuleStateEnum) ToStringPtrOutput() pulumi.StringPtrOutput { - return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) -} - -func (e ContactFlowModuleStateEnum) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) -} - -type ContactFlowModuleStateEnumOutput struct{ *pulumi.OutputState } - -func (ContactFlowModuleStateEnumOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ContactFlowModuleStateEnum)(nil)).Elem() -} - -func (o ContactFlowModuleStateEnumOutput) ToContactFlowModuleStateEnumOutput() ContactFlowModuleStateEnumOutput { - return o -} - -func (o ContactFlowModuleStateEnumOutput) ToContactFlowModuleStateEnumOutputWithContext(ctx context.Context) ContactFlowModuleStateEnumOutput { - return o -} - -func (o ContactFlowModuleStateEnumOutput) ToContactFlowModuleStateEnumPtrOutput() ContactFlowModuleStateEnumPtrOutput { - return o.ToContactFlowModuleStateEnumPtrOutputWithContext(context.Background()) -} - -func (o ContactFlowModuleStateEnumOutput) ToContactFlowModuleStateEnumPtrOutputWithContext(ctx context.Context) ContactFlowModuleStateEnumPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v ContactFlowModuleStateEnum) *ContactFlowModuleStateEnum { - return &v - }).(ContactFlowModuleStateEnumPtrOutput) -} - -func (o ContactFlowModuleStateEnumOutput) ToOutput(ctx context.Context) pulumix.Output[ContactFlowModuleStateEnum] { - return pulumix.Output[ContactFlowModuleStateEnum]{ - OutputState: o.OutputState, - } -} - -func (o ContactFlowModuleStateEnumOutput) ToStringOutput() pulumi.StringOutput { - return o.ToStringOutputWithContext(context.Background()) -} - -func (o ContactFlowModuleStateEnumOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e ContactFlowModuleStateEnum) string { - return string(e) - }).(pulumi.StringOutput) -} - -func (o ContactFlowModuleStateEnumOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o ContactFlowModuleStateEnumOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e ContactFlowModuleStateEnum) *string { - v := string(e) - return &v - }).(pulumi.StringPtrOutput) -} - -type ContactFlowModuleStateEnumPtrOutput struct{ *pulumi.OutputState } - -func (ContactFlowModuleStateEnumPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ContactFlowModuleStateEnum)(nil)).Elem() -} - -func (o ContactFlowModuleStateEnumPtrOutput) ToContactFlowModuleStateEnumPtrOutput() ContactFlowModuleStateEnumPtrOutput { - return o -} - -func (o ContactFlowModuleStateEnumPtrOutput) ToContactFlowModuleStateEnumPtrOutputWithContext(ctx context.Context) ContactFlowModuleStateEnumPtrOutput { - return o -} - -func (o ContactFlowModuleStateEnumPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*ContactFlowModuleStateEnum] { - return pulumix.Output[*ContactFlowModuleStateEnum]{ - OutputState: o.OutputState, - } -} - -func (o ContactFlowModuleStateEnumPtrOutput) Elem() ContactFlowModuleStateEnumOutput { - return o.ApplyT(func(v *ContactFlowModuleStateEnum) ContactFlowModuleStateEnum { - if v != nil { - return *v - } - var ret ContactFlowModuleStateEnum - return ret - }).(ContactFlowModuleStateEnumOutput) -} - -func (o ContactFlowModuleStateEnumPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o ContactFlowModuleStateEnumPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e *ContactFlowModuleStateEnum) *string { - if e == nil { - return nil - } - v := string(*e) - return &v - }).(pulumi.StringPtrOutput) -} - -// ContactFlowModuleStateEnumInput is an input type that accepts ContactFlowModuleStateEnumArgs and ContactFlowModuleStateEnumOutput values. -// You can construct a concrete instance of `ContactFlowModuleStateEnumInput` via: -// -// ContactFlowModuleStateEnumArgs{...} -type ContactFlowModuleStateEnumInput interface { - pulumi.Input - - ToContactFlowModuleStateEnumOutput() ContactFlowModuleStateEnumOutput - ToContactFlowModuleStateEnumOutputWithContext(context.Context) ContactFlowModuleStateEnumOutput -} - -var contactFlowModuleStateEnumPtrType = reflect.TypeOf((**ContactFlowModuleStateEnum)(nil)).Elem() - -type ContactFlowModuleStateEnumPtrInput interface { - pulumi.Input - - ToContactFlowModuleStateEnumPtrOutput() ContactFlowModuleStateEnumPtrOutput - ToContactFlowModuleStateEnumPtrOutputWithContext(context.Context) ContactFlowModuleStateEnumPtrOutput -} - -type contactFlowModuleStateEnumPtr string - -func ContactFlowModuleStateEnumPtr(v string) ContactFlowModuleStateEnumPtrInput { - return (*contactFlowModuleStateEnumPtr)(&v) -} - -func (*contactFlowModuleStateEnumPtr) ElementType() reflect.Type { - return contactFlowModuleStateEnumPtrType -} - -func (in *contactFlowModuleStateEnumPtr) ToContactFlowModuleStateEnumPtrOutput() ContactFlowModuleStateEnumPtrOutput { - return pulumi.ToOutput(in).(ContactFlowModuleStateEnumPtrOutput) -} - -func (in *contactFlowModuleStateEnumPtr) ToContactFlowModuleStateEnumPtrOutputWithContext(ctx context.Context) ContactFlowModuleStateEnumPtrOutput { - return pulumi.ToOutputWithContext(ctx, in).(ContactFlowModuleStateEnumPtrOutput) -} - -func (in *contactFlowModuleStateEnumPtr) ToOutput(ctx context.Context) pulumix.Output[*ContactFlowModuleStateEnum] { - return pulumix.Output[*ContactFlowModuleStateEnum]{ - OutputState: in.ToContactFlowModuleStateEnumPtrOutputWithContext(ctx).OutputState, - } -} - -// The status of the contact flow module. -type ContactFlowModuleStatus string - -const ( - ContactFlowModuleStatusPublished = ContactFlowModuleStatus("PUBLISHED") - ContactFlowModuleStatusSaved = ContactFlowModuleStatus("SAVED") -) - -type ContactFlowModuleStatusOutput struct{ *pulumi.OutputState } - -func (ContactFlowModuleStatusOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ContactFlowModuleStatus)(nil)).Elem() -} - -func (o ContactFlowModuleStatusOutput) ToContactFlowModuleStatusOutput() ContactFlowModuleStatusOutput { - return o -} - -func (o ContactFlowModuleStatusOutput) ToContactFlowModuleStatusOutputWithContext(ctx context.Context) ContactFlowModuleStatusOutput { - return o -} - -func (o ContactFlowModuleStatusOutput) ToContactFlowModuleStatusPtrOutput() ContactFlowModuleStatusPtrOutput { - return o.ToContactFlowModuleStatusPtrOutputWithContext(context.Background()) -} - -func (o ContactFlowModuleStatusOutput) ToContactFlowModuleStatusPtrOutputWithContext(ctx context.Context) ContactFlowModuleStatusPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v ContactFlowModuleStatus) *ContactFlowModuleStatus { - return &v - }).(ContactFlowModuleStatusPtrOutput) -} - -func (o ContactFlowModuleStatusOutput) ToOutput(ctx context.Context) pulumix.Output[ContactFlowModuleStatus] { - return pulumix.Output[ContactFlowModuleStatus]{ - OutputState: o.OutputState, - } -} - -func (o ContactFlowModuleStatusOutput) ToStringOutput() pulumi.StringOutput { - return o.ToStringOutputWithContext(context.Background()) -} - -func (o ContactFlowModuleStatusOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e ContactFlowModuleStatus) string { - return string(e) - }).(pulumi.StringOutput) -} - -func (o ContactFlowModuleStatusOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o ContactFlowModuleStatusOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e ContactFlowModuleStatus) *string { - v := string(e) - return &v - }).(pulumi.StringPtrOutput) -} - -type ContactFlowModuleStatusPtrOutput struct{ *pulumi.OutputState } - -func (ContactFlowModuleStatusPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ContactFlowModuleStatus)(nil)).Elem() -} - -func (o ContactFlowModuleStatusPtrOutput) ToContactFlowModuleStatusPtrOutput() ContactFlowModuleStatusPtrOutput { - return o -} - -func (o ContactFlowModuleStatusPtrOutput) ToContactFlowModuleStatusPtrOutputWithContext(ctx context.Context) ContactFlowModuleStatusPtrOutput { - return o -} - -func (o ContactFlowModuleStatusPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*ContactFlowModuleStatus] { - return pulumix.Output[*ContactFlowModuleStatus]{ - OutputState: o.OutputState, - } -} - -func (o ContactFlowModuleStatusPtrOutput) Elem() ContactFlowModuleStatusOutput { - return o.ApplyT(func(v *ContactFlowModuleStatus) ContactFlowModuleStatus { - if v != nil { - return *v - } - var ret ContactFlowModuleStatus - return ret - }).(ContactFlowModuleStatusOutput) -} - -func (o ContactFlowModuleStatusPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o ContactFlowModuleStatusPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e *ContactFlowModuleStatus) *string { - if e == nil { - return nil - } - v := string(*e) - return &v - }).(pulumi.StringPtrOutput) -} - // The state of the contact flow. type ContactFlowStateEnum string @@ -5594,8 +5308,6 @@ func (in *userPhoneTypePtr) ToOutput(ctx context.Context) pulumix.Output[*UserPh } func init() { - pulumi.RegisterInputType(reflect.TypeOf((*ContactFlowModuleStateEnumInput)(nil)).Elem(), ContactFlowModuleStateEnum("ACTIVE")) - pulumi.RegisterInputType(reflect.TypeOf((*ContactFlowModuleStateEnumPtrInput)(nil)).Elem(), ContactFlowModuleStateEnum("ACTIVE")) pulumi.RegisterInputType(reflect.TypeOf((*ContactFlowStateEnumInput)(nil)).Elem(), ContactFlowStateEnum("ACTIVE")) pulumi.RegisterInputType(reflect.TypeOf((*ContactFlowStateEnumPtrInput)(nil)).Elem(), ContactFlowStateEnum("ACTIVE")) pulumi.RegisterInputType(reflect.TypeOf((*ContactFlowTypeInput)(nil)).Elem(), ContactFlowType("CONTACT_FLOW")) @@ -5650,10 +5362,6 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*TaskTemplateStatusPtrInput)(nil)).Elem(), TaskTemplateStatus("ACTIVE")) pulumi.RegisterInputType(reflect.TypeOf((*UserPhoneTypeInput)(nil)).Elem(), UserPhoneType("SOFT_PHONE")) pulumi.RegisterInputType(reflect.TypeOf((*UserPhoneTypePtrInput)(nil)).Elem(), UserPhoneType("SOFT_PHONE")) - pulumi.RegisterOutputType(ContactFlowModuleStateEnumOutput{}) - pulumi.RegisterOutputType(ContactFlowModuleStateEnumPtrOutput{}) - pulumi.RegisterOutputType(ContactFlowModuleStatusOutput{}) - pulumi.RegisterOutputType(ContactFlowModuleStatusPtrOutput{}) pulumi.RegisterOutputType(ContactFlowStateEnumOutput{}) pulumi.RegisterOutputType(ContactFlowStateEnumPtrOutput{}) pulumi.RegisterOutputType(ContactFlowTypeOutput{}) diff --git a/sdk/go/aws/customerprofiles/domain.go b/sdk/go/aws/customerprofiles/domain.go index 12274c4437..bf8e34b953 100644 --- a/sdk/go/aws/customerprofiles/domain.go +++ b/sdk/go/aws/customerprofiles/domain.go @@ -27,7 +27,10 @@ type Domain struct { // The unique name of the domain. DomainName pulumi.StringOutput `pulumi:"domainName"` // The time of this integration got last updated at - LastUpdatedAt pulumi.StringOutput `pulumi:"lastUpdatedAt"` + LastUpdatedAt pulumi.StringOutput `pulumi:"lastUpdatedAt"` + Matching DomainMatchingPtrOutput `pulumi:"matching"` + RuleBasedMatching DomainRuleBasedMatchingPtrOutput `pulumi:"ruleBasedMatching"` + Stats DomainStatsOutput `pulumi:"stats"` // The tags (keys and values) associated with the domain Tags DomainTagArrayOutput `pulumi:"tags"` } @@ -83,7 +86,9 @@ type domainArgs struct { // The default number of days until the data within the domain expires. DefaultExpirationDays *int `pulumi:"defaultExpirationDays"` // The unique name of the domain. - DomainName *string `pulumi:"domainName"` + DomainName *string `pulumi:"domainName"` + Matching *DomainMatching `pulumi:"matching"` + RuleBasedMatching *DomainRuleBasedMatching `pulumi:"ruleBasedMatching"` // The tags (keys and values) associated with the domain Tags []DomainTag `pulumi:"tags"` } @@ -97,7 +102,9 @@ type DomainArgs struct { // The default number of days until the data within the domain expires. DefaultExpirationDays pulumi.IntPtrInput // The unique name of the domain. - DomainName pulumi.StringPtrInput + DomainName pulumi.StringPtrInput + Matching DomainMatchingPtrInput + RuleBasedMatching DomainRuleBasedMatchingPtrInput // The tags (keys and values) associated with the domain Tags DomainTagArrayInput } @@ -181,6 +188,18 @@ func (o DomainOutput) LastUpdatedAt() pulumi.StringOutput { return o.ApplyT(func(v *Domain) pulumi.StringOutput { return v.LastUpdatedAt }).(pulumi.StringOutput) } +func (o DomainOutput) Matching() DomainMatchingPtrOutput { + return o.ApplyT(func(v *Domain) DomainMatchingPtrOutput { return v.Matching }).(DomainMatchingPtrOutput) +} + +func (o DomainOutput) RuleBasedMatching() DomainRuleBasedMatchingPtrOutput { + return o.ApplyT(func(v *Domain) DomainRuleBasedMatchingPtrOutput { return v.RuleBasedMatching }).(DomainRuleBasedMatchingPtrOutput) +} + +func (o DomainOutput) Stats() DomainStatsOutput { + return o.ApplyT(func(v *Domain) DomainStatsOutput { return v.Stats }).(DomainStatsOutput) +} + // The tags (keys and values) associated with the domain func (o DomainOutput) Tags() DomainTagArrayOutput { return o.ApplyT(func(v *Domain) DomainTagArrayOutput { return v.Tags }).(DomainTagArrayOutput) diff --git a/sdk/go/aws/customerprofiles/getDomain.go b/sdk/go/aws/customerprofiles/getDomain.go index c6c3ac2553..b3957943b9 100644 --- a/sdk/go/aws/customerprofiles/getDomain.go +++ b/sdk/go/aws/customerprofiles/getDomain.go @@ -38,7 +38,10 @@ type LookupDomainResult struct { // The default number of days until the data within the domain expires. DefaultExpirationDays *int `pulumi:"defaultExpirationDays"` // The time of this integration got last updated at - LastUpdatedAt *string `pulumi:"lastUpdatedAt"` + LastUpdatedAt *string `pulumi:"lastUpdatedAt"` + Matching *DomainMatching `pulumi:"matching"` + RuleBasedMatching *DomainRuleBasedMatching `pulumi:"ruleBasedMatching"` + Stats *DomainStats `pulumi:"stats"` // The tags (keys and values) associated with the domain Tags []DomainTag `pulumi:"tags"` } @@ -110,6 +113,18 @@ func (o LookupDomainResultOutput) LastUpdatedAt() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupDomainResult) *string { return v.LastUpdatedAt }).(pulumi.StringPtrOutput) } +func (o LookupDomainResultOutput) Matching() DomainMatchingPtrOutput { + return o.ApplyT(func(v LookupDomainResult) *DomainMatching { return v.Matching }).(DomainMatchingPtrOutput) +} + +func (o LookupDomainResultOutput) RuleBasedMatching() DomainRuleBasedMatchingPtrOutput { + return o.ApplyT(func(v LookupDomainResult) *DomainRuleBasedMatching { return v.RuleBasedMatching }).(DomainRuleBasedMatchingPtrOutput) +} + +func (o LookupDomainResultOutput) Stats() DomainStatsPtrOutput { + return o.ApplyT(func(v LookupDomainResult) *DomainStats { return v.Stats }).(DomainStatsPtrOutput) +} + // The tags (keys and values) associated with the domain func (o LookupDomainResultOutput) Tags() DomainTagArrayOutput { return o.ApplyT(func(v LookupDomainResult) []DomainTag { return v.Tags }).(DomainTagArrayOutput) diff --git a/sdk/go/aws/customerprofiles/pulumiEnums.go b/sdk/go/aws/customerprofiles/pulumiEnums.go index 5f28287f91..6a2ac161e3 100644 --- a/sdk/go/aws/customerprofiles/pulumiEnums.go +++ b/sdk/go/aws/customerprofiles/pulumiEnums.go @@ -567,6 +567,743 @@ func (in *calculatedAttributeDefinitionThresholdOperatorPtr) ToOutput(ctx contex } } +// Configures the AttributeMatchingModel, you can either choose ONE_TO_ONE or MANY_TO_MANY. +type DomainAttributeTypesSelectorAttributeMatchingModel string + +const ( + DomainAttributeTypesSelectorAttributeMatchingModelOneToOne = DomainAttributeTypesSelectorAttributeMatchingModel("ONE_TO_ONE") + DomainAttributeTypesSelectorAttributeMatchingModelManyToMany = DomainAttributeTypesSelectorAttributeMatchingModel("MANY_TO_MANY") +) + +func (DomainAttributeTypesSelectorAttributeMatchingModel) ElementType() reflect.Type { + return reflect.TypeOf((*DomainAttributeTypesSelectorAttributeMatchingModel)(nil)).Elem() +} + +func (e DomainAttributeTypesSelectorAttributeMatchingModel) ToDomainAttributeTypesSelectorAttributeMatchingModelOutput() DomainAttributeTypesSelectorAttributeMatchingModelOutput { + return pulumi.ToOutput(e).(DomainAttributeTypesSelectorAttributeMatchingModelOutput) +} + +func (e DomainAttributeTypesSelectorAttributeMatchingModel) ToDomainAttributeTypesSelectorAttributeMatchingModelOutputWithContext(ctx context.Context) DomainAttributeTypesSelectorAttributeMatchingModelOutput { + return pulumi.ToOutputWithContext(ctx, e).(DomainAttributeTypesSelectorAttributeMatchingModelOutput) +} + +func (e DomainAttributeTypesSelectorAttributeMatchingModel) ToDomainAttributeTypesSelectorAttributeMatchingModelPtrOutput() DomainAttributeTypesSelectorAttributeMatchingModelPtrOutput { + return e.ToDomainAttributeTypesSelectorAttributeMatchingModelPtrOutputWithContext(context.Background()) +} + +func (e DomainAttributeTypesSelectorAttributeMatchingModel) ToDomainAttributeTypesSelectorAttributeMatchingModelPtrOutputWithContext(ctx context.Context) DomainAttributeTypesSelectorAttributeMatchingModelPtrOutput { + return DomainAttributeTypesSelectorAttributeMatchingModel(e).ToDomainAttributeTypesSelectorAttributeMatchingModelOutputWithContext(ctx).ToDomainAttributeTypesSelectorAttributeMatchingModelPtrOutputWithContext(ctx) +} + +func (e DomainAttributeTypesSelectorAttributeMatchingModel) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e DomainAttributeTypesSelectorAttributeMatchingModel) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e DomainAttributeTypesSelectorAttributeMatchingModel) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e DomainAttributeTypesSelectorAttributeMatchingModel) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type DomainAttributeTypesSelectorAttributeMatchingModelOutput struct{ *pulumi.OutputState } + +func (DomainAttributeTypesSelectorAttributeMatchingModelOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DomainAttributeTypesSelectorAttributeMatchingModel)(nil)).Elem() +} + +func (o DomainAttributeTypesSelectorAttributeMatchingModelOutput) ToDomainAttributeTypesSelectorAttributeMatchingModelOutput() DomainAttributeTypesSelectorAttributeMatchingModelOutput { + return o +} + +func (o DomainAttributeTypesSelectorAttributeMatchingModelOutput) ToDomainAttributeTypesSelectorAttributeMatchingModelOutputWithContext(ctx context.Context) DomainAttributeTypesSelectorAttributeMatchingModelOutput { + return o +} + +func (o DomainAttributeTypesSelectorAttributeMatchingModelOutput) ToDomainAttributeTypesSelectorAttributeMatchingModelPtrOutput() DomainAttributeTypesSelectorAttributeMatchingModelPtrOutput { + return o.ToDomainAttributeTypesSelectorAttributeMatchingModelPtrOutputWithContext(context.Background()) +} + +func (o DomainAttributeTypesSelectorAttributeMatchingModelOutput) ToDomainAttributeTypesSelectorAttributeMatchingModelPtrOutputWithContext(ctx context.Context) DomainAttributeTypesSelectorAttributeMatchingModelPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DomainAttributeTypesSelectorAttributeMatchingModel) *DomainAttributeTypesSelectorAttributeMatchingModel { + return &v + }).(DomainAttributeTypesSelectorAttributeMatchingModelPtrOutput) +} + +func (o DomainAttributeTypesSelectorAttributeMatchingModelOutput) ToOutput(ctx context.Context) pulumix.Output[DomainAttributeTypesSelectorAttributeMatchingModel] { + return pulumix.Output[DomainAttributeTypesSelectorAttributeMatchingModel]{ + OutputState: o.OutputState, + } +} + +func (o DomainAttributeTypesSelectorAttributeMatchingModelOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o DomainAttributeTypesSelectorAttributeMatchingModelOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e DomainAttributeTypesSelectorAttributeMatchingModel) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o DomainAttributeTypesSelectorAttributeMatchingModelOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o DomainAttributeTypesSelectorAttributeMatchingModelOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e DomainAttributeTypesSelectorAttributeMatchingModel) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type DomainAttributeTypesSelectorAttributeMatchingModelPtrOutput struct{ *pulumi.OutputState } + +func (DomainAttributeTypesSelectorAttributeMatchingModelPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DomainAttributeTypesSelectorAttributeMatchingModel)(nil)).Elem() +} + +func (o DomainAttributeTypesSelectorAttributeMatchingModelPtrOutput) ToDomainAttributeTypesSelectorAttributeMatchingModelPtrOutput() DomainAttributeTypesSelectorAttributeMatchingModelPtrOutput { + return o +} + +func (o DomainAttributeTypesSelectorAttributeMatchingModelPtrOutput) ToDomainAttributeTypesSelectorAttributeMatchingModelPtrOutputWithContext(ctx context.Context) DomainAttributeTypesSelectorAttributeMatchingModelPtrOutput { + return o +} + +func (o DomainAttributeTypesSelectorAttributeMatchingModelPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*DomainAttributeTypesSelectorAttributeMatchingModel] { + return pulumix.Output[*DomainAttributeTypesSelectorAttributeMatchingModel]{ + OutputState: o.OutputState, + } +} + +func (o DomainAttributeTypesSelectorAttributeMatchingModelPtrOutput) Elem() DomainAttributeTypesSelectorAttributeMatchingModelOutput { + return o.ApplyT(func(v *DomainAttributeTypesSelectorAttributeMatchingModel) DomainAttributeTypesSelectorAttributeMatchingModel { + if v != nil { + return *v + } + var ret DomainAttributeTypesSelectorAttributeMatchingModel + return ret + }).(DomainAttributeTypesSelectorAttributeMatchingModelOutput) +} + +func (o DomainAttributeTypesSelectorAttributeMatchingModelPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o DomainAttributeTypesSelectorAttributeMatchingModelPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *DomainAttributeTypesSelectorAttributeMatchingModel) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// DomainAttributeTypesSelectorAttributeMatchingModelInput is an input type that accepts DomainAttributeTypesSelectorAttributeMatchingModelArgs and DomainAttributeTypesSelectorAttributeMatchingModelOutput values. +// You can construct a concrete instance of `DomainAttributeTypesSelectorAttributeMatchingModelInput` via: +// +// DomainAttributeTypesSelectorAttributeMatchingModelArgs{...} +type DomainAttributeTypesSelectorAttributeMatchingModelInput interface { + pulumi.Input + + ToDomainAttributeTypesSelectorAttributeMatchingModelOutput() DomainAttributeTypesSelectorAttributeMatchingModelOutput + ToDomainAttributeTypesSelectorAttributeMatchingModelOutputWithContext(context.Context) DomainAttributeTypesSelectorAttributeMatchingModelOutput +} + +var domainAttributeTypesSelectorAttributeMatchingModelPtrType = reflect.TypeOf((**DomainAttributeTypesSelectorAttributeMatchingModel)(nil)).Elem() + +type DomainAttributeTypesSelectorAttributeMatchingModelPtrInput interface { + pulumi.Input + + ToDomainAttributeTypesSelectorAttributeMatchingModelPtrOutput() DomainAttributeTypesSelectorAttributeMatchingModelPtrOutput + ToDomainAttributeTypesSelectorAttributeMatchingModelPtrOutputWithContext(context.Context) DomainAttributeTypesSelectorAttributeMatchingModelPtrOutput +} + +type domainAttributeTypesSelectorAttributeMatchingModelPtr string + +func DomainAttributeTypesSelectorAttributeMatchingModelPtr(v string) DomainAttributeTypesSelectorAttributeMatchingModelPtrInput { + return (*domainAttributeTypesSelectorAttributeMatchingModelPtr)(&v) +} + +func (*domainAttributeTypesSelectorAttributeMatchingModelPtr) ElementType() reflect.Type { + return domainAttributeTypesSelectorAttributeMatchingModelPtrType +} + +func (in *domainAttributeTypesSelectorAttributeMatchingModelPtr) ToDomainAttributeTypesSelectorAttributeMatchingModelPtrOutput() DomainAttributeTypesSelectorAttributeMatchingModelPtrOutput { + return pulumi.ToOutput(in).(DomainAttributeTypesSelectorAttributeMatchingModelPtrOutput) +} + +func (in *domainAttributeTypesSelectorAttributeMatchingModelPtr) ToDomainAttributeTypesSelectorAttributeMatchingModelPtrOutputWithContext(ctx context.Context) DomainAttributeTypesSelectorAttributeMatchingModelPtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(DomainAttributeTypesSelectorAttributeMatchingModelPtrOutput) +} + +func (in *domainAttributeTypesSelectorAttributeMatchingModelPtr) ToOutput(ctx context.Context) pulumix.Output[*DomainAttributeTypesSelectorAttributeMatchingModel] { + return pulumix.Output[*DomainAttributeTypesSelectorAttributeMatchingModel]{ + OutputState: in.ToDomainAttributeTypesSelectorAttributeMatchingModelPtrOutputWithContext(ctx).OutputState, + } +} + +// How the auto-merging process should resolve conflicts between different profiles. +type DomainConflictResolutionConflictResolvingModel string + +const ( + DomainConflictResolutionConflictResolvingModelRecency = DomainConflictResolutionConflictResolvingModel("RECENCY") + DomainConflictResolutionConflictResolvingModelSource = DomainConflictResolutionConflictResolvingModel("SOURCE") +) + +func (DomainConflictResolutionConflictResolvingModel) ElementType() reflect.Type { + return reflect.TypeOf((*DomainConflictResolutionConflictResolvingModel)(nil)).Elem() +} + +func (e DomainConflictResolutionConflictResolvingModel) ToDomainConflictResolutionConflictResolvingModelOutput() DomainConflictResolutionConflictResolvingModelOutput { + return pulumi.ToOutput(e).(DomainConflictResolutionConflictResolvingModelOutput) +} + +func (e DomainConflictResolutionConflictResolvingModel) ToDomainConflictResolutionConflictResolvingModelOutputWithContext(ctx context.Context) DomainConflictResolutionConflictResolvingModelOutput { + return pulumi.ToOutputWithContext(ctx, e).(DomainConflictResolutionConflictResolvingModelOutput) +} + +func (e DomainConflictResolutionConflictResolvingModel) ToDomainConflictResolutionConflictResolvingModelPtrOutput() DomainConflictResolutionConflictResolvingModelPtrOutput { + return e.ToDomainConflictResolutionConflictResolvingModelPtrOutputWithContext(context.Background()) +} + +func (e DomainConflictResolutionConflictResolvingModel) ToDomainConflictResolutionConflictResolvingModelPtrOutputWithContext(ctx context.Context) DomainConflictResolutionConflictResolvingModelPtrOutput { + return DomainConflictResolutionConflictResolvingModel(e).ToDomainConflictResolutionConflictResolvingModelOutputWithContext(ctx).ToDomainConflictResolutionConflictResolvingModelPtrOutputWithContext(ctx) +} + +func (e DomainConflictResolutionConflictResolvingModel) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e DomainConflictResolutionConflictResolvingModel) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e DomainConflictResolutionConflictResolvingModel) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e DomainConflictResolutionConflictResolvingModel) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type DomainConflictResolutionConflictResolvingModelOutput struct{ *pulumi.OutputState } + +func (DomainConflictResolutionConflictResolvingModelOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DomainConflictResolutionConflictResolvingModel)(nil)).Elem() +} + +func (o DomainConflictResolutionConflictResolvingModelOutput) ToDomainConflictResolutionConflictResolvingModelOutput() DomainConflictResolutionConflictResolvingModelOutput { + return o +} + +func (o DomainConflictResolutionConflictResolvingModelOutput) ToDomainConflictResolutionConflictResolvingModelOutputWithContext(ctx context.Context) DomainConflictResolutionConflictResolvingModelOutput { + return o +} + +func (o DomainConflictResolutionConflictResolvingModelOutput) ToDomainConflictResolutionConflictResolvingModelPtrOutput() DomainConflictResolutionConflictResolvingModelPtrOutput { + return o.ToDomainConflictResolutionConflictResolvingModelPtrOutputWithContext(context.Background()) +} + +func (o DomainConflictResolutionConflictResolvingModelOutput) ToDomainConflictResolutionConflictResolvingModelPtrOutputWithContext(ctx context.Context) DomainConflictResolutionConflictResolvingModelPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DomainConflictResolutionConflictResolvingModel) *DomainConflictResolutionConflictResolvingModel { + return &v + }).(DomainConflictResolutionConflictResolvingModelPtrOutput) +} + +func (o DomainConflictResolutionConflictResolvingModelOutput) ToOutput(ctx context.Context) pulumix.Output[DomainConflictResolutionConflictResolvingModel] { + return pulumix.Output[DomainConflictResolutionConflictResolvingModel]{ + OutputState: o.OutputState, + } +} + +func (o DomainConflictResolutionConflictResolvingModelOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o DomainConflictResolutionConflictResolvingModelOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e DomainConflictResolutionConflictResolvingModel) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o DomainConflictResolutionConflictResolvingModelOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o DomainConflictResolutionConflictResolvingModelOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e DomainConflictResolutionConflictResolvingModel) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type DomainConflictResolutionConflictResolvingModelPtrOutput struct{ *pulumi.OutputState } + +func (DomainConflictResolutionConflictResolvingModelPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DomainConflictResolutionConflictResolvingModel)(nil)).Elem() +} + +func (o DomainConflictResolutionConflictResolvingModelPtrOutput) ToDomainConflictResolutionConflictResolvingModelPtrOutput() DomainConflictResolutionConflictResolvingModelPtrOutput { + return o +} + +func (o DomainConflictResolutionConflictResolvingModelPtrOutput) ToDomainConflictResolutionConflictResolvingModelPtrOutputWithContext(ctx context.Context) DomainConflictResolutionConflictResolvingModelPtrOutput { + return o +} + +func (o DomainConflictResolutionConflictResolvingModelPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*DomainConflictResolutionConflictResolvingModel] { + return pulumix.Output[*DomainConflictResolutionConflictResolvingModel]{ + OutputState: o.OutputState, + } +} + +func (o DomainConflictResolutionConflictResolvingModelPtrOutput) Elem() DomainConflictResolutionConflictResolvingModelOutput { + return o.ApplyT(func(v *DomainConflictResolutionConflictResolvingModel) DomainConflictResolutionConflictResolvingModel { + if v != nil { + return *v + } + var ret DomainConflictResolutionConflictResolvingModel + return ret + }).(DomainConflictResolutionConflictResolvingModelOutput) +} + +func (o DomainConflictResolutionConflictResolvingModelPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o DomainConflictResolutionConflictResolvingModelPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *DomainConflictResolutionConflictResolvingModel) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// DomainConflictResolutionConflictResolvingModelInput is an input type that accepts DomainConflictResolutionConflictResolvingModelArgs and DomainConflictResolutionConflictResolvingModelOutput values. +// You can construct a concrete instance of `DomainConflictResolutionConflictResolvingModelInput` via: +// +// DomainConflictResolutionConflictResolvingModelArgs{...} +type DomainConflictResolutionConflictResolvingModelInput interface { + pulumi.Input + + ToDomainConflictResolutionConflictResolvingModelOutput() DomainConflictResolutionConflictResolvingModelOutput + ToDomainConflictResolutionConflictResolvingModelOutputWithContext(context.Context) DomainConflictResolutionConflictResolvingModelOutput +} + +var domainConflictResolutionConflictResolvingModelPtrType = reflect.TypeOf((**DomainConflictResolutionConflictResolvingModel)(nil)).Elem() + +type DomainConflictResolutionConflictResolvingModelPtrInput interface { + pulumi.Input + + ToDomainConflictResolutionConflictResolvingModelPtrOutput() DomainConflictResolutionConflictResolvingModelPtrOutput + ToDomainConflictResolutionConflictResolvingModelPtrOutputWithContext(context.Context) DomainConflictResolutionConflictResolvingModelPtrOutput +} + +type domainConflictResolutionConflictResolvingModelPtr string + +func DomainConflictResolutionConflictResolvingModelPtr(v string) DomainConflictResolutionConflictResolvingModelPtrInput { + return (*domainConflictResolutionConflictResolvingModelPtr)(&v) +} + +func (*domainConflictResolutionConflictResolvingModelPtr) ElementType() reflect.Type { + return domainConflictResolutionConflictResolvingModelPtrType +} + +func (in *domainConflictResolutionConflictResolvingModelPtr) ToDomainConflictResolutionConflictResolvingModelPtrOutput() DomainConflictResolutionConflictResolvingModelPtrOutput { + return pulumi.ToOutput(in).(DomainConflictResolutionConflictResolvingModelPtrOutput) +} + +func (in *domainConflictResolutionConflictResolvingModelPtr) ToDomainConflictResolutionConflictResolvingModelPtrOutputWithContext(ctx context.Context) DomainConflictResolutionConflictResolvingModelPtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(DomainConflictResolutionConflictResolvingModelPtrOutput) +} + +func (in *domainConflictResolutionConflictResolvingModelPtr) ToOutput(ctx context.Context) pulumix.Output[*DomainConflictResolutionConflictResolvingModel] { + return pulumix.Output[*DomainConflictResolutionConflictResolvingModel]{ + OutputState: in.ToDomainConflictResolutionConflictResolvingModelPtrOutputWithContext(ctx).OutputState, + } +} + +// The day when the Identity Resolution Job should run every week. +type DomainJobScheduleDayOfTheWeek string + +const ( + DomainJobScheduleDayOfTheWeekSunday = DomainJobScheduleDayOfTheWeek("SUNDAY") + DomainJobScheduleDayOfTheWeekMonday = DomainJobScheduleDayOfTheWeek("MONDAY") + DomainJobScheduleDayOfTheWeekTuesday = DomainJobScheduleDayOfTheWeek("TUESDAY") + DomainJobScheduleDayOfTheWeekWednesday = DomainJobScheduleDayOfTheWeek("WEDNESDAY") + DomainJobScheduleDayOfTheWeekThursday = DomainJobScheduleDayOfTheWeek("THURSDAY") + DomainJobScheduleDayOfTheWeekFriday = DomainJobScheduleDayOfTheWeek("FRIDAY") + DomainJobScheduleDayOfTheWeekSaturday = DomainJobScheduleDayOfTheWeek("SATURDAY") +) + +func (DomainJobScheduleDayOfTheWeek) ElementType() reflect.Type { + return reflect.TypeOf((*DomainJobScheduleDayOfTheWeek)(nil)).Elem() +} + +func (e DomainJobScheduleDayOfTheWeek) ToDomainJobScheduleDayOfTheWeekOutput() DomainJobScheduleDayOfTheWeekOutput { + return pulumi.ToOutput(e).(DomainJobScheduleDayOfTheWeekOutput) +} + +func (e DomainJobScheduleDayOfTheWeek) ToDomainJobScheduleDayOfTheWeekOutputWithContext(ctx context.Context) DomainJobScheduleDayOfTheWeekOutput { + return pulumi.ToOutputWithContext(ctx, e).(DomainJobScheduleDayOfTheWeekOutput) +} + +func (e DomainJobScheduleDayOfTheWeek) ToDomainJobScheduleDayOfTheWeekPtrOutput() DomainJobScheduleDayOfTheWeekPtrOutput { + return e.ToDomainJobScheduleDayOfTheWeekPtrOutputWithContext(context.Background()) +} + +func (e DomainJobScheduleDayOfTheWeek) ToDomainJobScheduleDayOfTheWeekPtrOutputWithContext(ctx context.Context) DomainJobScheduleDayOfTheWeekPtrOutput { + return DomainJobScheduleDayOfTheWeek(e).ToDomainJobScheduleDayOfTheWeekOutputWithContext(ctx).ToDomainJobScheduleDayOfTheWeekPtrOutputWithContext(ctx) +} + +func (e DomainJobScheduleDayOfTheWeek) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e DomainJobScheduleDayOfTheWeek) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e DomainJobScheduleDayOfTheWeek) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e DomainJobScheduleDayOfTheWeek) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type DomainJobScheduleDayOfTheWeekOutput struct{ *pulumi.OutputState } + +func (DomainJobScheduleDayOfTheWeekOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DomainJobScheduleDayOfTheWeek)(nil)).Elem() +} + +func (o DomainJobScheduleDayOfTheWeekOutput) ToDomainJobScheduleDayOfTheWeekOutput() DomainJobScheduleDayOfTheWeekOutput { + return o +} + +func (o DomainJobScheduleDayOfTheWeekOutput) ToDomainJobScheduleDayOfTheWeekOutputWithContext(ctx context.Context) DomainJobScheduleDayOfTheWeekOutput { + return o +} + +func (o DomainJobScheduleDayOfTheWeekOutput) ToDomainJobScheduleDayOfTheWeekPtrOutput() DomainJobScheduleDayOfTheWeekPtrOutput { + return o.ToDomainJobScheduleDayOfTheWeekPtrOutputWithContext(context.Background()) +} + +func (o DomainJobScheduleDayOfTheWeekOutput) ToDomainJobScheduleDayOfTheWeekPtrOutputWithContext(ctx context.Context) DomainJobScheduleDayOfTheWeekPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DomainJobScheduleDayOfTheWeek) *DomainJobScheduleDayOfTheWeek { + return &v + }).(DomainJobScheduleDayOfTheWeekPtrOutput) +} + +func (o DomainJobScheduleDayOfTheWeekOutput) ToOutput(ctx context.Context) pulumix.Output[DomainJobScheduleDayOfTheWeek] { + return pulumix.Output[DomainJobScheduleDayOfTheWeek]{ + OutputState: o.OutputState, + } +} + +func (o DomainJobScheduleDayOfTheWeekOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o DomainJobScheduleDayOfTheWeekOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e DomainJobScheduleDayOfTheWeek) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o DomainJobScheduleDayOfTheWeekOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o DomainJobScheduleDayOfTheWeekOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e DomainJobScheduleDayOfTheWeek) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type DomainJobScheduleDayOfTheWeekPtrOutput struct{ *pulumi.OutputState } + +func (DomainJobScheduleDayOfTheWeekPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DomainJobScheduleDayOfTheWeek)(nil)).Elem() +} + +func (o DomainJobScheduleDayOfTheWeekPtrOutput) ToDomainJobScheduleDayOfTheWeekPtrOutput() DomainJobScheduleDayOfTheWeekPtrOutput { + return o +} + +func (o DomainJobScheduleDayOfTheWeekPtrOutput) ToDomainJobScheduleDayOfTheWeekPtrOutputWithContext(ctx context.Context) DomainJobScheduleDayOfTheWeekPtrOutput { + return o +} + +func (o DomainJobScheduleDayOfTheWeekPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*DomainJobScheduleDayOfTheWeek] { + return pulumix.Output[*DomainJobScheduleDayOfTheWeek]{ + OutputState: o.OutputState, + } +} + +func (o DomainJobScheduleDayOfTheWeekPtrOutput) Elem() DomainJobScheduleDayOfTheWeekOutput { + return o.ApplyT(func(v *DomainJobScheduleDayOfTheWeek) DomainJobScheduleDayOfTheWeek { + if v != nil { + return *v + } + var ret DomainJobScheduleDayOfTheWeek + return ret + }).(DomainJobScheduleDayOfTheWeekOutput) +} + +func (o DomainJobScheduleDayOfTheWeekPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o DomainJobScheduleDayOfTheWeekPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *DomainJobScheduleDayOfTheWeek) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// DomainJobScheduleDayOfTheWeekInput is an input type that accepts DomainJobScheduleDayOfTheWeekArgs and DomainJobScheduleDayOfTheWeekOutput values. +// You can construct a concrete instance of `DomainJobScheduleDayOfTheWeekInput` via: +// +// DomainJobScheduleDayOfTheWeekArgs{...} +type DomainJobScheduleDayOfTheWeekInput interface { + pulumi.Input + + ToDomainJobScheduleDayOfTheWeekOutput() DomainJobScheduleDayOfTheWeekOutput + ToDomainJobScheduleDayOfTheWeekOutputWithContext(context.Context) DomainJobScheduleDayOfTheWeekOutput +} + +var domainJobScheduleDayOfTheWeekPtrType = reflect.TypeOf((**DomainJobScheduleDayOfTheWeek)(nil)).Elem() + +type DomainJobScheduleDayOfTheWeekPtrInput interface { + pulumi.Input + + ToDomainJobScheduleDayOfTheWeekPtrOutput() DomainJobScheduleDayOfTheWeekPtrOutput + ToDomainJobScheduleDayOfTheWeekPtrOutputWithContext(context.Context) DomainJobScheduleDayOfTheWeekPtrOutput +} + +type domainJobScheduleDayOfTheWeekPtr string + +func DomainJobScheduleDayOfTheWeekPtr(v string) DomainJobScheduleDayOfTheWeekPtrInput { + return (*domainJobScheduleDayOfTheWeekPtr)(&v) +} + +func (*domainJobScheduleDayOfTheWeekPtr) ElementType() reflect.Type { + return domainJobScheduleDayOfTheWeekPtrType +} + +func (in *domainJobScheduleDayOfTheWeekPtr) ToDomainJobScheduleDayOfTheWeekPtrOutput() DomainJobScheduleDayOfTheWeekPtrOutput { + return pulumi.ToOutput(in).(DomainJobScheduleDayOfTheWeekPtrOutput) +} + +func (in *domainJobScheduleDayOfTheWeekPtr) ToDomainJobScheduleDayOfTheWeekPtrOutputWithContext(ctx context.Context) DomainJobScheduleDayOfTheWeekPtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(DomainJobScheduleDayOfTheWeekPtrOutput) +} + +func (in *domainJobScheduleDayOfTheWeekPtr) ToOutput(ctx context.Context) pulumix.Output[*DomainJobScheduleDayOfTheWeek] { + return pulumix.Output[*DomainJobScheduleDayOfTheWeek]{ + OutputState: in.ToDomainJobScheduleDayOfTheWeekPtrOutputWithContext(ctx).OutputState, + } +} + +type DomainRuleBasedMatchingStatus string + +const ( + DomainRuleBasedMatchingStatusPending = DomainRuleBasedMatchingStatus("PENDING") + DomainRuleBasedMatchingStatusInProgress = DomainRuleBasedMatchingStatus("IN_PROGRESS") + DomainRuleBasedMatchingStatusActive = DomainRuleBasedMatchingStatus("ACTIVE") +) + +func (DomainRuleBasedMatchingStatus) ElementType() reflect.Type { + return reflect.TypeOf((*DomainRuleBasedMatchingStatus)(nil)).Elem() +} + +func (e DomainRuleBasedMatchingStatus) ToDomainRuleBasedMatchingStatusOutput() DomainRuleBasedMatchingStatusOutput { + return pulumi.ToOutput(e).(DomainRuleBasedMatchingStatusOutput) +} + +func (e DomainRuleBasedMatchingStatus) ToDomainRuleBasedMatchingStatusOutputWithContext(ctx context.Context) DomainRuleBasedMatchingStatusOutput { + return pulumi.ToOutputWithContext(ctx, e).(DomainRuleBasedMatchingStatusOutput) +} + +func (e DomainRuleBasedMatchingStatus) ToDomainRuleBasedMatchingStatusPtrOutput() DomainRuleBasedMatchingStatusPtrOutput { + return e.ToDomainRuleBasedMatchingStatusPtrOutputWithContext(context.Background()) +} + +func (e DomainRuleBasedMatchingStatus) ToDomainRuleBasedMatchingStatusPtrOutputWithContext(ctx context.Context) DomainRuleBasedMatchingStatusPtrOutput { + return DomainRuleBasedMatchingStatus(e).ToDomainRuleBasedMatchingStatusOutputWithContext(ctx).ToDomainRuleBasedMatchingStatusPtrOutputWithContext(ctx) +} + +func (e DomainRuleBasedMatchingStatus) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e DomainRuleBasedMatchingStatus) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e DomainRuleBasedMatchingStatus) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e DomainRuleBasedMatchingStatus) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type DomainRuleBasedMatchingStatusOutput struct{ *pulumi.OutputState } + +func (DomainRuleBasedMatchingStatusOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DomainRuleBasedMatchingStatus)(nil)).Elem() +} + +func (o DomainRuleBasedMatchingStatusOutput) ToDomainRuleBasedMatchingStatusOutput() DomainRuleBasedMatchingStatusOutput { + return o +} + +func (o DomainRuleBasedMatchingStatusOutput) ToDomainRuleBasedMatchingStatusOutputWithContext(ctx context.Context) DomainRuleBasedMatchingStatusOutput { + return o +} + +func (o DomainRuleBasedMatchingStatusOutput) ToDomainRuleBasedMatchingStatusPtrOutput() DomainRuleBasedMatchingStatusPtrOutput { + return o.ToDomainRuleBasedMatchingStatusPtrOutputWithContext(context.Background()) +} + +func (o DomainRuleBasedMatchingStatusOutput) ToDomainRuleBasedMatchingStatusPtrOutputWithContext(ctx context.Context) DomainRuleBasedMatchingStatusPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DomainRuleBasedMatchingStatus) *DomainRuleBasedMatchingStatus { + return &v + }).(DomainRuleBasedMatchingStatusPtrOutput) +} + +func (o DomainRuleBasedMatchingStatusOutput) ToOutput(ctx context.Context) pulumix.Output[DomainRuleBasedMatchingStatus] { + return pulumix.Output[DomainRuleBasedMatchingStatus]{ + OutputState: o.OutputState, + } +} + +func (o DomainRuleBasedMatchingStatusOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o DomainRuleBasedMatchingStatusOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e DomainRuleBasedMatchingStatus) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o DomainRuleBasedMatchingStatusOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o DomainRuleBasedMatchingStatusOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e DomainRuleBasedMatchingStatus) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type DomainRuleBasedMatchingStatusPtrOutput struct{ *pulumi.OutputState } + +func (DomainRuleBasedMatchingStatusPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DomainRuleBasedMatchingStatus)(nil)).Elem() +} + +func (o DomainRuleBasedMatchingStatusPtrOutput) ToDomainRuleBasedMatchingStatusPtrOutput() DomainRuleBasedMatchingStatusPtrOutput { + return o +} + +func (o DomainRuleBasedMatchingStatusPtrOutput) ToDomainRuleBasedMatchingStatusPtrOutputWithContext(ctx context.Context) DomainRuleBasedMatchingStatusPtrOutput { + return o +} + +func (o DomainRuleBasedMatchingStatusPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*DomainRuleBasedMatchingStatus] { + return pulumix.Output[*DomainRuleBasedMatchingStatus]{ + OutputState: o.OutputState, + } +} + +func (o DomainRuleBasedMatchingStatusPtrOutput) Elem() DomainRuleBasedMatchingStatusOutput { + return o.ApplyT(func(v *DomainRuleBasedMatchingStatus) DomainRuleBasedMatchingStatus { + if v != nil { + return *v + } + var ret DomainRuleBasedMatchingStatus + return ret + }).(DomainRuleBasedMatchingStatusOutput) +} + +func (o DomainRuleBasedMatchingStatusPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o DomainRuleBasedMatchingStatusPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *DomainRuleBasedMatchingStatus) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// DomainRuleBasedMatchingStatusInput is an input type that accepts DomainRuleBasedMatchingStatusArgs and DomainRuleBasedMatchingStatusOutput values. +// You can construct a concrete instance of `DomainRuleBasedMatchingStatusInput` via: +// +// DomainRuleBasedMatchingStatusArgs{...} +type DomainRuleBasedMatchingStatusInput interface { + pulumi.Input + + ToDomainRuleBasedMatchingStatusOutput() DomainRuleBasedMatchingStatusOutput + ToDomainRuleBasedMatchingStatusOutputWithContext(context.Context) DomainRuleBasedMatchingStatusOutput +} + +var domainRuleBasedMatchingStatusPtrType = reflect.TypeOf((**DomainRuleBasedMatchingStatus)(nil)).Elem() + +type DomainRuleBasedMatchingStatusPtrInput interface { + pulumi.Input + + ToDomainRuleBasedMatchingStatusPtrOutput() DomainRuleBasedMatchingStatusPtrOutput + ToDomainRuleBasedMatchingStatusPtrOutputWithContext(context.Context) DomainRuleBasedMatchingStatusPtrOutput +} + +type domainRuleBasedMatchingStatusPtr string + +func DomainRuleBasedMatchingStatusPtr(v string) DomainRuleBasedMatchingStatusPtrInput { + return (*domainRuleBasedMatchingStatusPtr)(&v) +} + +func (*domainRuleBasedMatchingStatusPtr) ElementType() reflect.Type { + return domainRuleBasedMatchingStatusPtrType +} + +func (in *domainRuleBasedMatchingStatusPtr) ToDomainRuleBasedMatchingStatusPtrOutput() DomainRuleBasedMatchingStatusPtrOutput { + return pulumi.ToOutput(in).(DomainRuleBasedMatchingStatusPtrOutput) +} + +func (in *domainRuleBasedMatchingStatusPtr) ToDomainRuleBasedMatchingStatusPtrOutputWithContext(ctx context.Context) DomainRuleBasedMatchingStatusPtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(DomainRuleBasedMatchingStatusPtrOutput) +} + +func (in *domainRuleBasedMatchingStatusPtr) ToOutput(ctx context.Context) pulumix.Output[*DomainRuleBasedMatchingStatus] { + return pulumix.Output[*DomainRuleBasedMatchingStatus]{ + OutputState: in.ToDomainRuleBasedMatchingStatusPtrOutputWithContext(ctx).OutputState, + } +} + // The operational state of destination stream for export. type EventStreamStateEnum string @@ -3134,6 +3871,14 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*CalculatedAttributeDefinitionStatisticPtrInput)(nil)).Elem(), CalculatedAttributeDefinitionStatistic("FIRST_OCCURRENCE")) pulumi.RegisterInputType(reflect.TypeOf((*CalculatedAttributeDefinitionThresholdOperatorInput)(nil)).Elem(), CalculatedAttributeDefinitionThresholdOperator("EQUAL_TO")) pulumi.RegisterInputType(reflect.TypeOf((*CalculatedAttributeDefinitionThresholdOperatorPtrInput)(nil)).Elem(), CalculatedAttributeDefinitionThresholdOperator("EQUAL_TO")) + pulumi.RegisterInputType(reflect.TypeOf((*DomainAttributeTypesSelectorAttributeMatchingModelInput)(nil)).Elem(), DomainAttributeTypesSelectorAttributeMatchingModel("ONE_TO_ONE")) + pulumi.RegisterInputType(reflect.TypeOf((*DomainAttributeTypesSelectorAttributeMatchingModelPtrInput)(nil)).Elem(), DomainAttributeTypesSelectorAttributeMatchingModel("ONE_TO_ONE")) + pulumi.RegisterInputType(reflect.TypeOf((*DomainConflictResolutionConflictResolvingModelInput)(nil)).Elem(), DomainConflictResolutionConflictResolvingModel("RECENCY")) + pulumi.RegisterInputType(reflect.TypeOf((*DomainConflictResolutionConflictResolvingModelPtrInput)(nil)).Elem(), DomainConflictResolutionConflictResolvingModel("RECENCY")) + pulumi.RegisterInputType(reflect.TypeOf((*DomainJobScheduleDayOfTheWeekInput)(nil)).Elem(), DomainJobScheduleDayOfTheWeek("SUNDAY")) + pulumi.RegisterInputType(reflect.TypeOf((*DomainJobScheduleDayOfTheWeekPtrInput)(nil)).Elem(), DomainJobScheduleDayOfTheWeek("SUNDAY")) + pulumi.RegisterInputType(reflect.TypeOf((*DomainRuleBasedMatchingStatusInput)(nil)).Elem(), DomainRuleBasedMatchingStatus("PENDING")) + pulumi.RegisterInputType(reflect.TypeOf((*DomainRuleBasedMatchingStatusPtrInput)(nil)).Elem(), DomainRuleBasedMatchingStatus("PENDING")) pulumi.RegisterInputType(reflect.TypeOf((*IntegrationConnectorTypeInput)(nil)).Elem(), IntegrationConnectorType("Salesforce")) pulumi.RegisterInputType(reflect.TypeOf((*IntegrationConnectorTypePtrInput)(nil)).Elem(), IntegrationConnectorType("Salesforce")) pulumi.RegisterInputType(reflect.TypeOf((*IntegrationMarketoConnectorOperatorInput)(nil)).Elem(), IntegrationMarketoConnectorOperator("PROJECTION")) @@ -3165,6 +3910,14 @@ func init() { pulumi.RegisterOutputType(CalculatedAttributeDefinitionStatisticPtrOutput{}) pulumi.RegisterOutputType(CalculatedAttributeDefinitionThresholdOperatorOutput{}) pulumi.RegisterOutputType(CalculatedAttributeDefinitionThresholdOperatorPtrOutput{}) + pulumi.RegisterOutputType(DomainAttributeTypesSelectorAttributeMatchingModelOutput{}) + pulumi.RegisterOutputType(DomainAttributeTypesSelectorAttributeMatchingModelPtrOutput{}) + pulumi.RegisterOutputType(DomainConflictResolutionConflictResolvingModelOutput{}) + pulumi.RegisterOutputType(DomainConflictResolutionConflictResolvingModelPtrOutput{}) + pulumi.RegisterOutputType(DomainJobScheduleDayOfTheWeekOutput{}) + pulumi.RegisterOutputType(DomainJobScheduleDayOfTheWeekPtrOutput{}) + pulumi.RegisterOutputType(DomainRuleBasedMatchingStatusOutput{}) + pulumi.RegisterOutputType(DomainRuleBasedMatchingStatusPtrOutput{}) pulumi.RegisterOutputType(EventStreamStateEnumOutput{}) pulumi.RegisterOutputType(EventStreamStateEnumPtrOutput{}) pulumi.RegisterOutputType(EventStreamStatusOutput{}) diff --git a/sdk/go/aws/customerprofiles/pulumiTypes.go b/sdk/go/aws/customerprofiles/pulumiTypes.go index 49492a1fcd..eaf9312bc8 100644 --- a/sdk/go/aws/customerprofiles/pulumiTypes.go +++ b/sdk/go/aws/customerprofiles/pulumiTypes.go @@ -1015,6 +1015,2051 @@ func (o DestinationDetailsPropertiesPtrOutput) Uri() pulumi.StringPtrOutput { }).(pulumi.StringPtrOutput) } +// Configures information about the AttributeTypesSelector where the rule-based identity resolution uses to match profiles. +type DomainAttributeTypesSelector struct { + // The Address type. You can choose from Address, BusinessAddress, MaillingAddress, and ShippingAddress. You only can use the Address type in the MatchingRule. For example, if you want to match profile based on BusinessAddress.City or MaillingAddress.City, you need to choose the BusinessAddress and the MaillingAddress to represent the Address type and specify the Address.City on the matching rule. + Address []string `pulumi:"address"` + // Configures the AttributeMatchingModel, you can either choose ONE_TO_ONE or MANY_TO_MANY. + AttributeMatchingModel DomainAttributeTypesSelectorAttributeMatchingModel `pulumi:"attributeMatchingModel"` + // The Email type. You can choose from EmailAddress, BusinessEmailAddress and PersonalEmailAddress. You only can use the EmailAddress type in the MatchingRule. For example, if you want to match profile based on PersonalEmailAddress or BusinessEmailAddress, you need to choose the PersonalEmailAddress and the BusinessEmailAddress to represent the EmailAddress type and only specify the EmailAddress on the matching rule. + EmailAddress []string `pulumi:"emailAddress"` + // The PhoneNumber type. You can choose from PhoneNumber, HomePhoneNumber, and MobilePhoneNumber. You only can use the PhoneNumber type in the MatchingRule. For example, if you want to match a profile based on Phone or HomePhone, you need to choose the Phone and the HomePhone to represent the PhoneNumber type and only specify the PhoneNumber on the matching rule. + PhoneNumber []string `pulumi:"phoneNumber"` +} + +// DomainAttributeTypesSelectorInput is an input type that accepts DomainAttributeTypesSelectorArgs and DomainAttributeTypesSelectorOutput values. +// You can construct a concrete instance of `DomainAttributeTypesSelectorInput` via: +// +// DomainAttributeTypesSelectorArgs{...} +type DomainAttributeTypesSelectorInput interface { + pulumi.Input + + ToDomainAttributeTypesSelectorOutput() DomainAttributeTypesSelectorOutput + ToDomainAttributeTypesSelectorOutputWithContext(context.Context) DomainAttributeTypesSelectorOutput +} + +// Configures information about the AttributeTypesSelector where the rule-based identity resolution uses to match profiles. +type DomainAttributeTypesSelectorArgs struct { + // The Address type. You can choose from Address, BusinessAddress, MaillingAddress, and ShippingAddress. You only can use the Address type in the MatchingRule. For example, if you want to match profile based on BusinessAddress.City or MaillingAddress.City, you need to choose the BusinessAddress and the MaillingAddress to represent the Address type and specify the Address.City on the matching rule. + Address pulumi.StringArrayInput `pulumi:"address"` + // Configures the AttributeMatchingModel, you can either choose ONE_TO_ONE or MANY_TO_MANY. + AttributeMatchingModel DomainAttributeTypesSelectorAttributeMatchingModelInput `pulumi:"attributeMatchingModel"` + // The Email type. You can choose from EmailAddress, BusinessEmailAddress and PersonalEmailAddress. You only can use the EmailAddress type in the MatchingRule. For example, if you want to match profile based on PersonalEmailAddress or BusinessEmailAddress, you need to choose the PersonalEmailAddress and the BusinessEmailAddress to represent the EmailAddress type and only specify the EmailAddress on the matching rule. + EmailAddress pulumi.StringArrayInput `pulumi:"emailAddress"` + // The PhoneNumber type. You can choose from PhoneNumber, HomePhoneNumber, and MobilePhoneNumber. You only can use the PhoneNumber type in the MatchingRule. For example, if you want to match a profile based on Phone or HomePhone, you need to choose the Phone and the HomePhone to represent the PhoneNumber type and only specify the PhoneNumber on the matching rule. + PhoneNumber pulumi.StringArrayInput `pulumi:"phoneNumber"` +} + +func (DomainAttributeTypesSelectorArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DomainAttributeTypesSelector)(nil)).Elem() +} + +func (i DomainAttributeTypesSelectorArgs) ToDomainAttributeTypesSelectorOutput() DomainAttributeTypesSelectorOutput { + return i.ToDomainAttributeTypesSelectorOutputWithContext(context.Background()) +} + +func (i DomainAttributeTypesSelectorArgs) ToDomainAttributeTypesSelectorOutputWithContext(ctx context.Context) DomainAttributeTypesSelectorOutput { + return pulumi.ToOutputWithContext(ctx, i).(DomainAttributeTypesSelectorOutput) +} + +func (i DomainAttributeTypesSelectorArgs) ToOutput(ctx context.Context) pulumix.Output[DomainAttributeTypesSelector] { + return pulumix.Output[DomainAttributeTypesSelector]{ + OutputState: i.ToDomainAttributeTypesSelectorOutputWithContext(ctx).OutputState, + } +} + +func (i DomainAttributeTypesSelectorArgs) ToDomainAttributeTypesSelectorPtrOutput() DomainAttributeTypesSelectorPtrOutput { + return i.ToDomainAttributeTypesSelectorPtrOutputWithContext(context.Background()) +} + +func (i DomainAttributeTypesSelectorArgs) ToDomainAttributeTypesSelectorPtrOutputWithContext(ctx context.Context) DomainAttributeTypesSelectorPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DomainAttributeTypesSelectorOutput).ToDomainAttributeTypesSelectorPtrOutputWithContext(ctx) +} + +// DomainAttributeTypesSelectorPtrInput is an input type that accepts DomainAttributeTypesSelectorArgs, DomainAttributeTypesSelectorPtr and DomainAttributeTypesSelectorPtrOutput values. +// You can construct a concrete instance of `DomainAttributeTypesSelectorPtrInput` via: +// +// DomainAttributeTypesSelectorArgs{...} +// +// or: +// +// nil +type DomainAttributeTypesSelectorPtrInput interface { + pulumi.Input + + ToDomainAttributeTypesSelectorPtrOutput() DomainAttributeTypesSelectorPtrOutput + ToDomainAttributeTypesSelectorPtrOutputWithContext(context.Context) DomainAttributeTypesSelectorPtrOutput +} + +type domainAttributeTypesSelectorPtrType DomainAttributeTypesSelectorArgs + +func DomainAttributeTypesSelectorPtr(v *DomainAttributeTypesSelectorArgs) DomainAttributeTypesSelectorPtrInput { + return (*domainAttributeTypesSelectorPtrType)(v) +} + +func (*domainAttributeTypesSelectorPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**DomainAttributeTypesSelector)(nil)).Elem() +} + +func (i *domainAttributeTypesSelectorPtrType) ToDomainAttributeTypesSelectorPtrOutput() DomainAttributeTypesSelectorPtrOutput { + return i.ToDomainAttributeTypesSelectorPtrOutputWithContext(context.Background()) +} + +func (i *domainAttributeTypesSelectorPtrType) ToDomainAttributeTypesSelectorPtrOutputWithContext(ctx context.Context) DomainAttributeTypesSelectorPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DomainAttributeTypesSelectorPtrOutput) +} + +func (i *domainAttributeTypesSelectorPtrType) ToOutput(ctx context.Context) pulumix.Output[*DomainAttributeTypesSelector] { + return pulumix.Output[*DomainAttributeTypesSelector]{ + OutputState: i.ToDomainAttributeTypesSelectorPtrOutputWithContext(ctx).OutputState, + } +} + +// Configures information about the AttributeTypesSelector where the rule-based identity resolution uses to match profiles. +type DomainAttributeTypesSelectorOutput struct{ *pulumi.OutputState } + +func (DomainAttributeTypesSelectorOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DomainAttributeTypesSelector)(nil)).Elem() +} + +func (o DomainAttributeTypesSelectorOutput) ToDomainAttributeTypesSelectorOutput() DomainAttributeTypesSelectorOutput { + return o +} + +func (o DomainAttributeTypesSelectorOutput) ToDomainAttributeTypesSelectorOutputWithContext(ctx context.Context) DomainAttributeTypesSelectorOutput { + return o +} + +func (o DomainAttributeTypesSelectorOutput) ToDomainAttributeTypesSelectorPtrOutput() DomainAttributeTypesSelectorPtrOutput { + return o.ToDomainAttributeTypesSelectorPtrOutputWithContext(context.Background()) +} + +func (o DomainAttributeTypesSelectorOutput) ToDomainAttributeTypesSelectorPtrOutputWithContext(ctx context.Context) DomainAttributeTypesSelectorPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DomainAttributeTypesSelector) *DomainAttributeTypesSelector { + return &v + }).(DomainAttributeTypesSelectorPtrOutput) +} + +func (o DomainAttributeTypesSelectorOutput) ToOutput(ctx context.Context) pulumix.Output[DomainAttributeTypesSelector] { + return pulumix.Output[DomainAttributeTypesSelector]{ + OutputState: o.OutputState, + } +} + +// The Address type. You can choose from Address, BusinessAddress, MaillingAddress, and ShippingAddress. You only can use the Address type in the MatchingRule. For example, if you want to match profile based on BusinessAddress.City or MaillingAddress.City, you need to choose the BusinessAddress and the MaillingAddress to represent the Address type and specify the Address.City on the matching rule. +func (o DomainAttributeTypesSelectorOutput) Address() pulumi.StringArrayOutput { + return o.ApplyT(func(v DomainAttributeTypesSelector) []string { return v.Address }).(pulumi.StringArrayOutput) +} + +// Configures the AttributeMatchingModel, you can either choose ONE_TO_ONE or MANY_TO_MANY. +func (o DomainAttributeTypesSelectorOutput) AttributeMatchingModel() DomainAttributeTypesSelectorAttributeMatchingModelOutput { + return o.ApplyT(func(v DomainAttributeTypesSelector) DomainAttributeTypesSelectorAttributeMatchingModel { + return v.AttributeMatchingModel + }).(DomainAttributeTypesSelectorAttributeMatchingModelOutput) +} + +// The Email type. You can choose from EmailAddress, BusinessEmailAddress and PersonalEmailAddress. You only can use the EmailAddress type in the MatchingRule. For example, if you want to match profile based on PersonalEmailAddress or BusinessEmailAddress, you need to choose the PersonalEmailAddress and the BusinessEmailAddress to represent the EmailAddress type and only specify the EmailAddress on the matching rule. +func (o DomainAttributeTypesSelectorOutput) EmailAddress() pulumi.StringArrayOutput { + return o.ApplyT(func(v DomainAttributeTypesSelector) []string { return v.EmailAddress }).(pulumi.StringArrayOutput) +} + +// The PhoneNumber type. You can choose from PhoneNumber, HomePhoneNumber, and MobilePhoneNumber. You only can use the PhoneNumber type in the MatchingRule. For example, if you want to match a profile based on Phone or HomePhone, you need to choose the Phone and the HomePhone to represent the PhoneNumber type and only specify the PhoneNumber on the matching rule. +func (o DomainAttributeTypesSelectorOutput) PhoneNumber() pulumi.StringArrayOutput { + return o.ApplyT(func(v DomainAttributeTypesSelector) []string { return v.PhoneNumber }).(pulumi.StringArrayOutput) +} + +type DomainAttributeTypesSelectorPtrOutput struct{ *pulumi.OutputState } + +func (DomainAttributeTypesSelectorPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DomainAttributeTypesSelector)(nil)).Elem() +} + +func (o DomainAttributeTypesSelectorPtrOutput) ToDomainAttributeTypesSelectorPtrOutput() DomainAttributeTypesSelectorPtrOutput { + return o +} + +func (o DomainAttributeTypesSelectorPtrOutput) ToDomainAttributeTypesSelectorPtrOutputWithContext(ctx context.Context) DomainAttributeTypesSelectorPtrOutput { + return o +} + +func (o DomainAttributeTypesSelectorPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*DomainAttributeTypesSelector] { + return pulumix.Output[*DomainAttributeTypesSelector]{ + OutputState: o.OutputState, + } +} + +func (o DomainAttributeTypesSelectorPtrOutput) Elem() DomainAttributeTypesSelectorOutput { + return o.ApplyT(func(v *DomainAttributeTypesSelector) DomainAttributeTypesSelector { + if v != nil { + return *v + } + var ret DomainAttributeTypesSelector + return ret + }).(DomainAttributeTypesSelectorOutput) +} + +// The Address type. You can choose from Address, BusinessAddress, MaillingAddress, and ShippingAddress. You only can use the Address type in the MatchingRule. For example, if you want to match profile based on BusinessAddress.City or MaillingAddress.City, you need to choose the BusinessAddress and the MaillingAddress to represent the Address type and specify the Address.City on the matching rule. +func (o DomainAttributeTypesSelectorPtrOutput) Address() pulumi.StringArrayOutput { + return o.ApplyT(func(v *DomainAttributeTypesSelector) []string { + if v == nil { + return nil + } + return v.Address + }).(pulumi.StringArrayOutput) +} + +// Configures the AttributeMatchingModel, you can either choose ONE_TO_ONE or MANY_TO_MANY. +func (o DomainAttributeTypesSelectorPtrOutput) AttributeMatchingModel() DomainAttributeTypesSelectorAttributeMatchingModelPtrOutput { + return o.ApplyT(func(v *DomainAttributeTypesSelector) *DomainAttributeTypesSelectorAttributeMatchingModel { + if v == nil { + return nil + } + return &v.AttributeMatchingModel + }).(DomainAttributeTypesSelectorAttributeMatchingModelPtrOutput) +} + +// The Email type. You can choose from EmailAddress, BusinessEmailAddress and PersonalEmailAddress. You only can use the EmailAddress type in the MatchingRule. For example, if you want to match profile based on PersonalEmailAddress or BusinessEmailAddress, you need to choose the PersonalEmailAddress and the BusinessEmailAddress to represent the EmailAddress type and only specify the EmailAddress on the matching rule. +func (o DomainAttributeTypesSelectorPtrOutput) EmailAddress() pulumi.StringArrayOutput { + return o.ApplyT(func(v *DomainAttributeTypesSelector) []string { + if v == nil { + return nil + } + return v.EmailAddress + }).(pulumi.StringArrayOutput) +} + +// The PhoneNumber type. You can choose from PhoneNumber, HomePhoneNumber, and MobilePhoneNumber. You only can use the PhoneNumber type in the MatchingRule. For example, if you want to match a profile based on Phone or HomePhone, you need to choose the Phone and the HomePhone to represent the PhoneNumber type and only specify the PhoneNumber on the matching rule. +func (o DomainAttributeTypesSelectorPtrOutput) PhoneNumber() pulumi.StringArrayOutput { + return o.ApplyT(func(v *DomainAttributeTypesSelector) []string { + if v == nil { + return nil + } + return v.PhoneNumber + }).(pulumi.StringArrayOutput) +} + +// Configuration information about the auto-merging process. +type DomainAutoMerging struct { + ConflictResolution *DomainConflictResolution `pulumi:"conflictResolution"` + Consolidation *DomainConsolidation `pulumi:"consolidation"` + // The flag that enables the auto-merging of duplicate profiles. + Enabled bool `pulumi:"enabled"` + // A number between 0 and 1 that represents the minimum confidence score required for profiles within a matching group to be merged during the auto-merge process. A higher score means higher similarity required to merge profiles. + MinAllowedConfidenceScoreForMerging *float64 `pulumi:"minAllowedConfidenceScoreForMerging"` +} + +// DomainAutoMergingInput is an input type that accepts DomainAutoMergingArgs and DomainAutoMergingOutput values. +// You can construct a concrete instance of `DomainAutoMergingInput` via: +// +// DomainAutoMergingArgs{...} +type DomainAutoMergingInput interface { + pulumi.Input + + ToDomainAutoMergingOutput() DomainAutoMergingOutput + ToDomainAutoMergingOutputWithContext(context.Context) DomainAutoMergingOutput +} + +// Configuration information about the auto-merging process. +type DomainAutoMergingArgs struct { + ConflictResolution DomainConflictResolutionPtrInput `pulumi:"conflictResolution"` + Consolidation DomainConsolidationPtrInput `pulumi:"consolidation"` + // The flag that enables the auto-merging of duplicate profiles. + Enabled pulumi.BoolInput `pulumi:"enabled"` + // A number between 0 and 1 that represents the minimum confidence score required for profiles within a matching group to be merged during the auto-merge process. A higher score means higher similarity required to merge profiles. + MinAllowedConfidenceScoreForMerging pulumi.Float64PtrInput `pulumi:"minAllowedConfidenceScoreForMerging"` +} + +func (DomainAutoMergingArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DomainAutoMerging)(nil)).Elem() +} + +func (i DomainAutoMergingArgs) ToDomainAutoMergingOutput() DomainAutoMergingOutput { + return i.ToDomainAutoMergingOutputWithContext(context.Background()) +} + +func (i DomainAutoMergingArgs) ToDomainAutoMergingOutputWithContext(ctx context.Context) DomainAutoMergingOutput { + return pulumi.ToOutputWithContext(ctx, i).(DomainAutoMergingOutput) +} + +func (i DomainAutoMergingArgs) ToOutput(ctx context.Context) pulumix.Output[DomainAutoMerging] { + return pulumix.Output[DomainAutoMerging]{ + OutputState: i.ToDomainAutoMergingOutputWithContext(ctx).OutputState, + } +} + +func (i DomainAutoMergingArgs) ToDomainAutoMergingPtrOutput() DomainAutoMergingPtrOutput { + return i.ToDomainAutoMergingPtrOutputWithContext(context.Background()) +} + +func (i DomainAutoMergingArgs) ToDomainAutoMergingPtrOutputWithContext(ctx context.Context) DomainAutoMergingPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DomainAutoMergingOutput).ToDomainAutoMergingPtrOutputWithContext(ctx) +} + +// DomainAutoMergingPtrInput is an input type that accepts DomainAutoMergingArgs, DomainAutoMergingPtr and DomainAutoMergingPtrOutput values. +// You can construct a concrete instance of `DomainAutoMergingPtrInput` via: +// +// DomainAutoMergingArgs{...} +// +// or: +// +// nil +type DomainAutoMergingPtrInput interface { + pulumi.Input + + ToDomainAutoMergingPtrOutput() DomainAutoMergingPtrOutput + ToDomainAutoMergingPtrOutputWithContext(context.Context) DomainAutoMergingPtrOutput +} + +type domainAutoMergingPtrType DomainAutoMergingArgs + +func DomainAutoMergingPtr(v *DomainAutoMergingArgs) DomainAutoMergingPtrInput { + return (*domainAutoMergingPtrType)(v) +} + +func (*domainAutoMergingPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**DomainAutoMerging)(nil)).Elem() +} + +func (i *domainAutoMergingPtrType) ToDomainAutoMergingPtrOutput() DomainAutoMergingPtrOutput { + return i.ToDomainAutoMergingPtrOutputWithContext(context.Background()) +} + +func (i *domainAutoMergingPtrType) ToDomainAutoMergingPtrOutputWithContext(ctx context.Context) DomainAutoMergingPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DomainAutoMergingPtrOutput) +} + +func (i *domainAutoMergingPtrType) ToOutput(ctx context.Context) pulumix.Output[*DomainAutoMerging] { + return pulumix.Output[*DomainAutoMerging]{ + OutputState: i.ToDomainAutoMergingPtrOutputWithContext(ctx).OutputState, + } +} + +// Configuration information about the auto-merging process. +type DomainAutoMergingOutput struct{ *pulumi.OutputState } + +func (DomainAutoMergingOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DomainAutoMerging)(nil)).Elem() +} + +func (o DomainAutoMergingOutput) ToDomainAutoMergingOutput() DomainAutoMergingOutput { + return o +} + +func (o DomainAutoMergingOutput) ToDomainAutoMergingOutputWithContext(ctx context.Context) DomainAutoMergingOutput { + return o +} + +func (o DomainAutoMergingOutput) ToDomainAutoMergingPtrOutput() DomainAutoMergingPtrOutput { + return o.ToDomainAutoMergingPtrOutputWithContext(context.Background()) +} + +func (o DomainAutoMergingOutput) ToDomainAutoMergingPtrOutputWithContext(ctx context.Context) DomainAutoMergingPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DomainAutoMerging) *DomainAutoMerging { + return &v + }).(DomainAutoMergingPtrOutput) +} + +func (o DomainAutoMergingOutput) ToOutput(ctx context.Context) pulumix.Output[DomainAutoMerging] { + return pulumix.Output[DomainAutoMerging]{ + OutputState: o.OutputState, + } +} + +func (o DomainAutoMergingOutput) ConflictResolution() DomainConflictResolutionPtrOutput { + return o.ApplyT(func(v DomainAutoMerging) *DomainConflictResolution { return v.ConflictResolution }).(DomainConflictResolutionPtrOutput) +} + +func (o DomainAutoMergingOutput) Consolidation() DomainConsolidationPtrOutput { + return o.ApplyT(func(v DomainAutoMerging) *DomainConsolidation { return v.Consolidation }).(DomainConsolidationPtrOutput) +} + +// The flag that enables the auto-merging of duplicate profiles. +func (o DomainAutoMergingOutput) Enabled() pulumi.BoolOutput { + return o.ApplyT(func(v DomainAutoMerging) bool { return v.Enabled }).(pulumi.BoolOutput) +} + +// A number between 0 and 1 that represents the minimum confidence score required for profiles within a matching group to be merged during the auto-merge process. A higher score means higher similarity required to merge profiles. +func (o DomainAutoMergingOutput) MinAllowedConfidenceScoreForMerging() pulumi.Float64PtrOutput { + return o.ApplyT(func(v DomainAutoMerging) *float64 { return v.MinAllowedConfidenceScoreForMerging }).(pulumi.Float64PtrOutput) +} + +type DomainAutoMergingPtrOutput struct{ *pulumi.OutputState } + +func (DomainAutoMergingPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DomainAutoMerging)(nil)).Elem() +} + +func (o DomainAutoMergingPtrOutput) ToDomainAutoMergingPtrOutput() DomainAutoMergingPtrOutput { + return o +} + +func (o DomainAutoMergingPtrOutput) ToDomainAutoMergingPtrOutputWithContext(ctx context.Context) DomainAutoMergingPtrOutput { + return o +} + +func (o DomainAutoMergingPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*DomainAutoMerging] { + return pulumix.Output[*DomainAutoMerging]{ + OutputState: o.OutputState, + } +} + +func (o DomainAutoMergingPtrOutput) Elem() DomainAutoMergingOutput { + return o.ApplyT(func(v *DomainAutoMerging) DomainAutoMerging { + if v != nil { + return *v + } + var ret DomainAutoMerging + return ret + }).(DomainAutoMergingOutput) +} + +func (o DomainAutoMergingPtrOutput) ConflictResolution() DomainConflictResolutionPtrOutput { + return o.ApplyT(func(v *DomainAutoMerging) *DomainConflictResolution { + if v == nil { + return nil + } + return v.ConflictResolution + }).(DomainConflictResolutionPtrOutput) +} + +func (o DomainAutoMergingPtrOutput) Consolidation() DomainConsolidationPtrOutput { + return o.ApplyT(func(v *DomainAutoMerging) *DomainConsolidation { + if v == nil { + return nil + } + return v.Consolidation + }).(DomainConsolidationPtrOutput) +} + +// The flag that enables the auto-merging of duplicate profiles. +func (o DomainAutoMergingPtrOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *DomainAutoMerging) *bool { + if v == nil { + return nil + } + return &v.Enabled + }).(pulumi.BoolPtrOutput) +} + +// A number between 0 and 1 that represents the minimum confidence score required for profiles within a matching group to be merged during the auto-merge process. A higher score means higher similarity required to merge profiles. +func (o DomainAutoMergingPtrOutput) MinAllowedConfidenceScoreForMerging() pulumi.Float64PtrOutput { + return o.ApplyT(func(v *DomainAutoMerging) *float64 { + if v == nil { + return nil + } + return v.MinAllowedConfidenceScoreForMerging + }).(pulumi.Float64PtrOutput) +} + +// How the auto-merging process should resolve conflicts between different profiles. For example, if Profile A and Profile B have the same FirstName and LastName (and that is the matching criteria), which EmailAddress should be used? +type DomainConflictResolution struct { + // How the auto-merging process should resolve conflicts between different profiles. + ConflictResolvingModel DomainConflictResolutionConflictResolvingModel `pulumi:"conflictResolvingModel"` + // The ObjectType name that is used to resolve profile merging conflicts when choosing SOURCE as the ConflictResolvingModel. + SourceName *string `pulumi:"sourceName"` +} + +// DomainConflictResolutionInput is an input type that accepts DomainConflictResolutionArgs and DomainConflictResolutionOutput values. +// You can construct a concrete instance of `DomainConflictResolutionInput` via: +// +// DomainConflictResolutionArgs{...} +type DomainConflictResolutionInput interface { + pulumi.Input + + ToDomainConflictResolutionOutput() DomainConflictResolutionOutput + ToDomainConflictResolutionOutputWithContext(context.Context) DomainConflictResolutionOutput +} + +// How the auto-merging process should resolve conflicts between different profiles. For example, if Profile A and Profile B have the same FirstName and LastName (and that is the matching criteria), which EmailAddress should be used? +type DomainConflictResolutionArgs struct { + // How the auto-merging process should resolve conflicts between different profiles. + ConflictResolvingModel DomainConflictResolutionConflictResolvingModelInput `pulumi:"conflictResolvingModel"` + // The ObjectType name that is used to resolve profile merging conflicts when choosing SOURCE as the ConflictResolvingModel. + SourceName pulumi.StringPtrInput `pulumi:"sourceName"` +} + +func (DomainConflictResolutionArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DomainConflictResolution)(nil)).Elem() +} + +func (i DomainConflictResolutionArgs) ToDomainConflictResolutionOutput() DomainConflictResolutionOutput { + return i.ToDomainConflictResolutionOutputWithContext(context.Background()) +} + +func (i DomainConflictResolutionArgs) ToDomainConflictResolutionOutputWithContext(ctx context.Context) DomainConflictResolutionOutput { + return pulumi.ToOutputWithContext(ctx, i).(DomainConflictResolutionOutput) +} + +func (i DomainConflictResolutionArgs) ToOutput(ctx context.Context) pulumix.Output[DomainConflictResolution] { + return pulumix.Output[DomainConflictResolution]{ + OutputState: i.ToDomainConflictResolutionOutputWithContext(ctx).OutputState, + } +} + +func (i DomainConflictResolutionArgs) ToDomainConflictResolutionPtrOutput() DomainConflictResolutionPtrOutput { + return i.ToDomainConflictResolutionPtrOutputWithContext(context.Background()) +} + +func (i DomainConflictResolutionArgs) ToDomainConflictResolutionPtrOutputWithContext(ctx context.Context) DomainConflictResolutionPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DomainConflictResolutionOutput).ToDomainConflictResolutionPtrOutputWithContext(ctx) +} + +// DomainConflictResolutionPtrInput is an input type that accepts DomainConflictResolutionArgs, DomainConflictResolutionPtr and DomainConflictResolutionPtrOutput values. +// You can construct a concrete instance of `DomainConflictResolutionPtrInput` via: +// +// DomainConflictResolutionArgs{...} +// +// or: +// +// nil +type DomainConflictResolutionPtrInput interface { + pulumi.Input + + ToDomainConflictResolutionPtrOutput() DomainConflictResolutionPtrOutput + ToDomainConflictResolutionPtrOutputWithContext(context.Context) DomainConflictResolutionPtrOutput +} + +type domainConflictResolutionPtrType DomainConflictResolutionArgs + +func DomainConflictResolutionPtr(v *DomainConflictResolutionArgs) DomainConflictResolutionPtrInput { + return (*domainConflictResolutionPtrType)(v) +} + +func (*domainConflictResolutionPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**DomainConflictResolution)(nil)).Elem() +} + +func (i *domainConflictResolutionPtrType) ToDomainConflictResolutionPtrOutput() DomainConflictResolutionPtrOutput { + return i.ToDomainConflictResolutionPtrOutputWithContext(context.Background()) +} + +func (i *domainConflictResolutionPtrType) ToDomainConflictResolutionPtrOutputWithContext(ctx context.Context) DomainConflictResolutionPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DomainConflictResolutionPtrOutput) +} + +func (i *domainConflictResolutionPtrType) ToOutput(ctx context.Context) pulumix.Output[*DomainConflictResolution] { + return pulumix.Output[*DomainConflictResolution]{ + OutputState: i.ToDomainConflictResolutionPtrOutputWithContext(ctx).OutputState, + } +} + +// How the auto-merging process should resolve conflicts between different profiles. For example, if Profile A and Profile B have the same FirstName and LastName (and that is the matching criteria), which EmailAddress should be used? +type DomainConflictResolutionOutput struct{ *pulumi.OutputState } + +func (DomainConflictResolutionOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DomainConflictResolution)(nil)).Elem() +} + +func (o DomainConflictResolutionOutput) ToDomainConflictResolutionOutput() DomainConflictResolutionOutput { + return o +} + +func (o DomainConflictResolutionOutput) ToDomainConflictResolutionOutputWithContext(ctx context.Context) DomainConflictResolutionOutput { + return o +} + +func (o DomainConflictResolutionOutput) ToDomainConflictResolutionPtrOutput() DomainConflictResolutionPtrOutput { + return o.ToDomainConflictResolutionPtrOutputWithContext(context.Background()) +} + +func (o DomainConflictResolutionOutput) ToDomainConflictResolutionPtrOutputWithContext(ctx context.Context) DomainConflictResolutionPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DomainConflictResolution) *DomainConflictResolution { + return &v + }).(DomainConflictResolutionPtrOutput) +} + +func (o DomainConflictResolutionOutput) ToOutput(ctx context.Context) pulumix.Output[DomainConflictResolution] { + return pulumix.Output[DomainConflictResolution]{ + OutputState: o.OutputState, + } +} + +// How the auto-merging process should resolve conflicts between different profiles. +func (o DomainConflictResolutionOutput) ConflictResolvingModel() DomainConflictResolutionConflictResolvingModelOutput { + return o.ApplyT(func(v DomainConflictResolution) DomainConflictResolutionConflictResolvingModel { + return v.ConflictResolvingModel + }).(DomainConflictResolutionConflictResolvingModelOutput) +} + +// The ObjectType name that is used to resolve profile merging conflicts when choosing SOURCE as the ConflictResolvingModel. +func (o DomainConflictResolutionOutput) SourceName() pulumi.StringPtrOutput { + return o.ApplyT(func(v DomainConflictResolution) *string { return v.SourceName }).(pulumi.StringPtrOutput) +} + +type DomainConflictResolutionPtrOutput struct{ *pulumi.OutputState } + +func (DomainConflictResolutionPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DomainConflictResolution)(nil)).Elem() +} + +func (o DomainConflictResolutionPtrOutput) ToDomainConflictResolutionPtrOutput() DomainConflictResolutionPtrOutput { + return o +} + +func (o DomainConflictResolutionPtrOutput) ToDomainConflictResolutionPtrOutputWithContext(ctx context.Context) DomainConflictResolutionPtrOutput { + return o +} + +func (o DomainConflictResolutionPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*DomainConflictResolution] { + return pulumix.Output[*DomainConflictResolution]{ + OutputState: o.OutputState, + } +} + +func (o DomainConflictResolutionPtrOutput) Elem() DomainConflictResolutionOutput { + return o.ApplyT(func(v *DomainConflictResolution) DomainConflictResolution { + if v != nil { + return *v + } + var ret DomainConflictResolution + return ret + }).(DomainConflictResolutionOutput) +} + +// How the auto-merging process should resolve conflicts between different profiles. +func (o DomainConflictResolutionPtrOutput) ConflictResolvingModel() DomainConflictResolutionConflictResolvingModelPtrOutput { + return o.ApplyT(func(v *DomainConflictResolution) *DomainConflictResolutionConflictResolvingModel { + if v == nil { + return nil + } + return &v.ConflictResolvingModel + }).(DomainConflictResolutionConflictResolvingModelPtrOutput) +} + +// The ObjectType name that is used to resolve profile merging conflicts when choosing SOURCE as the ConflictResolvingModel. +func (o DomainConflictResolutionPtrOutput) SourceName() pulumi.StringPtrOutput { + return o.ApplyT(func(v *DomainConflictResolution) *string { + if v == nil { + return nil + } + return v.SourceName + }).(pulumi.StringPtrOutput) +} + +// A list of matching attributes that represent matching criteria. If two profiles meet at least one of the requirements in the matching attributes list, they will be merged. +type DomainConsolidation struct { + // A list of matching criteria. + MatchingAttributesList [][]string `pulumi:"matchingAttributesList"` +} + +// DomainConsolidationInput is an input type that accepts DomainConsolidationArgs and DomainConsolidationOutput values. +// You can construct a concrete instance of `DomainConsolidationInput` via: +// +// DomainConsolidationArgs{...} +type DomainConsolidationInput interface { + pulumi.Input + + ToDomainConsolidationOutput() DomainConsolidationOutput + ToDomainConsolidationOutputWithContext(context.Context) DomainConsolidationOutput +} + +// A list of matching attributes that represent matching criteria. If two profiles meet at least one of the requirements in the matching attributes list, they will be merged. +type DomainConsolidationArgs struct { + // A list of matching criteria. + MatchingAttributesList pulumi.StringArrayArrayInput `pulumi:"matchingAttributesList"` +} + +func (DomainConsolidationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DomainConsolidation)(nil)).Elem() +} + +func (i DomainConsolidationArgs) ToDomainConsolidationOutput() DomainConsolidationOutput { + return i.ToDomainConsolidationOutputWithContext(context.Background()) +} + +func (i DomainConsolidationArgs) ToDomainConsolidationOutputWithContext(ctx context.Context) DomainConsolidationOutput { + return pulumi.ToOutputWithContext(ctx, i).(DomainConsolidationOutput) +} + +func (i DomainConsolidationArgs) ToOutput(ctx context.Context) pulumix.Output[DomainConsolidation] { + return pulumix.Output[DomainConsolidation]{ + OutputState: i.ToDomainConsolidationOutputWithContext(ctx).OutputState, + } +} + +func (i DomainConsolidationArgs) ToDomainConsolidationPtrOutput() DomainConsolidationPtrOutput { + return i.ToDomainConsolidationPtrOutputWithContext(context.Background()) +} + +func (i DomainConsolidationArgs) ToDomainConsolidationPtrOutputWithContext(ctx context.Context) DomainConsolidationPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DomainConsolidationOutput).ToDomainConsolidationPtrOutputWithContext(ctx) +} + +// DomainConsolidationPtrInput is an input type that accepts DomainConsolidationArgs, DomainConsolidationPtr and DomainConsolidationPtrOutput values. +// You can construct a concrete instance of `DomainConsolidationPtrInput` via: +// +// DomainConsolidationArgs{...} +// +// or: +// +// nil +type DomainConsolidationPtrInput interface { + pulumi.Input + + ToDomainConsolidationPtrOutput() DomainConsolidationPtrOutput + ToDomainConsolidationPtrOutputWithContext(context.Context) DomainConsolidationPtrOutput +} + +type domainConsolidationPtrType DomainConsolidationArgs + +func DomainConsolidationPtr(v *DomainConsolidationArgs) DomainConsolidationPtrInput { + return (*domainConsolidationPtrType)(v) +} + +func (*domainConsolidationPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**DomainConsolidation)(nil)).Elem() +} + +func (i *domainConsolidationPtrType) ToDomainConsolidationPtrOutput() DomainConsolidationPtrOutput { + return i.ToDomainConsolidationPtrOutputWithContext(context.Background()) +} + +func (i *domainConsolidationPtrType) ToDomainConsolidationPtrOutputWithContext(ctx context.Context) DomainConsolidationPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DomainConsolidationPtrOutput) +} + +func (i *domainConsolidationPtrType) ToOutput(ctx context.Context) pulumix.Output[*DomainConsolidation] { + return pulumix.Output[*DomainConsolidation]{ + OutputState: i.ToDomainConsolidationPtrOutputWithContext(ctx).OutputState, + } +} + +// A list of matching attributes that represent matching criteria. If two profiles meet at least one of the requirements in the matching attributes list, they will be merged. +type DomainConsolidationOutput struct{ *pulumi.OutputState } + +func (DomainConsolidationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DomainConsolidation)(nil)).Elem() +} + +func (o DomainConsolidationOutput) ToDomainConsolidationOutput() DomainConsolidationOutput { + return o +} + +func (o DomainConsolidationOutput) ToDomainConsolidationOutputWithContext(ctx context.Context) DomainConsolidationOutput { + return o +} + +func (o DomainConsolidationOutput) ToDomainConsolidationPtrOutput() DomainConsolidationPtrOutput { + return o.ToDomainConsolidationPtrOutputWithContext(context.Background()) +} + +func (o DomainConsolidationOutput) ToDomainConsolidationPtrOutputWithContext(ctx context.Context) DomainConsolidationPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DomainConsolidation) *DomainConsolidation { + return &v + }).(DomainConsolidationPtrOutput) +} + +func (o DomainConsolidationOutput) ToOutput(ctx context.Context) pulumix.Output[DomainConsolidation] { + return pulumix.Output[DomainConsolidation]{ + OutputState: o.OutputState, + } +} + +// A list of matching criteria. +func (o DomainConsolidationOutput) MatchingAttributesList() pulumi.StringArrayArrayOutput { + return o.ApplyT(func(v DomainConsolidation) [][]string { return v.MatchingAttributesList }).(pulumi.StringArrayArrayOutput) +} + +type DomainConsolidationPtrOutput struct{ *pulumi.OutputState } + +func (DomainConsolidationPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DomainConsolidation)(nil)).Elem() +} + +func (o DomainConsolidationPtrOutput) ToDomainConsolidationPtrOutput() DomainConsolidationPtrOutput { + return o +} + +func (o DomainConsolidationPtrOutput) ToDomainConsolidationPtrOutputWithContext(ctx context.Context) DomainConsolidationPtrOutput { + return o +} + +func (o DomainConsolidationPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*DomainConsolidation] { + return pulumix.Output[*DomainConsolidation]{ + OutputState: o.OutputState, + } +} + +func (o DomainConsolidationPtrOutput) Elem() DomainConsolidationOutput { + return o.ApplyT(func(v *DomainConsolidation) DomainConsolidation { + if v != nil { + return *v + } + var ret DomainConsolidation + return ret + }).(DomainConsolidationOutput) +} + +// A list of matching criteria. +func (o DomainConsolidationPtrOutput) MatchingAttributesList() pulumi.StringArrayArrayOutput { + return o.ApplyT(func(v *DomainConsolidation) [][]string { + if v == nil { + return nil + } + return v.MatchingAttributesList + }).(pulumi.StringArrayArrayOutput) +} + +// Configuration information for exporting Identity Resolution results, for example, to an S3 bucket. +type DomainExportingConfig struct { + S3Exporting *DomainS3ExportingConfig `pulumi:"s3Exporting"` +} + +// DomainExportingConfigInput is an input type that accepts DomainExportingConfigArgs and DomainExportingConfigOutput values. +// You can construct a concrete instance of `DomainExportingConfigInput` via: +// +// DomainExportingConfigArgs{...} +type DomainExportingConfigInput interface { + pulumi.Input + + ToDomainExportingConfigOutput() DomainExportingConfigOutput + ToDomainExportingConfigOutputWithContext(context.Context) DomainExportingConfigOutput +} + +// Configuration information for exporting Identity Resolution results, for example, to an S3 bucket. +type DomainExportingConfigArgs struct { + S3Exporting DomainS3ExportingConfigPtrInput `pulumi:"s3Exporting"` +} + +func (DomainExportingConfigArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DomainExportingConfig)(nil)).Elem() +} + +func (i DomainExportingConfigArgs) ToDomainExportingConfigOutput() DomainExportingConfigOutput { + return i.ToDomainExportingConfigOutputWithContext(context.Background()) +} + +func (i DomainExportingConfigArgs) ToDomainExportingConfigOutputWithContext(ctx context.Context) DomainExportingConfigOutput { + return pulumi.ToOutputWithContext(ctx, i).(DomainExportingConfigOutput) +} + +func (i DomainExportingConfigArgs) ToOutput(ctx context.Context) pulumix.Output[DomainExportingConfig] { + return pulumix.Output[DomainExportingConfig]{ + OutputState: i.ToDomainExportingConfigOutputWithContext(ctx).OutputState, + } +} + +func (i DomainExportingConfigArgs) ToDomainExportingConfigPtrOutput() DomainExportingConfigPtrOutput { + return i.ToDomainExportingConfigPtrOutputWithContext(context.Background()) +} + +func (i DomainExportingConfigArgs) ToDomainExportingConfigPtrOutputWithContext(ctx context.Context) DomainExportingConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DomainExportingConfigOutput).ToDomainExportingConfigPtrOutputWithContext(ctx) +} + +// DomainExportingConfigPtrInput is an input type that accepts DomainExportingConfigArgs, DomainExportingConfigPtr and DomainExportingConfigPtrOutput values. +// You can construct a concrete instance of `DomainExportingConfigPtrInput` via: +// +// DomainExportingConfigArgs{...} +// +// or: +// +// nil +type DomainExportingConfigPtrInput interface { + pulumi.Input + + ToDomainExportingConfigPtrOutput() DomainExportingConfigPtrOutput + ToDomainExportingConfigPtrOutputWithContext(context.Context) DomainExportingConfigPtrOutput +} + +type domainExportingConfigPtrType DomainExportingConfigArgs + +func DomainExportingConfigPtr(v *DomainExportingConfigArgs) DomainExportingConfigPtrInput { + return (*domainExportingConfigPtrType)(v) +} + +func (*domainExportingConfigPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**DomainExportingConfig)(nil)).Elem() +} + +func (i *domainExportingConfigPtrType) ToDomainExportingConfigPtrOutput() DomainExportingConfigPtrOutput { + return i.ToDomainExportingConfigPtrOutputWithContext(context.Background()) +} + +func (i *domainExportingConfigPtrType) ToDomainExportingConfigPtrOutputWithContext(ctx context.Context) DomainExportingConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DomainExportingConfigPtrOutput) +} + +func (i *domainExportingConfigPtrType) ToOutput(ctx context.Context) pulumix.Output[*DomainExportingConfig] { + return pulumix.Output[*DomainExportingConfig]{ + OutputState: i.ToDomainExportingConfigPtrOutputWithContext(ctx).OutputState, + } +} + +// Configuration information for exporting Identity Resolution results, for example, to an S3 bucket. +type DomainExportingConfigOutput struct{ *pulumi.OutputState } + +func (DomainExportingConfigOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DomainExportingConfig)(nil)).Elem() +} + +func (o DomainExportingConfigOutput) ToDomainExportingConfigOutput() DomainExportingConfigOutput { + return o +} + +func (o DomainExportingConfigOutput) ToDomainExportingConfigOutputWithContext(ctx context.Context) DomainExportingConfigOutput { + return o +} + +func (o DomainExportingConfigOutput) ToDomainExportingConfigPtrOutput() DomainExportingConfigPtrOutput { + return o.ToDomainExportingConfigPtrOutputWithContext(context.Background()) +} + +func (o DomainExportingConfigOutput) ToDomainExportingConfigPtrOutputWithContext(ctx context.Context) DomainExportingConfigPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DomainExportingConfig) *DomainExportingConfig { + return &v + }).(DomainExportingConfigPtrOutput) +} + +func (o DomainExportingConfigOutput) ToOutput(ctx context.Context) pulumix.Output[DomainExportingConfig] { + return pulumix.Output[DomainExportingConfig]{ + OutputState: o.OutputState, + } +} + +func (o DomainExportingConfigOutput) S3Exporting() DomainS3ExportingConfigPtrOutput { + return o.ApplyT(func(v DomainExportingConfig) *DomainS3ExportingConfig { return v.S3Exporting }).(DomainS3ExportingConfigPtrOutput) +} + +type DomainExportingConfigPtrOutput struct{ *pulumi.OutputState } + +func (DomainExportingConfigPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DomainExportingConfig)(nil)).Elem() +} + +func (o DomainExportingConfigPtrOutput) ToDomainExportingConfigPtrOutput() DomainExportingConfigPtrOutput { + return o +} + +func (o DomainExportingConfigPtrOutput) ToDomainExportingConfigPtrOutputWithContext(ctx context.Context) DomainExportingConfigPtrOutput { + return o +} + +func (o DomainExportingConfigPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*DomainExportingConfig] { + return pulumix.Output[*DomainExportingConfig]{ + OutputState: o.OutputState, + } +} + +func (o DomainExportingConfigPtrOutput) Elem() DomainExportingConfigOutput { + return o.ApplyT(func(v *DomainExportingConfig) DomainExportingConfig { + if v != nil { + return *v + } + var ret DomainExportingConfig + return ret + }).(DomainExportingConfigOutput) +} + +func (o DomainExportingConfigPtrOutput) S3Exporting() DomainS3ExportingConfigPtrOutput { + return o.ApplyT(func(v *DomainExportingConfig) *DomainS3ExportingConfig { + if v == nil { + return nil + } + return v.S3Exporting + }).(DomainS3ExportingConfigPtrOutput) +} + +// The day and time when do you want to start the Identity Resolution Job every week. +type DomainJobSchedule struct { + // The day when the Identity Resolution Job should run every week. + DayOfTheWeek DomainJobScheduleDayOfTheWeek `pulumi:"dayOfTheWeek"` + // The time when the Identity Resolution Job should run every week. + Time string `pulumi:"time"` +} + +// DomainJobScheduleInput is an input type that accepts DomainJobScheduleArgs and DomainJobScheduleOutput values. +// You can construct a concrete instance of `DomainJobScheduleInput` via: +// +// DomainJobScheduleArgs{...} +type DomainJobScheduleInput interface { + pulumi.Input + + ToDomainJobScheduleOutput() DomainJobScheduleOutput + ToDomainJobScheduleOutputWithContext(context.Context) DomainJobScheduleOutput +} + +// The day and time when do you want to start the Identity Resolution Job every week. +type DomainJobScheduleArgs struct { + // The day when the Identity Resolution Job should run every week. + DayOfTheWeek DomainJobScheduleDayOfTheWeekInput `pulumi:"dayOfTheWeek"` + // The time when the Identity Resolution Job should run every week. + Time pulumi.StringInput `pulumi:"time"` +} + +func (DomainJobScheduleArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DomainJobSchedule)(nil)).Elem() +} + +func (i DomainJobScheduleArgs) ToDomainJobScheduleOutput() DomainJobScheduleOutput { + return i.ToDomainJobScheduleOutputWithContext(context.Background()) +} + +func (i DomainJobScheduleArgs) ToDomainJobScheduleOutputWithContext(ctx context.Context) DomainJobScheduleOutput { + return pulumi.ToOutputWithContext(ctx, i).(DomainJobScheduleOutput) +} + +func (i DomainJobScheduleArgs) ToOutput(ctx context.Context) pulumix.Output[DomainJobSchedule] { + return pulumix.Output[DomainJobSchedule]{ + OutputState: i.ToDomainJobScheduleOutputWithContext(ctx).OutputState, + } +} + +func (i DomainJobScheduleArgs) ToDomainJobSchedulePtrOutput() DomainJobSchedulePtrOutput { + return i.ToDomainJobSchedulePtrOutputWithContext(context.Background()) +} + +func (i DomainJobScheduleArgs) ToDomainJobSchedulePtrOutputWithContext(ctx context.Context) DomainJobSchedulePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DomainJobScheduleOutput).ToDomainJobSchedulePtrOutputWithContext(ctx) +} + +// DomainJobSchedulePtrInput is an input type that accepts DomainJobScheduleArgs, DomainJobSchedulePtr and DomainJobSchedulePtrOutput values. +// You can construct a concrete instance of `DomainJobSchedulePtrInput` via: +// +// DomainJobScheduleArgs{...} +// +// or: +// +// nil +type DomainJobSchedulePtrInput interface { + pulumi.Input + + ToDomainJobSchedulePtrOutput() DomainJobSchedulePtrOutput + ToDomainJobSchedulePtrOutputWithContext(context.Context) DomainJobSchedulePtrOutput +} + +type domainJobSchedulePtrType DomainJobScheduleArgs + +func DomainJobSchedulePtr(v *DomainJobScheduleArgs) DomainJobSchedulePtrInput { + return (*domainJobSchedulePtrType)(v) +} + +func (*domainJobSchedulePtrType) ElementType() reflect.Type { + return reflect.TypeOf((**DomainJobSchedule)(nil)).Elem() +} + +func (i *domainJobSchedulePtrType) ToDomainJobSchedulePtrOutput() DomainJobSchedulePtrOutput { + return i.ToDomainJobSchedulePtrOutputWithContext(context.Background()) +} + +func (i *domainJobSchedulePtrType) ToDomainJobSchedulePtrOutputWithContext(ctx context.Context) DomainJobSchedulePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DomainJobSchedulePtrOutput) +} + +func (i *domainJobSchedulePtrType) ToOutput(ctx context.Context) pulumix.Output[*DomainJobSchedule] { + return pulumix.Output[*DomainJobSchedule]{ + OutputState: i.ToDomainJobSchedulePtrOutputWithContext(ctx).OutputState, + } +} + +// The day and time when do you want to start the Identity Resolution Job every week. +type DomainJobScheduleOutput struct{ *pulumi.OutputState } + +func (DomainJobScheduleOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DomainJobSchedule)(nil)).Elem() +} + +func (o DomainJobScheduleOutput) ToDomainJobScheduleOutput() DomainJobScheduleOutput { + return o +} + +func (o DomainJobScheduleOutput) ToDomainJobScheduleOutputWithContext(ctx context.Context) DomainJobScheduleOutput { + return o +} + +func (o DomainJobScheduleOutput) ToDomainJobSchedulePtrOutput() DomainJobSchedulePtrOutput { + return o.ToDomainJobSchedulePtrOutputWithContext(context.Background()) +} + +func (o DomainJobScheduleOutput) ToDomainJobSchedulePtrOutputWithContext(ctx context.Context) DomainJobSchedulePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DomainJobSchedule) *DomainJobSchedule { + return &v + }).(DomainJobSchedulePtrOutput) +} + +func (o DomainJobScheduleOutput) ToOutput(ctx context.Context) pulumix.Output[DomainJobSchedule] { + return pulumix.Output[DomainJobSchedule]{ + OutputState: o.OutputState, + } +} + +// The day when the Identity Resolution Job should run every week. +func (o DomainJobScheduleOutput) DayOfTheWeek() DomainJobScheduleDayOfTheWeekOutput { + return o.ApplyT(func(v DomainJobSchedule) DomainJobScheduleDayOfTheWeek { return v.DayOfTheWeek }).(DomainJobScheduleDayOfTheWeekOutput) +} + +// The time when the Identity Resolution Job should run every week. +func (o DomainJobScheduleOutput) Time() pulumi.StringOutput { + return o.ApplyT(func(v DomainJobSchedule) string { return v.Time }).(pulumi.StringOutput) +} + +type DomainJobSchedulePtrOutput struct{ *pulumi.OutputState } + +func (DomainJobSchedulePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DomainJobSchedule)(nil)).Elem() +} + +func (o DomainJobSchedulePtrOutput) ToDomainJobSchedulePtrOutput() DomainJobSchedulePtrOutput { + return o +} + +func (o DomainJobSchedulePtrOutput) ToDomainJobSchedulePtrOutputWithContext(ctx context.Context) DomainJobSchedulePtrOutput { + return o +} + +func (o DomainJobSchedulePtrOutput) ToOutput(ctx context.Context) pulumix.Output[*DomainJobSchedule] { + return pulumix.Output[*DomainJobSchedule]{ + OutputState: o.OutputState, + } +} + +func (o DomainJobSchedulePtrOutput) Elem() DomainJobScheduleOutput { + return o.ApplyT(func(v *DomainJobSchedule) DomainJobSchedule { + if v != nil { + return *v + } + var ret DomainJobSchedule + return ret + }).(DomainJobScheduleOutput) +} + +// The day when the Identity Resolution Job should run every week. +func (o DomainJobSchedulePtrOutput) DayOfTheWeek() DomainJobScheduleDayOfTheWeekPtrOutput { + return o.ApplyT(func(v *DomainJobSchedule) *DomainJobScheduleDayOfTheWeek { + if v == nil { + return nil + } + return &v.DayOfTheWeek + }).(DomainJobScheduleDayOfTheWeekPtrOutput) +} + +// The time when the Identity Resolution Job should run every week. +func (o DomainJobSchedulePtrOutput) Time() pulumi.StringPtrOutput { + return o.ApplyT(func(v *DomainJobSchedule) *string { + if v == nil { + return nil + } + return &v.Time + }).(pulumi.StringPtrOutput) +} + +// The process of matching duplicate profiles. If Matching = true, Amazon Connect Customer Profiles starts a weekly batch process called Identity Resolution Job. If you do not specify a date and time for Identity Resolution Job to run, by default it runs every Saturday at 12AM UTC to detect duplicate profiles in your domains. After the Identity Resolution Job completes, use the GetMatches API to return and review the results. Or, if you have configured ExportingConfig in the MatchingRequest, you can download the results from S3. +type DomainMatching struct { + AutoMerging *DomainAutoMerging `pulumi:"autoMerging"` + // The flag that enables the matching process of duplicate profiles. + Enabled bool `pulumi:"enabled"` + ExportingConfig *DomainExportingConfig `pulumi:"exportingConfig"` + JobSchedule *DomainJobSchedule `pulumi:"jobSchedule"` +} + +// DomainMatchingInput is an input type that accepts DomainMatchingArgs and DomainMatchingOutput values. +// You can construct a concrete instance of `DomainMatchingInput` via: +// +// DomainMatchingArgs{...} +type DomainMatchingInput interface { + pulumi.Input + + ToDomainMatchingOutput() DomainMatchingOutput + ToDomainMatchingOutputWithContext(context.Context) DomainMatchingOutput +} + +// The process of matching duplicate profiles. If Matching = true, Amazon Connect Customer Profiles starts a weekly batch process called Identity Resolution Job. If you do not specify a date and time for Identity Resolution Job to run, by default it runs every Saturday at 12AM UTC to detect duplicate profiles in your domains. After the Identity Resolution Job completes, use the GetMatches API to return and review the results. Or, if you have configured ExportingConfig in the MatchingRequest, you can download the results from S3. +type DomainMatchingArgs struct { + AutoMerging DomainAutoMergingPtrInput `pulumi:"autoMerging"` + // The flag that enables the matching process of duplicate profiles. + Enabled pulumi.BoolInput `pulumi:"enabled"` + ExportingConfig DomainExportingConfigPtrInput `pulumi:"exportingConfig"` + JobSchedule DomainJobSchedulePtrInput `pulumi:"jobSchedule"` +} + +func (DomainMatchingArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DomainMatching)(nil)).Elem() +} + +func (i DomainMatchingArgs) ToDomainMatchingOutput() DomainMatchingOutput { + return i.ToDomainMatchingOutputWithContext(context.Background()) +} + +func (i DomainMatchingArgs) ToDomainMatchingOutputWithContext(ctx context.Context) DomainMatchingOutput { + return pulumi.ToOutputWithContext(ctx, i).(DomainMatchingOutput) +} + +func (i DomainMatchingArgs) ToOutput(ctx context.Context) pulumix.Output[DomainMatching] { + return pulumix.Output[DomainMatching]{ + OutputState: i.ToDomainMatchingOutputWithContext(ctx).OutputState, + } +} + +func (i DomainMatchingArgs) ToDomainMatchingPtrOutput() DomainMatchingPtrOutput { + return i.ToDomainMatchingPtrOutputWithContext(context.Background()) +} + +func (i DomainMatchingArgs) ToDomainMatchingPtrOutputWithContext(ctx context.Context) DomainMatchingPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DomainMatchingOutput).ToDomainMatchingPtrOutputWithContext(ctx) +} + +// DomainMatchingPtrInput is an input type that accepts DomainMatchingArgs, DomainMatchingPtr and DomainMatchingPtrOutput values. +// You can construct a concrete instance of `DomainMatchingPtrInput` via: +// +// DomainMatchingArgs{...} +// +// or: +// +// nil +type DomainMatchingPtrInput interface { + pulumi.Input + + ToDomainMatchingPtrOutput() DomainMatchingPtrOutput + ToDomainMatchingPtrOutputWithContext(context.Context) DomainMatchingPtrOutput +} + +type domainMatchingPtrType DomainMatchingArgs + +func DomainMatchingPtr(v *DomainMatchingArgs) DomainMatchingPtrInput { + return (*domainMatchingPtrType)(v) +} + +func (*domainMatchingPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**DomainMatching)(nil)).Elem() +} + +func (i *domainMatchingPtrType) ToDomainMatchingPtrOutput() DomainMatchingPtrOutput { + return i.ToDomainMatchingPtrOutputWithContext(context.Background()) +} + +func (i *domainMatchingPtrType) ToDomainMatchingPtrOutputWithContext(ctx context.Context) DomainMatchingPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DomainMatchingPtrOutput) +} + +func (i *domainMatchingPtrType) ToOutput(ctx context.Context) pulumix.Output[*DomainMatching] { + return pulumix.Output[*DomainMatching]{ + OutputState: i.ToDomainMatchingPtrOutputWithContext(ctx).OutputState, + } +} + +// The process of matching duplicate profiles. If Matching = true, Amazon Connect Customer Profiles starts a weekly batch process called Identity Resolution Job. If you do not specify a date and time for Identity Resolution Job to run, by default it runs every Saturday at 12AM UTC to detect duplicate profiles in your domains. After the Identity Resolution Job completes, use the GetMatches API to return and review the results. Or, if you have configured ExportingConfig in the MatchingRequest, you can download the results from S3. +type DomainMatchingOutput struct{ *pulumi.OutputState } + +func (DomainMatchingOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DomainMatching)(nil)).Elem() +} + +func (o DomainMatchingOutput) ToDomainMatchingOutput() DomainMatchingOutput { + return o +} + +func (o DomainMatchingOutput) ToDomainMatchingOutputWithContext(ctx context.Context) DomainMatchingOutput { + return o +} + +func (o DomainMatchingOutput) ToDomainMatchingPtrOutput() DomainMatchingPtrOutput { + return o.ToDomainMatchingPtrOutputWithContext(context.Background()) +} + +func (o DomainMatchingOutput) ToDomainMatchingPtrOutputWithContext(ctx context.Context) DomainMatchingPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DomainMatching) *DomainMatching { + return &v + }).(DomainMatchingPtrOutput) +} + +func (o DomainMatchingOutput) ToOutput(ctx context.Context) pulumix.Output[DomainMatching] { + return pulumix.Output[DomainMatching]{ + OutputState: o.OutputState, + } +} + +func (o DomainMatchingOutput) AutoMerging() DomainAutoMergingPtrOutput { + return o.ApplyT(func(v DomainMatching) *DomainAutoMerging { return v.AutoMerging }).(DomainAutoMergingPtrOutput) +} + +// The flag that enables the matching process of duplicate profiles. +func (o DomainMatchingOutput) Enabled() pulumi.BoolOutput { + return o.ApplyT(func(v DomainMatching) bool { return v.Enabled }).(pulumi.BoolOutput) +} + +func (o DomainMatchingOutput) ExportingConfig() DomainExportingConfigPtrOutput { + return o.ApplyT(func(v DomainMatching) *DomainExportingConfig { return v.ExportingConfig }).(DomainExportingConfigPtrOutput) +} + +func (o DomainMatchingOutput) JobSchedule() DomainJobSchedulePtrOutput { + return o.ApplyT(func(v DomainMatching) *DomainJobSchedule { return v.JobSchedule }).(DomainJobSchedulePtrOutput) +} + +type DomainMatchingPtrOutput struct{ *pulumi.OutputState } + +func (DomainMatchingPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DomainMatching)(nil)).Elem() +} + +func (o DomainMatchingPtrOutput) ToDomainMatchingPtrOutput() DomainMatchingPtrOutput { + return o +} + +func (o DomainMatchingPtrOutput) ToDomainMatchingPtrOutputWithContext(ctx context.Context) DomainMatchingPtrOutput { + return o +} + +func (o DomainMatchingPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*DomainMatching] { + return pulumix.Output[*DomainMatching]{ + OutputState: o.OutputState, + } +} + +func (o DomainMatchingPtrOutput) Elem() DomainMatchingOutput { + return o.ApplyT(func(v *DomainMatching) DomainMatching { + if v != nil { + return *v + } + var ret DomainMatching + return ret + }).(DomainMatchingOutput) +} + +func (o DomainMatchingPtrOutput) AutoMerging() DomainAutoMergingPtrOutput { + return o.ApplyT(func(v *DomainMatching) *DomainAutoMerging { + if v == nil { + return nil + } + return v.AutoMerging + }).(DomainAutoMergingPtrOutput) +} + +// The flag that enables the matching process of duplicate profiles. +func (o DomainMatchingPtrOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *DomainMatching) *bool { + if v == nil { + return nil + } + return &v.Enabled + }).(pulumi.BoolPtrOutput) +} + +func (o DomainMatchingPtrOutput) ExportingConfig() DomainExportingConfigPtrOutput { + return o.ApplyT(func(v *DomainMatching) *DomainExportingConfig { + if v == nil { + return nil + } + return v.ExportingConfig + }).(DomainExportingConfigPtrOutput) +} + +func (o DomainMatchingPtrOutput) JobSchedule() DomainJobSchedulePtrOutput { + return o.ApplyT(func(v *DomainMatching) *DomainJobSchedule { + if v == nil { + return nil + } + return v.JobSchedule + }).(DomainJobSchedulePtrOutput) +} + +// Specifies how does the rule-based matching process should match profiles. +type DomainMatchingRule struct { + Rule []string `pulumi:"rule"` +} + +// DomainMatchingRuleInput is an input type that accepts DomainMatchingRuleArgs and DomainMatchingRuleOutput values. +// You can construct a concrete instance of `DomainMatchingRuleInput` via: +// +// DomainMatchingRuleArgs{...} +type DomainMatchingRuleInput interface { + pulumi.Input + + ToDomainMatchingRuleOutput() DomainMatchingRuleOutput + ToDomainMatchingRuleOutputWithContext(context.Context) DomainMatchingRuleOutput +} + +// Specifies how does the rule-based matching process should match profiles. +type DomainMatchingRuleArgs struct { + Rule pulumi.StringArrayInput `pulumi:"rule"` +} + +func (DomainMatchingRuleArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DomainMatchingRule)(nil)).Elem() +} + +func (i DomainMatchingRuleArgs) ToDomainMatchingRuleOutput() DomainMatchingRuleOutput { + return i.ToDomainMatchingRuleOutputWithContext(context.Background()) +} + +func (i DomainMatchingRuleArgs) ToDomainMatchingRuleOutputWithContext(ctx context.Context) DomainMatchingRuleOutput { + return pulumi.ToOutputWithContext(ctx, i).(DomainMatchingRuleOutput) +} + +func (i DomainMatchingRuleArgs) ToOutput(ctx context.Context) pulumix.Output[DomainMatchingRule] { + return pulumix.Output[DomainMatchingRule]{ + OutputState: i.ToDomainMatchingRuleOutputWithContext(ctx).OutputState, + } +} + +// DomainMatchingRuleArrayInput is an input type that accepts DomainMatchingRuleArray and DomainMatchingRuleArrayOutput values. +// You can construct a concrete instance of `DomainMatchingRuleArrayInput` via: +// +// DomainMatchingRuleArray{ DomainMatchingRuleArgs{...} } +type DomainMatchingRuleArrayInput interface { + pulumi.Input + + ToDomainMatchingRuleArrayOutput() DomainMatchingRuleArrayOutput + ToDomainMatchingRuleArrayOutputWithContext(context.Context) DomainMatchingRuleArrayOutput +} + +type DomainMatchingRuleArray []DomainMatchingRuleInput + +func (DomainMatchingRuleArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]DomainMatchingRule)(nil)).Elem() +} + +func (i DomainMatchingRuleArray) ToDomainMatchingRuleArrayOutput() DomainMatchingRuleArrayOutput { + return i.ToDomainMatchingRuleArrayOutputWithContext(context.Background()) +} + +func (i DomainMatchingRuleArray) ToDomainMatchingRuleArrayOutputWithContext(ctx context.Context) DomainMatchingRuleArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(DomainMatchingRuleArrayOutput) +} + +func (i DomainMatchingRuleArray) ToOutput(ctx context.Context) pulumix.Output[[]DomainMatchingRule] { + return pulumix.Output[[]DomainMatchingRule]{ + OutputState: i.ToDomainMatchingRuleArrayOutputWithContext(ctx).OutputState, + } +} + +// Specifies how does the rule-based matching process should match profiles. +type DomainMatchingRuleOutput struct{ *pulumi.OutputState } + +func (DomainMatchingRuleOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DomainMatchingRule)(nil)).Elem() +} + +func (o DomainMatchingRuleOutput) ToDomainMatchingRuleOutput() DomainMatchingRuleOutput { + return o +} + +func (o DomainMatchingRuleOutput) ToDomainMatchingRuleOutputWithContext(ctx context.Context) DomainMatchingRuleOutput { + return o +} + +func (o DomainMatchingRuleOutput) ToOutput(ctx context.Context) pulumix.Output[DomainMatchingRule] { + return pulumix.Output[DomainMatchingRule]{ + OutputState: o.OutputState, + } +} + +func (o DomainMatchingRuleOutput) Rule() pulumi.StringArrayOutput { + return o.ApplyT(func(v DomainMatchingRule) []string { return v.Rule }).(pulumi.StringArrayOutput) +} + +type DomainMatchingRuleArrayOutput struct{ *pulumi.OutputState } + +func (DomainMatchingRuleArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]DomainMatchingRule)(nil)).Elem() +} + +func (o DomainMatchingRuleArrayOutput) ToDomainMatchingRuleArrayOutput() DomainMatchingRuleArrayOutput { + return o +} + +func (o DomainMatchingRuleArrayOutput) ToDomainMatchingRuleArrayOutputWithContext(ctx context.Context) DomainMatchingRuleArrayOutput { + return o +} + +func (o DomainMatchingRuleArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]DomainMatchingRule] { + return pulumix.Output[[]DomainMatchingRule]{ + OutputState: o.OutputState, + } +} + +func (o DomainMatchingRuleArrayOutput) Index(i pulumi.IntInput) DomainMatchingRuleOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) DomainMatchingRule { + return vs[0].([]DomainMatchingRule)[vs[1].(int)] + }).(DomainMatchingRuleOutput) +} + +// The process of matching duplicate profiles using the Rule-Based matching. If RuleBasedMatching = true, Amazon Connect Customer Profiles will start to match and merge your profiles according to your configuration in the RuleBasedMatchingRequest. You can use the ListRuleBasedMatches and GetSimilarProfiles API to return and review the results. Also, if you have configured ExportingConfig in the RuleBasedMatchingRequest, you can download the results from S3. +type DomainRuleBasedMatching struct { + AttributeTypesSelector *DomainAttributeTypesSelector `pulumi:"attributeTypesSelector"` + ConflictResolution *DomainConflictResolution `pulumi:"conflictResolution"` + // The flag that enables the rule-based matching process of duplicate profiles. + Enabled bool `pulumi:"enabled"` + ExportingConfig *DomainExportingConfig `pulumi:"exportingConfig"` + // Configures how the rule-based matching process should match profiles. You can have up to 15 MatchingRule in the MatchingRules. + MatchingRules []DomainMatchingRule `pulumi:"matchingRules"` + // Indicates the maximum allowed rule level for matching. + MaxAllowedRuleLevelForMatching *int `pulumi:"maxAllowedRuleLevelForMatching"` + // Indicates the maximum allowed rule level for merging. + MaxAllowedRuleLevelForMerging *int `pulumi:"maxAllowedRuleLevelForMerging"` + Status *DomainRuleBasedMatchingStatus `pulumi:"status"` +} + +// DomainRuleBasedMatchingInput is an input type that accepts DomainRuleBasedMatchingArgs and DomainRuleBasedMatchingOutput values. +// You can construct a concrete instance of `DomainRuleBasedMatchingInput` via: +// +// DomainRuleBasedMatchingArgs{...} +type DomainRuleBasedMatchingInput interface { + pulumi.Input + + ToDomainRuleBasedMatchingOutput() DomainRuleBasedMatchingOutput + ToDomainRuleBasedMatchingOutputWithContext(context.Context) DomainRuleBasedMatchingOutput +} + +// The process of matching duplicate profiles using the Rule-Based matching. If RuleBasedMatching = true, Amazon Connect Customer Profiles will start to match and merge your profiles according to your configuration in the RuleBasedMatchingRequest. You can use the ListRuleBasedMatches and GetSimilarProfiles API to return and review the results. Also, if you have configured ExportingConfig in the RuleBasedMatchingRequest, you can download the results from S3. +type DomainRuleBasedMatchingArgs struct { + AttributeTypesSelector DomainAttributeTypesSelectorPtrInput `pulumi:"attributeTypesSelector"` + ConflictResolution DomainConflictResolutionPtrInput `pulumi:"conflictResolution"` + // The flag that enables the rule-based matching process of duplicate profiles. + Enabled pulumi.BoolInput `pulumi:"enabled"` + ExportingConfig DomainExportingConfigPtrInput `pulumi:"exportingConfig"` + // Configures how the rule-based matching process should match profiles. You can have up to 15 MatchingRule in the MatchingRules. + MatchingRules DomainMatchingRuleArrayInput `pulumi:"matchingRules"` + // Indicates the maximum allowed rule level for matching. + MaxAllowedRuleLevelForMatching pulumi.IntPtrInput `pulumi:"maxAllowedRuleLevelForMatching"` + // Indicates the maximum allowed rule level for merging. + MaxAllowedRuleLevelForMerging pulumi.IntPtrInput `pulumi:"maxAllowedRuleLevelForMerging"` + Status DomainRuleBasedMatchingStatusPtrInput `pulumi:"status"` +} + +func (DomainRuleBasedMatchingArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DomainRuleBasedMatching)(nil)).Elem() +} + +func (i DomainRuleBasedMatchingArgs) ToDomainRuleBasedMatchingOutput() DomainRuleBasedMatchingOutput { + return i.ToDomainRuleBasedMatchingOutputWithContext(context.Background()) +} + +func (i DomainRuleBasedMatchingArgs) ToDomainRuleBasedMatchingOutputWithContext(ctx context.Context) DomainRuleBasedMatchingOutput { + return pulumi.ToOutputWithContext(ctx, i).(DomainRuleBasedMatchingOutput) +} + +func (i DomainRuleBasedMatchingArgs) ToOutput(ctx context.Context) pulumix.Output[DomainRuleBasedMatching] { + return pulumix.Output[DomainRuleBasedMatching]{ + OutputState: i.ToDomainRuleBasedMatchingOutputWithContext(ctx).OutputState, + } +} + +func (i DomainRuleBasedMatchingArgs) ToDomainRuleBasedMatchingPtrOutput() DomainRuleBasedMatchingPtrOutput { + return i.ToDomainRuleBasedMatchingPtrOutputWithContext(context.Background()) +} + +func (i DomainRuleBasedMatchingArgs) ToDomainRuleBasedMatchingPtrOutputWithContext(ctx context.Context) DomainRuleBasedMatchingPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DomainRuleBasedMatchingOutput).ToDomainRuleBasedMatchingPtrOutputWithContext(ctx) +} + +// DomainRuleBasedMatchingPtrInput is an input type that accepts DomainRuleBasedMatchingArgs, DomainRuleBasedMatchingPtr and DomainRuleBasedMatchingPtrOutput values. +// You can construct a concrete instance of `DomainRuleBasedMatchingPtrInput` via: +// +// DomainRuleBasedMatchingArgs{...} +// +// or: +// +// nil +type DomainRuleBasedMatchingPtrInput interface { + pulumi.Input + + ToDomainRuleBasedMatchingPtrOutput() DomainRuleBasedMatchingPtrOutput + ToDomainRuleBasedMatchingPtrOutputWithContext(context.Context) DomainRuleBasedMatchingPtrOutput +} + +type domainRuleBasedMatchingPtrType DomainRuleBasedMatchingArgs + +func DomainRuleBasedMatchingPtr(v *DomainRuleBasedMatchingArgs) DomainRuleBasedMatchingPtrInput { + return (*domainRuleBasedMatchingPtrType)(v) +} + +func (*domainRuleBasedMatchingPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**DomainRuleBasedMatching)(nil)).Elem() +} + +func (i *domainRuleBasedMatchingPtrType) ToDomainRuleBasedMatchingPtrOutput() DomainRuleBasedMatchingPtrOutput { + return i.ToDomainRuleBasedMatchingPtrOutputWithContext(context.Background()) +} + +func (i *domainRuleBasedMatchingPtrType) ToDomainRuleBasedMatchingPtrOutputWithContext(ctx context.Context) DomainRuleBasedMatchingPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DomainRuleBasedMatchingPtrOutput) +} + +func (i *domainRuleBasedMatchingPtrType) ToOutput(ctx context.Context) pulumix.Output[*DomainRuleBasedMatching] { + return pulumix.Output[*DomainRuleBasedMatching]{ + OutputState: i.ToDomainRuleBasedMatchingPtrOutputWithContext(ctx).OutputState, + } +} + +// The process of matching duplicate profiles using the Rule-Based matching. If RuleBasedMatching = true, Amazon Connect Customer Profiles will start to match and merge your profiles according to your configuration in the RuleBasedMatchingRequest. You can use the ListRuleBasedMatches and GetSimilarProfiles API to return and review the results. Also, if you have configured ExportingConfig in the RuleBasedMatchingRequest, you can download the results from S3. +type DomainRuleBasedMatchingOutput struct{ *pulumi.OutputState } + +func (DomainRuleBasedMatchingOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DomainRuleBasedMatching)(nil)).Elem() +} + +func (o DomainRuleBasedMatchingOutput) ToDomainRuleBasedMatchingOutput() DomainRuleBasedMatchingOutput { + return o +} + +func (o DomainRuleBasedMatchingOutput) ToDomainRuleBasedMatchingOutputWithContext(ctx context.Context) DomainRuleBasedMatchingOutput { + return o +} + +func (o DomainRuleBasedMatchingOutput) ToDomainRuleBasedMatchingPtrOutput() DomainRuleBasedMatchingPtrOutput { + return o.ToDomainRuleBasedMatchingPtrOutputWithContext(context.Background()) +} + +func (o DomainRuleBasedMatchingOutput) ToDomainRuleBasedMatchingPtrOutputWithContext(ctx context.Context) DomainRuleBasedMatchingPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DomainRuleBasedMatching) *DomainRuleBasedMatching { + return &v + }).(DomainRuleBasedMatchingPtrOutput) +} + +func (o DomainRuleBasedMatchingOutput) ToOutput(ctx context.Context) pulumix.Output[DomainRuleBasedMatching] { + return pulumix.Output[DomainRuleBasedMatching]{ + OutputState: o.OutputState, + } +} + +func (o DomainRuleBasedMatchingOutput) AttributeTypesSelector() DomainAttributeTypesSelectorPtrOutput { + return o.ApplyT(func(v DomainRuleBasedMatching) *DomainAttributeTypesSelector { return v.AttributeTypesSelector }).(DomainAttributeTypesSelectorPtrOutput) +} + +func (o DomainRuleBasedMatchingOutput) ConflictResolution() DomainConflictResolutionPtrOutput { + return o.ApplyT(func(v DomainRuleBasedMatching) *DomainConflictResolution { return v.ConflictResolution }).(DomainConflictResolutionPtrOutput) +} + +// The flag that enables the rule-based matching process of duplicate profiles. +func (o DomainRuleBasedMatchingOutput) Enabled() pulumi.BoolOutput { + return o.ApplyT(func(v DomainRuleBasedMatching) bool { return v.Enabled }).(pulumi.BoolOutput) +} + +func (o DomainRuleBasedMatchingOutput) ExportingConfig() DomainExportingConfigPtrOutput { + return o.ApplyT(func(v DomainRuleBasedMatching) *DomainExportingConfig { return v.ExportingConfig }).(DomainExportingConfigPtrOutput) +} + +// Configures how the rule-based matching process should match profiles. You can have up to 15 MatchingRule in the MatchingRules. +func (o DomainRuleBasedMatchingOutput) MatchingRules() DomainMatchingRuleArrayOutput { + return o.ApplyT(func(v DomainRuleBasedMatching) []DomainMatchingRule { return v.MatchingRules }).(DomainMatchingRuleArrayOutput) +} + +// Indicates the maximum allowed rule level for matching. +func (o DomainRuleBasedMatchingOutput) MaxAllowedRuleLevelForMatching() pulumi.IntPtrOutput { + return o.ApplyT(func(v DomainRuleBasedMatching) *int { return v.MaxAllowedRuleLevelForMatching }).(pulumi.IntPtrOutput) +} + +// Indicates the maximum allowed rule level for merging. +func (o DomainRuleBasedMatchingOutput) MaxAllowedRuleLevelForMerging() pulumi.IntPtrOutput { + return o.ApplyT(func(v DomainRuleBasedMatching) *int { return v.MaxAllowedRuleLevelForMerging }).(pulumi.IntPtrOutput) +} + +func (o DomainRuleBasedMatchingOutput) Status() DomainRuleBasedMatchingStatusPtrOutput { + return o.ApplyT(func(v DomainRuleBasedMatching) *DomainRuleBasedMatchingStatus { return v.Status }).(DomainRuleBasedMatchingStatusPtrOutput) +} + +type DomainRuleBasedMatchingPtrOutput struct{ *pulumi.OutputState } + +func (DomainRuleBasedMatchingPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DomainRuleBasedMatching)(nil)).Elem() +} + +func (o DomainRuleBasedMatchingPtrOutput) ToDomainRuleBasedMatchingPtrOutput() DomainRuleBasedMatchingPtrOutput { + return o +} + +func (o DomainRuleBasedMatchingPtrOutput) ToDomainRuleBasedMatchingPtrOutputWithContext(ctx context.Context) DomainRuleBasedMatchingPtrOutput { + return o +} + +func (o DomainRuleBasedMatchingPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*DomainRuleBasedMatching] { + return pulumix.Output[*DomainRuleBasedMatching]{ + OutputState: o.OutputState, + } +} + +func (o DomainRuleBasedMatchingPtrOutput) Elem() DomainRuleBasedMatchingOutput { + return o.ApplyT(func(v *DomainRuleBasedMatching) DomainRuleBasedMatching { + if v != nil { + return *v + } + var ret DomainRuleBasedMatching + return ret + }).(DomainRuleBasedMatchingOutput) +} + +func (o DomainRuleBasedMatchingPtrOutput) AttributeTypesSelector() DomainAttributeTypesSelectorPtrOutput { + return o.ApplyT(func(v *DomainRuleBasedMatching) *DomainAttributeTypesSelector { + if v == nil { + return nil + } + return v.AttributeTypesSelector + }).(DomainAttributeTypesSelectorPtrOutput) +} + +func (o DomainRuleBasedMatchingPtrOutput) ConflictResolution() DomainConflictResolutionPtrOutput { + return o.ApplyT(func(v *DomainRuleBasedMatching) *DomainConflictResolution { + if v == nil { + return nil + } + return v.ConflictResolution + }).(DomainConflictResolutionPtrOutput) +} + +// The flag that enables the rule-based matching process of duplicate profiles. +func (o DomainRuleBasedMatchingPtrOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *DomainRuleBasedMatching) *bool { + if v == nil { + return nil + } + return &v.Enabled + }).(pulumi.BoolPtrOutput) +} + +func (o DomainRuleBasedMatchingPtrOutput) ExportingConfig() DomainExportingConfigPtrOutput { + return o.ApplyT(func(v *DomainRuleBasedMatching) *DomainExportingConfig { + if v == nil { + return nil + } + return v.ExportingConfig + }).(DomainExportingConfigPtrOutput) +} + +// Configures how the rule-based matching process should match profiles. You can have up to 15 MatchingRule in the MatchingRules. +func (o DomainRuleBasedMatchingPtrOutput) MatchingRules() DomainMatchingRuleArrayOutput { + return o.ApplyT(func(v *DomainRuleBasedMatching) []DomainMatchingRule { + if v == nil { + return nil + } + return v.MatchingRules + }).(DomainMatchingRuleArrayOutput) +} + +// Indicates the maximum allowed rule level for matching. +func (o DomainRuleBasedMatchingPtrOutput) MaxAllowedRuleLevelForMatching() pulumi.IntPtrOutput { + return o.ApplyT(func(v *DomainRuleBasedMatching) *int { + if v == nil { + return nil + } + return v.MaxAllowedRuleLevelForMatching + }).(pulumi.IntPtrOutput) +} + +// Indicates the maximum allowed rule level for merging. +func (o DomainRuleBasedMatchingPtrOutput) MaxAllowedRuleLevelForMerging() pulumi.IntPtrOutput { + return o.ApplyT(func(v *DomainRuleBasedMatching) *int { + if v == nil { + return nil + } + return v.MaxAllowedRuleLevelForMerging + }).(pulumi.IntPtrOutput) +} + +func (o DomainRuleBasedMatchingPtrOutput) Status() DomainRuleBasedMatchingStatusPtrOutput { + return o.ApplyT(func(v *DomainRuleBasedMatching) *DomainRuleBasedMatchingStatus { + if v == nil { + return nil + } + return v.Status + }).(DomainRuleBasedMatchingStatusPtrOutput) +} + +// The S3 location where Identity Resolution Jobs write result files. +type DomainS3ExportingConfig struct { + // The name of the S3 bucket where Identity Resolution Jobs write result files. + S3BucketName string `pulumi:"s3BucketName"` + // The S3 key name of the location where Identity Resolution Jobs write result files. + S3KeyName *string `pulumi:"s3KeyName"` +} + +// DomainS3ExportingConfigInput is an input type that accepts DomainS3ExportingConfigArgs and DomainS3ExportingConfigOutput values. +// You can construct a concrete instance of `DomainS3ExportingConfigInput` via: +// +// DomainS3ExportingConfigArgs{...} +type DomainS3ExportingConfigInput interface { + pulumi.Input + + ToDomainS3ExportingConfigOutput() DomainS3ExportingConfigOutput + ToDomainS3ExportingConfigOutputWithContext(context.Context) DomainS3ExportingConfigOutput +} + +// The S3 location where Identity Resolution Jobs write result files. +type DomainS3ExportingConfigArgs struct { + // The name of the S3 bucket where Identity Resolution Jobs write result files. + S3BucketName pulumi.StringInput `pulumi:"s3BucketName"` + // The S3 key name of the location where Identity Resolution Jobs write result files. + S3KeyName pulumi.StringPtrInput `pulumi:"s3KeyName"` +} + +func (DomainS3ExportingConfigArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DomainS3ExportingConfig)(nil)).Elem() +} + +func (i DomainS3ExportingConfigArgs) ToDomainS3ExportingConfigOutput() DomainS3ExportingConfigOutput { + return i.ToDomainS3ExportingConfigOutputWithContext(context.Background()) +} + +func (i DomainS3ExportingConfigArgs) ToDomainS3ExportingConfigOutputWithContext(ctx context.Context) DomainS3ExportingConfigOutput { + return pulumi.ToOutputWithContext(ctx, i).(DomainS3ExportingConfigOutput) +} + +func (i DomainS3ExportingConfigArgs) ToOutput(ctx context.Context) pulumix.Output[DomainS3ExportingConfig] { + return pulumix.Output[DomainS3ExportingConfig]{ + OutputState: i.ToDomainS3ExportingConfigOutputWithContext(ctx).OutputState, + } +} + +func (i DomainS3ExportingConfigArgs) ToDomainS3ExportingConfigPtrOutput() DomainS3ExportingConfigPtrOutput { + return i.ToDomainS3ExportingConfigPtrOutputWithContext(context.Background()) +} + +func (i DomainS3ExportingConfigArgs) ToDomainS3ExportingConfigPtrOutputWithContext(ctx context.Context) DomainS3ExportingConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DomainS3ExportingConfigOutput).ToDomainS3ExportingConfigPtrOutputWithContext(ctx) +} + +// DomainS3ExportingConfigPtrInput is an input type that accepts DomainS3ExportingConfigArgs, DomainS3ExportingConfigPtr and DomainS3ExportingConfigPtrOutput values. +// You can construct a concrete instance of `DomainS3ExportingConfigPtrInput` via: +// +// DomainS3ExportingConfigArgs{...} +// +// or: +// +// nil +type DomainS3ExportingConfigPtrInput interface { + pulumi.Input + + ToDomainS3ExportingConfigPtrOutput() DomainS3ExportingConfigPtrOutput + ToDomainS3ExportingConfigPtrOutputWithContext(context.Context) DomainS3ExportingConfigPtrOutput +} + +type domainS3ExportingConfigPtrType DomainS3ExportingConfigArgs + +func DomainS3ExportingConfigPtr(v *DomainS3ExportingConfigArgs) DomainS3ExportingConfigPtrInput { + return (*domainS3ExportingConfigPtrType)(v) +} + +func (*domainS3ExportingConfigPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**DomainS3ExportingConfig)(nil)).Elem() +} + +func (i *domainS3ExportingConfigPtrType) ToDomainS3ExportingConfigPtrOutput() DomainS3ExportingConfigPtrOutput { + return i.ToDomainS3ExportingConfigPtrOutputWithContext(context.Background()) +} + +func (i *domainS3ExportingConfigPtrType) ToDomainS3ExportingConfigPtrOutputWithContext(ctx context.Context) DomainS3ExportingConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DomainS3ExportingConfigPtrOutput) +} + +func (i *domainS3ExportingConfigPtrType) ToOutput(ctx context.Context) pulumix.Output[*DomainS3ExportingConfig] { + return pulumix.Output[*DomainS3ExportingConfig]{ + OutputState: i.ToDomainS3ExportingConfigPtrOutputWithContext(ctx).OutputState, + } +} + +// The S3 location where Identity Resolution Jobs write result files. +type DomainS3ExportingConfigOutput struct{ *pulumi.OutputState } + +func (DomainS3ExportingConfigOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DomainS3ExportingConfig)(nil)).Elem() +} + +func (o DomainS3ExportingConfigOutput) ToDomainS3ExportingConfigOutput() DomainS3ExportingConfigOutput { + return o +} + +func (o DomainS3ExportingConfigOutput) ToDomainS3ExportingConfigOutputWithContext(ctx context.Context) DomainS3ExportingConfigOutput { + return o +} + +func (o DomainS3ExportingConfigOutput) ToDomainS3ExportingConfigPtrOutput() DomainS3ExportingConfigPtrOutput { + return o.ToDomainS3ExportingConfigPtrOutputWithContext(context.Background()) +} + +func (o DomainS3ExportingConfigOutput) ToDomainS3ExportingConfigPtrOutputWithContext(ctx context.Context) DomainS3ExportingConfigPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DomainS3ExportingConfig) *DomainS3ExportingConfig { + return &v + }).(DomainS3ExportingConfigPtrOutput) +} + +func (o DomainS3ExportingConfigOutput) ToOutput(ctx context.Context) pulumix.Output[DomainS3ExportingConfig] { + return pulumix.Output[DomainS3ExportingConfig]{ + OutputState: o.OutputState, + } +} + +// The name of the S3 bucket where Identity Resolution Jobs write result files. +func (o DomainS3ExportingConfigOutput) S3BucketName() pulumi.StringOutput { + return o.ApplyT(func(v DomainS3ExportingConfig) string { return v.S3BucketName }).(pulumi.StringOutput) +} + +// The S3 key name of the location where Identity Resolution Jobs write result files. +func (o DomainS3ExportingConfigOutput) S3KeyName() pulumi.StringPtrOutput { + return o.ApplyT(func(v DomainS3ExportingConfig) *string { return v.S3KeyName }).(pulumi.StringPtrOutput) +} + +type DomainS3ExportingConfigPtrOutput struct{ *pulumi.OutputState } + +func (DomainS3ExportingConfigPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DomainS3ExportingConfig)(nil)).Elem() +} + +func (o DomainS3ExportingConfigPtrOutput) ToDomainS3ExportingConfigPtrOutput() DomainS3ExportingConfigPtrOutput { + return o +} + +func (o DomainS3ExportingConfigPtrOutput) ToDomainS3ExportingConfigPtrOutputWithContext(ctx context.Context) DomainS3ExportingConfigPtrOutput { + return o +} + +func (o DomainS3ExportingConfigPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*DomainS3ExportingConfig] { + return pulumix.Output[*DomainS3ExportingConfig]{ + OutputState: o.OutputState, + } +} + +func (o DomainS3ExportingConfigPtrOutput) Elem() DomainS3ExportingConfigOutput { + return o.ApplyT(func(v *DomainS3ExportingConfig) DomainS3ExportingConfig { + if v != nil { + return *v + } + var ret DomainS3ExportingConfig + return ret + }).(DomainS3ExportingConfigOutput) +} + +// The name of the S3 bucket where Identity Resolution Jobs write result files. +func (o DomainS3ExportingConfigPtrOutput) S3BucketName() pulumi.StringPtrOutput { + return o.ApplyT(func(v *DomainS3ExportingConfig) *string { + if v == nil { + return nil + } + return &v.S3BucketName + }).(pulumi.StringPtrOutput) +} + +// The S3 key name of the location where Identity Resolution Jobs write result files. +func (o DomainS3ExportingConfigPtrOutput) S3KeyName() pulumi.StringPtrOutput { + return o.ApplyT(func(v *DomainS3ExportingConfig) *string { + if v == nil { + return nil + } + return v.S3KeyName + }).(pulumi.StringPtrOutput) +} + +// Usage-specific statistics about the domain. +type DomainStats struct { + // The number of profiles that you are currently paying for in the domain. If you have more than 100 objects associated with a single profile, that profile counts as two profiles. If you have more than 200 objects, that profile counts as three, and so on. + MeteringProfileCount *float64 `pulumi:"meteringProfileCount"` + // The total number of objects in domain. + ObjectCount *float64 `pulumi:"objectCount"` + // The total number of profiles currently in the domain. + ProfileCount *float64 `pulumi:"profileCount"` + // The total size, in bytes, of all objects in the domain. + TotalSize *float64 `pulumi:"totalSize"` +} + +// Usage-specific statistics about the domain. +type DomainStatsOutput struct{ *pulumi.OutputState } + +func (DomainStatsOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DomainStats)(nil)).Elem() +} + +func (o DomainStatsOutput) ToDomainStatsOutput() DomainStatsOutput { + return o +} + +func (o DomainStatsOutput) ToDomainStatsOutputWithContext(ctx context.Context) DomainStatsOutput { + return o +} + +func (o DomainStatsOutput) ToOutput(ctx context.Context) pulumix.Output[DomainStats] { + return pulumix.Output[DomainStats]{ + OutputState: o.OutputState, + } +} + +// The number of profiles that you are currently paying for in the domain. If you have more than 100 objects associated with a single profile, that profile counts as two profiles. If you have more than 200 objects, that profile counts as three, and so on. +func (o DomainStatsOutput) MeteringProfileCount() pulumi.Float64PtrOutput { + return o.ApplyT(func(v DomainStats) *float64 { return v.MeteringProfileCount }).(pulumi.Float64PtrOutput) +} + +// The total number of objects in domain. +func (o DomainStatsOutput) ObjectCount() pulumi.Float64PtrOutput { + return o.ApplyT(func(v DomainStats) *float64 { return v.ObjectCount }).(pulumi.Float64PtrOutput) +} + +// The total number of profiles currently in the domain. +func (o DomainStatsOutput) ProfileCount() pulumi.Float64PtrOutput { + return o.ApplyT(func(v DomainStats) *float64 { return v.ProfileCount }).(pulumi.Float64PtrOutput) +} + +// The total size, in bytes, of all objects in the domain. +func (o DomainStatsOutput) TotalSize() pulumi.Float64PtrOutput { + return o.ApplyT(func(v DomainStats) *float64 { return v.TotalSize }).(pulumi.Float64PtrOutput) +} + +type DomainStatsPtrOutput struct{ *pulumi.OutputState } + +func (DomainStatsPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DomainStats)(nil)).Elem() +} + +func (o DomainStatsPtrOutput) ToDomainStatsPtrOutput() DomainStatsPtrOutput { + return o +} + +func (o DomainStatsPtrOutput) ToDomainStatsPtrOutputWithContext(ctx context.Context) DomainStatsPtrOutput { + return o +} + +func (o DomainStatsPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*DomainStats] { + return pulumix.Output[*DomainStats]{ + OutputState: o.OutputState, + } +} + +func (o DomainStatsPtrOutput) Elem() DomainStatsOutput { + return o.ApplyT(func(v *DomainStats) DomainStats { + if v != nil { + return *v + } + var ret DomainStats + return ret + }).(DomainStatsOutput) +} + +// The number of profiles that you are currently paying for in the domain. If you have more than 100 objects associated with a single profile, that profile counts as two profiles. If you have more than 200 objects, that profile counts as three, and so on. +func (o DomainStatsPtrOutput) MeteringProfileCount() pulumi.Float64PtrOutput { + return o.ApplyT(func(v *DomainStats) *float64 { + if v == nil { + return nil + } + return v.MeteringProfileCount + }).(pulumi.Float64PtrOutput) +} + +// The total number of objects in domain. +func (o DomainStatsPtrOutput) ObjectCount() pulumi.Float64PtrOutput { + return o.ApplyT(func(v *DomainStats) *float64 { + if v == nil { + return nil + } + return v.ObjectCount + }).(pulumi.Float64PtrOutput) +} + +// The total number of profiles currently in the domain. +func (o DomainStatsPtrOutput) ProfileCount() pulumi.Float64PtrOutput { + return o.ApplyT(func(v *DomainStats) *float64 { + if v == nil { + return nil + } + return v.ProfileCount + }).(pulumi.Float64PtrOutput) +} + +// The total size, in bytes, of all objects in the domain. +func (o DomainStatsPtrOutput) TotalSize() pulumi.Float64PtrOutput { + return o.ApplyT(func(v *DomainStats) *float64 { + if v == nil { + return nil + } + return v.TotalSize + }).(pulumi.Float64PtrOutput) +} + type DomainTag struct { Key string `pulumi:"key"` Value string `pulumi:"value"` @@ -4944,6 +6989,26 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*CalculatedAttributeDefinitionTagArrayInput)(nil)).Elem(), CalculatedAttributeDefinitionTagArray{}) pulumi.RegisterInputType(reflect.TypeOf((*CalculatedAttributeDefinitionThresholdInput)(nil)).Elem(), CalculatedAttributeDefinitionThresholdArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*CalculatedAttributeDefinitionThresholdPtrInput)(nil)).Elem(), CalculatedAttributeDefinitionThresholdArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DomainAttributeTypesSelectorInput)(nil)).Elem(), DomainAttributeTypesSelectorArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DomainAttributeTypesSelectorPtrInput)(nil)).Elem(), DomainAttributeTypesSelectorArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DomainAutoMergingInput)(nil)).Elem(), DomainAutoMergingArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DomainAutoMergingPtrInput)(nil)).Elem(), DomainAutoMergingArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DomainConflictResolutionInput)(nil)).Elem(), DomainConflictResolutionArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DomainConflictResolutionPtrInput)(nil)).Elem(), DomainConflictResolutionArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DomainConsolidationInput)(nil)).Elem(), DomainConsolidationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DomainConsolidationPtrInput)(nil)).Elem(), DomainConsolidationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DomainExportingConfigInput)(nil)).Elem(), DomainExportingConfigArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DomainExportingConfigPtrInput)(nil)).Elem(), DomainExportingConfigArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DomainJobScheduleInput)(nil)).Elem(), DomainJobScheduleArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DomainJobSchedulePtrInput)(nil)).Elem(), DomainJobScheduleArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DomainMatchingInput)(nil)).Elem(), DomainMatchingArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DomainMatchingPtrInput)(nil)).Elem(), DomainMatchingArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DomainMatchingRuleInput)(nil)).Elem(), DomainMatchingRuleArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DomainMatchingRuleArrayInput)(nil)).Elem(), DomainMatchingRuleArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*DomainRuleBasedMatchingInput)(nil)).Elem(), DomainRuleBasedMatchingArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DomainRuleBasedMatchingPtrInput)(nil)).Elem(), DomainRuleBasedMatchingArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DomainS3ExportingConfigInput)(nil)).Elem(), DomainS3ExportingConfigArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DomainS3ExportingConfigPtrInput)(nil)).Elem(), DomainS3ExportingConfigArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DomainTagInput)(nil)).Elem(), DomainTagArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DomainTagArrayInput)(nil)).Elem(), DomainTagArray{}) pulumi.RegisterInputType(reflect.TypeOf((*EventStreamTagInput)(nil)).Elem(), EventStreamTagArgs{}) @@ -5006,6 +7071,28 @@ func init() { pulumi.RegisterOutputType(CalculatedAttributeDefinitionThresholdPtrOutput{}) pulumi.RegisterOutputType(DestinationDetailsPropertiesOutput{}) pulumi.RegisterOutputType(DestinationDetailsPropertiesPtrOutput{}) + pulumi.RegisterOutputType(DomainAttributeTypesSelectorOutput{}) + pulumi.RegisterOutputType(DomainAttributeTypesSelectorPtrOutput{}) + pulumi.RegisterOutputType(DomainAutoMergingOutput{}) + pulumi.RegisterOutputType(DomainAutoMergingPtrOutput{}) + pulumi.RegisterOutputType(DomainConflictResolutionOutput{}) + pulumi.RegisterOutputType(DomainConflictResolutionPtrOutput{}) + pulumi.RegisterOutputType(DomainConsolidationOutput{}) + pulumi.RegisterOutputType(DomainConsolidationPtrOutput{}) + pulumi.RegisterOutputType(DomainExportingConfigOutput{}) + pulumi.RegisterOutputType(DomainExportingConfigPtrOutput{}) + pulumi.RegisterOutputType(DomainJobScheduleOutput{}) + pulumi.RegisterOutputType(DomainJobSchedulePtrOutput{}) + pulumi.RegisterOutputType(DomainMatchingOutput{}) + pulumi.RegisterOutputType(DomainMatchingPtrOutput{}) + pulumi.RegisterOutputType(DomainMatchingRuleOutput{}) + pulumi.RegisterOutputType(DomainMatchingRuleArrayOutput{}) + pulumi.RegisterOutputType(DomainRuleBasedMatchingOutput{}) + pulumi.RegisterOutputType(DomainRuleBasedMatchingPtrOutput{}) + pulumi.RegisterOutputType(DomainS3ExportingConfigOutput{}) + pulumi.RegisterOutputType(DomainS3ExportingConfigPtrOutput{}) + pulumi.RegisterOutputType(DomainStatsOutput{}) + pulumi.RegisterOutputType(DomainStatsPtrOutput{}) pulumi.RegisterOutputType(DomainTagOutput{}) pulumi.RegisterOutputType(DomainTagArrayOutput{}) pulumi.RegisterOutputType(EventStreamTagOutput{}) diff --git a/sdk/go/aws/ec2/getSubnet.go b/sdk/go/aws/ec2/getSubnet.go index 8402adc990..3c61ac17b5 100644 --- a/sdk/go/aws/ec2/getSubnet.go +++ b/sdk/go/aws/ec2/getSubnet.go @@ -28,10 +28,14 @@ type LookupSubnetArgs struct { } type LookupSubnetResult struct { - AssignIpv6AddressOnCreation *bool `pulumi:"assignIpv6AddressOnCreation"` - EnableDns64 *bool `pulumi:"enableDns64"` - Ipv6CidrBlock *string `pulumi:"ipv6CidrBlock"` - Ipv6CidrBlocks []string `pulumi:"ipv6CidrBlocks"` + AssignIpv6AddressOnCreation *bool `pulumi:"assignIpv6AddressOnCreation"` + EnableDns64 *bool `pulumi:"enableDns64"` + // The netmask length of the IPv4 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool + Ipv4NetmaskLength *int `pulumi:"ipv4NetmaskLength"` + Ipv6CidrBlock *string `pulumi:"ipv6CidrBlock"` + Ipv6CidrBlocks []string `pulumi:"ipv6CidrBlocks"` + // The netmask length of the IPv6 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool + Ipv6NetmaskLength *int `pulumi:"ipv6NetmaskLength"` MapPublicIpOnLaunch *bool `pulumi:"mapPublicIpOnLaunch"` NetworkAclAssociationId *string `pulumi:"networkAclAssociationId"` PrivateDnsNameOptionsOnLaunch *PrivateDnsNameOptionsOnLaunchProperties `pulumi:"privateDnsNameOptionsOnLaunch"` @@ -88,6 +92,11 @@ func (o LookupSubnetResultOutput) EnableDns64() pulumi.BoolPtrOutput { return o.ApplyT(func(v LookupSubnetResult) *bool { return v.EnableDns64 }).(pulumi.BoolPtrOutput) } +// The netmask length of the IPv4 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool +func (o LookupSubnetResultOutput) Ipv4NetmaskLength() pulumi.IntPtrOutput { + return o.ApplyT(func(v LookupSubnetResult) *int { return v.Ipv4NetmaskLength }).(pulumi.IntPtrOutput) +} + func (o LookupSubnetResultOutput) Ipv6CidrBlock() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupSubnetResult) *string { return v.Ipv6CidrBlock }).(pulumi.StringPtrOutput) } @@ -96,6 +105,11 @@ func (o LookupSubnetResultOutput) Ipv6CidrBlocks() pulumi.StringArrayOutput { return o.ApplyT(func(v LookupSubnetResult) []string { return v.Ipv6CidrBlocks }).(pulumi.StringArrayOutput) } +// The netmask length of the IPv6 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool +func (o LookupSubnetResultOutput) Ipv6NetmaskLength() pulumi.IntPtrOutput { + return o.ApplyT(func(v LookupSubnetResult) *int { return v.Ipv6NetmaskLength }).(pulumi.IntPtrOutput) +} + func (o LookupSubnetResultOutput) MapPublicIpOnLaunch() pulumi.BoolPtrOutput { return o.ApplyT(func(v LookupSubnetResult) *bool { return v.MapPublicIpOnLaunch }).(pulumi.BoolPtrOutput) } diff --git a/sdk/go/aws/ec2/subnet.go b/sdk/go/aws/ec2/subnet.go index 340ed66d6e..799f6cf919 100644 --- a/sdk/go/aws/ec2/subnet.go +++ b/sdk/go/aws/ec2/subnet.go @@ -17,14 +17,18 @@ import ( type Subnet struct { pulumi.CustomResourceState - AssignIpv6AddressOnCreation pulumi.BoolPtrOutput `pulumi:"assignIpv6AddressOnCreation"` - AvailabilityZone pulumi.StringPtrOutput `pulumi:"availabilityZone"` - AvailabilityZoneId pulumi.StringPtrOutput `pulumi:"availabilityZoneId"` - CidrBlock pulumi.StringPtrOutput `pulumi:"cidrBlock"` - EnableDns64 pulumi.BoolPtrOutput `pulumi:"enableDns64"` - Ipv6CidrBlock pulumi.StringPtrOutput `pulumi:"ipv6CidrBlock"` - Ipv6CidrBlocks pulumi.StringArrayOutput `pulumi:"ipv6CidrBlocks"` - Ipv6Native pulumi.BoolPtrOutput `pulumi:"ipv6Native"` + AssignIpv6AddressOnCreation pulumi.BoolPtrOutput `pulumi:"assignIpv6AddressOnCreation"` + AvailabilityZone pulumi.StringPtrOutput `pulumi:"availabilityZone"` + AvailabilityZoneId pulumi.StringPtrOutput `pulumi:"availabilityZoneId"` + CidrBlock pulumi.StringPtrOutput `pulumi:"cidrBlock"` + EnableDns64 pulumi.BoolPtrOutput `pulumi:"enableDns64"` + // The netmask length of the IPv4 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool + Ipv4NetmaskLength pulumi.IntPtrOutput `pulumi:"ipv4NetmaskLength"` + Ipv6CidrBlock pulumi.StringPtrOutput `pulumi:"ipv6CidrBlock"` + Ipv6CidrBlocks pulumi.StringArrayOutput `pulumi:"ipv6CidrBlocks"` + Ipv6Native pulumi.BoolPtrOutput `pulumi:"ipv6Native"` + // The netmask length of the IPv6 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool + Ipv6NetmaskLength pulumi.IntPtrOutput `pulumi:"ipv6NetmaskLength"` MapPublicIpOnLaunch pulumi.BoolPtrOutput `pulumi:"mapPublicIpOnLaunch"` NetworkAclAssociationId pulumi.StringOutput `pulumi:"networkAclAssociationId"` OutpostArn pulumi.StringPtrOutput `pulumi:"outpostArn"` @@ -86,13 +90,17 @@ func (SubnetState) ElementType() reflect.Type { } type subnetArgs struct { - AssignIpv6AddressOnCreation *bool `pulumi:"assignIpv6AddressOnCreation"` - AvailabilityZone *string `pulumi:"availabilityZone"` - AvailabilityZoneId *string `pulumi:"availabilityZoneId"` - CidrBlock *string `pulumi:"cidrBlock"` - EnableDns64 *bool `pulumi:"enableDns64"` - Ipv6CidrBlock *string `pulumi:"ipv6CidrBlock"` - Ipv6Native *bool `pulumi:"ipv6Native"` + AssignIpv6AddressOnCreation *bool `pulumi:"assignIpv6AddressOnCreation"` + AvailabilityZone *string `pulumi:"availabilityZone"` + AvailabilityZoneId *string `pulumi:"availabilityZoneId"` + CidrBlock *string `pulumi:"cidrBlock"` + EnableDns64 *bool `pulumi:"enableDns64"` + // The netmask length of the IPv4 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool + Ipv4NetmaskLength *int `pulumi:"ipv4NetmaskLength"` + Ipv6CidrBlock *string `pulumi:"ipv6CidrBlock"` + Ipv6Native *bool `pulumi:"ipv6Native"` + // The netmask length of the IPv6 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool + Ipv6NetmaskLength *int `pulumi:"ipv6NetmaskLength"` MapPublicIpOnLaunch *bool `pulumi:"mapPublicIpOnLaunch"` OutpostArn *string `pulumi:"outpostArn"` PrivateDnsNameOptionsOnLaunch *PrivateDnsNameOptionsOnLaunchProperties `pulumi:"privateDnsNameOptionsOnLaunch"` @@ -102,13 +110,17 @@ type subnetArgs struct { // The set of arguments for constructing a Subnet resource. type SubnetArgs struct { - AssignIpv6AddressOnCreation pulumi.BoolPtrInput - AvailabilityZone pulumi.StringPtrInput - AvailabilityZoneId pulumi.StringPtrInput - CidrBlock pulumi.StringPtrInput - EnableDns64 pulumi.BoolPtrInput - Ipv6CidrBlock pulumi.StringPtrInput - Ipv6Native pulumi.BoolPtrInput + AssignIpv6AddressOnCreation pulumi.BoolPtrInput + AvailabilityZone pulumi.StringPtrInput + AvailabilityZoneId pulumi.StringPtrInput + CidrBlock pulumi.StringPtrInput + EnableDns64 pulumi.BoolPtrInput + // The netmask length of the IPv4 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool + Ipv4NetmaskLength pulumi.IntPtrInput + Ipv6CidrBlock pulumi.StringPtrInput + Ipv6Native pulumi.BoolPtrInput + // The netmask length of the IPv6 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool + Ipv6NetmaskLength pulumi.IntPtrInput MapPublicIpOnLaunch pulumi.BoolPtrInput OutpostArn pulumi.StringPtrInput PrivateDnsNameOptionsOnLaunch PrivateDnsNameOptionsOnLaunchPropertiesPtrInput @@ -185,6 +197,11 @@ func (o SubnetOutput) EnableDns64() pulumi.BoolPtrOutput { return o.ApplyT(func(v *Subnet) pulumi.BoolPtrOutput { return v.EnableDns64 }).(pulumi.BoolPtrOutput) } +// The netmask length of the IPv4 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool +func (o SubnetOutput) Ipv4NetmaskLength() pulumi.IntPtrOutput { + return o.ApplyT(func(v *Subnet) pulumi.IntPtrOutput { return v.Ipv4NetmaskLength }).(pulumi.IntPtrOutput) +} + func (o SubnetOutput) Ipv6CidrBlock() pulumi.StringPtrOutput { return o.ApplyT(func(v *Subnet) pulumi.StringPtrOutput { return v.Ipv6CidrBlock }).(pulumi.StringPtrOutput) } @@ -197,6 +214,11 @@ func (o SubnetOutput) Ipv6Native() pulumi.BoolPtrOutput { return o.ApplyT(func(v *Subnet) pulumi.BoolPtrOutput { return v.Ipv6Native }).(pulumi.BoolPtrOutput) } +// The netmask length of the IPv6 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool +func (o SubnetOutput) Ipv6NetmaskLength() pulumi.IntPtrOutput { + return o.ApplyT(func(v *Subnet) pulumi.IntPtrOutput { return v.Ipv6NetmaskLength }).(pulumi.IntPtrOutput) +} + func (o SubnetOutput) MapPublicIpOnLaunch() pulumi.BoolPtrOutput { return o.ApplyT(func(v *Subnet) pulumi.BoolPtrOutput { return v.MapPublicIpOnLaunch }).(pulumi.BoolPtrOutput) } diff --git a/sdk/go/aws/entityresolution/getIdMappingWorkflow.go b/sdk/go/aws/entityresolution/getIdMappingWorkflow.go new file mode 100644 index 0000000000..4eba12c730 --- /dev/null +++ b/sdk/go/aws/entityresolution/getIdMappingWorkflow.go @@ -0,0 +1,127 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package entityresolution + +import ( + "context" + "reflect" + + "github.com/pulumi/pulumi-aws-native/sdk/go/aws/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" + "github.com/pulumi/pulumi/sdk/v3/go/pulumix" +) + +// IdMappingWorkflow defined in AWS Entity Resolution service +func LookupIdMappingWorkflow(ctx *pulumi.Context, args *LookupIdMappingWorkflowArgs, opts ...pulumi.InvokeOption) (*LookupIdMappingWorkflowResult, error) { + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupIdMappingWorkflowResult + err := ctx.Invoke("aws-native:entityresolution:getIdMappingWorkflow", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +type LookupIdMappingWorkflowArgs struct { + // The name of the IdMappingWorkflow + WorkflowName string `pulumi:"workflowName"` +} + +type LookupIdMappingWorkflowResult struct { + CreatedAt *string `pulumi:"createdAt"` + // The description of the IdMappingWorkflow + Description *string `pulumi:"description"` + IdMappingTechniques *IdMappingWorkflowIdMappingTechniques `pulumi:"idMappingTechniques"` + InputSourceConfig []IdMappingWorkflowInputSource `pulumi:"inputSourceConfig"` + OutputSourceConfig []IdMappingWorkflowOutputSource `pulumi:"outputSourceConfig"` + RoleArn *string `pulumi:"roleArn"` + Tags []IdMappingWorkflowTag `pulumi:"tags"` + UpdatedAt *string `pulumi:"updatedAt"` + WorkflowArn *string `pulumi:"workflowArn"` +} + +func LookupIdMappingWorkflowOutput(ctx *pulumi.Context, args LookupIdMappingWorkflowOutputArgs, opts ...pulumi.InvokeOption) LookupIdMappingWorkflowResultOutput { + return pulumi.ToOutputWithContext(context.Background(), args). + ApplyT(func(v interface{}) (LookupIdMappingWorkflowResult, error) { + args := v.(LookupIdMappingWorkflowArgs) + r, err := LookupIdMappingWorkflow(ctx, &args, opts...) + var s LookupIdMappingWorkflowResult + if r != nil { + s = *r + } + return s, err + }).(LookupIdMappingWorkflowResultOutput) +} + +type LookupIdMappingWorkflowOutputArgs struct { + // The name of the IdMappingWorkflow + WorkflowName pulumi.StringInput `pulumi:"workflowName"` +} + +func (LookupIdMappingWorkflowOutputArgs) ElementType() reflect.Type { + return reflect.TypeOf((*LookupIdMappingWorkflowArgs)(nil)).Elem() +} + +type LookupIdMappingWorkflowResultOutput struct{ *pulumi.OutputState } + +func (LookupIdMappingWorkflowResultOutput) ElementType() reflect.Type { + return reflect.TypeOf((*LookupIdMappingWorkflowResult)(nil)).Elem() +} + +func (o LookupIdMappingWorkflowResultOutput) ToLookupIdMappingWorkflowResultOutput() LookupIdMappingWorkflowResultOutput { + return o +} + +func (o LookupIdMappingWorkflowResultOutput) ToLookupIdMappingWorkflowResultOutputWithContext(ctx context.Context) LookupIdMappingWorkflowResultOutput { + return o +} + +func (o LookupIdMappingWorkflowResultOutput) ToOutput(ctx context.Context) pulumix.Output[LookupIdMappingWorkflowResult] { + return pulumix.Output[LookupIdMappingWorkflowResult]{ + OutputState: o.OutputState, + } +} + +func (o LookupIdMappingWorkflowResultOutput) CreatedAt() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupIdMappingWorkflowResult) *string { return v.CreatedAt }).(pulumi.StringPtrOutput) +} + +// The description of the IdMappingWorkflow +func (o LookupIdMappingWorkflowResultOutput) Description() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupIdMappingWorkflowResult) *string { return v.Description }).(pulumi.StringPtrOutput) +} + +func (o LookupIdMappingWorkflowResultOutput) IdMappingTechniques() IdMappingWorkflowIdMappingTechniquesPtrOutput { + return o.ApplyT(func(v LookupIdMappingWorkflowResult) *IdMappingWorkflowIdMappingTechniques { + return v.IdMappingTechniques + }).(IdMappingWorkflowIdMappingTechniquesPtrOutput) +} + +func (o LookupIdMappingWorkflowResultOutput) InputSourceConfig() IdMappingWorkflowInputSourceArrayOutput { + return o.ApplyT(func(v LookupIdMappingWorkflowResult) []IdMappingWorkflowInputSource { return v.InputSourceConfig }).(IdMappingWorkflowInputSourceArrayOutput) +} + +func (o LookupIdMappingWorkflowResultOutput) OutputSourceConfig() IdMappingWorkflowOutputSourceArrayOutput { + return o.ApplyT(func(v LookupIdMappingWorkflowResult) []IdMappingWorkflowOutputSource { return v.OutputSourceConfig }).(IdMappingWorkflowOutputSourceArrayOutput) +} + +func (o LookupIdMappingWorkflowResultOutput) RoleArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupIdMappingWorkflowResult) *string { return v.RoleArn }).(pulumi.StringPtrOutput) +} + +func (o LookupIdMappingWorkflowResultOutput) Tags() IdMappingWorkflowTagArrayOutput { + return o.ApplyT(func(v LookupIdMappingWorkflowResult) []IdMappingWorkflowTag { return v.Tags }).(IdMappingWorkflowTagArrayOutput) +} + +func (o LookupIdMappingWorkflowResultOutput) UpdatedAt() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupIdMappingWorkflowResult) *string { return v.UpdatedAt }).(pulumi.StringPtrOutput) +} + +func (o LookupIdMappingWorkflowResultOutput) WorkflowArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupIdMappingWorkflowResult) *string { return v.WorkflowArn }).(pulumi.StringPtrOutput) +} + +func init() { + pulumi.RegisterOutputType(LookupIdMappingWorkflowResultOutput{}) +} diff --git a/sdk/go/aws/entityresolution/idMappingWorkflow.go b/sdk/go/aws/entityresolution/idMappingWorkflow.go new file mode 100644 index 0000000000..2c65e76213 --- /dev/null +++ b/sdk/go/aws/entityresolution/idMappingWorkflow.go @@ -0,0 +1,211 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package entityresolution + +import ( + "context" + "reflect" + + "errors" + "github.com/pulumi/pulumi-aws-native/sdk/go/aws/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" + "github.com/pulumi/pulumi/sdk/v3/go/pulumix" +) + +// IdMappingWorkflow defined in AWS Entity Resolution service +type IdMappingWorkflow struct { + pulumi.CustomResourceState + + CreatedAt pulumi.StringOutput `pulumi:"createdAt"` + // The description of the IdMappingWorkflow + Description pulumi.StringPtrOutput `pulumi:"description"` + IdMappingTechniques IdMappingWorkflowIdMappingTechniquesOutput `pulumi:"idMappingTechniques"` + InputSourceConfig IdMappingWorkflowInputSourceArrayOutput `pulumi:"inputSourceConfig"` + OutputSourceConfig IdMappingWorkflowOutputSourceArrayOutput `pulumi:"outputSourceConfig"` + RoleArn pulumi.StringOutput `pulumi:"roleArn"` + Tags IdMappingWorkflowTagArrayOutput `pulumi:"tags"` + UpdatedAt pulumi.StringOutput `pulumi:"updatedAt"` + WorkflowArn pulumi.StringOutput `pulumi:"workflowArn"` + // The name of the IdMappingWorkflow + WorkflowName pulumi.StringOutput `pulumi:"workflowName"` +} + +// NewIdMappingWorkflow registers a new resource with the given unique name, arguments, and options. +func NewIdMappingWorkflow(ctx *pulumi.Context, + name string, args *IdMappingWorkflowArgs, opts ...pulumi.ResourceOption) (*IdMappingWorkflow, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.IdMappingTechniques == nil { + return nil, errors.New("invalid value for required argument 'IdMappingTechniques'") + } + if args.InputSourceConfig == nil { + return nil, errors.New("invalid value for required argument 'InputSourceConfig'") + } + if args.OutputSourceConfig == nil { + return nil, errors.New("invalid value for required argument 'OutputSourceConfig'") + } + if args.RoleArn == nil { + return nil, errors.New("invalid value for required argument 'RoleArn'") + } + if args.WorkflowName == nil { + return nil, errors.New("invalid value for required argument 'WorkflowName'") + } + replaceOnChanges := pulumi.ReplaceOnChanges([]string{ + "workflowName", + }) + opts = append(opts, replaceOnChanges) + opts = internal.PkgResourceDefaultOpts(opts) + var resource IdMappingWorkflow + err := ctx.RegisterResource("aws-native:entityresolution:IdMappingWorkflow", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetIdMappingWorkflow gets an existing IdMappingWorkflow resource's state with the given name, ID, and optional +// state properties that are used to uniquely qualify the lookup (nil if not required). +func GetIdMappingWorkflow(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *IdMappingWorkflowState, opts ...pulumi.ResourceOption) (*IdMappingWorkflow, error) { + var resource IdMappingWorkflow + err := ctx.ReadResource("aws-native:entityresolution:IdMappingWorkflow", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering IdMappingWorkflow resources. +type idMappingWorkflowState struct { +} + +type IdMappingWorkflowState struct { +} + +func (IdMappingWorkflowState) ElementType() reflect.Type { + return reflect.TypeOf((*idMappingWorkflowState)(nil)).Elem() +} + +type idMappingWorkflowArgs struct { + // The description of the IdMappingWorkflow + Description *string `pulumi:"description"` + IdMappingTechniques IdMappingWorkflowIdMappingTechniques `pulumi:"idMappingTechniques"` + InputSourceConfig []IdMappingWorkflowInputSource `pulumi:"inputSourceConfig"` + OutputSourceConfig []IdMappingWorkflowOutputSource `pulumi:"outputSourceConfig"` + RoleArn string `pulumi:"roleArn"` + Tags []IdMappingWorkflowTag `pulumi:"tags"` + // The name of the IdMappingWorkflow + WorkflowName string `pulumi:"workflowName"` +} + +// The set of arguments for constructing a IdMappingWorkflow resource. +type IdMappingWorkflowArgs struct { + // The description of the IdMappingWorkflow + Description pulumi.StringPtrInput + IdMappingTechniques IdMappingWorkflowIdMappingTechniquesInput + InputSourceConfig IdMappingWorkflowInputSourceArrayInput + OutputSourceConfig IdMappingWorkflowOutputSourceArrayInput + RoleArn pulumi.StringInput + Tags IdMappingWorkflowTagArrayInput + // The name of the IdMappingWorkflow + WorkflowName pulumi.StringInput +} + +func (IdMappingWorkflowArgs) ElementType() reflect.Type { + return reflect.TypeOf((*idMappingWorkflowArgs)(nil)).Elem() +} + +type IdMappingWorkflowInput interface { + pulumi.Input + + ToIdMappingWorkflowOutput() IdMappingWorkflowOutput + ToIdMappingWorkflowOutputWithContext(ctx context.Context) IdMappingWorkflowOutput +} + +func (*IdMappingWorkflow) ElementType() reflect.Type { + return reflect.TypeOf((**IdMappingWorkflow)(nil)).Elem() +} + +func (i *IdMappingWorkflow) ToIdMappingWorkflowOutput() IdMappingWorkflowOutput { + return i.ToIdMappingWorkflowOutputWithContext(context.Background()) +} + +func (i *IdMappingWorkflow) ToIdMappingWorkflowOutputWithContext(ctx context.Context) IdMappingWorkflowOutput { + return pulumi.ToOutputWithContext(ctx, i).(IdMappingWorkflowOutput) +} + +func (i *IdMappingWorkflow) ToOutput(ctx context.Context) pulumix.Output[*IdMappingWorkflow] { + return pulumix.Output[*IdMappingWorkflow]{ + OutputState: i.ToIdMappingWorkflowOutputWithContext(ctx).OutputState, + } +} + +type IdMappingWorkflowOutput struct{ *pulumi.OutputState } + +func (IdMappingWorkflowOutput) ElementType() reflect.Type { + return reflect.TypeOf((**IdMappingWorkflow)(nil)).Elem() +} + +func (o IdMappingWorkflowOutput) ToIdMappingWorkflowOutput() IdMappingWorkflowOutput { + return o +} + +func (o IdMappingWorkflowOutput) ToIdMappingWorkflowOutputWithContext(ctx context.Context) IdMappingWorkflowOutput { + return o +} + +func (o IdMappingWorkflowOutput) ToOutput(ctx context.Context) pulumix.Output[*IdMappingWorkflow] { + return pulumix.Output[*IdMappingWorkflow]{ + OutputState: o.OutputState, + } +} + +func (o IdMappingWorkflowOutput) CreatedAt() pulumi.StringOutput { + return o.ApplyT(func(v *IdMappingWorkflow) pulumi.StringOutput { return v.CreatedAt }).(pulumi.StringOutput) +} + +// The description of the IdMappingWorkflow +func (o IdMappingWorkflowOutput) Description() pulumi.StringPtrOutput { + return o.ApplyT(func(v *IdMappingWorkflow) pulumi.StringPtrOutput { return v.Description }).(pulumi.StringPtrOutput) +} + +func (o IdMappingWorkflowOutput) IdMappingTechniques() IdMappingWorkflowIdMappingTechniquesOutput { + return o.ApplyT(func(v *IdMappingWorkflow) IdMappingWorkflowIdMappingTechniquesOutput { return v.IdMappingTechniques }).(IdMappingWorkflowIdMappingTechniquesOutput) +} + +func (o IdMappingWorkflowOutput) InputSourceConfig() IdMappingWorkflowInputSourceArrayOutput { + return o.ApplyT(func(v *IdMappingWorkflow) IdMappingWorkflowInputSourceArrayOutput { return v.InputSourceConfig }).(IdMappingWorkflowInputSourceArrayOutput) +} + +func (o IdMappingWorkflowOutput) OutputSourceConfig() IdMappingWorkflowOutputSourceArrayOutput { + return o.ApplyT(func(v *IdMappingWorkflow) IdMappingWorkflowOutputSourceArrayOutput { return v.OutputSourceConfig }).(IdMappingWorkflowOutputSourceArrayOutput) +} + +func (o IdMappingWorkflowOutput) RoleArn() pulumi.StringOutput { + return o.ApplyT(func(v *IdMappingWorkflow) pulumi.StringOutput { return v.RoleArn }).(pulumi.StringOutput) +} + +func (o IdMappingWorkflowOutput) Tags() IdMappingWorkflowTagArrayOutput { + return o.ApplyT(func(v *IdMappingWorkflow) IdMappingWorkflowTagArrayOutput { return v.Tags }).(IdMappingWorkflowTagArrayOutput) +} + +func (o IdMappingWorkflowOutput) UpdatedAt() pulumi.StringOutput { + return o.ApplyT(func(v *IdMappingWorkflow) pulumi.StringOutput { return v.UpdatedAt }).(pulumi.StringOutput) +} + +func (o IdMappingWorkflowOutput) WorkflowArn() pulumi.StringOutput { + return o.ApplyT(func(v *IdMappingWorkflow) pulumi.StringOutput { return v.WorkflowArn }).(pulumi.StringOutput) +} + +// The name of the IdMappingWorkflow +func (o IdMappingWorkflowOutput) WorkflowName() pulumi.StringOutput { + return o.ApplyT(func(v *IdMappingWorkflow) pulumi.StringOutput { return v.WorkflowName }).(pulumi.StringOutput) +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*IdMappingWorkflowInput)(nil)).Elem(), &IdMappingWorkflow{}) + pulumi.RegisterOutputType(IdMappingWorkflowOutput{}) +} diff --git a/sdk/go/aws/entityresolution/init.go b/sdk/go/aws/entityresolution/init.go index 95f5d7f6fc..7e5a412213 100644 --- a/sdk/go/aws/entityresolution/init.go +++ b/sdk/go/aws/entityresolution/init.go @@ -21,6 +21,8 @@ func (m *module) Version() semver.Version { func (m *module) Construct(ctx *pulumi.Context, name, typ, urn string) (r pulumi.Resource, err error) { switch typ { + case "aws-native:entityresolution:IdMappingWorkflow": + r = &IdMappingWorkflow{} case "aws-native:entityresolution:MatchingWorkflow": r = &MatchingWorkflow{} case "aws-native:entityresolution:SchemaMapping": diff --git a/sdk/go/aws/entityresolution/pulumiEnums.go b/sdk/go/aws/entityresolution/pulumiEnums.go index c19b6e0109..0dd332ef1c 100644 --- a/sdk/go/aws/entityresolution/pulumiEnums.go +++ b/sdk/go/aws/entityresolution/pulumiEnums.go @@ -11,6 +11,187 @@ import ( "github.com/pulumi/pulumi/sdk/v3/go/pulumix" ) +type IdMappingWorkflowIdMappingTechniquesIdMappingType string + +const ( + IdMappingWorkflowIdMappingTechniquesIdMappingTypeProvider = IdMappingWorkflowIdMappingTechniquesIdMappingType("PROVIDER") +) + +func (IdMappingWorkflowIdMappingTechniquesIdMappingType) ElementType() reflect.Type { + return reflect.TypeOf((*IdMappingWorkflowIdMappingTechniquesIdMappingType)(nil)).Elem() +} + +func (e IdMappingWorkflowIdMappingTechniquesIdMappingType) ToIdMappingWorkflowIdMappingTechniquesIdMappingTypeOutput() IdMappingWorkflowIdMappingTechniquesIdMappingTypeOutput { + return pulumi.ToOutput(e).(IdMappingWorkflowIdMappingTechniquesIdMappingTypeOutput) +} + +func (e IdMappingWorkflowIdMappingTechniquesIdMappingType) ToIdMappingWorkflowIdMappingTechniquesIdMappingTypeOutputWithContext(ctx context.Context) IdMappingWorkflowIdMappingTechniquesIdMappingTypeOutput { + return pulumi.ToOutputWithContext(ctx, e).(IdMappingWorkflowIdMappingTechniquesIdMappingTypeOutput) +} + +func (e IdMappingWorkflowIdMappingTechniquesIdMappingType) ToIdMappingWorkflowIdMappingTechniquesIdMappingTypePtrOutput() IdMappingWorkflowIdMappingTechniquesIdMappingTypePtrOutput { + return e.ToIdMappingWorkflowIdMappingTechniquesIdMappingTypePtrOutputWithContext(context.Background()) +} + +func (e IdMappingWorkflowIdMappingTechniquesIdMappingType) ToIdMappingWorkflowIdMappingTechniquesIdMappingTypePtrOutputWithContext(ctx context.Context) IdMappingWorkflowIdMappingTechniquesIdMappingTypePtrOutput { + return IdMappingWorkflowIdMappingTechniquesIdMappingType(e).ToIdMappingWorkflowIdMappingTechniquesIdMappingTypeOutputWithContext(ctx).ToIdMappingWorkflowIdMappingTechniquesIdMappingTypePtrOutputWithContext(ctx) +} + +func (e IdMappingWorkflowIdMappingTechniquesIdMappingType) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e IdMappingWorkflowIdMappingTechniquesIdMappingType) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e IdMappingWorkflowIdMappingTechniquesIdMappingType) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e IdMappingWorkflowIdMappingTechniquesIdMappingType) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type IdMappingWorkflowIdMappingTechniquesIdMappingTypeOutput struct{ *pulumi.OutputState } + +func (IdMappingWorkflowIdMappingTechniquesIdMappingTypeOutput) ElementType() reflect.Type { + return reflect.TypeOf((*IdMappingWorkflowIdMappingTechniquesIdMappingType)(nil)).Elem() +} + +func (o IdMappingWorkflowIdMappingTechniquesIdMappingTypeOutput) ToIdMappingWorkflowIdMappingTechniquesIdMappingTypeOutput() IdMappingWorkflowIdMappingTechniquesIdMappingTypeOutput { + return o +} + +func (o IdMappingWorkflowIdMappingTechniquesIdMappingTypeOutput) ToIdMappingWorkflowIdMappingTechniquesIdMappingTypeOutputWithContext(ctx context.Context) IdMappingWorkflowIdMappingTechniquesIdMappingTypeOutput { + return o +} + +func (o IdMappingWorkflowIdMappingTechniquesIdMappingTypeOutput) ToIdMappingWorkflowIdMappingTechniquesIdMappingTypePtrOutput() IdMappingWorkflowIdMappingTechniquesIdMappingTypePtrOutput { + return o.ToIdMappingWorkflowIdMappingTechniquesIdMappingTypePtrOutputWithContext(context.Background()) +} + +func (o IdMappingWorkflowIdMappingTechniquesIdMappingTypeOutput) ToIdMappingWorkflowIdMappingTechniquesIdMappingTypePtrOutputWithContext(ctx context.Context) IdMappingWorkflowIdMappingTechniquesIdMappingTypePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v IdMappingWorkflowIdMappingTechniquesIdMappingType) *IdMappingWorkflowIdMappingTechniquesIdMappingType { + return &v + }).(IdMappingWorkflowIdMappingTechniquesIdMappingTypePtrOutput) +} + +func (o IdMappingWorkflowIdMappingTechniquesIdMappingTypeOutput) ToOutput(ctx context.Context) pulumix.Output[IdMappingWorkflowIdMappingTechniquesIdMappingType] { + return pulumix.Output[IdMappingWorkflowIdMappingTechniquesIdMappingType]{ + OutputState: o.OutputState, + } +} + +func (o IdMappingWorkflowIdMappingTechniquesIdMappingTypeOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o IdMappingWorkflowIdMappingTechniquesIdMappingTypeOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e IdMappingWorkflowIdMappingTechniquesIdMappingType) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o IdMappingWorkflowIdMappingTechniquesIdMappingTypeOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o IdMappingWorkflowIdMappingTechniquesIdMappingTypeOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e IdMappingWorkflowIdMappingTechniquesIdMappingType) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type IdMappingWorkflowIdMappingTechniquesIdMappingTypePtrOutput struct{ *pulumi.OutputState } + +func (IdMappingWorkflowIdMappingTechniquesIdMappingTypePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**IdMappingWorkflowIdMappingTechniquesIdMappingType)(nil)).Elem() +} + +func (o IdMappingWorkflowIdMappingTechniquesIdMappingTypePtrOutput) ToIdMappingWorkflowIdMappingTechniquesIdMappingTypePtrOutput() IdMappingWorkflowIdMappingTechniquesIdMappingTypePtrOutput { + return o +} + +func (o IdMappingWorkflowIdMappingTechniquesIdMappingTypePtrOutput) ToIdMappingWorkflowIdMappingTechniquesIdMappingTypePtrOutputWithContext(ctx context.Context) IdMappingWorkflowIdMappingTechniquesIdMappingTypePtrOutput { + return o +} + +func (o IdMappingWorkflowIdMappingTechniquesIdMappingTypePtrOutput) ToOutput(ctx context.Context) pulumix.Output[*IdMappingWorkflowIdMappingTechniquesIdMappingType] { + return pulumix.Output[*IdMappingWorkflowIdMappingTechniquesIdMappingType]{ + OutputState: o.OutputState, + } +} + +func (o IdMappingWorkflowIdMappingTechniquesIdMappingTypePtrOutput) Elem() IdMappingWorkflowIdMappingTechniquesIdMappingTypeOutput { + return o.ApplyT(func(v *IdMappingWorkflowIdMappingTechniquesIdMappingType) IdMappingWorkflowIdMappingTechniquesIdMappingType { + if v != nil { + return *v + } + var ret IdMappingWorkflowIdMappingTechniquesIdMappingType + return ret + }).(IdMappingWorkflowIdMappingTechniquesIdMappingTypeOutput) +} + +func (o IdMappingWorkflowIdMappingTechniquesIdMappingTypePtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o IdMappingWorkflowIdMappingTechniquesIdMappingTypePtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *IdMappingWorkflowIdMappingTechniquesIdMappingType) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// IdMappingWorkflowIdMappingTechniquesIdMappingTypeInput is an input type that accepts IdMappingWorkflowIdMappingTechniquesIdMappingTypeArgs and IdMappingWorkflowIdMappingTechniquesIdMappingTypeOutput values. +// You can construct a concrete instance of `IdMappingWorkflowIdMappingTechniquesIdMappingTypeInput` via: +// +// IdMappingWorkflowIdMappingTechniquesIdMappingTypeArgs{...} +type IdMappingWorkflowIdMappingTechniquesIdMappingTypeInput interface { + pulumi.Input + + ToIdMappingWorkflowIdMappingTechniquesIdMappingTypeOutput() IdMappingWorkflowIdMappingTechniquesIdMappingTypeOutput + ToIdMappingWorkflowIdMappingTechniquesIdMappingTypeOutputWithContext(context.Context) IdMappingWorkflowIdMappingTechniquesIdMappingTypeOutput +} + +var idMappingWorkflowIdMappingTechniquesIdMappingTypePtrType = reflect.TypeOf((**IdMappingWorkflowIdMappingTechniquesIdMappingType)(nil)).Elem() + +type IdMappingWorkflowIdMappingTechniquesIdMappingTypePtrInput interface { + pulumi.Input + + ToIdMappingWorkflowIdMappingTechniquesIdMappingTypePtrOutput() IdMappingWorkflowIdMappingTechniquesIdMappingTypePtrOutput + ToIdMappingWorkflowIdMappingTechniquesIdMappingTypePtrOutputWithContext(context.Context) IdMappingWorkflowIdMappingTechniquesIdMappingTypePtrOutput +} + +type idMappingWorkflowIdMappingTechniquesIdMappingTypePtr string + +func IdMappingWorkflowIdMappingTechniquesIdMappingTypePtr(v string) IdMappingWorkflowIdMappingTechniquesIdMappingTypePtrInput { + return (*idMappingWorkflowIdMappingTechniquesIdMappingTypePtr)(&v) +} + +func (*idMappingWorkflowIdMappingTechniquesIdMappingTypePtr) ElementType() reflect.Type { + return idMappingWorkflowIdMappingTechniquesIdMappingTypePtrType +} + +func (in *idMappingWorkflowIdMappingTechniquesIdMappingTypePtr) ToIdMappingWorkflowIdMappingTechniquesIdMappingTypePtrOutput() IdMappingWorkflowIdMappingTechniquesIdMappingTypePtrOutput { + return pulumi.ToOutput(in).(IdMappingWorkflowIdMappingTechniquesIdMappingTypePtrOutput) +} + +func (in *idMappingWorkflowIdMappingTechniquesIdMappingTypePtr) ToIdMappingWorkflowIdMappingTechniquesIdMappingTypePtrOutputWithContext(ctx context.Context) IdMappingWorkflowIdMappingTechniquesIdMappingTypePtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(IdMappingWorkflowIdMappingTechniquesIdMappingTypePtrOutput) +} + +func (in *idMappingWorkflowIdMappingTechniquesIdMappingTypePtr) ToOutput(ctx context.Context) pulumix.Output[*IdMappingWorkflowIdMappingTechniquesIdMappingType] { + return pulumix.Output[*IdMappingWorkflowIdMappingTechniquesIdMappingType]{ + OutputState: in.ToIdMappingWorkflowIdMappingTechniquesIdMappingTypePtrOutputWithContext(ctx).OutputState, + } +} + type MatchingWorkflowResolutionTechniquesResolutionType string const ( @@ -577,12 +758,16 @@ func (in *schemaMappingSchemaAttributeTypePtr) ToOutput(ctx context.Context) pul } func init() { + pulumi.RegisterInputType(reflect.TypeOf((*IdMappingWorkflowIdMappingTechniquesIdMappingTypeInput)(nil)).Elem(), IdMappingWorkflowIdMappingTechniquesIdMappingType("PROVIDER")) + pulumi.RegisterInputType(reflect.TypeOf((*IdMappingWorkflowIdMappingTechniquesIdMappingTypePtrInput)(nil)).Elem(), IdMappingWorkflowIdMappingTechniquesIdMappingType("PROVIDER")) pulumi.RegisterInputType(reflect.TypeOf((*MatchingWorkflowResolutionTechniquesResolutionTypeInput)(nil)).Elem(), MatchingWorkflowResolutionTechniquesResolutionType("RULE_MATCHING")) pulumi.RegisterInputType(reflect.TypeOf((*MatchingWorkflowResolutionTechniquesResolutionTypePtrInput)(nil)).Elem(), MatchingWorkflowResolutionTechniquesResolutionType("RULE_MATCHING")) pulumi.RegisterInputType(reflect.TypeOf((*MatchingWorkflowRuleBasedPropertiesAttributeMatchingModelInput)(nil)).Elem(), MatchingWorkflowRuleBasedPropertiesAttributeMatchingModel("ONE_TO_ONE")) pulumi.RegisterInputType(reflect.TypeOf((*MatchingWorkflowRuleBasedPropertiesAttributeMatchingModelPtrInput)(nil)).Elem(), MatchingWorkflowRuleBasedPropertiesAttributeMatchingModel("ONE_TO_ONE")) pulumi.RegisterInputType(reflect.TypeOf((*SchemaMappingSchemaAttributeTypeInput)(nil)).Elem(), SchemaMappingSchemaAttributeType("NAME")) pulumi.RegisterInputType(reflect.TypeOf((*SchemaMappingSchemaAttributeTypePtrInput)(nil)).Elem(), SchemaMappingSchemaAttributeType("NAME")) + pulumi.RegisterOutputType(IdMappingWorkflowIdMappingTechniquesIdMappingTypeOutput{}) + pulumi.RegisterOutputType(IdMappingWorkflowIdMappingTechniquesIdMappingTypePtrOutput{}) pulumi.RegisterOutputType(MatchingWorkflowResolutionTechniquesResolutionTypeOutput{}) pulumi.RegisterOutputType(MatchingWorkflowResolutionTechniquesResolutionTypePtrOutput{}) pulumi.RegisterOutputType(MatchingWorkflowRuleBasedPropertiesAttributeMatchingModelOutput{}) diff --git a/sdk/go/aws/entityresolution/pulumiTypes.go b/sdk/go/aws/entityresolution/pulumiTypes.go index 3d6454973c..0c375764b9 100644 --- a/sdk/go/aws/entityresolution/pulumiTypes.go +++ b/sdk/go/aws/entityresolution/pulumiTypes.go @@ -14,6 +14,870 @@ import ( var _ = internal.GetEnvOrDefault +type IdMappingWorkflowIdMappingTechniques struct { + IdMappingType *IdMappingWorkflowIdMappingTechniquesIdMappingType `pulumi:"idMappingType"` + ProviderProperties *IdMappingWorkflowProviderProperties `pulumi:"providerProperties"` +} + +// IdMappingWorkflowIdMappingTechniquesInput is an input type that accepts IdMappingWorkflowIdMappingTechniquesArgs and IdMappingWorkflowIdMappingTechniquesOutput values. +// You can construct a concrete instance of `IdMappingWorkflowIdMappingTechniquesInput` via: +// +// IdMappingWorkflowIdMappingTechniquesArgs{...} +type IdMappingWorkflowIdMappingTechniquesInput interface { + pulumi.Input + + ToIdMappingWorkflowIdMappingTechniquesOutput() IdMappingWorkflowIdMappingTechniquesOutput + ToIdMappingWorkflowIdMappingTechniquesOutputWithContext(context.Context) IdMappingWorkflowIdMappingTechniquesOutput +} + +type IdMappingWorkflowIdMappingTechniquesArgs struct { + IdMappingType IdMappingWorkflowIdMappingTechniquesIdMappingTypePtrInput `pulumi:"idMappingType"` + ProviderProperties IdMappingWorkflowProviderPropertiesPtrInput `pulumi:"providerProperties"` +} + +func (IdMappingWorkflowIdMappingTechniquesArgs) ElementType() reflect.Type { + return reflect.TypeOf((*IdMappingWorkflowIdMappingTechniques)(nil)).Elem() +} + +func (i IdMappingWorkflowIdMappingTechniquesArgs) ToIdMappingWorkflowIdMappingTechniquesOutput() IdMappingWorkflowIdMappingTechniquesOutput { + return i.ToIdMappingWorkflowIdMappingTechniquesOutputWithContext(context.Background()) +} + +func (i IdMappingWorkflowIdMappingTechniquesArgs) ToIdMappingWorkflowIdMappingTechniquesOutputWithContext(ctx context.Context) IdMappingWorkflowIdMappingTechniquesOutput { + return pulumi.ToOutputWithContext(ctx, i).(IdMappingWorkflowIdMappingTechniquesOutput) +} + +func (i IdMappingWorkflowIdMappingTechniquesArgs) ToOutput(ctx context.Context) pulumix.Output[IdMappingWorkflowIdMappingTechniques] { + return pulumix.Output[IdMappingWorkflowIdMappingTechniques]{ + OutputState: i.ToIdMappingWorkflowIdMappingTechniquesOutputWithContext(ctx).OutputState, + } +} + +type IdMappingWorkflowIdMappingTechniquesOutput struct{ *pulumi.OutputState } + +func (IdMappingWorkflowIdMappingTechniquesOutput) ElementType() reflect.Type { + return reflect.TypeOf((*IdMappingWorkflowIdMappingTechniques)(nil)).Elem() +} + +func (o IdMappingWorkflowIdMappingTechniquesOutput) ToIdMappingWorkflowIdMappingTechniquesOutput() IdMappingWorkflowIdMappingTechniquesOutput { + return o +} + +func (o IdMappingWorkflowIdMappingTechniquesOutput) ToIdMappingWorkflowIdMappingTechniquesOutputWithContext(ctx context.Context) IdMappingWorkflowIdMappingTechniquesOutput { + return o +} + +func (o IdMappingWorkflowIdMappingTechniquesOutput) ToOutput(ctx context.Context) pulumix.Output[IdMappingWorkflowIdMappingTechniques] { + return pulumix.Output[IdMappingWorkflowIdMappingTechniques]{ + OutputState: o.OutputState, + } +} + +func (o IdMappingWorkflowIdMappingTechniquesOutput) IdMappingType() IdMappingWorkflowIdMappingTechniquesIdMappingTypePtrOutput { + return o.ApplyT(func(v IdMappingWorkflowIdMappingTechniques) *IdMappingWorkflowIdMappingTechniquesIdMappingType { + return v.IdMappingType + }).(IdMappingWorkflowIdMappingTechniquesIdMappingTypePtrOutput) +} + +func (o IdMappingWorkflowIdMappingTechniquesOutput) ProviderProperties() IdMappingWorkflowProviderPropertiesPtrOutput { + return o.ApplyT(func(v IdMappingWorkflowIdMappingTechniques) *IdMappingWorkflowProviderProperties { + return v.ProviderProperties + }).(IdMappingWorkflowProviderPropertiesPtrOutput) +} + +type IdMappingWorkflowIdMappingTechniquesPtrOutput struct{ *pulumi.OutputState } + +func (IdMappingWorkflowIdMappingTechniquesPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**IdMappingWorkflowIdMappingTechniques)(nil)).Elem() +} + +func (o IdMappingWorkflowIdMappingTechniquesPtrOutput) ToIdMappingWorkflowIdMappingTechniquesPtrOutput() IdMappingWorkflowIdMappingTechniquesPtrOutput { + return o +} + +func (o IdMappingWorkflowIdMappingTechniquesPtrOutput) ToIdMappingWorkflowIdMappingTechniquesPtrOutputWithContext(ctx context.Context) IdMappingWorkflowIdMappingTechniquesPtrOutput { + return o +} + +func (o IdMappingWorkflowIdMappingTechniquesPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*IdMappingWorkflowIdMappingTechniques] { + return pulumix.Output[*IdMappingWorkflowIdMappingTechniques]{ + OutputState: o.OutputState, + } +} + +func (o IdMappingWorkflowIdMappingTechniquesPtrOutput) Elem() IdMappingWorkflowIdMappingTechniquesOutput { + return o.ApplyT(func(v *IdMappingWorkflowIdMappingTechniques) IdMappingWorkflowIdMappingTechniques { + if v != nil { + return *v + } + var ret IdMappingWorkflowIdMappingTechniques + return ret + }).(IdMappingWorkflowIdMappingTechniquesOutput) +} + +func (o IdMappingWorkflowIdMappingTechniquesPtrOutput) IdMappingType() IdMappingWorkflowIdMappingTechniquesIdMappingTypePtrOutput { + return o.ApplyT(func(v *IdMappingWorkflowIdMappingTechniques) *IdMappingWorkflowIdMappingTechniquesIdMappingType { + if v == nil { + return nil + } + return v.IdMappingType + }).(IdMappingWorkflowIdMappingTechniquesIdMappingTypePtrOutput) +} + +func (o IdMappingWorkflowIdMappingTechniquesPtrOutput) ProviderProperties() IdMappingWorkflowProviderPropertiesPtrOutput { + return o.ApplyT(func(v *IdMappingWorkflowIdMappingTechniques) *IdMappingWorkflowProviderProperties { + if v == nil { + return nil + } + return v.ProviderProperties + }).(IdMappingWorkflowProviderPropertiesPtrOutput) +} + +type IdMappingWorkflowInputSource struct { + // An Glue table ARN for the input source table + InputSourceArn string `pulumi:"inputSourceArn"` + SchemaArn string `pulumi:"schemaArn"` +} + +// IdMappingWorkflowInputSourceInput is an input type that accepts IdMappingWorkflowInputSourceArgs and IdMappingWorkflowInputSourceOutput values. +// You can construct a concrete instance of `IdMappingWorkflowInputSourceInput` via: +// +// IdMappingWorkflowInputSourceArgs{...} +type IdMappingWorkflowInputSourceInput interface { + pulumi.Input + + ToIdMappingWorkflowInputSourceOutput() IdMappingWorkflowInputSourceOutput + ToIdMappingWorkflowInputSourceOutputWithContext(context.Context) IdMappingWorkflowInputSourceOutput +} + +type IdMappingWorkflowInputSourceArgs struct { + // An Glue table ARN for the input source table + InputSourceArn pulumi.StringInput `pulumi:"inputSourceArn"` + SchemaArn pulumi.StringInput `pulumi:"schemaArn"` +} + +func (IdMappingWorkflowInputSourceArgs) ElementType() reflect.Type { + return reflect.TypeOf((*IdMappingWorkflowInputSource)(nil)).Elem() +} + +func (i IdMappingWorkflowInputSourceArgs) ToIdMappingWorkflowInputSourceOutput() IdMappingWorkflowInputSourceOutput { + return i.ToIdMappingWorkflowInputSourceOutputWithContext(context.Background()) +} + +func (i IdMappingWorkflowInputSourceArgs) ToIdMappingWorkflowInputSourceOutputWithContext(ctx context.Context) IdMappingWorkflowInputSourceOutput { + return pulumi.ToOutputWithContext(ctx, i).(IdMappingWorkflowInputSourceOutput) +} + +func (i IdMappingWorkflowInputSourceArgs) ToOutput(ctx context.Context) pulumix.Output[IdMappingWorkflowInputSource] { + return pulumix.Output[IdMappingWorkflowInputSource]{ + OutputState: i.ToIdMappingWorkflowInputSourceOutputWithContext(ctx).OutputState, + } +} + +// IdMappingWorkflowInputSourceArrayInput is an input type that accepts IdMappingWorkflowInputSourceArray and IdMappingWorkflowInputSourceArrayOutput values. +// You can construct a concrete instance of `IdMappingWorkflowInputSourceArrayInput` via: +// +// IdMappingWorkflowInputSourceArray{ IdMappingWorkflowInputSourceArgs{...} } +type IdMappingWorkflowInputSourceArrayInput interface { + pulumi.Input + + ToIdMappingWorkflowInputSourceArrayOutput() IdMappingWorkflowInputSourceArrayOutput + ToIdMappingWorkflowInputSourceArrayOutputWithContext(context.Context) IdMappingWorkflowInputSourceArrayOutput +} + +type IdMappingWorkflowInputSourceArray []IdMappingWorkflowInputSourceInput + +func (IdMappingWorkflowInputSourceArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]IdMappingWorkflowInputSource)(nil)).Elem() +} + +func (i IdMappingWorkflowInputSourceArray) ToIdMappingWorkflowInputSourceArrayOutput() IdMappingWorkflowInputSourceArrayOutput { + return i.ToIdMappingWorkflowInputSourceArrayOutputWithContext(context.Background()) +} + +func (i IdMappingWorkflowInputSourceArray) ToIdMappingWorkflowInputSourceArrayOutputWithContext(ctx context.Context) IdMappingWorkflowInputSourceArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(IdMappingWorkflowInputSourceArrayOutput) +} + +func (i IdMappingWorkflowInputSourceArray) ToOutput(ctx context.Context) pulumix.Output[[]IdMappingWorkflowInputSource] { + return pulumix.Output[[]IdMappingWorkflowInputSource]{ + OutputState: i.ToIdMappingWorkflowInputSourceArrayOutputWithContext(ctx).OutputState, + } +} + +type IdMappingWorkflowInputSourceOutput struct{ *pulumi.OutputState } + +func (IdMappingWorkflowInputSourceOutput) ElementType() reflect.Type { + return reflect.TypeOf((*IdMappingWorkflowInputSource)(nil)).Elem() +} + +func (o IdMappingWorkflowInputSourceOutput) ToIdMappingWorkflowInputSourceOutput() IdMappingWorkflowInputSourceOutput { + return o +} + +func (o IdMappingWorkflowInputSourceOutput) ToIdMappingWorkflowInputSourceOutputWithContext(ctx context.Context) IdMappingWorkflowInputSourceOutput { + return o +} + +func (o IdMappingWorkflowInputSourceOutput) ToOutput(ctx context.Context) pulumix.Output[IdMappingWorkflowInputSource] { + return pulumix.Output[IdMappingWorkflowInputSource]{ + OutputState: o.OutputState, + } +} + +// An Glue table ARN for the input source table +func (o IdMappingWorkflowInputSourceOutput) InputSourceArn() pulumi.StringOutput { + return o.ApplyT(func(v IdMappingWorkflowInputSource) string { return v.InputSourceArn }).(pulumi.StringOutput) +} + +func (o IdMappingWorkflowInputSourceOutput) SchemaArn() pulumi.StringOutput { + return o.ApplyT(func(v IdMappingWorkflowInputSource) string { return v.SchemaArn }).(pulumi.StringOutput) +} + +type IdMappingWorkflowInputSourceArrayOutput struct{ *pulumi.OutputState } + +func (IdMappingWorkflowInputSourceArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]IdMappingWorkflowInputSource)(nil)).Elem() +} + +func (o IdMappingWorkflowInputSourceArrayOutput) ToIdMappingWorkflowInputSourceArrayOutput() IdMappingWorkflowInputSourceArrayOutput { + return o +} + +func (o IdMappingWorkflowInputSourceArrayOutput) ToIdMappingWorkflowInputSourceArrayOutputWithContext(ctx context.Context) IdMappingWorkflowInputSourceArrayOutput { + return o +} + +func (o IdMappingWorkflowInputSourceArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]IdMappingWorkflowInputSource] { + return pulumix.Output[[]IdMappingWorkflowInputSource]{ + OutputState: o.OutputState, + } +} + +func (o IdMappingWorkflowInputSourceArrayOutput) Index(i pulumi.IntInput) IdMappingWorkflowInputSourceOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) IdMappingWorkflowInputSource { + return vs[0].([]IdMappingWorkflowInputSource)[vs[1].(int)] + }).(IdMappingWorkflowInputSourceOutput) +} + +type IdMappingWorkflowIntermediateSourceConfiguration struct { + // The s3 path that would be used to stage the intermediate data being generated during workflow execution. + IntermediateS3Path string `pulumi:"intermediateS3Path"` +} + +// IdMappingWorkflowIntermediateSourceConfigurationInput is an input type that accepts IdMappingWorkflowIntermediateSourceConfigurationArgs and IdMappingWorkflowIntermediateSourceConfigurationOutput values. +// You can construct a concrete instance of `IdMappingWorkflowIntermediateSourceConfigurationInput` via: +// +// IdMappingWorkflowIntermediateSourceConfigurationArgs{...} +type IdMappingWorkflowIntermediateSourceConfigurationInput interface { + pulumi.Input + + ToIdMappingWorkflowIntermediateSourceConfigurationOutput() IdMappingWorkflowIntermediateSourceConfigurationOutput + ToIdMappingWorkflowIntermediateSourceConfigurationOutputWithContext(context.Context) IdMappingWorkflowIntermediateSourceConfigurationOutput +} + +type IdMappingWorkflowIntermediateSourceConfigurationArgs struct { + // The s3 path that would be used to stage the intermediate data being generated during workflow execution. + IntermediateS3Path pulumi.StringInput `pulumi:"intermediateS3Path"` +} + +func (IdMappingWorkflowIntermediateSourceConfigurationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*IdMappingWorkflowIntermediateSourceConfiguration)(nil)).Elem() +} + +func (i IdMappingWorkflowIntermediateSourceConfigurationArgs) ToIdMappingWorkflowIntermediateSourceConfigurationOutput() IdMappingWorkflowIntermediateSourceConfigurationOutput { + return i.ToIdMappingWorkflowIntermediateSourceConfigurationOutputWithContext(context.Background()) +} + +func (i IdMappingWorkflowIntermediateSourceConfigurationArgs) ToIdMappingWorkflowIntermediateSourceConfigurationOutputWithContext(ctx context.Context) IdMappingWorkflowIntermediateSourceConfigurationOutput { + return pulumi.ToOutputWithContext(ctx, i).(IdMappingWorkflowIntermediateSourceConfigurationOutput) +} + +func (i IdMappingWorkflowIntermediateSourceConfigurationArgs) ToOutput(ctx context.Context) pulumix.Output[IdMappingWorkflowIntermediateSourceConfiguration] { + return pulumix.Output[IdMappingWorkflowIntermediateSourceConfiguration]{ + OutputState: i.ToIdMappingWorkflowIntermediateSourceConfigurationOutputWithContext(ctx).OutputState, + } +} + +func (i IdMappingWorkflowIntermediateSourceConfigurationArgs) ToIdMappingWorkflowIntermediateSourceConfigurationPtrOutput() IdMappingWorkflowIntermediateSourceConfigurationPtrOutput { + return i.ToIdMappingWorkflowIntermediateSourceConfigurationPtrOutputWithContext(context.Background()) +} + +func (i IdMappingWorkflowIntermediateSourceConfigurationArgs) ToIdMappingWorkflowIntermediateSourceConfigurationPtrOutputWithContext(ctx context.Context) IdMappingWorkflowIntermediateSourceConfigurationPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(IdMappingWorkflowIntermediateSourceConfigurationOutput).ToIdMappingWorkflowIntermediateSourceConfigurationPtrOutputWithContext(ctx) +} + +// IdMappingWorkflowIntermediateSourceConfigurationPtrInput is an input type that accepts IdMappingWorkflowIntermediateSourceConfigurationArgs, IdMappingWorkflowIntermediateSourceConfigurationPtr and IdMappingWorkflowIntermediateSourceConfigurationPtrOutput values. +// You can construct a concrete instance of `IdMappingWorkflowIntermediateSourceConfigurationPtrInput` via: +// +// IdMappingWorkflowIntermediateSourceConfigurationArgs{...} +// +// or: +// +// nil +type IdMappingWorkflowIntermediateSourceConfigurationPtrInput interface { + pulumi.Input + + ToIdMappingWorkflowIntermediateSourceConfigurationPtrOutput() IdMappingWorkflowIntermediateSourceConfigurationPtrOutput + ToIdMappingWorkflowIntermediateSourceConfigurationPtrOutputWithContext(context.Context) IdMappingWorkflowIntermediateSourceConfigurationPtrOutput +} + +type idMappingWorkflowIntermediateSourceConfigurationPtrType IdMappingWorkflowIntermediateSourceConfigurationArgs + +func IdMappingWorkflowIntermediateSourceConfigurationPtr(v *IdMappingWorkflowIntermediateSourceConfigurationArgs) IdMappingWorkflowIntermediateSourceConfigurationPtrInput { + return (*idMappingWorkflowIntermediateSourceConfigurationPtrType)(v) +} + +func (*idMappingWorkflowIntermediateSourceConfigurationPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**IdMappingWorkflowIntermediateSourceConfiguration)(nil)).Elem() +} + +func (i *idMappingWorkflowIntermediateSourceConfigurationPtrType) ToIdMappingWorkflowIntermediateSourceConfigurationPtrOutput() IdMappingWorkflowIntermediateSourceConfigurationPtrOutput { + return i.ToIdMappingWorkflowIntermediateSourceConfigurationPtrOutputWithContext(context.Background()) +} + +func (i *idMappingWorkflowIntermediateSourceConfigurationPtrType) ToIdMappingWorkflowIntermediateSourceConfigurationPtrOutputWithContext(ctx context.Context) IdMappingWorkflowIntermediateSourceConfigurationPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(IdMappingWorkflowIntermediateSourceConfigurationPtrOutput) +} + +func (i *idMappingWorkflowIntermediateSourceConfigurationPtrType) ToOutput(ctx context.Context) pulumix.Output[*IdMappingWorkflowIntermediateSourceConfiguration] { + return pulumix.Output[*IdMappingWorkflowIntermediateSourceConfiguration]{ + OutputState: i.ToIdMappingWorkflowIntermediateSourceConfigurationPtrOutputWithContext(ctx).OutputState, + } +} + +type IdMappingWorkflowIntermediateSourceConfigurationOutput struct{ *pulumi.OutputState } + +func (IdMappingWorkflowIntermediateSourceConfigurationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*IdMappingWorkflowIntermediateSourceConfiguration)(nil)).Elem() +} + +func (o IdMappingWorkflowIntermediateSourceConfigurationOutput) ToIdMappingWorkflowIntermediateSourceConfigurationOutput() IdMappingWorkflowIntermediateSourceConfigurationOutput { + return o +} + +func (o IdMappingWorkflowIntermediateSourceConfigurationOutput) ToIdMappingWorkflowIntermediateSourceConfigurationOutputWithContext(ctx context.Context) IdMappingWorkflowIntermediateSourceConfigurationOutput { + return o +} + +func (o IdMappingWorkflowIntermediateSourceConfigurationOutput) ToIdMappingWorkflowIntermediateSourceConfigurationPtrOutput() IdMappingWorkflowIntermediateSourceConfigurationPtrOutput { + return o.ToIdMappingWorkflowIntermediateSourceConfigurationPtrOutputWithContext(context.Background()) +} + +func (o IdMappingWorkflowIntermediateSourceConfigurationOutput) ToIdMappingWorkflowIntermediateSourceConfigurationPtrOutputWithContext(ctx context.Context) IdMappingWorkflowIntermediateSourceConfigurationPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v IdMappingWorkflowIntermediateSourceConfiguration) *IdMappingWorkflowIntermediateSourceConfiguration { + return &v + }).(IdMappingWorkflowIntermediateSourceConfigurationPtrOutput) +} + +func (o IdMappingWorkflowIntermediateSourceConfigurationOutput) ToOutput(ctx context.Context) pulumix.Output[IdMappingWorkflowIntermediateSourceConfiguration] { + return pulumix.Output[IdMappingWorkflowIntermediateSourceConfiguration]{ + OutputState: o.OutputState, + } +} + +// The s3 path that would be used to stage the intermediate data being generated during workflow execution. +func (o IdMappingWorkflowIntermediateSourceConfigurationOutput) IntermediateS3Path() pulumi.StringOutput { + return o.ApplyT(func(v IdMappingWorkflowIntermediateSourceConfiguration) string { return v.IntermediateS3Path }).(pulumi.StringOutput) +} + +type IdMappingWorkflowIntermediateSourceConfigurationPtrOutput struct{ *pulumi.OutputState } + +func (IdMappingWorkflowIntermediateSourceConfigurationPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**IdMappingWorkflowIntermediateSourceConfiguration)(nil)).Elem() +} + +func (o IdMappingWorkflowIntermediateSourceConfigurationPtrOutput) ToIdMappingWorkflowIntermediateSourceConfigurationPtrOutput() IdMappingWorkflowIntermediateSourceConfigurationPtrOutput { + return o +} + +func (o IdMappingWorkflowIntermediateSourceConfigurationPtrOutput) ToIdMappingWorkflowIntermediateSourceConfigurationPtrOutputWithContext(ctx context.Context) IdMappingWorkflowIntermediateSourceConfigurationPtrOutput { + return o +} + +func (o IdMappingWorkflowIntermediateSourceConfigurationPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*IdMappingWorkflowIntermediateSourceConfiguration] { + return pulumix.Output[*IdMappingWorkflowIntermediateSourceConfiguration]{ + OutputState: o.OutputState, + } +} + +func (o IdMappingWorkflowIntermediateSourceConfigurationPtrOutput) Elem() IdMappingWorkflowIntermediateSourceConfigurationOutput { + return o.ApplyT(func(v *IdMappingWorkflowIntermediateSourceConfiguration) IdMappingWorkflowIntermediateSourceConfiguration { + if v != nil { + return *v + } + var ret IdMappingWorkflowIntermediateSourceConfiguration + return ret + }).(IdMappingWorkflowIntermediateSourceConfigurationOutput) +} + +// The s3 path that would be used to stage the intermediate data being generated during workflow execution. +func (o IdMappingWorkflowIntermediateSourceConfigurationPtrOutput) IntermediateS3Path() pulumi.StringPtrOutput { + return o.ApplyT(func(v *IdMappingWorkflowIntermediateSourceConfiguration) *string { + if v == nil { + return nil + } + return &v.IntermediateS3Path + }).(pulumi.StringPtrOutput) +} + +type IdMappingWorkflowOutputSource struct { + KmsArn *string `pulumi:"kmsArn"` + // The S3 path to which Entity Resolution will write the output table + OutputS3Path string `pulumi:"outputS3Path"` +} + +// IdMappingWorkflowOutputSourceInput is an input type that accepts IdMappingWorkflowOutputSourceArgs and IdMappingWorkflowOutputSourceOutput values. +// You can construct a concrete instance of `IdMappingWorkflowOutputSourceInput` via: +// +// IdMappingWorkflowOutputSourceArgs{...} +type IdMappingWorkflowOutputSourceInput interface { + pulumi.Input + + ToIdMappingWorkflowOutputSourceOutput() IdMappingWorkflowOutputSourceOutput + ToIdMappingWorkflowOutputSourceOutputWithContext(context.Context) IdMappingWorkflowOutputSourceOutput +} + +type IdMappingWorkflowOutputSourceArgs struct { + KmsArn pulumi.StringPtrInput `pulumi:"kmsArn"` + // The S3 path to which Entity Resolution will write the output table + OutputS3Path pulumi.StringInput `pulumi:"outputS3Path"` +} + +func (IdMappingWorkflowOutputSourceArgs) ElementType() reflect.Type { + return reflect.TypeOf((*IdMappingWorkflowOutputSource)(nil)).Elem() +} + +func (i IdMappingWorkflowOutputSourceArgs) ToIdMappingWorkflowOutputSourceOutput() IdMappingWorkflowOutputSourceOutput { + return i.ToIdMappingWorkflowOutputSourceOutputWithContext(context.Background()) +} + +func (i IdMappingWorkflowOutputSourceArgs) ToIdMappingWorkflowOutputSourceOutputWithContext(ctx context.Context) IdMappingWorkflowOutputSourceOutput { + return pulumi.ToOutputWithContext(ctx, i).(IdMappingWorkflowOutputSourceOutput) +} + +func (i IdMappingWorkflowOutputSourceArgs) ToOutput(ctx context.Context) pulumix.Output[IdMappingWorkflowOutputSource] { + return pulumix.Output[IdMappingWorkflowOutputSource]{ + OutputState: i.ToIdMappingWorkflowOutputSourceOutputWithContext(ctx).OutputState, + } +} + +// IdMappingWorkflowOutputSourceArrayInput is an input type that accepts IdMappingWorkflowOutputSourceArray and IdMappingWorkflowOutputSourceArrayOutput values. +// You can construct a concrete instance of `IdMappingWorkflowOutputSourceArrayInput` via: +// +// IdMappingWorkflowOutputSourceArray{ IdMappingWorkflowOutputSourceArgs{...} } +type IdMappingWorkflowOutputSourceArrayInput interface { + pulumi.Input + + ToIdMappingWorkflowOutputSourceArrayOutput() IdMappingWorkflowOutputSourceArrayOutput + ToIdMappingWorkflowOutputSourceArrayOutputWithContext(context.Context) IdMappingWorkflowOutputSourceArrayOutput +} + +type IdMappingWorkflowOutputSourceArray []IdMappingWorkflowOutputSourceInput + +func (IdMappingWorkflowOutputSourceArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]IdMappingWorkflowOutputSource)(nil)).Elem() +} + +func (i IdMappingWorkflowOutputSourceArray) ToIdMappingWorkflowOutputSourceArrayOutput() IdMappingWorkflowOutputSourceArrayOutput { + return i.ToIdMappingWorkflowOutputSourceArrayOutputWithContext(context.Background()) +} + +func (i IdMappingWorkflowOutputSourceArray) ToIdMappingWorkflowOutputSourceArrayOutputWithContext(ctx context.Context) IdMappingWorkflowOutputSourceArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(IdMappingWorkflowOutputSourceArrayOutput) +} + +func (i IdMappingWorkflowOutputSourceArray) ToOutput(ctx context.Context) pulumix.Output[[]IdMappingWorkflowOutputSource] { + return pulumix.Output[[]IdMappingWorkflowOutputSource]{ + OutputState: i.ToIdMappingWorkflowOutputSourceArrayOutputWithContext(ctx).OutputState, + } +} + +type IdMappingWorkflowOutputSourceOutput struct{ *pulumi.OutputState } + +func (IdMappingWorkflowOutputSourceOutput) ElementType() reflect.Type { + return reflect.TypeOf((*IdMappingWorkflowOutputSource)(nil)).Elem() +} + +func (o IdMappingWorkflowOutputSourceOutput) ToIdMappingWorkflowOutputSourceOutput() IdMappingWorkflowOutputSourceOutput { + return o +} + +func (o IdMappingWorkflowOutputSourceOutput) ToIdMappingWorkflowOutputSourceOutputWithContext(ctx context.Context) IdMappingWorkflowOutputSourceOutput { + return o +} + +func (o IdMappingWorkflowOutputSourceOutput) ToOutput(ctx context.Context) pulumix.Output[IdMappingWorkflowOutputSource] { + return pulumix.Output[IdMappingWorkflowOutputSource]{ + OutputState: o.OutputState, + } +} + +func (o IdMappingWorkflowOutputSourceOutput) KmsArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v IdMappingWorkflowOutputSource) *string { return v.KmsArn }).(pulumi.StringPtrOutput) +} + +// The S3 path to which Entity Resolution will write the output table +func (o IdMappingWorkflowOutputSourceOutput) OutputS3Path() pulumi.StringOutput { + return o.ApplyT(func(v IdMappingWorkflowOutputSource) string { return v.OutputS3Path }).(pulumi.StringOutput) +} + +type IdMappingWorkflowOutputSourceArrayOutput struct{ *pulumi.OutputState } + +func (IdMappingWorkflowOutputSourceArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]IdMappingWorkflowOutputSource)(nil)).Elem() +} + +func (o IdMappingWorkflowOutputSourceArrayOutput) ToIdMappingWorkflowOutputSourceArrayOutput() IdMappingWorkflowOutputSourceArrayOutput { + return o +} + +func (o IdMappingWorkflowOutputSourceArrayOutput) ToIdMappingWorkflowOutputSourceArrayOutputWithContext(ctx context.Context) IdMappingWorkflowOutputSourceArrayOutput { + return o +} + +func (o IdMappingWorkflowOutputSourceArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]IdMappingWorkflowOutputSource] { + return pulumix.Output[[]IdMappingWorkflowOutputSource]{ + OutputState: o.OutputState, + } +} + +func (o IdMappingWorkflowOutputSourceArrayOutput) Index(i pulumi.IntInput) IdMappingWorkflowOutputSourceOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) IdMappingWorkflowOutputSource { + return vs[0].([]IdMappingWorkflowOutputSource)[vs[1].(int)] + }).(IdMappingWorkflowOutputSourceOutput) +} + +type IdMappingWorkflowProviderProperties struct { + IntermediateSourceConfiguration *IdMappingWorkflowIntermediateSourceConfiguration `pulumi:"intermediateSourceConfiguration"` + // Additional Provider configuration that would be required for the provider service. The Configuration must be in JSON string format + ProviderConfiguration interface{} `pulumi:"providerConfiguration"` + // Arn of the Provider Service being used. + ProviderServiceArn string `pulumi:"providerServiceArn"` +} + +// IdMappingWorkflowProviderPropertiesInput is an input type that accepts IdMappingWorkflowProviderPropertiesArgs and IdMappingWorkflowProviderPropertiesOutput values. +// You can construct a concrete instance of `IdMappingWorkflowProviderPropertiesInput` via: +// +// IdMappingWorkflowProviderPropertiesArgs{...} +type IdMappingWorkflowProviderPropertiesInput interface { + pulumi.Input + + ToIdMappingWorkflowProviderPropertiesOutput() IdMappingWorkflowProviderPropertiesOutput + ToIdMappingWorkflowProviderPropertiesOutputWithContext(context.Context) IdMappingWorkflowProviderPropertiesOutput +} + +type IdMappingWorkflowProviderPropertiesArgs struct { + IntermediateSourceConfiguration IdMappingWorkflowIntermediateSourceConfigurationPtrInput `pulumi:"intermediateSourceConfiguration"` + // Additional Provider configuration that would be required for the provider service. The Configuration must be in JSON string format + ProviderConfiguration pulumi.Input `pulumi:"providerConfiguration"` + // Arn of the Provider Service being used. + ProviderServiceArn pulumi.StringInput `pulumi:"providerServiceArn"` +} + +func (IdMappingWorkflowProviderPropertiesArgs) ElementType() reflect.Type { + return reflect.TypeOf((*IdMappingWorkflowProviderProperties)(nil)).Elem() +} + +func (i IdMappingWorkflowProviderPropertiesArgs) ToIdMappingWorkflowProviderPropertiesOutput() IdMappingWorkflowProviderPropertiesOutput { + return i.ToIdMappingWorkflowProviderPropertiesOutputWithContext(context.Background()) +} + +func (i IdMappingWorkflowProviderPropertiesArgs) ToIdMappingWorkflowProviderPropertiesOutputWithContext(ctx context.Context) IdMappingWorkflowProviderPropertiesOutput { + return pulumi.ToOutputWithContext(ctx, i).(IdMappingWorkflowProviderPropertiesOutput) +} + +func (i IdMappingWorkflowProviderPropertiesArgs) ToOutput(ctx context.Context) pulumix.Output[IdMappingWorkflowProviderProperties] { + return pulumix.Output[IdMappingWorkflowProviderProperties]{ + OutputState: i.ToIdMappingWorkflowProviderPropertiesOutputWithContext(ctx).OutputState, + } +} + +func (i IdMappingWorkflowProviderPropertiesArgs) ToIdMappingWorkflowProviderPropertiesPtrOutput() IdMappingWorkflowProviderPropertiesPtrOutput { + return i.ToIdMappingWorkflowProviderPropertiesPtrOutputWithContext(context.Background()) +} + +func (i IdMappingWorkflowProviderPropertiesArgs) ToIdMappingWorkflowProviderPropertiesPtrOutputWithContext(ctx context.Context) IdMappingWorkflowProviderPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(IdMappingWorkflowProviderPropertiesOutput).ToIdMappingWorkflowProviderPropertiesPtrOutputWithContext(ctx) +} + +// IdMappingWorkflowProviderPropertiesPtrInput is an input type that accepts IdMappingWorkflowProviderPropertiesArgs, IdMappingWorkflowProviderPropertiesPtr and IdMappingWorkflowProviderPropertiesPtrOutput values. +// You can construct a concrete instance of `IdMappingWorkflowProviderPropertiesPtrInput` via: +// +// IdMappingWorkflowProviderPropertiesArgs{...} +// +// or: +// +// nil +type IdMappingWorkflowProviderPropertiesPtrInput interface { + pulumi.Input + + ToIdMappingWorkflowProviderPropertiesPtrOutput() IdMappingWorkflowProviderPropertiesPtrOutput + ToIdMappingWorkflowProviderPropertiesPtrOutputWithContext(context.Context) IdMappingWorkflowProviderPropertiesPtrOutput +} + +type idMappingWorkflowProviderPropertiesPtrType IdMappingWorkflowProviderPropertiesArgs + +func IdMappingWorkflowProviderPropertiesPtr(v *IdMappingWorkflowProviderPropertiesArgs) IdMappingWorkflowProviderPropertiesPtrInput { + return (*idMappingWorkflowProviderPropertiesPtrType)(v) +} + +func (*idMappingWorkflowProviderPropertiesPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**IdMappingWorkflowProviderProperties)(nil)).Elem() +} + +func (i *idMappingWorkflowProviderPropertiesPtrType) ToIdMappingWorkflowProviderPropertiesPtrOutput() IdMappingWorkflowProviderPropertiesPtrOutput { + return i.ToIdMappingWorkflowProviderPropertiesPtrOutputWithContext(context.Background()) +} + +func (i *idMappingWorkflowProviderPropertiesPtrType) ToIdMappingWorkflowProviderPropertiesPtrOutputWithContext(ctx context.Context) IdMappingWorkflowProviderPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(IdMappingWorkflowProviderPropertiesPtrOutput) +} + +func (i *idMappingWorkflowProviderPropertiesPtrType) ToOutput(ctx context.Context) pulumix.Output[*IdMappingWorkflowProviderProperties] { + return pulumix.Output[*IdMappingWorkflowProviderProperties]{ + OutputState: i.ToIdMappingWorkflowProviderPropertiesPtrOutputWithContext(ctx).OutputState, + } +} + +type IdMappingWorkflowProviderPropertiesOutput struct{ *pulumi.OutputState } + +func (IdMappingWorkflowProviderPropertiesOutput) ElementType() reflect.Type { + return reflect.TypeOf((*IdMappingWorkflowProviderProperties)(nil)).Elem() +} + +func (o IdMappingWorkflowProviderPropertiesOutput) ToIdMappingWorkflowProviderPropertiesOutput() IdMappingWorkflowProviderPropertiesOutput { + return o +} + +func (o IdMappingWorkflowProviderPropertiesOutput) ToIdMappingWorkflowProviderPropertiesOutputWithContext(ctx context.Context) IdMappingWorkflowProviderPropertiesOutput { + return o +} + +func (o IdMappingWorkflowProviderPropertiesOutput) ToIdMappingWorkflowProviderPropertiesPtrOutput() IdMappingWorkflowProviderPropertiesPtrOutput { + return o.ToIdMappingWorkflowProviderPropertiesPtrOutputWithContext(context.Background()) +} + +func (o IdMappingWorkflowProviderPropertiesOutput) ToIdMappingWorkflowProviderPropertiesPtrOutputWithContext(ctx context.Context) IdMappingWorkflowProviderPropertiesPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v IdMappingWorkflowProviderProperties) *IdMappingWorkflowProviderProperties { + return &v + }).(IdMappingWorkflowProviderPropertiesPtrOutput) +} + +func (o IdMappingWorkflowProviderPropertiesOutput) ToOutput(ctx context.Context) pulumix.Output[IdMappingWorkflowProviderProperties] { + return pulumix.Output[IdMappingWorkflowProviderProperties]{ + OutputState: o.OutputState, + } +} + +func (o IdMappingWorkflowProviderPropertiesOutput) IntermediateSourceConfiguration() IdMappingWorkflowIntermediateSourceConfigurationPtrOutput { + return o.ApplyT(func(v IdMappingWorkflowProviderProperties) *IdMappingWorkflowIntermediateSourceConfiguration { + return v.IntermediateSourceConfiguration + }).(IdMappingWorkflowIntermediateSourceConfigurationPtrOutput) +} + +// Additional Provider configuration that would be required for the provider service. The Configuration must be in JSON string format +func (o IdMappingWorkflowProviderPropertiesOutput) ProviderConfiguration() pulumi.AnyOutput { + return o.ApplyT(func(v IdMappingWorkflowProviderProperties) interface{} { return v.ProviderConfiguration }).(pulumi.AnyOutput) +} + +// Arn of the Provider Service being used. +func (o IdMappingWorkflowProviderPropertiesOutput) ProviderServiceArn() pulumi.StringOutput { + return o.ApplyT(func(v IdMappingWorkflowProviderProperties) string { return v.ProviderServiceArn }).(pulumi.StringOutput) +} + +type IdMappingWorkflowProviderPropertiesPtrOutput struct{ *pulumi.OutputState } + +func (IdMappingWorkflowProviderPropertiesPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**IdMappingWorkflowProviderProperties)(nil)).Elem() +} + +func (o IdMappingWorkflowProviderPropertiesPtrOutput) ToIdMappingWorkflowProviderPropertiesPtrOutput() IdMappingWorkflowProviderPropertiesPtrOutput { + return o +} + +func (o IdMappingWorkflowProviderPropertiesPtrOutput) ToIdMappingWorkflowProviderPropertiesPtrOutputWithContext(ctx context.Context) IdMappingWorkflowProviderPropertiesPtrOutput { + return o +} + +func (o IdMappingWorkflowProviderPropertiesPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*IdMappingWorkflowProviderProperties] { + return pulumix.Output[*IdMappingWorkflowProviderProperties]{ + OutputState: o.OutputState, + } +} + +func (o IdMappingWorkflowProviderPropertiesPtrOutput) Elem() IdMappingWorkflowProviderPropertiesOutput { + return o.ApplyT(func(v *IdMappingWorkflowProviderProperties) IdMappingWorkflowProviderProperties { + if v != nil { + return *v + } + var ret IdMappingWorkflowProviderProperties + return ret + }).(IdMappingWorkflowProviderPropertiesOutput) +} + +func (o IdMappingWorkflowProviderPropertiesPtrOutput) IntermediateSourceConfiguration() IdMappingWorkflowIntermediateSourceConfigurationPtrOutput { + return o.ApplyT(func(v *IdMappingWorkflowProviderProperties) *IdMappingWorkflowIntermediateSourceConfiguration { + if v == nil { + return nil + } + return v.IntermediateSourceConfiguration + }).(IdMappingWorkflowIntermediateSourceConfigurationPtrOutput) +} + +// Additional Provider configuration that would be required for the provider service. The Configuration must be in JSON string format +func (o IdMappingWorkflowProviderPropertiesPtrOutput) ProviderConfiguration() pulumi.AnyOutput { + return o.ApplyT(func(v *IdMappingWorkflowProviderProperties) interface{} { + if v == nil { + return nil + } + return v.ProviderConfiguration + }).(pulumi.AnyOutput) +} + +// Arn of the Provider Service being used. +func (o IdMappingWorkflowProviderPropertiesPtrOutput) ProviderServiceArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v *IdMappingWorkflowProviderProperties) *string { + if v == nil { + return nil + } + return &v.ProviderServiceArn + }).(pulumi.StringPtrOutput) +} + +// A key-value pair to associate with a resource +type IdMappingWorkflowTag struct { + // The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. + Key string `pulumi:"key"` + // The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. + Value string `pulumi:"value"` +} + +// IdMappingWorkflowTagInput is an input type that accepts IdMappingWorkflowTagArgs and IdMappingWorkflowTagOutput values. +// You can construct a concrete instance of `IdMappingWorkflowTagInput` via: +// +// IdMappingWorkflowTagArgs{...} +type IdMappingWorkflowTagInput interface { + pulumi.Input + + ToIdMappingWorkflowTagOutput() IdMappingWorkflowTagOutput + ToIdMappingWorkflowTagOutputWithContext(context.Context) IdMappingWorkflowTagOutput +} + +// A key-value pair to associate with a resource +type IdMappingWorkflowTagArgs struct { + // The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. + Key pulumi.StringInput `pulumi:"key"` + // The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. + Value pulumi.StringInput `pulumi:"value"` +} + +func (IdMappingWorkflowTagArgs) ElementType() reflect.Type { + return reflect.TypeOf((*IdMappingWorkflowTag)(nil)).Elem() +} + +func (i IdMappingWorkflowTagArgs) ToIdMappingWorkflowTagOutput() IdMappingWorkflowTagOutput { + return i.ToIdMappingWorkflowTagOutputWithContext(context.Background()) +} + +func (i IdMappingWorkflowTagArgs) ToIdMappingWorkflowTagOutputWithContext(ctx context.Context) IdMappingWorkflowTagOutput { + return pulumi.ToOutputWithContext(ctx, i).(IdMappingWorkflowTagOutput) +} + +func (i IdMappingWorkflowTagArgs) ToOutput(ctx context.Context) pulumix.Output[IdMappingWorkflowTag] { + return pulumix.Output[IdMappingWorkflowTag]{ + OutputState: i.ToIdMappingWorkflowTagOutputWithContext(ctx).OutputState, + } +} + +// IdMappingWorkflowTagArrayInput is an input type that accepts IdMappingWorkflowTagArray and IdMappingWorkflowTagArrayOutput values. +// You can construct a concrete instance of `IdMappingWorkflowTagArrayInput` via: +// +// IdMappingWorkflowTagArray{ IdMappingWorkflowTagArgs{...} } +type IdMappingWorkflowTagArrayInput interface { + pulumi.Input + + ToIdMappingWorkflowTagArrayOutput() IdMappingWorkflowTagArrayOutput + ToIdMappingWorkflowTagArrayOutputWithContext(context.Context) IdMappingWorkflowTagArrayOutput +} + +type IdMappingWorkflowTagArray []IdMappingWorkflowTagInput + +func (IdMappingWorkflowTagArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]IdMappingWorkflowTag)(nil)).Elem() +} + +func (i IdMappingWorkflowTagArray) ToIdMappingWorkflowTagArrayOutput() IdMappingWorkflowTagArrayOutput { + return i.ToIdMappingWorkflowTagArrayOutputWithContext(context.Background()) +} + +func (i IdMappingWorkflowTagArray) ToIdMappingWorkflowTagArrayOutputWithContext(ctx context.Context) IdMappingWorkflowTagArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(IdMappingWorkflowTagArrayOutput) +} + +func (i IdMappingWorkflowTagArray) ToOutput(ctx context.Context) pulumix.Output[[]IdMappingWorkflowTag] { + return pulumix.Output[[]IdMappingWorkflowTag]{ + OutputState: i.ToIdMappingWorkflowTagArrayOutputWithContext(ctx).OutputState, + } +} + +// A key-value pair to associate with a resource +type IdMappingWorkflowTagOutput struct{ *pulumi.OutputState } + +func (IdMappingWorkflowTagOutput) ElementType() reflect.Type { + return reflect.TypeOf((*IdMappingWorkflowTag)(nil)).Elem() +} + +func (o IdMappingWorkflowTagOutput) ToIdMappingWorkflowTagOutput() IdMappingWorkflowTagOutput { + return o +} + +func (o IdMappingWorkflowTagOutput) ToIdMappingWorkflowTagOutputWithContext(ctx context.Context) IdMappingWorkflowTagOutput { + return o +} + +func (o IdMappingWorkflowTagOutput) ToOutput(ctx context.Context) pulumix.Output[IdMappingWorkflowTag] { + return pulumix.Output[IdMappingWorkflowTag]{ + OutputState: o.OutputState, + } +} + +// The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. +func (o IdMappingWorkflowTagOutput) Key() pulumi.StringOutput { + return o.ApplyT(func(v IdMappingWorkflowTag) string { return v.Key }).(pulumi.StringOutput) +} + +// The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. +func (o IdMappingWorkflowTagOutput) Value() pulumi.StringOutput { + return o.ApplyT(func(v IdMappingWorkflowTag) string { return v.Value }).(pulumi.StringOutput) +} + +type IdMappingWorkflowTagArrayOutput struct{ *pulumi.OutputState } + +func (IdMappingWorkflowTagArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]IdMappingWorkflowTag)(nil)).Elem() +} + +func (o IdMappingWorkflowTagArrayOutput) ToIdMappingWorkflowTagArrayOutput() IdMappingWorkflowTagArrayOutput { + return o +} + +func (o IdMappingWorkflowTagArrayOutput) ToIdMappingWorkflowTagArrayOutputWithContext(ctx context.Context) IdMappingWorkflowTagArrayOutput { + return o +} + +func (o IdMappingWorkflowTagArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]IdMappingWorkflowTag] { + return pulumix.Output[[]IdMappingWorkflowTag]{ + OutputState: o.OutputState, + } +} + +func (o IdMappingWorkflowTagArrayOutput) Index(i pulumi.IntInput) IdMappingWorkflowTagOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) IdMappingWorkflowTag { + return vs[0].([]IdMappingWorkflowTag)[vs[1].(int)] + }).(IdMappingWorkflowTagOutput) +} + type MatchingWorkflowInputSource struct { ApplyNormalization *bool `pulumi:"applyNormalization"` // An Glue table ARN for the input source table @@ -1614,6 +2478,17 @@ func (o SchemaMappingTagArrayOutput) Index(i pulumi.IntInput) SchemaMappingTagOu } func init() { + pulumi.RegisterInputType(reflect.TypeOf((*IdMappingWorkflowIdMappingTechniquesInput)(nil)).Elem(), IdMappingWorkflowIdMappingTechniquesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*IdMappingWorkflowInputSourceInput)(nil)).Elem(), IdMappingWorkflowInputSourceArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*IdMappingWorkflowInputSourceArrayInput)(nil)).Elem(), IdMappingWorkflowInputSourceArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*IdMappingWorkflowIntermediateSourceConfigurationInput)(nil)).Elem(), IdMappingWorkflowIntermediateSourceConfigurationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*IdMappingWorkflowIntermediateSourceConfigurationPtrInput)(nil)).Elem(), IdMappingWorkflowIntermediateSourceConfigurationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*IdMappingWorkflowOutputSourceInput)(nil)).Elem(), IdMappingWorkflowOutputSourceArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*IdMappingWorkflowOutputSourceArrayInput)(nil)).Elem(), IdMappingWorkflowOutputSourceArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*IdMappingWorkflowProviderPropertiesInput)(nil)).Elem(), IdMappingWorkflowProviderPropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*IdMappingWorkflowProviderPropertiesPtrInput)(nil)).Elem(), IdMappingWorkflowProviderPropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*IdMappingWorkflowTagInput)(nil)).Elem(), IdMappingWorkflowTagArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*IdMappingWorkflowTagArrayInput)(nil)).Elem(), IdMappingWorkflowTagArray{}) pulumi.RegisterInputType(reflect.TypeOf((*MatchingWorkflowInputSourceInput)(nil)).Elem(), MatchingWorkflowInputSourceArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*MatchingWorkflowInputSourceArrayInput)(nil)).Elem(), MatchingWorkflowInputSourceArray{}) pulumi.RegisterInputType(reflect.TypeOf((*MatchingWorkflowIntermediateSourceConfigurationInput)(nil)).Elem(), MatchingWorkflowIntermediateSourceConfigurationArgs{}) @@ -1635,6 +2510,18 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*SchemaMappingSchemaInputAttributeArrayInput)(nil)).Elem(), SchemaMappingSchemaInputAttributeArray{}) pulumi.RegisterInputType(reflect.TypeOf((*SchemaMappingTagInput)(nil)).Elem(), SchemaMappingTagArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*SchemaMappingTagArrayInput)(nil)).Elem(), SchemaMappingTagArray{}) + pulumi.RegisterOutputType(IdMappingWorkflowIdMappingTechniquesOutput{}) + pulumi.RegisterOutputType(IdMappingWorkflowIdMappingTechniquesPtrOutput{}) + pulumi.RegisterOutputType(IdMappingWorkflowInputSourceOutput{}) + pulumi.RegisterOutputType(IdMappingWorkflowInputSourceArrayOutput{}) + pulumi.RegisterOutputType(IdMappingWorkflowIntermediateSourceConfigurationOutput{}) + pulumi.RegisterOutputType(IdMappingWorkflowIntermediateSourceConfigurationPtrOutput{}) + pulumi.RegisterOutputType(IdMappingWorkflowOutputSourceOutput{}) + pulumi.RegisterOutputType(IdMappingWorkflowOutputSourceArrayOutput{}) + pulumi.RegisterOutputType(IdMappingWorkflowProviderPropertiesOutput{}) + pulumi.RegisterOutputType(IdMappingWorkflowProviderPropertiesPtrOutput{}) + pulumi.RegisterOutputType(IdMappingWorkflowTagOutput{}) + pulumi.RegisterOutputType(IdMappingWorkflowTagArrayOutput{}) pulumi.RegisterOutputType(MatchingWorkflowInputSourceOutput{}) pulumi.RegisterOutputType(MatchingWorkflowInputSourceArrayOutput{}) pulumi.RegisterOutputType(MatchingWorkflowIntermediateSourceConfigurationOutput{}) diff --git a/sdk/go/aws/events/getRule.go b/sdk/go/aws/events/getRule.go index 3a7fd677f0..5fe0e5ec58 100644 --- a/sdk/go/aws/events/getRule.go +++ b/sdk/go/aws/events/getRule.go @@ -24,28 +24,18 @@ func LookupRule(ctx *pulumi.Context, args *LookupRuleArgs, opts ...pulumi.Invoke } type LookupRuleArgs struct { - // The ARN of the rule, such as arn:aws:events:us-east-2:123456789012:rule/example. - Arn string `pulumi:"arn"` + Id string `pulumi:"id"` } type LookupRuleResult struct { - // The ARN of the rule, such as arn:aws:events:us-east-2:123456789012:rule/example. - Arn *string `pulumi:"arn"` - // The description of the rule. - Description *string `pulumi:"description"` - // The name or ARN of the event bus associated with the rule. If you omit this, the default event bus is used. - EventBusName *string `pulumi:"eventBusName"` - // The event pattern of the rule. For more information, see Events and Event Patterns in the Amazon EventBridge User Guide. - EventPattern *string `pulumi:"eventPattern"` - // The Amazon Resource Name (ARN) of the role that is used for target invocation. - RoleArn *string `pulumi:"roleArn"` - // The scheduling expression. For example, "cron(0 20 * * ? *)", "rate(5 minutes)". For more information, see Creating an Amazon EventBridge rule that runs on a schedule. - ScheduleExpression *string `pulumi:"scheduleExpression"` - // The state of the rule. - State *RuleStateEnum `pulumi:"state"` - // Adds the specified targets to the specified rule, or updates the targets if they are already associated with the rule. - // Targets are the resources that are invoked when a rule is triggered. - Targets []RuleTarget `pulumi:"targets"` + Arn *string `pulumi:"arn"` + Description *string `pulumi:"description"` + EventPattern interface{} `pulumi:"eventPattern"` + Id *string `pulumi:"id"` + RoleArn *string `pulumi:"roleArn"` + ScheduleExpression *string `pulumi:"scheduleExpression"` + State *string `pulumi:"state"` + Targets []RuleTarget `pulumi:"targets"` } func LookupRuleOutput(ctx *pulumi.Context, args LookupRuleOutputArgs, opts ...pulumi.InvokeOption) LookupRuleResultOutput { @@ -62,8 +52,7 @@ func LookupRuleOutput(ctx *pulumi.Context, args LookupRuleOutputArgs, opts ...pu } type LookupRuleOutputArgs struct { - // The ARN of the rule, such as arn:aws:events:us-east-2:123456789012:rule/example. - Arn pulumi.StringInput `pulumi:"arn"` + Id pulumi.StringInput `pulumi:"id"` } func (LookupRuleOutputArgs) ElementType() reflect.Type { @@ -90,43 +79,34 @@ func (o LookupRuleResultOutput) ToOutput(ctx context.Context) pulumix.Output[Loo } } -// The ARN of the rule, such as arn:aws:events:us-east-2:123456789012:rule/example. func (o LookupRuleResultOutput) Arn() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupRuleResult) *string { return v.Arn }).(pulumi.StringPtrOutput) } -// The description of the rule. func (o LookupRuleResultOutput) Description() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupRuleResult) *string { return v.Description }).(pulumi.StringPtrOutput) } -// The name or ARN of the event bus associated with the rule. If you omit this, the default event bus is used. -func (o LookupRuleResultOutput) EventBusName() pulumi.StringPtrOutput { - return o.ApplyT(func(v LookupRuleResult) *string { return v.EventBusName }).(pulumi.StringPtrOutput) +func (o LookupRuleResultOutput) EventPattern() pulumi.AnyOutput { + return o.ApplyT(func(v LookupRuleResult) interface{} { return v.EventPattern }).(pulumi.AnyOutput) } -// The event pattern of the rule. For more information, see Events and Event Patterns in the Amazon EventBridge User Guide. -func (o LookupRuleResultOutput) EventPattern() pulumi.StringPtrOutput { - return o.ApplyT(func(v LookupRuleResult) *string { return v.EventPattern }).(pulumi.StringPtrOutput) +func (o LookupRuleResultOutput) Id() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupRuleResult) *string { return v.Id }).(pulumi.StringPtrOutput) } -// The Amazon Resource Name (ARN) of the role that is used for target invocation. func (o LookupRuleResultOutput) RoleArn() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupRuleResult) *string { return v.RoleArn }).(pulumi.StringPtrOutput) } -// The scheduling expression. For example, "cron(0 20 * * ? *)", "rate(5 minutes)". For more information, see Creating an Amazon EventBridge rule that runs on a schedule. func (o LookupRuleResultOutput) ScheduleExpression() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupRuleResult) *string { return v.ScheduleExpression }).(pulumi.StringPtrOutput) } -// The state of the rule. -func (o LookupRuleResultOutput) State() RuleStateEnumPtrOutput { - return o.ApplyT(func(v LookupRuleResult) *RuleStateEnum { return v.State }).(RuleStateEnumPtrOutput) +func (o LookupRuleResultOutput) State() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupRuleResult) *string { return v.State }).(pulumi.StringPtrOutput) } -// Adds the specified targets to the specified rule, or updates the targets if they are already associated with the rule. -// Targets are the resources that are invoked when a rule is triggered. func (o LookupRuleResultOutput) Targets() RuleTargetArrayOutput { return o.ApplyT(func(v LookupRuleResult) []RuleTarget { return v.Targets }).(RuleTargetArrayOutput) } diff --git a/sdk/go/aws/events/pulumiEnums.go b/sdk/go/aws/events/pulumiEnums.go index 924200b281..e7ef5ac678 100644 --- a/sdk/go/aws/events/pulumiEnums.go +++ b/sdk/go/aws/events/pulumiEnums.go @@ -852,189 +852,6 @@ func (o EndpointStateEnumPtrOutput) ToStringPtrOutputWithContext(ctx context.Con }).(pulumi.StringPtrOutput) } -// The state of the rule. -type RuleStateEnum string - -const ( - RuleStateEnumDisabled = RuleStateEnum("DISABLED") - RuleStateEnumEnabled = RuleStateEnum("ENABLED") -) - -func (RuleStateEnum) ElementType() reflect.Type { - return reflect.TypeOf((*RuleStateEnum)(nil)).Elem() -} - -func (e RuleStateEnum) ToRuleStateEnumOutput() RuleStateEnumOutput { - return pulumi.ToOutput(e).(RuleStateEnumOutput) -} - -func (e RuleStateEnum) ToRuleStateEnumOutputWithContext(ctx context.Context) RuleStateEnumOutput { - return pulumi.ToOutputWithContext(ctx, e).(RuleStateEnumOutput) -} - -func (e RuleStateEnum) ToRuleStateEnumPtrOutput() RuleStateEnumPtrOutput { - return e.ToRuleStateEnumPtrOutputWithContext(context.Background()) -} - -func (e RuleStateEnum) ToRuleStateEnumPtrOutputWithContext(ctx context.Context) RuleStateEnumPtrOutput { - return RuleStateEnum(e).ToRuleStateEnumOutputWithContext(ctx).ToRuleStateEnumPtrOutputWithContext(ctx) -} - -func (e RuleStateEnum) ToStringOutput() pulumi.StringOutput { - return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) -} - -func (e RuleStateEnum) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) -} - -func (e RuleStateEnum) ToStringPtrOutput() pulumi.StringPtrOutput { - return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) -} - -func (e RuleStateEnum) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) -} - -type RuleStateEnumOutput struct{ *pulumi.OutputState } - -func (RuleStateEnumOutput) ElementType() reflect.Type { - return reflect.TypeOf((*RuleStateEnum)(nil)).Elem() -} - -func (o RuleStateEnumOutput) ToRuleStateEnumOutput() RuleStateEnumOutput { - return o -} - -func (o RuleStateEnumOutput) ToRuleStateEnumOutputWithContext(ctx context.Context) RuleStateEnumOutput { - return o -} - -func (o RuleStateEnumOutput) ToRuleStateEnumPtrOutput() RuleStateEnumPtrOutput { - return o.ToRuleStateEnumPtrOutputWithContext(context.Background()) -} - -func (o RuleStateEnumOutput) ToRuleStateEnumPtrOutputWithContext(ctx context.Context) RuleStateEnumPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v RuleStateEnum) *RuleStateEnum { - return &v - }).(RuleStateEnumPtrOutput) -} - -func (o RuleStateEnumOutput) ToOutput(ctx context.Context) pulumix.Output[RuleStateEnum] { - return pulumix.Output[RuleStateEnum]{ - OutputState: o.OutputState, - } -} - -func (o RuleStateEnumOutput) ToStringOutput() pulumi.StringOutput { - return o.ToStringOutputWithContext(context.Background()) -} - -func (o RuleStateEnumOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e RuleStateEnum) string { - return string(e) - }).(pulumi.StringOutput) -} - -func (o RuleStateEnumOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o RuleStateEnumOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e RuleStateEnum) *string { - v := string(e) - return &v - }).(pulumi.StringPtrOutput) -} - -type RuleStateEnumPtrOutput struct{ *pulumi.OutputState } - -func (RuleStateEnumPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**RuleStateEnum)(nil)).Elem() -} - -func (o RuleStateEnumPtrOutput) ToRuleStateEnumPtrOutput() RuleStateEnumPtrOutput { - return o -} - -func (o RuleStateEnumPtrOutput) ToRuleStateEnumPtrOutputWithContext(ctx context.Context) RuleStateEnumPtrOutput { - return o -} - -func (o RuleStateEnumPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*RuleStateEnum] { - return pulumix.Output[*RuleStateEnum]{ - OutputState: o.OutputState, - } -} - -func (o RuleStateEnumPtrOutput) Elem() RuleStateEnumOutput { - return o.ApplyT(func(v *RuleStateEnum) RuleStateEnum { - if v != nil { - return *v - } - var ret RuleStateEnum - return ret - }).(RuleStateEnumOutput) -} - -func (o RuleStateEnumPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o RuleStateEnumPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e *RuleStateEnum) *string { - if e == nil { - return nil - } - v := string(*e) - return &v - }).(pulumi.StringPtrOutput) -} - -// RuleStateEnumInput is an input type that accepts RuleStateEnumArgs and RuleStateEnumOutput values. -// You can construct a concrete instance of `RuleStateEnumInput` via: -// -// RuleStateEnumArgs{...} -type RuleStateEnumInput interface { - pulumi.Input - - ToRuleStateEnumOutput() RuleStateEnumOutput - ToRuleStateEnumOutputWithContext(context.Context) RuleStateEnumOutput -} - -var ruleStateEnumPtrType = reflect.TypeOf((**RuleStateEnum)(nil)).Elem() - -type RuleStateEnumPtrInput interface { - pulumi.Input - - ToRuleStateEnumPtrOutput() RuleStateEnumPtrOutput - ToRuleStateEnumPtrOutputWithContext(context.Context) RuleStateEnumPtrOutput -} - -type ruleStateEnumPtr string - -func RuleStateEnumPtr(v string) RuleStateEnumPtrInput { - return (*ruleStateEnumPtr)(&v) -} - -func (*ruleStateEnumPtr) ElementType() reflect.Type { - return ruleStateEnumPtrType -} - -func (in *ruleStateEnumPtr) ToRuleStateEnumPtrOutput() RuleStateEnumPtrOutput { - return pulumi.ToOutput(in).(RuleStateEnumPtrOutput) -} - -func (in *ruleStateEnumPtr) ToRuleStateEnumPtrOutputWithContext(ctx context.Context) RuleStateEnumPtrOutput { - return pulumi.ToOutputWithContext(ctx, in).(RuleStateEnumPtrOutput) -} - -func (in *ruleStateEnumPtr) ToOutput(ctx context.Context) pulumix.Output[*RuleStateEnum] { - return pulumix.Output[*RuleStateEnum]{ - OutputState: in.ToRuleStateEnumPtrOutputWithContext(ctx).OutputState, - } -} - func init() { pulumi.RegisterInputType(reflect.TypeOf((*ApiDestinationHttpMethodInput)(nil)).Elem(), ApiDestinationHttpMethod("GET")) pulumi.RegisterInputType(reflect.TypeOf((*ApiDestinationHttpMethodPtrInput)(nil)).Elem(), ApiDestinationHttpMethod("GET")) @@ -1044,8 +861,6 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*ConnectionOAuthParametersHttpMethodPtrInput)(nil)).Elem(), ConnectionOAuthParametersHttpMethod("GET")) pulumi.RegisterInputType(reflect.TypeOf((*EndpointReplicationStateInput)(nil)).Elem(), EndpointReplicationState("ENABLED")) pulumi.RegisterInputType(reflect.TypeOf((*EndpointReplicationStatePtrInput)(nil)).Elem(), EndpointReplicationState("ENABLED")) - pulumi.RegisterInputType(reflect.TypeOf((*RuleStateEnumInput)(nil)).Elem(), RuleStateEnum("DISABLED")) - pulumi.RegisterInputType(reflect.TypeOf((*RuleStateEnumPtrInput)(nil)).Elem(), RuleStateEnum("DISABLED")) pulumi.RegisterOutputType(ApiDestinationHttpMethodOutput{}) pulumi.RegisterOutputType(ApiDestinationHttpMethodPtrOutput{}) pulumi.RegisterOutputType(ConnectionAuthorizationTypeOutput{}) @@ -1056,6 +871,4 @@ func init() { pulumi.RegisterOutputType(EndpointReplicationStatePtrOutput{}) pulumi.RegisterOutputType(EndpointStateEnumOutput{}) pulumi.RegisterOutputType(EndpointStateEnumPtrOutput{}) - pulumi.RegisterOutputType(RuleStateEnumOutput{}) - pulumi.RegisterOutputType(RuleStateEnumPtrOutput{}) } diff --git a/sdk/go/aws/events/pulumiTypes.go b/sdk/go/aws/events/pulumiTypes.go index 6d8785ae2b..74363cfe0c 100644 --- a/sdk/go/aws/events/pulumiTypes.go +++ b/sdk/go/aws/events/pulumiTypes.go @@ -4393,13 +4393,12 @@ func (o RulePlacementStrategyArrayOutput) Index(i pulumi.IntInput) RulePlacement } type RuleRedshiftDataParameters struct { - Database string `pulumi:"database"` - DbUser *string `pulumi:"dbUser"` - SecretManagerArn *string `pulumi:"secretManagerArn"` - Sql *string `pulumi:"sql"` - Sqls []string `pulumi:"sqls"` - StatementName *string `pulumi:"statementName"` - WithEvent *bool `pulumi:"withEvent"` + Database string `pulumi:"database"` + DbUser *string `pulumi:"dbUser"` + SecretManagerArn *string `pulumi:"secretManagerArn"` + Sql *string `pulumi:"sql"` + StatementName *string `pulumi:"statementName"` + WithEvent *bool `pulumi:"withEvent"` } // RuleRedshiftDataParametersInput is an input type that accepts RuleRedshiftDataParametersArgs and RuleRedshiftDataParametersOutput values. @@ -4414,13 +4413,12 @@ type RuleRedshiftDataParametersInput interface { } type RuleRedshiftDataParametersArgs struct { - Database pulumi.StringInput `pulumi:"database"` - DbUser pulumi.StringPtrInput `pulumi:"dbUser"` - SecretManagerArn pulumi.StringPtrInput `pulumi:"secretManagerArn"` - Sql pulumi.StringPtrInput `pulumi:"sql"` - Sqls pulumi.StringArrayInput `pulumi:"sqls"` - StatementName pulumi.StringPtrInput `pulumi:"statementName"` - WithEvent pulumi.BoolPtrInput `pulumi:"withEvent"` + Database pulumi.StringInput `pulumi:"database"` + DbUser pulumi.StringPtrInput `pulumi:"dbUser"` + SecretManagerArn pulumi.StringPtrInput `pulumi:"secretManagerArn"` + Sql pulumi.StringPtrInput `pulumi:"sql"` + StatementName pulumi.StringPtrInput `pulumi:"statementName"` + WithEvent pulumi.BoolPtrInput `pulumi:"withEvent"` } func (RuleRedshiftDataParametersArgs) ElementType() reflect.Type { @@ -4534,10 +4532,6 @@ func (o RuleRedshiftDataParametersOutput) Sql() pulumi.StringPtrOutput { return o.ApplyT(func(v RuleRedshiftDataParameters) *string { return v.Sql }).(pulumi.StringPtrOutput) } -func (o RuleRedshiftDataParametersOutput) Sqls() pulumi.StringArrayOutput { - return o.ApplyT(func(v RuleRedshiftDataParameters) []string { return v.Sqls }).(pulumi.StringArrayOutput) -} - func (o RuleRedshiftDataParametersOutput) StatementName() pulumi.StringPtrOutput { return o.ApplyT(func(v RuleRedshiftDataParameters) *string { return v.StatementName }).(pulumi.StringPtrOutput) } @@ -4612,15 +4606,6 @@ func (o RuleRedshiftDataParametersPtrOutput) Sql() pulumi.StringPtrOutput { }).(pulumi.StringPtrOutput) } -func (o RuleRedshiftDataParametersPtrOutput) Sqls() pulumi.StringArrayOutput { - return o.ApplyT(func(v *RuleRedshiftDataParameters) []string { - if v == nil { - return nil - } - return v.Sqls - }).(pulumi.StringArrayOutput) -} - func (o RuleRedshiftDataParametersPtrOutput) StatementName() pulumi.StringPtrOutput { return o.ApplyT(func(v *RuleRedshiftDataParameters) *string { if v == nil { diff --git a/sdk/go/aws/events/rule.go b/sdk/go/aws/events/rule.go index c59d039c30..a35364004b 100644 --- a/sdk/go/aws/events/rule.go +++ b/sdk/go/aws/events/rule.go @@ -16,25 +16,15 @@ import ( type Rule struct { pulumi.CustomResourceState - // The ARN of the rule, such as arn:aws:events:us-east-2:123456789012:rule/example. - Arn pulumi.StringOutput `pulumi:"arn"` - // The description of the rule. - Description pulumi.StringPtrOutput `pulumi:"description"` - // The name or ARN of the event bus associated with the rule. If you omit this, the default event bus is used. - EventBusName pulumi.StringPtrOutput `pulumi:"eventBusName"` - // The event pattern of the rule. For more information, see Events and Event Patterns in the Amazon EventBridge User Guide. - EventPattern pulumi.StringPtrOutput `pulumi:"eventPattern"` - // The name of the rule. - Name pulumi.StringPtrOutput `pulumi:"name"` - // The Amazon Resource Name (ARN) of the role that is used for target invocation. - RoleArn pulumi.StringPtrOutput `pulumi:"roleArn"` - // The scheduling expression. For example, "cron(0 20 * * ? *)", "rate(5 minutes)". For more information, see Creating an Amazon EventBridge rule that runs on a schedule. + Arn pulumi.StringOutput `pulumi:"arn"` + Description pulumi.StringPtrOutput `pulumi:"description"` + EventBusName pulumi.StringPtrOutput `pulumi:"eventBusName"` + EventPattern pulumi.AnyOutput `pulumi:"eventPattern"` + Name pulumi.StringPtrOutput `pulumi:"name"` + RoleArn pulumi.StringPtrOutput `pulumi:"roleArn"` ScheduleExpression pulumi.StringPtrOutput `pulumi:"scheduleExpression"` - // The state of the rule. - State RuleStateEnumPtrOutput `pulumi:"state"` - // Adds the specified targets to the specified rule, or updates the targets if they are already associated with the rule. - // Targets are the resources that are invoked when a rule is triggered. - Targets RuleTargetArrayOutput `pulumi:"targets"` + State pulumi.StringPtrOutput `pulumi:"state"` + Targets RuleTargetArrayOutput `pulumi:"targets"` } // NewRule registers a new resource with the given unique name, arguments, and options. @@ -45,6 +35,7 @@ func NewRule(ctx *pulumi.Context, } replaceOnChanges := pulumi.ReplaceOnChanges([]string{ + "eventBusName", "name", }) opts = append(opts, replaceOnChanges) @@ -81,44 +72,26 @@ func (RuleState) ElementType() reflect.Type { } type ruleArgs struct { - // The description of the rule. - Description *string `pulumi:"description"` - // The name or ARN of the event bus associated with the rule. If you omit this, the default event bus is used. - EventBusName *string `pulumi:"eventBusName"` - // The event pattern of the rule. For more information, see Events and Event Patterns in the Amazon EventBridge User Guide. - EventPattern *string `pulumi:"eventPattern"` - // The name of the rule. - Name *string `pulumi:"name"` - // The Amazon Resource Name (ARN) of the role that is used for target invocation. - RoleArn *string `pulumi:"roleArn"` - // The scheduling expression. For example, "cron(0 20 * * ? *)", "rate(5 minutes)". For more information, see Creating an Amazon EventBridge rule that runs on a schedule. - ScheduleExpression *string `pulumi:"scheduleExpression"` - // The state of the rule. - State *RuleStateEnum `pulumi:"state"` - // Adds the specified targets to the specified rule, or updates the targets if they are already associated with the rule. - // Targets are the resources that are invoked when a rule is triggered. - Targets []RuleTarget `pulumi:"targets"` + Description *string `pulumi:"description"` + EventBusName *string `pulumi:"eventBusName"` + EventPattern interface{} `pulumi:"eventPattern"` + Name *string `pulumi:"name"` + RoleArn *string `pulumi:"roleArn"` + ScheduleExpression *string `pulumi:"scheduleExpression"` + State *string `pulumi:"state"` + Targets []RuleTarget `pulumi:"targets"` } // The set of arguments for constructing a Rule resource. type RuleArgs struct { - // The description of the rule. - Description pulumi.StringPtrInput - // The name or ARN of the event bus associated with the rule. If you omit this, the default event bus is used. - EventBusName pulumi.StringPtrInput - // The event pattern of the rule. For more information, see Events and Event Patterns in the Amazon EventBridge User Guide. - EventPattern pulumi.StringPtrInput - // The name of the rule. - Name pulumi.StringPtrInput - // The Amazon Resource Name (ARN) of the role that is used for target invocation. - RoleArn pulumi.StringPtrInput - // The scheduling expression. For example, "cron(0 20 * * ? *)", "rate(5 minutes)". For more information, see Creating an Amazon EventBridge rule that runs on a schedule. + Description pulumi.StringPtrInput + EventBusName pulumi.StringPtrInput + EventPattern pulumi.Input + Name pulumi.StringPtrInput + RoleArn pulumi.StringPtrInput ScheduleExpression pulumi.StringPtrInput - // The state of the rule. - State RuleStateEnumPtrInput - // Adds the specified targets to the specified rule, or updates the targets if they are already associated with the rule. - // Targets are the resources that are invoked when a rule is triggered. - Targets RuleTargetArrayInput + State pulumi.StringPtrInput + Targets RuleTargetArrayInput } func (RuleArgs) ElementType() reflect.Type { @@ -170,48 +143,38 @@ func (o RuleOutput) ToOutput(ctx context.Context) pulumix.Output[*Rule] { } } -// The ARN of the rule, such as arn:aws:events:us-east-2:123456789012:rule/example. func (o RuleOutput) Arn() pulumi.StringOutput { return o.ApplyT(func(v *Rule) pulumi.StringOutput { return v.Arn }).(pulumi.StringOutput) } -// The description of the rule. func (o RuleOutput) Description() pulumi.StringPtrOutput { return o.ApplyT(func(v *Rule) pulumi.StringPtrOutput { return v.Description }).(pulumi.StringPtrOutput) } -// The name or ARN of the event bus associated with the rule. If you omit this, the default event bus is used. func (o RuleOutput) EventBusName() pulumi.StringPtrOutput { return o.ApplyT(func(v *Rule) pulumi.StringPtrOutput { return v.EventBusName }).(pulumi.StringPtrOutput) } -// The event pattern of the rule. For more information, see Events and Event Patterns in the Amazon EventBridge User Guide. -func (o RuleOutput) EventPattern() pulumi.StringPtrOutput { - return o.ApplyT(func(v *Rule) pulumi.StringPtrOutput { return v.EventPattern }).(pulumi.StringPtrOutput) +func (o RuleOutput) EventPattern() pulumi.AnyOutput { + return o.ApplyT(func(v *Rule) pulumi.AnyOutput { return v.EventPattern }).(pulumi.AnyOutput) } -// The name of the rule. func (o RuleOutput) Name() pulumi.StringPtrOutput { return o.ApplyT(func(v *Rule) pulumi.StringPtrOutput { return v.Name }).(pulumi.StringPtrOutput) } -// The Amazon Resource Name (ARN) of the role that is used for target invocation. func (o RuleOutput) RoleArn() pulumi.StringPtrOutput { return o.ApplyT(func(v *Rule) pulumi.StringPtrOutput { return v.RoleArn }).(pulumi.StringPtrOutput) } -// The scheduling expression. For example, "cron(0 20 * * ? *)", "rate(5 minutes)". For more information, see Creating an Amazon EventBridge rule that runs on a schedule. func (o RuleOutput) ScheduleExpression() pulumi.StringPtrOutput { return o.ApplyT(func(v *Rule) pulumi.StringPtrOutput { return v.ScheduleExpression }).(pulumi.StringPtrOutput) } -// The state of the rule. -func (o RuleOutput) State() RuleStateEnumPtrOutput { - return o.ApplyT(func(v *Rule) RuleStateEnumPtrOutput { return v.State }).(RuleStateEnumPtrOutput) +func (o RuleOutput) State() pulumi.StringPtrOutput { + return o.ApplyT(func(v *Rule) pulumi.StringPtrOutput { return v.State }).(pulumi.StringPtrOutput) } -// Adds the specified targets to the specified rule, or updates the targets if they are already associated with the rule. -// Targets are the resources that are invoked when a rule is triggered. func (o RuleOutput) Targets() RuleTargetArrayOutput { return o.ApplyT(func(v *Rule) RuleTargetArrayOutput { return v.Targets }).(RuleTargetArrayOutput) } diff --git a/sdk/go/aws/gamelift/fleet.go b/sdk/go/aws/gamelift/fleet.go index 0500e2c84d..a5f8b43ed0 100644 --- a/sdk/go/aws/gamelift/fleet.go +++ b/sdk/go/aws/gamelift/fleet.go @@ -37,8 +37,10 @@ type Fleet struct { // Indicates whether to use On-Demand instances or Spot instances for this fleet. If empty, the default is ON_DEMAND. Both categories of instances use identical hardware and configurations based on the instance type selected for this fleet. FleetType FleetTypePtrOutput `pulumi:"fleetType"` // A unique identifier for an AWS IAM role that manages access to your AWS services. With an instance role ARN set, any application that runs on an instance in this fleet can assume the role, including install scripts, server processes, and daemons (background processes). Create a role or look up a role's ARN from the IAM dashboard in the AWS Management Console. - InstanceRoleArn pulumi.StringPtrOutput `pulumi:"instanceRoleArn"` - Locations FleetLocationConfigurationArrayOutput `pulumi:"locations"` + InstanceRoleArn pulumi.StringPtrOutput `pulumi:"instanceRoleArn"` + // Credentials provider implementation that loads credentials from the Amazon EC2 Instance Metadata Service. + InstanceRoleCredentialsProvider FleetInstanceRoleCredentialsProviderPtrOutput `pulumi:"instanceRoleCredentialsProvider"` + Locations FleetLocationConfigurationArrayOutput `pulumi:"locations"` // This parameter is no longer used. When hosting a custom game build, specify where Amazon GameLift should store log files using the Amazon GameLift server API call ProcessReady() LogPaths pulumi.StringArrayOutput `pulumi:"logPaths"` // [DEPRECATED] The maximum value that is allowed for the fleet's instance count. When creating a new fleet, GameLift automatically sets this value to "1". Once the fleet is active, you can change this value. @@ -85,6 +87,7 @@ func NewFleet(ctx *pulumi.Context, "ec2InstanceType", "fleetType", "instanceRoleArn", + "instanceRoleCredentialsProvider", "logPaths[*]", "peerVpcAwsAccountId", "peerVpcId", @@ -145,8 +148,10 @@ type fleetArgs struct { // Indicates whether to use On-Demand instances or Spot instances for this fleet. If empty, the default is ON_DEMAND. Both categories of instances use identical hardware and configurations based on the instance type selected for this fleet. FleetType *FleetType `pulumi:"fleetType"` // A unique identifier for an AWS IAM role that manages access to your AWS services. With an instance role ARN set, any application that runs on an instance in this fleet can assume the role, including install scripts, server processes, and daemons (background processes). Create a role or look up a role's ARN from the IAM dashboard in the AWS Management Console. - InstanceRoleArn *string `pulumi:"instanceRoleArn"` - Locations []FleetLocationConfiguration `pulumi:"locations"` + InstanceRoleArn *string `pulumi:"instanceRoleArn"` + // Credentials provider implementation that loads credentials from the Amazon EC2 Instance Metadata Service. + InstanceRoleCredentialsProvider *FleetInstanceRoleCredentialsProvider `pulumi:"instanceRoleCredentialsProvider"` + Locations []FleetLocationConfiguration `pulumi:"locations"` // This parameter is no longer used. When hosting a custom game build, specify where Amazon GameLift should store log files using the Amazon GameLift server API call ProcessReady() LogPaths []string `pulumi:"logPaths"` // [DEPRECATED] The maximum value that is allowed for the fleet's instance count. When creating a new fleet, GameLift automatically sets this value to "1". Once the fleet is active, you can change this value. @@ -201,7 +206,9 @@ type FleetArgs struct { FleetType FleetTypePtrInput // A unique identifier for an AWS IAM role that manages access to your AWS services. With an instance role ARN set, any application that runs on an instance in this fleet can assume the role, including install scripts, server processes, and daemons (background processes). Create a role or look up a role's ARN from the IAM dashboard in the AWS Management Console. InstanceRoleArn pulumi.StringPtrInput - Locations FleetLocationConfigurationArrayInput + // Credentials provider implementation that loads credentials from the Amazon EC2 Instance Metadata Service. + InstanceRoleCredentialsProvider FleetInstanceRoleCredentialsProviderPtrInput + Locations FleetLocationConfigurationArrayInput // This parameter is no longer used. When hosting a custom game build, specify where Amazon GameLift should store log files using the Amazon GameLift server API call ProcessReady() LogPaths pulumi.StringArrayInput // [DEPRECATED] The maximum value that is allowed for the fleet's instance count. When creating a new fleet, GameLift automatically sets this value to "1". Once the fleet is active, you can change this value. @@ -338,6 +345,11 @@ func (o FleetOutput) InstanceRoleArn() pulumi.StringPtrOutput { return o.ApplyT(func(v *Fleet) pulumi.StringPtrOutput { return v.InstanceRoleArn }).(pulumi.StringPtrOutput) } +// Credentials provider implementation that loads credentials from the Amazon EC2 Instance Metadata Service. +func (o FleetOutput) InstanceRoleCredentialsProvider() FleetInstanceRoleCredentialsProviderPtrOutput { + return o.ApplyT(func(v *Fleet) FleetInstanceRoleCredentialsProviderPtrOutput { return v.InstanceRoleCredentialsProvider }).(FleetInstanceRoleCredentialsProviderPtrOutput) +} + func (o FleetOutput) Locations() FleetLocationConfigurationArrayOutput { return o.ApplyT(func(v *Fleet) FleetLocationConfigurationArrayOutput { return v.Locations }).(FleetLocationConfigurationArrayOutput) } diff --git a/sdk/go/aws/gamelift/pulumiEnums.go b/sdk/go/aws/gamelift/pulumiEnums.go index d2f64db03f..1086537bfb 100644 --- a/sdk/go/aws/gamelift/pulumiEnums.go +++ b/sdk/go/aws/gamelift/pulumiEnums.go @@ -745,6 +745,188 @@ func (in *fleetComputeTypePtr) ToOutput(ctx context.Context) pulumix.Output[*Fle } } +// Credentials provider implementation that loads credentials from the Amazon EC2 Instance Metadata Service. +type FleetInstanceRoleCredentialsProvider string + +const ( + FleetInstanceRoleCredentialsProviderSharedCredentialFile = FleetInstanceRoleCredentialsProvider("SHARED_CREDENTIAL_FILE") +) + +func (FleetInstanceRoleCredentialsProvider) ElementType() reflect.Type { + return reflect.TypeOf((*FleetInstanceRoleCredentialsProvider)(nil)).Elem() +} + +func (e FleetInstanceRoleCredentialsProvider) ToFleetInstanceRoleCredentialsProviderOutput() FleetInstanceRoleCredentialsProviderOutput { + return pulumi.ToOutput(e).(FleetInstanceRoleCredentialsProviderOutput) +} + +func (e FleetInstanceRoleCredentialsProvider) ToFleetInstanceRoleCredentialsProviderOutputWithContext(ctx context.Context) FleetInstanceRoleCredentialsProviderOutput { + return pulumi.ToOutputWithContext(ctx, e).(FleetInstanceRoleCredentialsProviderOutput) +} + +func (e FleetInstanceRoleCredentialsProvider) ToFleetInstanceRoleCredentialsProviderPtrOutput() FleetInstanceRoleCredentialsProviderPtrOutput { + return e.ToFleetInstanceRoleCredentialsProviderPtrOutputWithContext(context.Background()) +} + +func (e FleetInstanceRoleCredentialsProvider) ToFleetInstanceRoleCredentialsProviderPtrOutputWithContext(ctx context.Context) FleetInstanceRoleCredentialsProviderPtrOutput { + return FleetInstanceRoleCredentialsProvider(e).ToFleetInstanceRoleCredentialsProviderOutputWithContext(ctx).ToFleetInstanceRoleCredentialsProviderPtrOutputWithContext(ctx) +} + +func (e FleetInstanceRoleCredentialsProvider) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e FleetInstanceRoleCredentialsProvider) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e FleetInstanceRoleCredentialsProvider) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e FleetInstanceRoleCredentialsProvider) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type FleetInstanceRoleCredentialsProviderOutput struct{ *pulumi.OutputState } + +func (FleetInstanceRoleCredentialsProviderOutput) ElementType() reflect.Type { + return reflect.TypeOf((*FleetInstanceRoleCredentialsProvider)(nil)).Elem() +} + +func (o FleetInstanceRoleCredentialsProviderOutput) ToFleetInstanceRoleCredentialsProviderOutput() FleetInstanceRoleCredentialsProviderOutput { + return o +} + +func (o FleetInstanceRoleCredentialsProviderOutput) ToFleetInstanceRoleCredentialsProviderOutputWithContext(ctx context.Context) FleetInstanceRoleCredentialsProviderOutput { + return o +} + +func (o FleetInstanceRoleCredentialsProviderOutput) ToFleetInstanceRoleCredentialsProviderPtrOutput() FleetInstanceRoleCredentialsProviderPtrOutput { + return o.ToFleetInstanceRoleCredentialsProviderPtrOutputWithContext(context.Background()) +} + +func (o FleetInstanceRoleCredentialsProviderOutput) ToFleetInstanceRoleCredentialsProviderPtrOutputWithContext(ctx context.Context) FleetInstanceRoleCredentialsProviderPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v FleetInstanceRoleCredentialsProvider) *FleetInstanceRoleCredentialsProvider { + return &v + }).(FleetInstanceRoleCredentialsProviderPtrOutput) +} + +func (o FleetInstanceRoleCredentialsProviderOutput) ToOutput(ctx context.Context) pulumix.Output[FleetInstanceRoleCredentialsProvider] { + return pulumix.Output[FleetInstanceRoleCredentialsProvider]{ + OutputState: o.OutputState, + } +} + +func (o FleetInstanceRoleCredentialsProviderOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o FleetInstanceRoleCredentialsProviderOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e FleetInstanceRoleCredentialsProvider) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o FleetInstanceRoleCredentialsProviderOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o FleetInstanceRoleCredentialsProviderOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e FleetInstanceRoleCredentialsProvider) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type FleetInstanceRoleCredentialsProviderPtrOutput struct{ *pulumi.OutputState } + +func (FleetInstanceRoleCredentialsProviderPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**FleetInstanceRoleCredentialsProvider)(nil)).Elem() +} + +func (o FleetInstanceRoleCredentialsProviderPtrOutput) ToFleetInstanceRoleCredentialsProviderPtrOutput() FleetInstanceRoleCredentialsProviderPtrOutput { + return o +} + +func (o FleetInstanceRoleCredentialsProviderPtrOutput) ToFleetInstanceRoleCredentialsProviderPtrOutputWithContext(ctx context.Context) FleetInstanceRoleCredentialsProviderPtrOutput { + return o +} + +func (o FleetInstanceRoleCredentialsProviderPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*FleetInstanceRoleCredentialsProvider] { + return pulumix.Output[*FleetInstanceRoleCredentialsProvider]{ + OutputState: o.OutputState, + } +} + +func (o FleetInstanceRoleCredentialsProviderPtrOutput) Elem() FleetInstanceRoleCredentialsProviderOutput { + return o.ApplyT(func(v *FleetInstanceRoleCredentialsProvider) FleetInstanceRoleCredentialsProvider { + if v != nil { + return *v + } + var ret FleetInstanceRoleCredentialsProvider + return ret + }).(FleetInstanceRoleCredentialsProviderOutput) +} + +func (o FleetInstanceRoleCredentialsProviderPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o FleetInstanceRoleCredentialsProviderPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *FleetInstanceRoleCredentialsProvider) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// FleetInstanceRoleCredentialsProviderInput is an input type that accepts FleetInstanceRoleCredentialsProviderArgs and FleetInstanceRoleCredentialsProviderOutput values. +// You can construct a concrete instance of `FleetInstanceRoleCredentialsProviderInput` via: +// +// FleetInstanceRoleCredentialsProviderArgs{...} +type FleetInstanceRoleCredentialsProviderInput interface { + pulumi.Input + + ToFleetInstanceRoleCredentialsProviderOutput() FleetInstanceRoleCredentialsProviderOutput + ToFleetInstanceRoleCredentialsProviderOutputWithContext(context.Context) FleetInstanceRoleCredentialsProviderOutput +} + +var fleetInstanceRoleCredentialsProviderPtrType = reflect.TypeOf((**FleetInstanceRoleCredentialsProvider)(nil)).Elem() + +type FleetInstanceRoleCredentialsProviderPtrInput interface { + pulumi.Input + + ToFleetInstanceRoleCredentialsProviderPtrOutput() FleetInstanceRoleCredentialsProviderPtrOutput + ToFleetInstanceRoleCredentialsProviderPtrOutputWithContext(context.Context) FleetInstanceRoleCredentialsProviderPtrOutput +} + +type fleetInstanceRoleCredentialsProviderPtr string + +func FleetInstanceRoleCredentialsProviderPtr(v string) FleetInstanceRoleCredentialsProviderPtrInput { + return (*fleetInstanceRoleCredentialsProviderPtr)(&v) +} + +func (*fleetInstanceRoleCredentialsProviderPtr) ElementType() reflect.Type { + return fleetInstanceRoleCredentialsProviderPtrType +} + +func (in *fleetInstanceRoleCredentialsProviderPtr) ToFleetInstanceRoleCredentialsProviderPtrOutput() FleetInstanceRoleCredentialsProviderPtrOutput { + return pulumi.ToOutput(in).(FleetInstanceRoleCredentialsProviderPtrOutput) +} + +func (in *fleetInstanceRoleCredentialsProviderPtr) ToFleetInstanceRoleCredentialsProviderPtrOutputWithContext(ctx context.Context) FleetInstanceRoleCredentialsProviderPtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(FleetInstanceRoleCredentialsProviderPtrOutput) +} + +func (in *fleetInstanceRoleCredentialsProviderPtr) ToOutput(ctx context.Context) pulumix.Output[*FleetInstanceRoleCredentialsProvider] { + return pulumix.Output[*FleetInstanceRoleCredentialsProvider]{ + OutputState: in.ToFleetInstanceRoleCredentialsProviderPtrOutputWithContext(ctx).OutputState, + } +} + // The network communication protocol used by the fleet. type FleetIpPermissionProtocol string @@ -1854,6 +2036,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*FleetCertificateConfigurationCertificateTypePtrInput)(nil)).Elem(), FleetCertificateConfigurationCertificateType("DISABLED")) pulumi.RegisterInputType(reflect.TypeOf((*FleetComputeTypeInput)(nil)).Elem(), FleetComputeType("EC2")) pulumi.RegisterInputType(reflect.TypeOf((*FleetComputeTypePtrInput)(nil)).Elem(), FleetComputeType("EC2")) + pulumi.RegisterInputType(reflect.TypeOf((*FleetInstanceRoleCredentialsProviderInput)(nil)).Elem(), FleetInstanceRoleCredentialsProvider("SHARED_CREDENTIAL_FILE")) + pulumi.RegisterInputType(reflect.TypeOf((*FleetInstanceRoleCredentialsProviderPtrInput)(nil)).Elem(), FleetInstanceRoleCredentialsProvider("SHARED_CREDENTIAL_FILE")) pulumi.RegisterInputType(reflect.TypeOf((*FleetIpPermissionProtocolInput)(nil)).Elem(), FleetIpPermissionProtocol("TCP")) pulumi.RegisterInputType(reflect.TypeOf((*FleetIpPermissionProtocolPtrInput)(nil)).Elem(), FleetIpPermissionProtocol("TCP")) pulumi.RegisterInputType(reflect.TypeOf((*FleetNewGameSessionProtectionPolicyInput)(nil)).Elem(), FleetNewGameSessionProtectionPolicy("FullProtection")) @@ -1874,6 +2058,8 @@ func init() { pulumi.RegisterOutputType(FleetCertificateConfigurationCertificateTypePtrOutput{}) pulumi.RegisterOutputType(FleetComputeTypeOutput{}) pulumi.RegisterOutputType(FleetComputeTypePtrOutput{}) + pulumi.RegisterOutputType(FleetInstanceRoleCredentialsProviderOutput{}) + pulumi.RegisterOutputType(FleetInstanceRoleCredentialsProviderPtrOutput{}) pulumi.RegisterOutputType(FleetIpPermissionProtocolOutput{}) pulumi.RegisterOutputType(FleetIpPermissionProtocolPtrOutput{}) pulumi.RegisterOutputType(FleetNewGameSessionProtectionPolicyOutput{}) diff --git a/sdk/go/aws/iam/getGroup.go b/sdk/go/aws/iam/getGroup.go index 1f2e7fddc9..5821b19b86 100644 --- a/sdk/go/aws/iam/getGroup.go +++ b/sdk/go/aws/iam/getGroup.go @@ -24,15 +24,19 @@ func LookupGroup(ctx *pulumi.Context, args *LookupGroupArgs, opts ...pulumi.Invo } type LookupGroupArgs struct { - Id string `pulumi:"id"` + // The name of the group to create + GroupName string `pulumi:"groupName"` } type LookupGroupResult struct { - Arn *string `pulumi:"arn"` - Id *string `pulumi:"id"` - ManagedPolicyArns []string `pulumi:"managedPolicyArns"` - Path *string `pulumi:"path"` - Policies []GroupPolicyType `pulumi:"policies"` + // The Arn of the group to create + Arn *string `pulumi:"arn"` + // A list of Amazon Resource Names (ARNs) of the IAM managed policies that you want to attach to the role. + ManagedPolicyArns []string `pulumi:"managedPolicyArns"` + // The path to the group + Path *string `pulumi:"path"` + // Adds or updates an inline policy document that is embedded in the specified IAM group + Policies []GroupPolicyType `pulumi:"policies"` } func LookupGroupOutput(ctx *pulumi.Context, args LookupGroupOutputArgs, opts ...pulumi.InvokeOption) LookupGroupResultOutput { @@ -49,7 +53,8 @@ func LookupGroupOutput(ctx *pulumi.Context, args LookupGroupOutputArgs, opts ... } type LookupGroupOutputArgs struct { - Id pulumi.StringInput `pulumi:"id"` + // The name of the group to create + GroupName pulumi.StringInput `pulumi:"groupName"` } func (LookupGroupOutputArgs) ElementType() reflect.Type { @@ -76,22 +81,22 @@ func (o LookupGroupResultOutput) ToOutput(ctx context.Context) pulumix.Output[Lo } } +// The Arn of the group to create func (o LookupGroupResultOutput) Arn() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupGroupResult) *string { return v.Arn }).(pulumi.StringPtrOutput) } -func (o LookupGroupResultOutput) Id() pulumi.StringPtrOutput { - return o.ApplyT(func(v LookupGroupResult) *string { return v.Id }).(pulumi.StringPtrOutput) -} - +// A list of Amazon Resource Names (ARNs) of the IAM managed policies that you want to attach to the role. func (o LookupGroupResultOutput) ManagedPolicyArns() pulumi.StringArrayOutput { return o.ApplyT(func(v LookupGroupResult) []string { return v.ManagedPolicyArns }).(pulumi.StringArrayOutput) } +// The path to the group func (o LookupGroupResultOutput) Path() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupGroupResult) *string { return v.Path }).(pulumi.StringPtrOutput) } +// Adds or updates an inline policy document that is embedded in the specified IAM group func (o LookupGroupResultOutput) Policies() GroupPolicyTypeArrayOutput { return o.ApplyT(func(v LookupGroupResult) []GroupPolicyType { return v.Policies }).(GroupPolicyTypeArrayOutput) } diff --git a/sdk/go/aws/iam/group.go b/sdk/go/aws/iam/group.go index ae93fabcd3..52d496fb4a 100644 --- a/sdk/go/aws/iam/group.go +++ b/sdk/go/aws/iam/group.go @@ -13,16 +13,19 @@ import ( ) // Resource Type definition for AWS::IAM::Group -// -// Deprecated: Group is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible. type Group struct { pulumi.CustomResourceState - Arn pulumi.StringOutput `pulumi:"arn"` - GroupName pulumi.StringPtrOutput `pulumi:"groupName"` - ManagedPolicyArns pulumi.StringArrayOutput `pulumi:"managedPolicyArns"` - Path pulumi.StringPtrOutput `pulumi:"path"` - Policies GroupPolicyTypeArrayOutput `pulumi:"policies"` + // The Arn of the group to create + Arn pulumi.StringOutput `pulumi:"arn"` + // The name of the group to create + GroupName pulumi.StringPtrOutput `pulumi:"groupName"` + // A list of Amazon Resource Names (ARNs) of the IAM managed policies that you want to attach to the role. + ManagedPolicyArns pulumi.StringArrayOutput `pulumi:"managedPolicyArns"` + // The path to the group + Path pulumi.StringPtrOutput `pulumi:"path"` + // Adds or updates an inline policy document that is embedded in the specified IAM group + Policies GroupPolicyTypeArrayOutput `pulumi:"policies"` } // NewGroup registers a new resource with the given unique name, arguments, and options. @@ -69,18 +72,26 @@ func (GroupState) ElementType() reflect.Type { } type groupArgs struct { - GroupName *string `pulumi:"groupName"` - ManagedPolicyArns []string `pulumi:"managedPolicyArns"` - Path *string `pulumi:"path"` - Policies []GroupPolicyType `pulumi:"policies"` + // The name of the group to create + GroupName *string `pulumi:"groupName"` + // A list of Amazon Resource Names (ARNs) of the IAM managed policies that you want to attach to the role. + ManagedPolicyArns []string `pulumi:"managedPolicyArns"` + // The path to the group + Path *string `pulumi:"path"` + // Adds or updates an inline policy document that is embedded in the specified IAM group + Policies []GroupPolicyType `pulumi:"policies"` } // The set of arguments for constructing a Group resource. type GroupArgs struct { - GroupName pulumi.StringPtrInput + // The name of the group to create + GroupName pulumi.StringPtrInput + // A list of Amazon Resource Names (ARNs) of the IAM managed policies that you want to attach to the role. ManagedPolicyArns pulumi.StringArrayInput - Path pulumi.StringPtrInput - Policies GroupPolicyTypeArrayInput + // The path to the group + Path pulumi.StringPtrInput + // Adds or updates an inline policy document that is embedded in the specified IAM group + Policies GroupPolicyTypeArrayInput } func (GroupArgs) ElementType() reflect.Type { @@ -132,22 +143,27 @@ func (o GroupOutput) ToOutput(ctx context.Context) pulumix.Output[*Group] { } } +// The Arn of the group to create func (o GroupOutput) Arn() pulumi.StringOutput { return o.ApplyT(func(v *Group) pulumi.StringOutput { return v.Arn }).(pulumi.StringOutput) } +// The name of the group to create func (o GroupOutput) GroupName() pulumi.StringPtrOutput { return o.ApplyT(func(v *Group) pulumi.StringPtrOutput { return v.GroupName }).(pulumi.StringPtrOutput) } +// A list of Amazon Resource Names (ARNs) of the IAM managed policies that you want to attach to the role. func (o GroupOutput) ManagedPolicyArns() pulumi.StringArrayOutput { return o.ApplyT(func(v *Group) pulumi.StringArrayOutput { return v.ManagedPolicyArns }).(pulumi.StringArrayOutput) } +// The path to the group func (o GroupOutput) Path() pulumi.StringPtrOutput { return o.ApplyT(func(v *Group) pulumi.StringPtrOutput { return v.Path }).(pulumi.StringPtrOutput) } +// Adds or updates an inline policy document that is embedded in the specified IAM group func (o GroupOutput) Policies() GroupPolicyTypeArrayOutput { return o.ApplyT(func(v *Group) GroupPolicyTypeArrayOutput { return v.Policies }).(GroupPolicyTypeArrayOutput) } diff --git a/sdk/go/aws/iam/pulumiTypes.go b/sdk/go/aws/iam/pulumiTypes.go index d5f0c8e54f..d3be2d5ad6 100644 --- a/sdk/go/aws/iam/pulumiTypes.go +++ b/sdk/go/aws/iam/pulumiTypes.go @@ -15,8 +15,10 @@ import ( var _ = internal.GetEnvOrDefault type GroupPolicyType struct { - PolicyDocument interface{} `pulumi:"policyDocument"` - PolicyName string `pulumi:"policyName"` + // The policy document. + PolicyDocument string `pulumi:"policyDocument"` + // The friendly name (not ARN) identifying the policy. + PolicyName string `pulumi:"policyName"` } // GroupPolicyTypeInput is an input type that accepts GroupPolicyTypeArgs and GroupPolicyTypeOutput values. @@ -31,8 +33,10 @@ type GroupPolicyTypeInput interface { } type GroupPolicyTypeArgs struct { - PolicyDocument pulumi.Input `pulumi:"policyDocument"` - PolicyName pulumi.StringInput `pulumi:"policyName"` + // The policy document. + PolicyDocument pulumi.StringInput `pulumi:"policyDocument"` + // The friendly name (not ARN) identifying the policy. + PolicyName pulumi.StringInput `pulumi:"policyName"` } func (GroupPolicyTypeArgs) ElementType() reflect.Type { @@ -104,10 +108,12 @@ func (o GroupPolicyTypeOutput) ToOutput(ctx context.Context) pulumix.Output[Grou } } -func (o GroupPolicyTypeOutput) PolicyDocument() pulumi.AnyOutput { - return o.ApplyT(func(v GroupPolicyType) interface{} { return v.PolicyDocument }).(pulumi.AnyOutput) +// The policy document. +func (o GroupPolicyTypeOutput) PolicyDocument() pulumi.StringOutput { + return o.ApplyT(func(v GroupPolicyType) string { return v.PolicyDocument }).(pulumi.StringOutput) } +// The friendly name (not ARN) identifying the policy. func (o GroupPolicyTypeOutput) PolicyName() pulumi.StringOutput { return o.ApplyT(func(v GroupPolicyType) string { return v.PolicyName }).(pulumi.StringOutput) } diff --git a/sdk/go/aws/iot/getJobTemplate.go b/sdk/go/aws/iot/getJobTemplate.go index a366b46d2a..167a593037 100644 --- a/sdk/go/aws/iot/getJobTemplate.go +++ b/sdk/go/aws/iot/getJobTemplate.go @@ -28,10 +28,7 @@ type LookupJobTemplateArgs struct { } type LookupJobTemplateResult struct { - Arn *string `pulumi:"arn"` - DestinationPackageVersions []string `pulumi:"destinationPackageVersions"` - JobExecutionsRetryConfig *JobExecutionsRetryConfigProperties `pulumi:"jobExecutionsRetryConfig"` - MaintenanceWindows []JobTemplateMaintenanceWindow `pulumi:"maintenanceWindows"` + Arn *string `pulumi:"arn"` } func LookupJobTemplateOutput(ctx *pulumi.Context, args LookupJobTemplateOutputArgs, opts ...pulumi.InvokeOption) LookupJobTemplateResultOutput { @@ -79,18 +76,6 @@ func (o LookupJobTemplateResultOutput) Arn() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupJobTemplateResult) *string { return v.Arn }).(pulumi.StringPtrOutput) } -func (o LookupJobTemplateResultOutput) DestinationPackageVersions() pulumi.StringArrayOutput { - return o.ApplyT(func(v LookupJobTemplateResult) []string { return v.DestinationPackageVersions }).(pulumi.StringArrayOutput) -} - -func (o LookupJobTemplateResultOutput) JobExecutionsRetryConfig() JobExecutionsRetryConfigPropertiesPtrOutput { - return o.ApplyT(func(v LookupJobTemplateResult) *JobExecutionsRetryConfigProperties { return v.JobExecutionsRetryConfig }).(JobExecutionsRetryConfigPropertiesPtrOutput) -} - -func (o LookupJobTemplateResultOutput) MaintenanceWindows() JobTemplateMaintenanceWindowArrayOutput { - return o.ApplyT(func(v LookupJobTemplateResult) []JobTemplateMaintenanceWindow { return v.MaintenanceWindows }).(JobTemplateMaintenanceWindowArrayOutput) -} - func init() { pulumi.RegisterOutputType(LookupJobTemplateResultOutput{}) } diff --git a/sdk/go/aws/iot/getPolicy.go b/sdk/go/aws/iot/getPolicy.go index 11ea8133ee..b0e661fbea 100644 --- a/sdk/go/aws/iot/getPolicy.go +++ b/sdk/go/aws/iot/getPolicy.go @@ -31,6 +31,7 @@ type LookupPolicyResult struct { Arn *string `pulumi:"arn"` Id *string `pulumi:"id"` PolicyDocument interface{} `pulumi:"policyDocument"` + Tags []PolicyTag `pulumi:"tags"` } func LookupPolicyOutput(ctx *pulumi.Context, args LookupPolicyOutputArgs, opts ...pulumi.InvokeOption) LookupPolicyResultOutput { @@ -86,6 +87,10 @@ func (o LookupPolicyResultOutput) PolicyDocument() pulumi.AnyOutput { return o.ApplyT(func(v LookupPolicyResult) interface{} { return v.PolicyDocument }).(pulumi.AnyOutput) } +func (o LookupPolicyResultOutput) Tags() PolicyTagArrayOutput { + return o.ApplyT(func(v LookupPolicyResult) []PolicyTag { return v.Tags }).(PolicyTagArrayOutput) +} + func init() { pulumi.RegisterOutputType(LookupPolicyResultOutput{}) } diff --git a/sdk/go/aws/iot/jobTemplate.go b/sdk/go/aws/iot/jobTemplate.go index ddeda96fd4..b4adbd0641 100644 --- a/sdk/go/aws/iot/jobTemplate.go +++ b/sdk/go/aws/iot/jobTemplate.go @@ -58,11 +58,14 @@ func NewJobTemplate(ctx *pulumi.Context, replaceOnChanges := pulumi.ReplaceOnChanges([]string{ "abortConfig", "description", + "destinationPackageVersions[*]", "document", "documentSource", "jobArn", + "jobExecutionsRetryConfig", "jobExecutionsRolloutConfig", "jobTemplateId", + "maintenanceWindows[*]", "presignedUrlConfig", "tags[*]", "timeoutConfig", diff --git a/sdk/go/aws/iot/policy.go b/sdk/go/aws/iot/policy.go index c28a9ad608..1abbdc628e 100644 --- a/sdk/go/aws/iot/policy.go +++ b/sdk/go/aws/iot/policy.go @@ -20,6 +20,7 @@ type Policy struct { Arn pulumi.StringOutput `pulumi:"arn"` PolicyDocument pulumi.AnyOutput `pulumi:"policyDocument"` PolicyName pulumi.StringPtrOutput `pulumi:"policyName"` + Tags PolicyTagArrayOutput `pulumi:"tags"` } // NewPolicy registers a new resource with the given unique name, arguments, and options. @@ -71,12 +72,14 @@ func (PolicyState) ElementType() reflect.Type { type policyArgs struct { PolicyDocument interface{} `pulumi:"policyDocument"` PolicyName *string `pulumi:"policyName"` + Tags []PolicyTag `pulumi:"tags"` } // The set of arguments for constructing a Policy resource. type PolicyArgs struct { PolicyDocument pulumi.Input PolicyName pulumi.StringPtrInput + Tags PolicyTagArrayInput } func (PolicyArgs) ElementType() reflect.Type { @@ -140,6 +143,10 @@ func (o PolicyOutput) PolicyName() pulumi.StringPtrOutput { return o.ApplyT(func(v *Policy) pulumi.StringPtrOutput { return v.PolicyName }).(pulumi.StringPtrOutput) } +func (o PolicyOutput) Tags() PolicyTagArrayOutput { + return o.ApplyT(func(v *Policy) PolicyTagArrayOutput { return v.Tags }).(PolicyTagArrayOutput) +} + func init() { pulumi.RegisterInputType(reflect.TypeOf((*PolicyInput)(nil)).Elem(), &Policy{}) pulumi.RegisterOutputType(PolicyOutput{}) diff --git a/sdk/go/aws/iot/pulumiTypes.go b/sdk/go/aws/iot/pulumiTypes.go index c16d15401a..65a71beaff 100644 --- a/sdk/go/aws/iot/pulumiTypes.go +++ b/sdk/go/aws/iot/pulumiTypes.go @@ -5491,6 +5491,130 @@ func (o MitigationActionUpdateDeviceCertificateParamsPtrOutput) Action() Mitigat }).(MitigationActionUpdateDeviceCertificateParamsActionPtrOutput) } +type PolicyTag struct { + Key string `pulumi:"key"` + Value string `pulumi:"value"` +} + +// PolicyTagInput is an input type that accepts PolicyTagArgs and PolicyTagOutput values. +// You can construct a concrete instance of `PolicyTagInput` via: +// +// PolicyTagArgs{...} +type PolicyTagInput interface { + pulumi.Input + + ToPolicyTagOutput() PolicyTagOutput + ToPolicyTagOutputWithContext(context.Context) PolicyTagOutput +} + +type PolicyTagArgs struct { + Key pulumi.StringInput `pulumi:"key"` + Value pulumi.StringInput `pulumi:"value"` +} + +func (PolicyTagArgs) ElementType() reflect.Type { + return reflect.TypeOf((*PolicyTag)(nil)).Elem() +} + +func (i PolicyTagArgs) ToPolicyTagOutput() PolicyTagOutput { + return i.ToPolicyTagOutputWithContext(context.Background()) +} + +func (i PolicyTagArgs) ToPolicyTagOutputWithContext(ctx context.Context) PolicyTagOutput { + return pulumi.ToOutputWithContext(ctx, i).(PolicyTagOutput) +} + +func (i PolicyTagArgs) ToOutput(ctx context.Context) pulumix.Output[PolicyTag] { + return pulumix.Output[PolicyTag]{ + OutputState: i.ToPolicyTagOutputWithContext(ctx).OutputState, + } +} + +// PolicyTagArrayInput is an input type that accepts PolicyTagArray and PolicyTagArrayOutput values. +// You can construct a concrete instance of `PolicyTagArrayInput` via: +// +// PolicyTagArray{ PolicyTagArgs{...} } +type PolicyTagArrayInput interface { + pulumi.Input + + ToPolicyTagArrayOutput() PolicyTagArrayOutput + ToPolicyTagArrayOutputWithContext(context.Context) PolicyTagArrayOutput +} + +type PolicyTagArray []PolicyTagInput + +func (PolicyTagArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]PolicyTag)(nil)).Elem() +} + +func (i PolicyTagArray) ToPolicyTagArrayOutput() PolicyTagArrayOutput { + return i.ToPolicyTagArrayOutputWithContext(context.Background()) +} + +func (i PolicyTagArray) ToPolicyTagArrayOutputWithContext(ctx context.Context) PolicyTagArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(PolicyTagArrayOutput) +} + +func (i PolicyTagArray) ToOutput(ctx context.Context) pulumix.Output[[]PolicyTag] { + return pulumix.Output[[]PolicyTag]{ + OutputState: i.ToPolicyTagArrayOutputWithContext(ctx).OutputState, + } +} + +type PolicyTagOutput struct{ *pulumi.OutputState } + +func (PolicyTagOutput) ElementType() reflect.Type { + return reflect.TypeOf((*PolicyTag)(nil)).Elem() +} + +func (o PolicyTagOutput) ToPolicyTagOutput() PolicyTagOutput { + return o +} + +func (o PolicyTagOutput) ToPolicyTagOutputWithContext(ctx context.Context) PolicyTagOutput { + return o +} + +func (o PolicyTagOutput) ToOutput(ctx context.Context) pulumix.Output[PolicyTag] { + return pulumix.Output[PolicyTag]{ + OutputState: o.OutputState, + } +} + +func (o PolicyTagOutput) Key() pulumi.StringOutput { + return o.ApplyT(func(v PolicyTag) string { return v.Key }).(pulumi.StringOutput) +} + +func (o PolicyTagOutput) Value() pulumi.StringOutput { + return o.ApplyT(func(v PolicyTag) string { return v.Value }).(pulumi.StringOutput) +} + +type PolicyTagArrayOutput struct{ *pulumi.OutputState } + +func (PolicyTagArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]PolicyTag)(nil)).Elem() +} + +func (o PolicyTagArrayOutput) ToPolicyTagArrayOutput() PolicyTagArrayOutput { + return o +} + +func (o PolicyTagArrayOutput) ToPolicyTagArrayOutputWithContext(ctx context.Context) PolicyTagArrayOutput { + return o +} + +func (o PolicyTagArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]PolicyTag] { + return pulumix.Output[[]PolicyTag]{ + OutputState: o.OutputState, + } +} + +func (o PolicyTagArrayOutput) Index(i pulumi.IntInput) PolicyTagOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) PolicyTag { + return vs[0].([]PolicyTag)[vs[1].(int)] + }).(PolicyTagOutput) +} + // Configuration for pre-signed S3 URLs. type PresignedUrlConfigProperties struct { ExpiresInSec *int `pulumi:"expiresInSec"` @@ -16887,6 +17011,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*MitigationActionUpdateCaCertificateParamsPtrInput)(nil)).Elem(), MitigationActionUpdateCaCertificateParamsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*MitigationActionUpdateDeviceCertificateParamsInput)(nil)).Elem(), MitigationActionUpdateDeviceCertificateParamsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*MitigationActionUpdateDeviceCertificateParamsPtrInput)(nil)).Elem(), MitigationActionUpdateDeviceCertificateParamsArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*PolicyTagInput)(nil)).Elem(), PolicyTagArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*PolicyTagArrayInput)(nil)).Elem(), PolicyTagArray{}) pulumi.RegisterInputType(reflect.TypeOf((*PresignedUrlConfigPropertiesInput)(nil)).Elem(), PresignedUrlConfigPropertiesArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*PresignedUrlConfigPropertiesPtrInput)(nil)).Elem(), PresignedUrlConfigPropertiesArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ProvisioningTemplateProvisioningHookInput)(nil)).Elem(), ProvisioningTemplateProvisioningHookArgs{}) @@ -17081,6 +17207,8 @@ func init() { pulumi.RegisterOutputType(MitigationActionUpdateCaCertificateParamsPtrOutput{}) pulumi.RegisterOutputType(MitigationActionUpdateDeviceCertificateParamsOutput{}) pulumi.RegisterOutputType(MitigationActionUpdateDeviceCertificateParamsPtrOutput{}) + pulumi.RegisterOutputType(PolicyTagOutput{}) + pulumi.RegisterOutputType(PolicyTagArrayOutput{}) pulumi.RegisterOutputType(PresignedUrlConfigPropertiesOutput{}) pulumi.RegisterOutputType(PresignedUrlConfigPropertiesPtrOutput{}) pulumi.RegisterOutputType(ProvisioningTemplateProvisioningHookOutput{}) diff --git a/sdk/go/aws/lambda/function.go b/sdk/go/aws/lambda/function.go index 5a4914a075..4d5f924984 100644 --- a/sdk/go/aws/lambda/function.go +++ b/sdk/go/aws/lambda/function.go @@ -48,6 +48,8 @@ type Function struct { MemorySize pulumi.IntPtrOutput `pulumi:"memorySize"` // PackageType. PackageType FunctionPackageTypePtrOutput `pulumi:"packageType"` + // The resource policy of your function + Policy pulumi.AnyOutput `pulumi:"policy"` // The number of simultaneous executions to reserve for the function. ReservedConcurrentExecutions pulumi.IntPtrOutput `pulumi:"reservedConcurrentExecutions"` // The Amazon Resource Name (ARN) of the function's execution role. @@ -149,6 +151,8 @@ type functionArgs struct { MemorySize *int `pulumi:"memorySize"` // PackageType. PackageType *FunctionPackageType `pulumi:"packageType"` + // The resource policy of your function + Policy interface{} `pulumi:"policy"` // The number of simultaneous executions to reserve for the function. ReservedConcurrentExecutions *int `pulumi:"reservedConcurrentExecutions"` // The Amazon Resource Name (ARN) of the function's execution role. @@ -200,6 +204,8 @@ type FunctionArgs struct { MemorySize pulumi.IntPtrInput // PackageType. PackageType FunctionPackageTypePtrInput + // The resource policy of your function + Policy pulumi.Input // The number of simultaneous executions to reserve for the function. ReservedConcurrentExecutions pulumi.IntPtrInput // The Amazon Resource Name (ARN) of the function's execution role. @@ -348,6 +354,11 @@ func (o FunctionOutput) PackageType() FunctionPackageTypePtrOutput { return o.ApplyT(func(v *Function) FunctionPackageTypePtrOutput { return v.PackageType }).(FunctionPackageTypePtrOutput) } +// The resource policy of your function +func (o FunctionOutput) Policy() pulumi.AnyOutput { + return o.ApplyT(func(v *Function) pulumi.AnyOutput { return v.Policy }).(pulumi.AnyOutput) +} + // The number of simultaneous executions to reserve for the function. func (o FunctionOutput) ReservedConcurrentExecutions() pulumi.IntPtrOutput { return o.ApplyT(func(v *Function) pulumi.IntPtrOutput { return v.ReservedConcurrentExecutions }).(pulumi.IntPtrOutput) diff --git a/sdk/go/aws/msk/getReplicator.go b/sdk/go/aws/msk/getReplicator.go new file mode 100644 index 0000000000..671174e46b --- /dev/null +++ b/sdk/go/aws/msk/getReplicator.go @@ -0,0 +1,106 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package msk + +import ( + "context" + "reflect" + + "github.com/pulumi/pulumi-aws-native/sdk/go/aws/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" + "github.com/pulumi/pulumi/sdk/v3/go/pulumix" +) + +// Resource Type definition for AWS::MSK::Replicator +func LookupReplicator(ctx *pulumi.Context, args *LookupReplicatorArgs, opts ...pulumi.InvokeOption) (*LookupReplicatorResult, error) { + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupReplicatorResult + err := ctx.Invoke("aws-native:msk:getReplicator", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +type LookupReplicatorArgs struct { + // Amazon Resource Name for the created replicator. + ReplicatorArn string `pulumi:"replicatorArn"` +} + +type LookupReplicatorResult struct { + // The current version of the MSK replicator. + CurrentVersion *string `pulumi:"currentVersion"` + // A list of replication configurations, where each configuration targets a given source cluster to target cluster replication flow. + ReplicationInfoList []ReplicatorReplicationInfo `pulumi:"replicationInfoList"` + // Amazon Resource Name for the created replicator. + ReplicatorArn *string `pulumi:"replicatorArn"` + // A collection of tags associated with a resource + Tags []ReplicatorTag `pulumi:"tags"` +} + +func LookupReplicatorOutput(ctx *pulumi.Context, args LookupReplicatorOutputArgs, opts ...pulumi.InvokeOption) LookupReplicatorResultOutput { + return pulumi.ToOutputWithContext(context.Background(), args). + ApplyT(func(v interface{}) (LookupReplicatorResult, error) { + args := v.(LookupReplicatorArgs) + r, err := LookupReplicator(ctx, &args, opts...) + var s LookupReplicatorResult + if r != nil { + s = *r + } + return s, err + }).(LookupReplicatorResultOutput) +} + +type LookupReplicatorOutputArgs struct { + // Amazon Resource Name for the created replicator. + ReplicatorArn pulumi.StringInput `pulumi:"replicatorArn"` +} + +func (LookupReplicatorOutputArgs) ElementType() reflect.Type { + return reflect.TypeOf((*LookupReplicatorArgs)(nil)).Elem() +} + +type LookupReplicatorResultOutput struct{ *pulumi.OutputState } + +func (LookupReplicatorResultOutput) ElementType() reflect.Type { + return reflect.TypeOf((*LookupReplicatorResult)(nil)).Elem() +} + +func (o LookupReplicatorResultOutput) ToLookupReplicatorResultOutput() LookupReplicatorResultOutput { + return o +} + +func (o LookupReplicatorResultOutput) ToLookupReplicatorResultOutputWithContext(ctx context.Context) LookupReplicatorResultOutput { + return o +} + +func (o LookupReplicatorResultOutput) ToOutput(ctx context.Context) pulumix.Output[LookupReplicatorResult] { + return pulumix.Output[LookupReplicatorResult]{ + OutputState: o.OutputState, + } +} + +// The current version of the MSK replicator. +func (o LookupReplicatorResultOutput) CurrentVersion() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupReplicatorResult) *string { return v.CurrentVersion }).(pulumi.StringPtrOutput) +} + +// A list of replication configurations, where each configuration targets a given source cluster to target cluster replication flow. +func (o LookupReplicatorResultOutput) ReplicationInfoList() ReplicatorReplicationInfoArrayOutput { + return o.ApplyT(func(v LookupReplicatorResult) []ReplicatorReplicationInfo { return v.ReplicationInfoList }).(ReplicatorReplicationInfoArrayOutput) +} + +// Amazon Resource Name for the created replicator. +func (o LookupReplicatorResultOutput) ReplicatorArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupReplicatorResult) *string { return v.ReplicatorArn }).(pulumi.StringPtrOutput) +} + +// A collection of tags associated with a resource +func (o LookupReplicatorResultOutput) Tags() ReplicatorTagArrayOutput { + return o.ApplyT(func(v LookupReplicatorResult) []ReplicatorTag { return v.Tags }).(ReplicatorTagArrayOutput) +} + +func init() { + pulumi.RegisterOutputType(LookupReplicatorResultOutput{}) +} diff --git a/sdk/go/aws/msk/init.go b/sdk/go/aws/msk/init.go index 97910e3bbd..f18e38ecf5 100644 --- a/sdk/go/aws/msk/init.go +++ b/sdk/go/aws/msk/init.go @@ -29,6 +29,8 @@ func (m *module) Construct(ctx *pulumi.Context, name, typ, urn string) (r pulumi r = &ClusterPolicy{} case "aws-native:msk:Configuration": r = &Configuration{} + case "aws-native:msk:Replicator": + r = &Replicator{} case "aws-native:msk:ServerlessCluster": r = &ServerlessCluster{} case "aws-native:msk:VpcConnection": diff --git a/sdk/go/aws/msk/pulumiEnums.go b/sdk/go/aws/msk/pulumiEnums.go index bdbeff54f8..08a72afca3 100644 --- a/sdk/go/aws/msk/pulumiEnums.go +++ b/sdk/go/aws/msk/pulumiEnums.go @@ -560,6 +560,192 @@ func (in *clusterStorageModePtr) ToOutput(ctx context.Context) pulumix.Output[*C } } +// The type of compression to use writing records to target Kafka cluster. +type ReplicatorReplicationInfoTargetCompressionType string + +const ( + ReplicatorReplicationInfoTargetCompressionTypeNone = ReplicatorReplicationInfoTargetCompressionType("NONE") + ReplicatorReplicationInfoTargetCompressionTypeGzip = ReplicatorReplicationInfoTargetCompressionType("GZIP") + ReplicatorReplicationInfoTargetCompressionTypeSnappy = ReplicatorReplicationInfoTargetCompressionType("SNAPPY") + ReplicatorReplicationInfoTargetCompressionTypeLz4 = ReplicatorReplicationInfoTargetCompressionType("LZ4") + ReplicatorReplicationInfoTargetCompressionTypeZstd = ReplicatorReplicationInfoTargetCompressionType("ZSTD") +) + +func (ReplicatorReplicationInfoTargetCompressionType) ElementType() reflect.Type { + return reflect.TypeOf((*ReplicatorReplicationInfoTargetCompressionType)(nil)).Elem() +} + +func (e ReplicatorReplicationInfoTargetCompressionType) ToReplicatorReplicationInfoTargetCompressionTypeOutput() ReplicatorReplicationInfoTargetCompressionTypeOutput { + return pulumi.ToOutput(e).(ReplicatorReplicationInfoTargetCompressionTypeOutput) +} + +func (e ReplicatorReplicationInfoTargetCompressionType) ToReplicatorReplicationInfoTargetCompressionTypeOutputWithContext(ctx context.Context) ReplicatorReplicationInfoTargetCompressionTypeOutput { + return pulumi.ToOutputWithContext(ctx, e).(ReplicatorReplicationInfoTargetCompressionTypeOutput) +} + +func (e ReplicatorReplicationInfoTargetCompressionType) ToReplicatorReplicationInfoTargetCompressionTypePtrOutput() ReplicatorReplicationInfoTargetCompressionTypePtrOutput { + return e.ToReplicatorReplicationInfoTargetCompressionTypePtrOutputWithContext(context.Background()) +} + +func (e ReplicatorReplicationInfoTargetCompressionType) ToReplicatorReplicationInfoTargetCompressionTypePtrOutputWithContext(ctx context.Context) ReplicatorReplicationInfoTargetCompressionTypePtrOutput { + return ReplicatorReplicationInfoTargetCompressionType(e).ToReplicatorReplicationInfoTargetCompressionTypeOutputWithContext(ctx).ToReplicatorReplicationInfoTargetCompressionTypePtrOutputWithContext(ctx) +} + +func (e ReplicatorReplicationInfoTargetCompressionType) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e ReplicatorReplicationInfoTargetCompressionType) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e ReplicatorReplicationInfoTargetCompressionType) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e ReplicatorReplicationInfoTargetCompressionType) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type ReplicatorReplicationInfoTargetCompressionTypeOutput struct{ *pulumi.OutputState } + +func (ReplicatorReplicationInfoTargetCompressionTypeOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ReplicatorReplicationInfoTargetCompressionType)(nil)).Elem() +} + +func (o ReplicatorReplicationInfoTargetCompressionTypeOutput) ToReplicatorReplicationInfoTargetCompressionTypeOutput() ReplicatorReplicationInfoTargetCompressionTypeOutput { + return o +} + +func (o ReplicatorReplicationInfoTargetCompressionTypeOutput) ToReplicatorReplicationInfoTargetCompressionTypeOutputWithContext(ctx context.Context) ReplicatorReplicationInfoTargetCompressionTypeOutput { + return o +} + +func (o ReplicatorReplicationInfoTargetCompressionTypeOutput) ToReplicatorReplicationInfoTargetCompressionTypePtrOutput() ReplicatorReplicationInfoTargetCompressionTypePtrOutput { + return o.ToReplicatorReplicationInfoTargetCompressionTypePtrOutputWithContext(context.Background()) +} + +func (o ReplicatorReplicationInfoTargetCompressionTypeOutput) ToReplicatorReplicationInfoTargetCompressionTypePtrOutputWithContext(ctx context.Context) ReplicatorReplicationInfoTargetCompressionTypePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ReplicatorReplicationInfoTargetCompressionType) *ReplicatorReplicationInfoTargetCompressionType { + return &v + }).(ReplicatorReplicationInfoTargetCompressionTypePtrOutput) +} + +func (o ReplicatorReplicationInfoTargetCompressionTypeOutput) ToOutput(ctx context.Context) pulumix.Output[ReplicatorReplicationInfoTargetCompressionType] { + return pulumix.Output[ReplicatorReplicationInfoTargetCompressionType]{ + OutputState: o.OutputState, + } +} + +func (o ReplicatorReplicationInfoTargetCompressionTypeOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o ReplicatorReplicationInfoTargetCompressionTypeOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e ReplicatorReplicationInfoTargetCompressionType) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o ReplicatorReplicationInfoTargetCompressionTypeOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o ReplicatorReplicationInfoTargetCompressionTypeOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e ReplicatorReplicationInfoTargetCompressionType) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type ReplicatorReplicationInfoTargetCompressionTypePtrOutput struct{ *pulumi.OutputState } + +func (ReplicatorReplicationInfoTargetCompressionTypePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ReplicatorReplicationInfoTargetCompressionType)(nil)).Elem() +} + +func (o ReplicatorReplicationInfoTargetCompressionTypePtrOutput) ToReplicatorReplicationInfoTargetCompressionTypePtrOutput() ReplicatorReplicationInfoTargetCompressionTypePtrOutput { + return o +} + +func (o ReplicatorReplicationInfoTargetCompressionTypePtrOutput) ToReplicatorReplicationInfoTargetCompressionTypePtrOutputWithContext(ctx context.Context) ReplicatorReplicationInfoTargetCompressionTypePtrOutput { + return o +} + +func (o ReplicatorReplicationInfoTargetCompressionTypePtrOutput) ToOutput(ctx context.Context) pulumix.Output[*ReplicatorReplicationInfoTargetCompressionType] { + return pulumix.Output[*ReplicatorReplicationInfoTargetCompressionType]{ + OutputState: o.OutputState, + } +} + +func (o ReplicatorReplicationInfoTargetCompressionTypePtrOutput) Elem() ReplicatorReplicationInfoTargetCompressionTypeOutput { + return o.ApplyT(func(v *ReplicatorReplicationInfoTargetCompressionType) ReplicatorReplicationInfoTargetCompressionType { + if v != nil { + return *v + } + var ret ReplicatorReplicationInfoTargetCompressionType + return ret + }).(ReplicatorReplicationInfoTargetCompressionTypeOutput) +} + +func (o ReplicatorReplicationInfoTargetCompressionTypePtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o ReplicatorReplicationInfoTargetCompressionTypePtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *ReplicatorReplicationInfoTargetCompressionType) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// ReplicatorReplicationInfoTargetCompressionTypeInput is an input type that accepts ReplicatorReplicationInfoTargetCompressionTypeArgs and ReplicatorReplicationInfoTargetCompressionTypeOutput values. +// You can construct a concrete instance of `ReplicatorReplicationInfoTargetCompressionTypeInput` via: +// +// ReplicatorReplicationInfoTargetCompressionTypeArgs{...} +type ReplicatorReplicationInfoTargetCompressionTypeInput interface { + pulumi.Input + + ToReplicatorReplicationInfoTargetCompressionTypeOutput() ReplicatorReplicationInfoTargetCompressionTypeOutput + ToReplicatorReplicationInfoTargetCompressionTypeOutputWithContext(context.Context) ReplicatorReplicationInfoTargetCompressionTypeOutput +} + +var replicatorReplicationInfoTargetCompressionTypePtrType = reflect.TypeOf((**ReplicatorReplicationInfoTargetCompressionType)(nil)).Elem() + +type ReplicatorReplicationInfoTargetCompressionTypePtrInput interface { + pulumi.Input + + ToReplicatorReplicationInfoTargetCompressionTypePtrOutput() ReplicatorReplicationInfoTargetCompressionTypePtrOutput + ToReplicatorReplicationInfoTargetCompressionTypePtrOutputWithContext(context.Context) ReplicatorReplicationInfoTargetCompressionTypePtrOutput +} + +type replicatorReplicationInfoTargetCompressionTypePtr string + +func ReplicatorReplicationInfoTargetCompressionTypePtr(v string) ReplicatorReplicationInfoTargetCompressionTypePtrInput { + return (*replicatorReplicationInfoTargetCompressionTypePtr)(&v) +} + +func (*replicatorReplicationInfoTargetCompressionTypePtr) ElementType() reflect.Type { + return replicatorReplicationInfoTargetCompressionTypePtrType +} + +func (in *replicatorReplicationInfoTargetCompressionTypePtr) ToReplicatorReplicationInfoTargetCompressionTypePtrOutput() ReplicatorReplicationInfoTargetCompressionTypePtrOutput { + return pulumi.ToOutput(in).(ReplicatorReplicationInfoTargetCompressionTypePtrOutput) +} + +func (in *replicatorReplicationInfoTargetCompressionTypePtr) ToReplicatorReplicationInfoTargetCompressionTypePtrOutputWithContext(ctx context.Context) ReplicatorReplicationInfoTargetCompressionTypePtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(ReplicatorReplicationInfoTargetCompressionTypePtrOutput) +} + +func (in *replicatorReplicationInfoTargetCompressionTypePtr) ToOutput(ctx context.Context) pulumix.Output[*ReplicatorReplicationInfoTargetCompressionType] { + return pulumix.Output[*ReplicatorReplicationInfoTargetCompressionType]{ + OutputState: in.ToReplicatorReplicationInfoTargetCompressionTypePtrOutputWithContext(ctx).OutputState, + } +} + // The type of private link authentication type VpcConnectionAuthentication string @@ -751,6 +937,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*ClusterEnhancedMonitoringPtrInput)(nil)).Elem(), ClusterEnhancedMonitoring("DEFAULT")) pulumi.RegisterInputType(reflect.TypeOf((*ClusterStorageModeInput)(nil)).Elem(), ClusterStorageMode("LOCAL")) pulumi.RegisterInputType(reflect.TypeOf((*ClusterStorageModePtrInput)(nil)).Elem(), ClusterStorageMode("LOCAL")) + pulumi.RegisterInputType(reflect.TypeOf((*ReplicatorReplicationInfoTargetCompressionTypeInput)(nil)).Elem(), ReplicatorReplicationInfoTargetCompressionType("NONE")) + pulumi.RegisterInputType(reflect.TypeOf((*ReplicatorReplicationInfoTargetCompressionTypePtrInput)(nil)).Elem(), ReplicatorReplicationInfoTargetCompressionType("NONE")) pulumi.RegisterInputType(reflect.TypeOf((*VpcConnectionAuthenticationInput)(nil)).Elem(), VpcConnectionAuthentication("SASL_IAM")) pulumi.RegisterInputType(reflect.TypeOf((*VpcConnectionAuthenticationPtrInput)(nil)).Elem(), VpcConnectionAuthentication("SASL_IAM")) pulumi.RegisterOutputType(ClusterEncryptionInTransitClientBrokerOutput{}) @@ -759,6 +947,8 @@ func init() { pulumi.RegisterOutputType(ClusterEnhancedMonitoringPtrOutput{}) pulumi.RegisterOutputType(ClusterStorageModeOutput{}) pulumi.RegisterOutputType(ClusterStorageModePtrOutput{}) + pulumi.RegisterOutputType(ReplicatorReplicationInfoTargetCompressionTypeOutput{}) + pulumi.RegisterOutputType(ReplicatorReplicationInfoTargetCompressionTypePtrOutput{}) pulumi.RegisterOutputType(VpcConnectionAuthenticationOutput{}) pulumi.RegisterOutputType(VpcConnectionAuthenticationPtrOutput{}) } diff --git a/sdk/go/aws/msk/pulumiTypes.go b/sdk/go/aws/msk/pulumiTypes.go index aeaefdcee5..6b5db39470 100644 --- a/sdk/go/aws/msk/pulumiTypes.go +++ b/sdk/go/aws/msk/pulumiTypes.go @@ -5373,6 +5373,764 @@ func (o ConfigurationLatestRevisionPtrOutput) Revision() pulumi.IntPtrOutput { }).(pulumi.IntPtrOutput) } +// Details of an Amazon MSK cluster. +type ReplicatorAmazonMskCluster struct { + // The ARN of an Amazon MSK cluster. + MskClusterArn string `pulumi:"mskClusterArn"` +} + +// ReplicatorAmazonMskClusterInput is an input type that accepts ReplicatorAmazonMskClusterArgs and ReplicatorAmazonMskClusterOutput values. +// You can construct a concrete instance of `ReplicatorAmazonMskClusterInput` via: +// +// ReplicatorAmazonMskClusterArgs{...} +type ReplicatorAmazonMskClusterInput interface { + pulumi.Input + + ToReplicatorAmazonMskClusterOutput() ReplicatorAmazonMskClusterOutput + ToReplicatorAmazonMskClusterOutputWithContext(context.Context) ReplicatorAmazonMskClusterOutput +} + +// Details of an Amazon MSK cluster. +type ReplicatorAmazonMskClusterArgs struct { + // The ARN of an Amazon MSK cluster. + MskClusterArn pulumi.StringInput `pulumi:"mskClusterArn"` +} + +func (ReplicatorAmazonMskClusterArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ReplicatorAmazonMskCluster)(nil)).Elem() +} + +func (i ReplicatorAmazonMskClusterArgs) ToReplicatorAmazonMskClusterOutput() ReplicatorAmazonMskClusterOutput { + return i.ToReplicatorAmazonMskClusterOutputWithContext(context.Background()) +} + +func (i ReplicatorAmazonMskClusterArgs) ToReplicatorAmazonMskClusterOutputWithContext(ctx context.Context) ReplicatorAmazonMskClusterOutput { + return pulumi.ToOutputWithContext(ctx, i).(ReplicatorAmazonMskClusterOutput) +} + +func (i ReplicatorAmazonMskClusterArgs) ToOutput(ctx context.Context) pulumix.Output[ReplicatorAmazonMskCluster] { + return pulumix.Output[ReplicatorAmazonMskCluster]{ + OutputState: i.ToReplicatorAmazonMskClusterOutputWithContext(ctx).OutputState, + } +} + +// Details of an Amazon MSK cluster. +type ReplicatorAmazonMskClusterOutput struct{ *pulumi.OutputState } + +func (ReplicatorAmazonMskClusterOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ReplicatorAmazonMskCluster)(nil)).Elem() +} + +func (o ReplicatorAmazonMskClusterOutput) ToReplicatorAmazonMskClusterOutput() ReplicatorAmazonMskClusterOutput { + return o +} + +func (o ReplicatorAmazonMskClusterOutput) ToReplicatorAmazonMskClusterOutputWithContext(ctx context.Context) ReplicatorAmazonMskClusterOutput { + return o +} + +func (o ReplicatorAmazonMskClusterOutput) ToOutput(ctx context.Context) pulumix.Output[ReplicatorAmazonMskCluster] { + return pulumix.Output[ReplicatorAmazonMskCluster]{ + OutputState: o.OutputState, + } +} + +// The ARN of an Amazon MSK cluster. +func (o ReplicatorAmazonMskClusterOutput) MskClusterArn() pulumi.StringOutput { + return o.ApplyT(func(v ReplicatorAmazonMskCluster) string { return v.MskClusterArn }).(pulumi.StringOutput) +} + +// Configuration relating to consumer group replication. +type ReplicatorConsumerGroupReplication struct { + // List of regular expression patterns indicating the consumer groups that should not be replicated. + ConsumerGroupsToExclude []string `pulumi:"consumerGroupsToExclude"` + // List of regular expression patterns indicating the consumer groups to copy. + ConsumerGroupsToReplicate []string `pulumi:"consumerGroupsToReplicate"` + // Whether to periodically check for new consumer groups. + DetectAndCopyNewConsumerGroups *bool `pulumi:"detectAndCopyNewConsumerGroups"` + // Whether to periodically write the translated offsets to __consumer_offsets topic in target cluster. + SynchroniseConsumerGroupOffsets *bool `pulumi:"synchroniseConsumerGroupOffsets"` +} + +// ReplicatorConsumerGroupReplicationInput is an input type that accepts ReplicatorConsumerGroupReplicationArgs and ReplicatorConsumerGroupReplicationOutput values. +// You can construct a concrete instance of `ReplicatorConsumerGroupReplicationInput` via: +// +// ReplicatorConsumerGroupReplicationArgs{...} +type ReplicatorConsumerGroupReplicationInput interface { + pulumi.Input + + ToReplicatorConsumerGroupReplicationOutput() ReplicatorConsumerGroupReplicationOutput + ToReplicatorConsumerGroupReplicationOutputWithContext(context.Context) ReplicatorConsumerGroupReplicationOutput +} + +// Configuration relating to consumer group replication. +type ReplicatorConsumerGroupReplicationArgs struct { + // List of regular expression patterns indicating the consumer groups that should not be replicated. + ConsumerGroupsToExclude pulumi.StringArrayInput `pulumi:"consumerGroupsToExclude"` + // List of regular expression patterns indicating the consumer groups to copy. + ConsumerGroupsToReplicate pulumi.StringArrayInput `pulumi:"consumerGroupsToReplicate"` + // Whether to periodically check for new consumer groups. + DetectAndCopyNewConsumerGroups pulumi.BoolPtrInput `pulumi:"detectAndCopyNewConsumerGroups"` + // Whether to periodically write the translated offsets to __consumer_offsets topic in target cluster. + SynchroniseConsumerGroupOffsets pulumi.BoolPtrInput `pulumi:"synchroniseConsumerGroupOffsets"` +} + +func (ReplicatorConsumerGroupReplicationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ReplicatorConsumerGroupReplication)(nil)).Elem() +} + +func (i ReplicatorConsumerGroupReplicationArgs) ToReplicatorConsumerGroupReplicationOutput() ReplicatorConsumerGroupReplicationOutput { + return i.ToReplicatorConsumerGroupReplicationOutputWithContext(context.Background()) +} + +func (i ReplicatorConsumerGroupReplicationArgs) ToReplicatorConsumerGroupReplicationOutputWithContext(ctx context.Context) ReplicatorConsumerGroupReplicationOutput { + return pulumi.ToOutputWithContext(ctx, i).(ReplicatorConsumerGroupReplicationOutput) +} + +func (i ReplicatorConsumerGroupReplicationArgs) ToOutput(ctx context.Context) pulumix.Output[ReplicatorConsumerGroupReplication] { + return pulumix.Output[ReplicatorConsumerGroupReplication]{ + OutputState: i.ToReplicatorConsumerGroupReplicationOutputWithContext(ctx).OutputState, + } +} + +// Configuration relating to consumer group replication. +type ReplicatorConsumerGroupReplicationOutput struct{ *pulumi.OutputState } + +func (ReplicatorConsumerGroupReplicationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ReplicatorConsumerGroupReplication)(nil)).Elem() +} + +func (o ReplicatorConsumerGroupReplicationOutput) ToReplicatorConsumerGroupReplicationOutput() ReplicatorConsumerGroupReplicationOutput { + return o +} + +func (o ReplicatorConsumerGroupReplicationOutput) ToReplicatorConsumerGroupReplicationOutputWithContext(ctx context.Context) ReplicatorConsumerGroupReplicationOutput { + return o +} + +func (o ReplicatorConsumerGroupReplicationOutput) ToOutput(ctx context.Context) pulumix.Output[ReplicatorConsumerGroupReplication] { + return pulumix.Output[ReplicatorConsumerGroupReplication]{ + OutputState: o.OutputState, + } +} + +// List of regular expression patterns indicating the consumer groups that should not be replicated. +func (o ReplicatorConsumerGroupReplicationOutput) ConsumerGroupsToExclude() pulumi.StringArrayOutput { + return o.ApplyT(func(v ReplicatorConsumerGroupReplication) []string { return v.ConsumerGroupsToExclude }).(pulumi.StringArrayOutput) +} + +// List of regular expression patterns indicating the consumer groups to copy. +func (o ReplicatorConsumerGroupReplicationOutput) ConsumerGroupsToReplicate() pulumi.StringArrayOutput { + return o.ApplyT(func(v ReplicatorConsumerGroupReplication) []string { return v.ConsumerGroupsToReplicate }).(pulumi.StringArrayOutput) +} + +// Whether to periodically check for new consumer groups. +func (o ReplicatorConsumerGroupReplicationOutput) DetectAndCopyNewConsumerGroups() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ReplicatorConsumerGroupReplication) *bool { return v.DetectAndCopyNewConsumerGroups }).(pulumi.BoolPtrOutput) +} + +// Whether to periodically write the translated offsets to __consumer_offsets topic in target cluster. +func (o ReplicatorConsumerGroupReplicationOutput) SynchroniseConsumerGroupOffsets() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ReplicatorConsumerGroupReplication) *bool { return v.SynchroniseConsumerGroupOffsets }).(pulumi.BoolPtrOutput) +} + +// Details of a Kafka cluster for replication. +type ReplicatorKafkaCluster struct { + // Details of an Amazon MSK cluster. Exactly one of AmazonMskCluster is required. + AmazonMskCluster ReplicatorAmazonMskCluster `pulumi:"amazonMskCluster"` + // Details of an Amazon VPC which has network connectivity to the Apache Kafka cluster. + VpcConfig ReplicatorKafkaClusterClientVpcConfig `pulumi:"vpcConfig"` +} + +// ReplicatorKafkaClusterInput is an input type that accepts ReplicatorKafkaClusterArgs and ReplicatorKafkaClusterOutput values. +// You can construct a concrete instance of `ReplicatorKafkaClusterInput` via: +// +// ReplicatorKafkaClusterArgs{...} +type ReplicatorKafkaClusterInput interface { + pulumi.Input + + ToReplicatorKafkaClusterOutput() ReplicatorKafkaClusterOutput + ToReplicatorKafkaClusterOutputWithContext(context.Context) ReplicatorKafkaClusterOutput +} + +// Details of a Kafka cluster for replication. +type ReplicatorKafkaClusterArgs struct { + // Details of an Amazon MSK cluster. Exactly one of AmazonMskCluster is required. + AmazonMskCluster ReplicatorAmazonMskClusterInput `pulumi:"amazonMskCluster"` + // Details of an Amazon VPC which has network connectivity to the Apache Kafka cluster. + VpcConfig ReplicatorKafkaClusterClientVpcConfigInput `pulumi:"vpcConfig"` +} + +func (ReplicatorKafkaClusterArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ReplicatorKafkaCluster)(nil)).Elem() +} + +func (i ReplicatorKafkaClusterArgs) ToReplicatorKafkaClusterOutput() ReplicatorKafkaClusterOutput { + return i.ToReplicatorKafkaClusterOutputWithContext(context.Background()) +} + +func (i ReplicatorKafkaClusterArgs) ToReplicatorKafkaClusterOutputWithContext(ctx context.Context) ReplicatorKafkaClusterOutput { + return pulumi.ToOutputWithContext(ctx, i).(ReplicatorKafkaClusterOutput) +} + +func (i ReplicatorKafkaClusterArgs) ToOutput(ctx context.Context) pulumix.Output[ReplicatorKafkaCluster] { + return pulumix.Output[ReplicatorKafkaCluster]{ + OutputState: i.ToReplicatorKafkaClusterOutputWithContext(ctx).OutputState, + } +} + +// ReplicatorKafkaClusterArrayInput is an input type that accepts ReplicatorKafkaClusterArray and ReplicatorKafkaClusterArrayOutput values. +// You can construct a concrete instance of `ReplicatorKafkaClusterArrayInput` via: +// +// ReplicatorKafkaClusterArray{ ReplicatorKafkaClusterArgs{...} } +type ReplicatorKafkaClusterArrayInput interface { + pulumi.Input + + ToReplicatorKafkaClusterArrayOutput() ReplicatorKafkaClusterArrayOutput + ToReplicatorKafkaClusterArrayOutputWithContext(context.Context) ReplicatorKafkaClusterArrayOutput +} + +type ReplicatorKafkaClusterArray []ReplicatorKafkaClusterInput + +func (ReplicatorKafkaClusterArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]ReplicatorKafkaCluster)(nil)).Elem() +} + +func (i ReplicatorKafkaClusterArray) ToReplicatorKafkaClusterArrayOutput() ReplicatorKafkaClusterArrayOutput { + return i.ToReplicatorKafkaClusterArrayOutputWithContext(context.Background()) +} + +func (i ReplicatorKafkaClusterArray) ToReplicatorKafkaClusterArrayOutputWithContext(ctx context.Context) ReplicatorKafkaClusterArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(ReplicatorKafkaClusterArrayOutput) +} + +func (i ReplicatorKafkaClusterArray) ToOutput(ctx context.Context) pulumix.Output[[]ReplicatorKafkaCluster] { + return pulumix.Output[[]ReplicatorKafkaCluster]{ + OutputState: i.ToReplicatorKafkaClusterArrayOutputWithContext(ctx).OutputState, + } +} + +// Details of a Kafka cluster for replication. +type ReplicatorKafkaClusterOutput struct{ *pulumi.OutputState } + +func (ReplicatorKafkaClusterOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ReplicatorKafkaCluster)(nil)).Elem() +} + +func (o ReplicatorKafkaClusterOutput) ToReplicatorKafkaClusterOutput() ReplicatorKafkaClusterOutput { + return o +} + +func (o ReplicatorKafkaClusterOutput) ToReplicatorKafkaClusterOutputWithContext(ctx context.Context) ReplicatorKafkaClusterOutput { + return o +} + +func (o ReplicatorKafkaClusterOutput) ToOutput(ctx context.Context) pulumix.Output[ReplicatorKafkaCluster] { + return pulumix.Output[ReplicatorKafkaCluster]{ + OutputState: o.OutputState, + } +} + +// Details of an Amazon MSK cluster. Exactly one of AmazonMskCluster is required. +func (o ReplicatorKafkaClusterOutput) AmazonMskCluster() ReplicatorAmazonMskClusterOutput { + return o.ApplyT(func(v ReplicatorKafkaCluster) ReplicatorAmazonMskCluster { return v.AmazonMskCluster }).(ReplicatorAmazonMskClusterOutput) +} + +// Details of an Amazon VPC which has network connectivity to the Apache Kafka cluster. +func (o ReplicatorKafkaClusterOutput) VpcConfig() ReplicatorKafkaClusterClientVpcConfigOutput { + return o.ApplyT(func(v ReplicatorKafkaCluster) ReplicatorKafkaClusterClientVpcConfig { return v.VpcConfig }).(ReplicatorKafkaClusterClientVpcConfigOutput) +} + +type ReplicatorKafkaClusterArrayOutput struct{ *pulumi.OutputState } + +func (ReplicatorKafkaClusterArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]ReplicatorKafkaCluster)(nil)).Elem() +} + +func (o ReplicatorKafkaClusterArrayOutput) ToReplicatorKafkaClusterArrayOutput() ReplicatorKafkaClusterArrayOutput { + return o +} + +func (o ReplicatorKafkaClusterArrayOutput) ToReplicatorKafkaClusterArrayOutputWithContext(ctx context.Context) ReplicatorKafkaClusterArrayOutput { + return o +} + +func (o ReplicatorKafkaClusterArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]ReplicatorKafkaCluster] { + return pulumix.Output[[]ReplicatorKafkaCluster]{ + OutputState: o.OutputState, + } +} + +func (o ReplicatorKafkaClusterArrayOutput) Index(i pulumi.IntInput) ReplicatorKafkaClusterOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) ReplicatorKafkaCluster { + return vs[0].([]ReplicatorKafkaCluster)[vs[1].(int)] + }).(ReplicatorKafkaClusterOutput) +} + +// Details of an Amazon VPC which has network connectivity to the Kafka cluster. +type ReplicatorKafkaClusterClientVpcConfig struct { + // The AWS security groups to associate with the elastic network interfaces in order to specify what the replicator has access to. If a security group is not specified, the default security group associated with the VPC is used. + SecurityGroupIds []string `pulumi:"securityGroupIds"` + // The list of subnets to connect to in the virtual private cloud (VPC). AWS creates elastic network interfaces inside these subnets. + SubnetIds []string `pulumi:"subnetIds"` +} + +// ReplicatorKafkaClusterClientVpcConfigInput is an input type that accepts ReplicatorKafkaClusterClientVpcConfigArgs and ReplicatorKafkaClusterClientVpcConfigOutput values. +// You can construct a concrete instance of `ReplicatorKafkaClusterClientVpcConfigInput` via: +// +// ReplicatorKafkaClusterClientVpcConfigArgs{...} +type ReplicatorKafkaClusterClientVpcConfigInput interface { + pulumi.Input + + ToReplicatorKafkaClusterClientVpcConfigOutput() ReplicatorKafkaClusterClientVpcConfigOutput + ToReplicatorKafkaClusterClientVpcConfigOutputWithContext(context.Context) ReplicatorKafkaClusterClientVpcConfigOutput +} + +// Details of an Amazon VPC which has network connectivity to the Kafka cluster. +type ReplicatorKafkaClusterClientVpcConfigArgs struct { + // The AWS security groups to associate with the elastic network interfaces in order to specify what the replicator has access to. If a security group is not specified, the default security group associated with the VPC is used. + SecurityGroupIds pulumi.StringArrayInput `pulumi:"securityGroupIds"` + // The list of subnets to connect to in the virtual private cloud (VPC). AWS creates elastic network interfaces inside these subnets. + SubnetIds pulumi.StringArrayInput `pulumi:"subnetIds"` +} + +func (ReplicatorKafkaClusterClientVpcConfigArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ReplicatorKafkaClusterClientVpcConfig)(nil)).Elem() +} + +func (i ReplicatorKafkaClusterClientVpcConfigArgs) ToReplicatorKafkaClusterClientVpcConfigOutput() ReplicatorKafkaClusterClientVpcConfigOutput { + return i.ToReplicatorKafkaClusterClientVpcConfigOutputWithContext(context.Background()) +} + +func (i ReplicatorKafkaClusterClientVpcConfigArgs) ToReplicatorKafkaClusterClientVpcConfigOutputWithContext(ctx context.Context) ReplicatorKafkaClusterClientVpcConfigOutput { + return pulumi.ToOutputWithContext(ctx, i).(ReplicatorKafkaClusterClientVpcConfigOutput) +} + +func (i ReplicatorKafkaClusterClientVpcConfigArgs) ToOutput(ctx context.Context) pulumix.Output[ReplicatorKafkaClusterClientVpcConfig] { + return pulumix.Output[ReplicatorKafkaClusterClientVpcConfig]{ + OutputState: i.ToReplicatorKafkaClusterClientVpcConfigOutputWithContext(ctx).OutputState, + } +} + +// Details of an Amazon VPC which has network connectivity to the Kafka cluster. +type ReplicatorKafkaClusterClientVpcConfigOutput struct{ *pulumi.OutputState } + +func (ReplicatorKafkaClusterClientVpcConfigOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ReplicatorKafkaClusterClientVpcConfig)(nil)).Elem() +} + +func (o ReplicatorKafkaClusterClientVpcConfigOutput) ToReplicatorKafkaClusterClientVpcConfigOutput() ReplicatorKafkaClusterClientVpcConfigOutput { + return o +} + +func (o ReplicatorKafkaClusterClientVpcConfigOutput) ToReplicatorKafkaClusterClientVpcConfigOutputWithContext(ctx context.Context) ReplicatorKafkaClusterClientVpcConfigOutput { + return o +} + +func (o ReplicatorKafkaClusterClientVpcConfigOutput) ToOutput(ctx context.Context) pulumix.Output[ReplicatorKafkaClusterClientVpcConfig] { + return pulumix.Output[ReplicatorKafkaClusterClientVpcConfig]{ + OutputState: o.OutputState, + } +} + +// The AWS security groups to associate with the elastic network interfaces in order to specify what the replicator has access to. If a security group is not specified, the default security group associated with the VPC is used. +func (o ReplicatorKafkaClusterClientVpcConfigOutput) SecurityGroupIds() pulumi.StringArrayOutput { + return o.ApplyT(func(v ReplicatorKafkaClusterClientVpcConfig) []string { return v.SecurityGroupIds }).(pulumi.StringArrayOutput) +} + +// The list of subnets to connect to in the virtual private cloud (VPC). AWS creates elastic network interfaces inside these subnets. +func (o ReplicatorKafkaClusterClientVpcConfigOutput) SubnetIds() pulumi.StringArrayOutput { + return o.ApplyT(func(v ReplicatorKafkaClusterClientVpcConfig) []string { return v.SubnetIds }).(pulumi.StringArrayOutput) +} + +// Specifies configuration for replication between a source and target Kafka cluster. +type ReplicatorReplicationInfo struct { + // Configuration relating to consumer group replication. + ConsumerGroupReplication ReplicatorConsumerGroupReplication `pulumi:"consumerGroupReplication"` + // Amazon Resource Name of the source Kafka cluster. + SourceKafkaClusterArn string `pulumi:"sourceKafkaClusterArn"` + // The type of compression to use writing records to target Kafka cluster. + TargetCompressionType ReplicatorReplicationInfoTargetCompressionType `pulumi:"targetCompressionType"` + // Amazon Resource Name of the target Kafka cluster. + TargetKafkaClusterArn string `pulumi:"targetKafkaClusterArn"` + // Configuration relating to topic replication. + TopicReplication ReplicatorTopicReplication `pulumi:"topicReplication"` +} + +// ReplicatorReplicationInfoInput is an input type that accepts ReplicatorReplicationInfoArgs and ReplicatorReplicationInfoOutput values. +// You can construct a concrete instance of `ReplicatorReplicationInfoInput` via: +// +// ReplicatorReplicationInfoArgs{...} +type ReplicatorReplicationInfoInput interface { + pulumi.Input + + ToReplicatorReplicationInfoOutput() ReplicatorReplicationInfoOutput + ToReplicatorReplicationInfoOutputWithContext(context.Context) ReplicatorReplicationInfoOutput +} + +// Specifies configuration for replication between a source and target Kafka cluster. +type ReplicatorReplicationInfoArgs struct { + // Configuration relating to consumer group replication. + ConsumerGroupReplication ReplicatorConsumerGroupReplicationInput `pulumi:"consumerGroupReplication"` + // Amazon Resource Name of the source Kafka cluster. + SourceKafkaClusterArn pulumi.StringInput `pulumi:"sourceKafkaClusterArn"` + // The type of compression to use writing records to target Kafka cluster. + TargetCompressionType ReplicatorReplicationInfoTargetCompressionTypeInput `pulumi:"targetCompressionType"` + // Amazon Resource Name of the target Kafka cluster. + TargetKafkaClusterArn pulumi.StringInput `pulumi:"targetKafkaClusterArn"` + // Configuration relating to topic replication. + TopicReplication ReplicatorTopicReplicationInput `pulumi:"topicReplication"` +} + +func (ReplicatorReplicationInfoArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ReplicatorReplicationInfo)(nil)).Elem() +} + +func (i ReplicatorReplicationInfoArgs) ToReplicatorReplicationInfoOutput() ReplicatorReplicationInfoOutput { + return i.ToReplicatorReplicationInfoOutputWithContext(context.Background()) +} + +func (i ReplicatorReplicationInfoArgs) ToReplicatorReplicationInfoOutputWithContext(ctx context.Context) ReplicatorReplicationInfoOutput { + return pulumi.ToOutputWithContext(ctx, i).(ReplicatorReplicationInfoOutput) +} + +func (i ReplicatorReplicationInfoArgs) ToOutput(ctx context.Context) pulumix.Output[ReplicatorReplicationInfo] { + return pulumix.Output[ReplicatorReplicationInfo]{ + OutputState: i.ToReplicatorReplicationInfoOutputWithContext(ctx).OutputState, + } +} + +// ReplicatorReplicationInfoArrayInput is an input type that accepts ReplicatorReplicationInfoArray and ReplicatorReplicationInfoArrayOutput values. +// You can construct a concrete instance of `ReplicatorReplicationInfoArrayInput` via: +// +// ReplicatorReplicationInfoArray{ ReplicatorReplicationInfoArgs{...} } +type ReplicatorReplicationInfoArrayInput interface { + pulumi.Input + + ToReplicatorReplicationInfoArrayOutput() ReplicatorReplicationInfoArrayOutput + ToReplicatorReplicationInfoArrayOutputWithContext(context.Context) ReplicatorReplicationInfoArrayOutput +} + +type ReplicatorReplicationInfoArray []ReplicatorReplicationInfoInput + +func (ReplicatorReplicationInfoArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]ReplicatorReplicationInfo)(nil)).Elem() +} + +func (i ReplicatorReplicationInfoArray) ToReplicatorReplicationInfoArrayOutput() ReplicatorReplicationInfoArrayOutput { + return i.ToReplicatorReplicationInfoArrayOutputWithContext(context.Background()) +} + +func (i ReplicatorReplicationInfoArray) ToReplicatorReplicationInfoArrayOutputWithContext(ctx context.Context) ReplicatorReplicationInfoArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(ReplicatorReplicationInfoArrayOutput) +} + +func (i ReplicatorReplicationInfoArray) ToOutput(ctx context.Context) pulumix.Output[[]ReplicatorReplicationInfo] { + return pulumix.Output[[]ReplicatorReplicationInfo]{ + OutputState: i.ToReplicatorReplicationInfoArrayOutputWithContext(ctx).OutputState, + } +} + +// Specifies configuration for replication between a source and target Kafka cluster. +type ReplicatorReplicationInfoOutput struct{ *pulumi.OutputState } + +func (ReplicatorReplicationInfoOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ReplicatorReplicationInfo)(nil)).Elem() +} + +func (o ReplicatorReplicationInfoOutput) ToReplicatorReplicationInfoOutput() ReplicatorReplicationInfoOutput { + return o +} + +func (o ReplicatorReplicationInfoOutput) ToReplicatorReplicationInfoOutputWithContext(ctx context.Context) ReplicatorReplicationInfoOutput { + return o +} + +func (o ReplicatorReplicationInfoOutput) ToOutput(ctx context.Context) pulumix.Output[ReplicatorReplicationInfo] { + return pulumix.Output[ReplicatorReplicationInfo]{ + OutputState: o.OutputState, + } +} + +// Configuration relating to consumer group replication. +func (o ReplicatorReplicationInfoOutput) ConsumerGroupReplication() ReplicatorConsumerGroupReplicationOutput { + return o.ApplyT(func(v ReplicatorReplicationInfo) ReplicatorConsumerGroupReplication { + return v.ConsumerGroupReplication + }).(ReplicatorConsumerGroupReplicationOutput) +} + +// Amazon Resource Name of the source Kafka cluster. +func (o ReplicatorReplicationInfoOutput) SourceKafkaClusterArn() pulumi.StringOutput { + return o.ApplyT(func(v ReplicatorReplicationInfo) string { return v.SourceKafkaClusterArn }).(pulumi.StringOutput) +} + +// The type of compression to use writing records to target Kafka cluster. +func (o ReplicatorReplicationInfoOutput) TargetCompressionType() ReplicatorReplicationInfoTargetCompressionTypeOutput { + return o.ApplyT(func(v ReplicatorReplicationInfo) ReplicatorReplicationInfoTargetCompressionType { + return v.TargetCompressionType + }).(ReplicatorReplicationInfoTargetCompressionTypeOutput) +} + +// Amazon Resource Name of the target Kafka cluster. +func (o ReplicatorReplicationInfoOutput) TargetKafkaClusterArn() pulumi.StringOutput { + return o.ApplyT(func(v ReplicatorReplicationInfo) string { return v.TargetKafkaClusterArn }).(pulumi.StringOutput) +} + +// Configuration relating to topic replication. +func (o ReplicatorReplicationInfoOutput) TopicReplication() ReplicatorTopicReplicationOutput { + return o.ApplyT(func(v ReplicatorReplicationInfo) ReplicatorTopicReplication { return v.TopicReplication }).(ReplicatorTopicReplicationOutput) +} + +type ReplicatorReplicationInfoArrayOutput struct{ *pulumi.OutputState } + +func (ReplicatorReplicationInfoArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]ReplicatorReplicationInfo)(nil)).Elem() +} + +func (o ReplicatorReplicationInfoArrayOutput) ToReplicatorReplicationInfoArrayOutput() ReplicatorReplicationInfoArrayOutput { + return o +} + +func (o ReplicatorReplicationInfoArrayOutput) ToReplicatorReplicationInfoArrayOutputWithContext(ctx context.Context) ReplicatorReplicationInfoArrayOutput { + return o +} + +func (o ReplicatorReplicationInfoArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]ReplicatorReplicationInfo] { + return pulumix.Output[[]ReplicatorReplicationInfo]{ + OutputState: o.OutputState, + } +} + +func (o ReplicatorReplicationInfoArrayOutput) Index(i pulumi.IntInput) ReplicatorReplicationInfoOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) ReplicatorReplicationInfo { + return vs[0].([]ReplicatorReplicationInfo)[vs[1].(int)] + }).(ReplicatorReplicationInfoOutput) +} + +type ReplicatorTag struct { + Key string `pulumi:"key"` + Value string `pulumi:"value"` +} + +// ReplicatorTagInput is an input type that accepts ReplicatorTagArgs and ReplicatorTagOutput values. +// You can construct a concrete instance of `ReplicatorTagInput` via: +// +// ReplicatorTagArgs{...} +type ReplicatorTagInput interface { + pulumi.Input + + ToReplicatorTagOutput() ReplicatorTagOutput + ToReplicatorTagOutputWithContext(context.Context) ReplicatorTagOutput +} + +type ReplicatorTagArgs struct { + Key pulumi.StringInput `pulumi:"key"` + Value pulumi.StringInput `pulumi:"value"` +} + +func (ReplicatorTagArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ReplicatorTag)(nil)).Elem() +} + +func (i ReplicatorTagArgs) ToReplicatorTagOutput() ReplicatorTagOutput { + return i.ToReplicatorTagOutputWithContext(context.Background()) +} + +func (i ReplicatorTagArgs) ToReplicatorTagOutputWithContext(ctx context.Context) ReplicatorTagOutput { + return pulumi.ToOutputWithContext(ctx, i).(ReplicatorTagOutput) +} + +func (i ReplicatorTagArgs) ToOutput(ctx context.Context) pulumix.Output[ReplicatorTag] { + return pulumix.Output[ReplicatorTag]{ + OutputState: i.ToReplicatorTagOutputWithContext(ctx).OutputState, + } +} + +// ReplicatorTagArrayInput is an input type that accepts ReplicatorTagArray and ReplicatorTagArrayOutput values. +// You can construct a concrete instance of `ReplicatorTagArrayInput` via: +// +// ReplicatorTagArray{ ReplicatorTagArgs{...} } +type ReplicatorTagArrayInput interface { + pulumi.Input + + ToReplicatorTagArrayOutput() ReplicatorTagArrayOutput + ToReplicatorTagArrayOutputWithContext(context.Context) ReplicatorTagArrayOutput +} + +type ReplicatorTagArray []ReplicatorTagInput + +func (ReplicatorTagArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]ReplicatorTag)(nil)).Elem() +} + +func (i ReplicatorTagArray) ToReplicatorTagArrayOutput() ReplicatorTagArrayOutput { + return i.ToReplicatorTagArrayOutputWithContext(context.Background()) +} + +func (i ReplicatorTagArray) ToReplicatorTagArrayOutputWithContext(ctx context.Context) ReplicatorTagArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(ReplicatorTagArrayOutput) +} + +func (i ReplicatorTagArray) ToOutput(ctx context.Context) pulumix.Output[[]ReplicatorTag] { + return pulumix.Output[[]ReplicatorTag]{ + OutputState: i.ToReplicatorTagArrayOutputWithContext(ctx).OutputState, + } +} + +type ReplicatorTagOutput struct{ *pulumi.OutputState } + +func (ReplicatorTagOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ReplicatorTag)(nil)).Elem() +} + +func (o ReplicatorTagOutput) ToReplicatorTagOutput() ReplicatorTagOutput { + return o +} + +func (o ReplicatorTagOutput) ToReplicatorTagOutputWithContext(ctx context.Context) ReplicatorTagOutput { + return o +} + +func (o ReplicatorTagOutput) ToOutput(ctx context.Context) pulumix.Output[ReplicatorTag] { + return pulumix.Output[ReplicatorTag]{ + OutputState: o.OutputState, + } +} + +func (o ReplicatorTagOutput) Key() pulumi.StringOutput { + return o.ApplyT(func(v ReplicatorTag) string { return v.Key }).(pulumi.StringOutput) +} + +func (o ReplicatorTagOutput) Value() pulumi.StringOutput { + return o.ApplyT(func(v ReplicatorTag) string { return v.Value }).(pulumi.StringOutput) +} + +type ReplicatorTagArrayOutput struct{ *pulumi.OutputState } + +func (ReplicatorTagArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]ReplicatorTag)(nil)).Elem() +} + +func (o ReplicatorTagArrayOutput) ToReplicatorTagArrayOutput() ReplicatorTagArrayOutput { + return o +} + +func (o ReplicatorTagArrayOutput) ToReplicatorTagArrayOutputWithContext(ctx context.Context) ReplicatorTagArrayOutput { + return o +} + +func (o ReplicatorTagArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]ReplicatorTag] { + return pulumix.Output[[]ReplicatorTag]{ + OutputState: o.OutputState, + } +} + +func (o ReplicatorTagArrayOutput) Index(i pulumi.IntInput) ReplicatorTagOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) ReplicatorTag { + return vs[0].([]ReplicatorTag)[vs[1].(int)] + }).(ReplicatorTagOutput) +} + +type ReplicatorTopicReplication struct { + // Whether to periodically configure remote topic ACLs to match their corresponding upstream topics. + CopyAccessControlListsForTopics *bool `pulumi:"copyAccessControlListsForTopics"` + // Whether to periodically configure remote topics to match their corresponding upstream topics. + CopyTopicConfigurations *bool `pulumi:"copyTopicConfigurations"` + // Whether to periodically check for new topics and partitions. + DetectAndCopyNewTopics *bool `pulumi:"detectAndCopyNewTopics"` + // List of regular expression patterns indicating the topics that should not be replicated. + TopicsToExclude []string `pulumi:"topicsToExclude"` + // List of regular expression patterns indicating the topics to copy. + TopicsToReplicate []string `pulumi:"topicsToReplicate"` +} + +// ReplicatorTopicReplicationInput is an input type that accepts ReplicatorTopicReplicationArgs and ReplicatorTopicReplicationOutput values. +// You can construct a concrete instance of `ReplicatorTopicReplicationInput` via: +// +// ReplicatorTopicReplicationArgs{...} +type ReplicatorTopicReplicationInput interface { + pulumi.Input + + ToReplicatorTopicReplicationOutput() ReplicatorTopicReplicationOutput + ToReplicatorTopicReplicationOutputWithContext(context.Context) ReplicatorTopicReplicationOutput +} + +type ReplicatorTopicReplicationArgs struct { + // Whether to periodically configure remote topic ACLs to match their corresponding upstream topics. + CopyAccessControlListsForTopics pulumi.BoolPtrInput `pulumi:"copyAccessControlListsForTopics"` + // Whether to periodically configure remote topics to match their corresponding upstream topics. + CopyTopicConfigurations pulumi.BoolPtrInput `pulumi:"copyTopicConfigurations"` + // Whether to periodically check for new topics and partitions. + DetectAndCopyNewTopics pulumi.BoolPtrInput `pulumi:"detectAndCopyNewTopics"` + // List of regular expression patterns indicating the topics that should not be replicated. + TopicsToExclude pulumi.StringArrayInput `pulumi:"topicsToExclude"` + // List of regular expression patterns indicating the topics to copy. + TopicsToReplicate pulumi.StringArrayInput `pulumi:"topicsToReplicate"` +} + +func (ReplicatorTopicReplicationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ReplicatorTopicReplication)(nil)).Elem() +} + +func (i ReplicatorTopicReplicationArgs) ToReplicatorTopicReplicationOutput() ReplicatorTopicReplicationOutput { + return i.ToReplicatorTopicReplicationOutputWithContext(context.Background()) +} + +func (i ReplicatorTopicReplicationArgs) ToReplicatorTopicReplicationOutputWithContext(ctx context.Context) ReplicatorTopicReplicationOutput { + return pulumi.ToOutputWithContext(ctx, i).(ReplicatorTopicReplicationOutput) +} + +func (i ReplicatorTopicReplicationArgs) ToOutput(ctx context.Context) pulumix.Output[ReplicatorTopicReplication] { + return pulumix.Output[ReplicatorTopicReplication]{ + OutputState: i.ToReplicatorTopicReplicationOutputWithContext(ctx).OutputState, + } +} + +type ReplicatorTopicReplicationOutput struct{ *pulumi.OutputState } + +func (ReplicatorTopicReplicationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ReplicatorTopicReplication)(nil)).Elem() +} + +func (o ReplicatorTopicReplicationOutput) ToReplicatorTopicReplicationOutput() ReplicatorTopicReplicationOutput { + return o +} + +func (o ReplicatorTopicReplicationOutput) ToReplicatorTopicReplicationOutputWithContext(ctx context.Context) ReplicatorTopicReplicationOutput { + return o +} + +func (o ReplicatorTopicReplicationOutput) ToOutput(ctx context.Context) pulumix.Output[ReplicatorTopicReplication] { + return pulumix.Output[ReplicatorTopicReplication]{ + OutputState: o.OutputState, + } +} + +// Whether to periodically configure remote topic ACLs to match their corresponding upstream topics. +func (o ReplicatorTopicReplicationOutput) CopyAccessControlListsForTopics() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ReplicatorTopicReplication) *bool { return v.CopyAccessControlListsForTopics }).(pulumi.BoolPtrOutput) +} + +// Whether to periodically configure remote topics to match their corresponding upstream topics. +func (o ReplicatorTopicReplicationOutput) CopyTopicConfigurations() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ReplicatorTopicReplication) *bool { return v.CopyTopicConfigurations }).(pulumi.BoolPtrOutput) +} + +// Whether to periodically check for new topics and partitions. +func (o ReplicatorTopicReplicationOutput) DetectAndCopyNewTopics() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ReplicatorTopicReplication) *bool { return v.DetectAndCopyNewTopics }).(pulumi.BoolPtrOutput) +} + +// List of regular expression patterns indicating the topics that should not be replicated. +func (o ReplicatorTopicReplicationOutput) TopicsToExclude() pulumi.StringArrayOutput { + return o.ApplyT(func(v ReplicatorTopicReplication) []string { return v.TopicsToExclude }).(pulumi.StringArrayOutput) +} + +// List of regular expression patterns indicating the topics to copy. +func (o ReplicatorTopicReplicationOutput) TopicsToReplicate() pulumi.StringArrayOutput { + return o.ApplyT(func(v ReplicatorTopicReplication) []string { return v.TopicsToReplicate }).(pulumi.StringArrayOutput) +} + type ServerlessClusterClientAuthentication struct { Sasl ServerlessClusterSasl `pulumi:"sasl"` } @@ -5889,6 +6647,16 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*ClusterVpcConnectivityTlsPtrInput)(nil)).Elem(), ClusterVpcConnectivityTlsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ConfigurationLatestRevisionInput)(nil)).Elem(), ConfigurationLatestRevisionArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ConfigurationLatestRevisionPtrInput)(nil)).Elem(), ConfigurationLatestRevisionArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*ReplicatorAmazonMskClusterInput)(nil)).Elem(), ReplicatorAmazonMskClusterArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*ReplicatorConsumerGroupReplicationInput)(nil)).Elem(), ReplicatorConsumerGroupReplicationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*ReplicatorKafkaClusterInput)(nil)).Elem(), ReplicatorKafkaClusterArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*ReplicatorKafkaClusterArrayInput)(nil)).Elem(), ReplicatorKafkaClusterArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*ReplicatorKafkaClusterClientVpcConfigInput)(nil)).Elem(), ReplicatorKafkaClusterClientVpcConfigArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*ReplicatorReplicationInfoInput)(nil)).Elem(), ReplicatorReplicationInfoArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*ReplicatorReplicationInfoArrayInput)(nil)).Elem(), ReplicatorReplicationInfoArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*ReplicatorTagInput)(nil)).Elem(), ReplicatorTagArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*ReplicatorTagArrayInput)(nil)).Elem(), ReplicatorTagArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*ReplicatorTopicReplicationInput)(nil)).Elem(), ReplicatorTopicReplicationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ServerlessClusterClientAuthenticationInput)(nil)).Elem(), ServerlessClusterClientAuthenticationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ServerlessClusterIamInput)(nil)).Elem(), ServerlessClusterIamArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ServerlessClusterSaslInput)(nil)).Elem(), ServerlessClusterSaslArgs{}) @@ -5960,6 +6728,16 @@ func init() { pulumi.RegisterOutputType(ClusterVpcConnectivityTlsPtrOutput{}) pulumi.RegisterOutputType(ConfigurationLatestRevisionOutput{}) pulumi.RegisterOutputType(ConfigurationLatestRevisionPtrOutput{}) + pulumi.RegisterOutputType(ReplicatorAmazonMskClusterOutput{}) + pulumi.RegisterOutputType(ReplicatorConsumerGroupReplicationOutput{}) + pulumi.RegisterOutputType(ReplicatorKafkaClusterOutput{}) + pulumi.RegisterOutputType(ReplicatorKafkaClusterArrayOutput{}) + pulumi.RegisterOutputType(ReplicatorKafkaClusterClientVpcConfigOutput{}) + pulumi.RegisterOutputType(ReplicatorReplicationInfoOutput{}) + pulumi.RegisterOutputType(ReplicatorReplicationInfoArrayOutput{}) + pulumi.RegisterOutputType(ReplicatorTagOutput{}) + pulumi.RegisterOutputType(ReplicatorTagArrayOutput{}) + pulumi.RegisterOutputType(ReplicatorTopicReplicationOutput{}) pulumi.RegisterOutputType(ServerlessClusterClientAuthenticationOutput{}) pulumi.RegisterOutputType(ServerlessClusterIamOutput{}) pulumi.RegisterOutputType(ServerlessClusterSaslOutput{}) diff --git a/sdk/go/aws/msk/replicator.go b/sdk/go/aws/msk/replicator.go new file mode 100644 index 0000000000..b3cee55ffe --- /dev/null +++ b/sdk/go/aws/msk/replicator.go @@ -0,0 +1,220 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package msk + +import ( + "context" + "reflect" + + "errors" + "github.com/pulumi/pulumi-aws-native/sdk/go/aws/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" + "github.com/pulumi/pulumi/sdk/v3/go/pulumix" +) + +// Resource Type definition for AWS::MSK::Replicator +type Replicator struct { + pulumi.CustomResourceState + + // The current version of the MSK replicator. + CurrentVersion pulumi.StringPtrOutput `pulumi:"currentVersion"` + // A summary description of the replicator. + Description pulumi.StringPtrOutput `pulumi:"description"` + // Specifies a list of Kafka clusters which are targets of the replicator. + KafkaClusters ReplicatorKafkaClusterArrayOutput `pulumi:"kafkaClusters"` + // A list of replication configurations, where each configuration targets a given source cluster to target cluster replication flow. + ReplicationInfoList ReplicatorReplicationInfoArrayOutput `pulumi:"replicationInfoList"` + // Amazon Resource Name for the created replicator. + ReplicatorArn pulumi.StringOutput `pulumi:"replicatorArn"` + // The name of the replicator. + ReplicatorName pulumi.StringOutput `pulumi:"replicatorName"` + // The Amazon Resource Name (ARN) of the IAM role used by the replicator to access external resources. + ServiceExecutionRoleArn pulumi.StringOutput `pulumi:"serviceExecutionRoleArn"` + // A collection of tags associated with a resource + Tags ReplicatorTagArrayOutput `pulumi:"tags"` +} + +// NewReplicator registers a new resource with the given unique name, arguments, and options. +func NewReplicator(ctx *pulumi.Context, + name string, args *ReplicatorArgs, opts ...pulumi.ResourceOption) (*Replicator, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.KafkaClusters == nil { + return nil, errors.New("invalid value for required argument 'KafkaClusters'") + } + if args.ReplicationInfoList == nil { + return nil, errors.New("invalid value for required argument 'ReplicationInfoList'") + } + if args.ServiceExecutionRoleArn == nil { + return nil, errors.New("invalid value for required argument 'ServiceExecutionRoleArn'") + } + replaceOnChanges := pulumi.ReplaceOnChanges([]string{ + "description", + "kafkaClusters[*]", + "replicatorName", + "serviceExecutionRoleArn", + }) + opts = append(opts, replaceOnChanges) + opts = internal.PkgResourceDefaultOpts(opts) + var resource Replicator + err := ctx.RegisterResource("aws-native:msk:Replicator", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetReplicator gets an existing Replicator resource's state with the given name, ID, and optional +// state properties that are used to uniquely qualify the lookup (nil if not required). +func GetReplicator(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *ReplicatorState, opts ...pulumi.ResourceOption) (*Replicator, error) { + var resource Replicator + err := ctx.ReadResource("aws-native:msk:Replicator", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering Replicator resources. +type replicatorState struct { +} + +type ReplicatorState struct { +} + +func (ReplicatorState) ElementType() reflect.Type { + return reflect.TypeOf((*replicatorState)(nil)).Elem() +} + +type replicatorArgs struct { + // The current version of the MSK replicator. + CurrentVersion *string `pulumi:"currentVersion"` + // A summary description of the replicator. + Description *string `pulumi:"description"` + // Specifies a list of Kafka clusters which are targets of the replicator. + KafkaClusters []ReplicatorKafkaCluster `pulumi:"kafkaClusters"` + // A list of replication configurations, where each configuration targets a given source cluster to target cluster replication flow. + ReplicationInfoList []ReplicatorReplicationInfo `pulumi:"replicationInfoList"` + // The name of the replicator. + ReplicatorName *string `pulumi:"replicatorName"` + // The Amazon Resource Name (ARN) of the IAM role used by the replicator to access external resources. + ServiceExecutionRoleArn string `pulumi:"serviceExecutionRoleArn"` + // A collection of tags associated with a resource + Tags []ReplicatorTag `pulumi:"tags"` +} + +// The set of arguments for constructing a Replicator resource. +type ReplicatorArgs struct { + // The current version of the MSK replicator. + CurrentVersion pulumi.StringPtrInput + // A summary description of the replicator. + Description pulumi.StringPtrInput + // Specifies a list of Kafka clusters which are targets of the replicator. + KafkaClusters ReplicatorKafkaClusterArrayInput + // A list of replication configurations, where each configuration targets a given source cluster to target cluster replication flow. + ReplicationInfoList ReplicatorReplicationInfoArrayInput + // The name of the replicator. + ReplicatorName pulumi.StringPtrInput + // The Amazon Resource Name (ARN) of the IAM role used by the replicator to access external resources. + ServiceExecutionRoleArn pulumi.StringInput + // A collection of tags associated with a resource + Tags ReplicatorTagArrayInput +} + +func (ReplicatorArgs) ElementType() reflect.Type { + return reflect.TypeOf((*replicatorArgs)(nil)).Elem() +} + +type ReplicatorInput interface { + pulumi.Input + + ToReplicatorOutput() ReplicatorOutput + ToReplicatorOutputWithContext(ctx context.Context) ReplicatorOutput +} + +func (*Replicator) ElementType() reflect.Type { + return reflect.TypeOf((**Replicator)(nil)).Elem() +} + +func (i *Replicator) ToReplicatorOutput() ReplicatorOutput { + return i.ToReplicatorOutputWithContext(context.Background()) +} + +func (i *Replicator) ToReplicatorOutputWithContext(ctx context.Context) ReplicatorOutput { + return pulumi.ToOutputWithContext(ctx, i).(ReplicatorOutput) +} + +func (i *Replicator) ToOutput(ctx context.Context) pulumix.Output[*Replicator] { + return pulumix.Output[*Replicator]{ + OutputState: i.ToReplicatorOutputWithContext(ctx).OutputState, + } +} + +type ReplicatorOutput struct{ *pulumi.OutputState } + +func (ReplicatorOutput) ElementType() reflect.Type { + return reflect.TypeOf((**Replicator)(nil)).Elem() +} + +func (o ReplicatorOutput) ToReplicatorOutput() ReplicatorOutput { + return o +} + +func (o ReplicatorOutput) ToReplicatorOutputWithContext(ctx context.Context) ReplicatorOutput { + return o +} + +func (o ReplicatorOutput) ToOutput(ctx context.Context) pulumix.Output[*Replicator] { + return pulumix.Output[*Replicator]{ + OutputState: o.OutputState, + } +} + +// The current version of the MSK replicator. +func (o ReplicatorOutput) CurrentVersion() pulumi.StringPtrOutput { + return o.ApplyT(func(v *Replicator) pulumi.StringPtrOutput { return v.CurrentVersion }).(pulumi.StringPtrOutput) +} + +// A summary description of the replicator. +func (o ReplicatorOutput) Description() pulumi.StringPtrOutput { + return o.ApplyT(func(v *Replicator) pulumi.StringPtrOutput { return v.Description }).(pulumi.StringPtrOutput) +} + +// Specifies a list of Kafka clusters which are targets of the replicator. +func (o ReplicatorOutput) KafkaClusters() ReplicatorKafkaClusterArrayOutput { + return o.ApplyT(func(v *Replicator) ReplicatorKafkaClusterArrayOutput { return v.KafkaClusters }).(ReplicatorKafkaClusterArrayOutput) +} + +// A list of replication configurations, where each configuration targets a given source cluster to target cluster replication flow. +func (o ReplicatorOutput) ReplicationInfoList() ReplicatorReplicationInfoArrayOutput { + return o.ApplyT(func(v *Replicator) ReplicatorReplicationInfoArrayOutput { return v.ReplicationInfoList }).(ReplicatorReplicationInfoArrayOutput) +} + +// Amazon Resource Name for the created replicator. +func (o ReplicatorOutput) ReplicatorArn() pulumi.StringOutput { + return o.ApplyT(func(v *Replicator) pulumi.StringOutput { return v.ReplicatorArn }).(pulumi.StringOutput) +} + +// The name of the replicator. +func (o ReplicatorOutput) ReplicatorName() pulumi.StringOutput { + return o.ApplyT(func(v *Replicator) pulumi.StringOutput { return v.ReplicatorName }).(pulumi.StringOutput) +} + +// The Amazon Resource Name (ARN) of the IAM role used by the replicator to access external resources. +func (o ReplicatorOutput) ServiceExecutionRoleArn() pulumi.StringOutput { + return o.ApplyT(func(v *Replicator) pulumi.StringOutput { return v.ServiceExecutionRoleArn }).(pulumi.StringOutput) +} + +// A collection of tags associated with a resource +func (o ReplicatorOutput) Tags() ReplicatorTagArrayOutput { + return o.ApplyT(func(v *Replicator) ReplicatorTagArrayOutput { return v.Tags }).(ReplicatorTagArrayOutput) +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*ReplicatorInput)(nil)).Elem(), &Replicator{}) + pulumi.RegisterOutputType(ReplicatorOutput{}) +} diff --git a/sdk/go/aws/quicksight/analysis.go b/sdk/go/aws/quicksight/analysis.go index 852059a742..07fcb2a911 100644 --- a/sdk/go/aws/quicksight/analysis.go +++ b/sdk/go/aws/quicksight/analysis.go @@ -17,22 +17,23 @@ import ( type Analysis struct { pulumi.CustomResourceState - AnalysisId pulumi.StringOutput `pulumi:"analysisId"` - Arn pulumi.StringOutput `pulumi:"arn"` - AwsAccountId pulumi.StringOutput `pulumi:"awsAccountId"` - CreatedTime pulumi.StringOutput `pulumi:"createdTime"` - DataSetArns pulumi.StringArrayOutput `pulumi:"dataSetArns"` - Definition AnalysisDefinitionPtrOutput `pulumi:"definition"` - Errors AnalysisErrorArrayOutput `pulumi:"errors"` - LastUpdatedTime pulumi.StringOutput `pulumi:"lastUpdatedTime"` - Name pulumi.StringOutput `pulumi:"name"` - Parameters AnalysisParametersPtrOutput `pulumi:"parameters"` - Permissions AnalysisResourcePermissionArrayOutput `pulumi:"permissions"` - Sheets AnalysisSheetArrayOutput `pulumi:"sheets"` - SourceEntity AnalysisSourceEntityPtrOutput `pulumi:"sourceEntity"` - Status AnalysisResourceStatusPtrOutput `pulumi:"status"` - Tags AnalysisTagArrayOutput `pulumi:"tags"` - ThemeArn pulumi.StringPtrOutput `pulumi:"themeArn"` + AnalysisId pulumi.StringOutput `pulumi:"analysisId"` + Arn pulumi.StringOutput `pulumi:"arn"` + AwsAccountId pulumi.StringOutput `pulumi:"awsAccountId"` + CreatedTime pulumi.StringOutput `pulumi:"createdTime"` + DataSetArns pulumi.StringArrayOutput `pulumi:"dataSetArns"` + Definition AnalysisDefinitionPtrOutput `pulumi:"definition"` + Errors AnalysisErrorArrayOutput `pulumi:"errors"` + LastUpdatedTime pulumi.StringOutput `pulumi:"lastUpdatedTime"` + Name pulumi.StringOutput `pulumi:"name"` + Parameters AnalysisParametersPtrOutput `pulumi:"parameters"` + Permissions AnalysisResourcePermissionArrayOutput `pulumi:"permissions"` + Sheets AnalysisSheetArrayOutput `pulumi:"sheets"` + SourceEntity AnalysisSourceEntityPtrOutput `pulumi:"sourceEntity"` + Status AnalysisResourceStatusPtrOutput `pulumi:"status"` + Tags AnalysisTagArrayOutput `pulumi:"tags"` + ThemeArn pulumi.StringPtrOutput `pulumi:"themeArn"` + ValidationStrategy AnalysisValidationStrategyPtrOutput `pulumi:"validationStrategy"` } // NewAnalysis registers a new resource with the given unique name, arguments, and options. @@ -86,30 +87,32 @@ func (AnalysisState) ElementType() reflect.Type { } type analysisArgs struct { - AnalysisId string `pulumi:"analysisId"` - AwsAccountId string `pulumi:"awsAccountId"` - Definition *AnalysisDefinition `pulumi:"definition"` - Name *string `pulumi:"name"` - Parameters *AnalysisParameters `pulumi:"parameters"` - Permissions []AnalysisResourcePermission `pulumi:"permissions"` - SourceEntity *AnalysisSourceEntity `pulumi:"sourceEntity"` - Status *AnalysisResourceStatus `pulumi:"status"` - Tags []AnalysisTag `pulumi:"tags"` - ThemeArn *string `pulumi:"themeArn"` + AnalysisId string `pulumi:"analysisId"` + AwsAccountId string `pulumi:"awsAccountId"` + Definition *AnalysisDefinition `pulumi:"definition"` + Name *string `pulumi:"name"` + Parameters *AnalysisParameters `pulumi:"parameters"` + Permissions []AnalysisResourcePermission `pulumi:"permissions"` + SourceEntity *AnalysisSourceEntity `pulumi:"sourceEntity"` + Status *AnalysisResourceStatus `pulumi:"status"` + Tags []AnalysisTag `pulumi:"tags"` + ThemeArn *string `pulumi:"themeArn"` + ValidationStrategy *AnalysisValidationStrategy `pulumi:"validationStrategy"` } // The set of arguments for constructing a Analysis resource. type AnalysisArgs struct { - AnalysisId pulumi.StringInput - AwsAccountId pulumi.StringInput - Definition AnalysisDefinitionPtrInput - Name pulumi.StringPtrInput - Parameters AnalysisParametersPtrInput - Permissions AnalysisResourcePermissionArrayInput - SourceEntity AnalysisSourceEntityPtrInput - Status AnalysisResourceStatusPtrInput - Tags AnalysisTagArrayInput - ThemeArn pulumi.StringPtrInput + AnalysisId pulumi.StringInput + AwsAccountId pulumi.StringInput + Definition AnalysisDefinitionPtrInput + Name pulumi.StringPtrInput + Parameters AnalysisParametersPtrInput + Permissions AnalysisResourcePermissionArrayInput + SourceEntity AnalysisSourceEntityPtrInput + Status AnalysisResourceStatusPtrInput + Tags AnalysisTagArrayInput + ThemeArn pulumi.StringPtrInput + ValidationStrategy AnalysisValidationStrategyPtrInput } func (AnalysisArgs) ElementType() reflect.Type { @@ -225,6 +228,10 @@ func (o AnalysisOutput) ThemeArn() pulumi.StringPtrOutput { return o.ApplyT(func(v *Analysis) pulumi.StringPtrOutput { return v.ThemeArn }).(pulumi.StringPtrOutput) } +func (o AnalysisOutput) ValidationStrategy() AnalysisValidationStrategyPtrOutput { + return o.ApplyT(func(v *Analysis) AnalysisValidationStrategyPtrOutput { return v.ValidationStrategy }).(AnalysisValidationStrategyPtrOutput) +} + func init() { pulumi.RegisterInputType(reflect.TypeOf((*AnalysisInput)(nil)).Elem(), &Analysis{}) pulumi.RegisterOutputType(AnalysisOutput{}) diff --git a/sdk/go/aws/quicksight/dashboard.go b/sdk/go/aws/quicksight/dashboard.go index da08094ea1..bec8f82cf3 100644 --- a/sdk/go/aws/quicksight/dashboard.go +++ b/sdk/go/aws/quicksight/dashboard.go @@ -31,6 +31,7 @@ type Dashboard struct { SourceEntity DashboardSourceEntityPtrOutput `pulumi:"sourceEntity"` Tags DashboardTagArrayOutput `pulumi:"tags"` ThemeArn pulumi.StringPtrOutput `pulumi:"themeArn"` + ValidationStrategy DashboardValidationStrategyPtrOutput `pulumi:"validationStrategy"` Version DashboardVersionOutput `pulumi:"version"` VersionDescription pulumi.StringPtrOutput `pulumi:"versionDescription"` } @@ -96,6 +97,7 @@ type dashboardArgs struct { SourceEntity *DashboardSourceEntity `pulumi:"sourceEntity"` Tags []DashboardTag `pulumi:"tags"` ThemeArn *string `pulumi:"themeArn"` + ValidationStrategy *DashboardValidationStrategy `pulumi:"validationStrategy"` VersionDescription *string `pulumi:"versionDescription"` } @@ -111,6 +113,7 @@ type DashboardArgs struct { SourceEntity DashboardSourceEntityPtrInput Tags DashboardTagArrayInput ThemeArn pulumi.StringPtrInput + ValidationStrategy DashboardValidationStrategyPtrInput VersionDescription pulumi.StringPtrInput } @@ -219,6 +222,10 @@ func (o DashboardOutput) ThemeArn() pulumi.StringPtrOutput { return o.ApplyT(func(v *Dashboard) pulumi.StringPtrOutput { return v.ThemeArn }).(pulumi.StringPtrOutput) } +func (o DashboardOutput) ValidationStrategy() DashboardValidationStrategyPtrOutput { + return o.ApplyT(func(v *Dashboard) DashboardValidationStrategyPtrOutput { return v.ValidationStrategy }).(DashboardValidationStrategyPtrOutput) +} + func (o DashboardOutput) Version() DashboardVersionOutput { return o.ApplyT(func(v *Dashboard) DashboardVersionOutput { return v.Version }).(DashboardVersionOutput) } diff --git a/sdk/go/aws/quicksight/pulumiEnums.go b/sdk/go/aws/quicksight/pulumiEnums.go index 1cd76e401d..84b5c5842c 100644 --- a/sdk/go/aws/quicksight/pulumiEnums.go +++ b/sdk/go/aws/quicksight/pulumiEnums.go @@ -18254,6 +18254,188 @@ func (in *analysisUrlTargetConfigurationPtr) ToOutput(ctx context.Context) pulum } } +type AnalysisValidationStrategyMode string + +const ( + AnalysisValidationStrategyModeStrict = AnalysisValidationStrategyMode("STRICT") + AnalysisValidationStrategyModeLenient = AnalysisValidationStrategyMode("LENIENT") +) + +func (AnalysisValidationStrategyMode) ElementType() reflect.Type { + return reflect.TypeOf((*AnalysisValidationStrategyMode)(nil)).Elem() +} + +func (e AnalysisValidationStrategyMode) ToAnalysisValidationStrategyModeOutput() AnalysisValidationStrategyModeOutput { + return pulumi.ToOutput(e).(AnalysisValidationStrategyModeOutput) +} + +func (e AnalysisValidationStrategyMode) ToAnalysisValidationStrategyModeOutputWithContext(ctx context.Context) AnalysisValidationStrategyModeOutput { + return pulumi.ToOutputWithContext(ctx, e).(AnalysisValidationStrategyModeOutput) +} + +func (e AnalysisValidationStrategyMode) ToAnalysisValidationStrategyModePtrOutput() AnalysisValidationStrategyModePtrOutput { + return e.ToAnalysisValidationStrategyModePtrOutputWithContext(context.Background()) +} + +func (e AnalysisValidationStrategyMode) ToAnalysisValidationStrategyModePtrOutputWithContext(ctx context.Context) AnalysisValidationStrategyModePtrOutput { + return AnalysisValidationStrategyMode(e).ToAnalysisValidationStrategyModeOutputWithContext(ctx).ToAnalysisValidationStrategyModePtrOutputWithContext(ctx) +} + +func (e AnalysisValidationStrategyMode) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e AnalysisValidationStrategyMode) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e AnalysisValidationStrategyMode) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e AnalysisValidationStrategyMode) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type AnalysisValidationStrategyModeOutput struct{ *pulumi.OutputState } + +func (AnalysisValidationStrategyModeOutput) ElementType() reflect.Type { + return reflect.TypeOf((*AnalysisValidationStrategyMode)(nil)).Elem() +} + +func (o AnalysisValidationStrategyModeOutput) ToAnalysisValidationStrategyModeOutput() AnalysisValidationStrategyModeOutput { + return o +} + +func (o AnalysisValidationStrategyModeOutput) ToAnalysisValidationStrategyModeOutputWithContext(ctx context.Context) AnalysisValidationStrategyModeOutput { + return o +} + +func (o AnalysisValidationStrategyModeOutput) ToAnalysisValidationStrategyModePtrOutput() AnalysisValidationStrategyModePtrOutput { + return o.ToAnalysisValidationStrategyModePtrOutputWithContext(context.Background()) +} + +func (o AnalysisValidationStrategyModeOutput) ToAnalysisValidationStrategyModePtrOutputWithContext(ctx context.Context) AnalysisValidationStrategyModePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v AnalysisValidationStrategyMode) *AnalysisValidationStrategyMode { + return &v + }).(AnalysisValidationStrategyModePtrOutput) +} + +func (o AnalysisValidationStrategyModeOutput) ToOutput(ctx context.Context) pulumix.Output[AnalysisValidationStrategyMode] { + return pulumix.Output[AnalysisValidationStrategyMode]{ + OutputState: o.OutputState, + } +} + +func (o AnalysisValidationStrategyModeOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o AnalysisValidationStrategyModeOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e AnalysisValidationStrategyMode) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o AnalysisValidationStrategyModeOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o AnalysisValidationStrategyModeOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e AnalysisValidationStrategyMode) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type AnalysisValidationStrategyModePtrOutput struct{ *pulumi.OutputState } + +func (AnalysisValidationStrategyModePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**AnalysisValidationStrategyMode)(nil)).Elem() +} + +func (o AnalysisValidationStrategyModePtrOutput) ToAnalysisValidationStrategyModePtrOutput() AnalysisValidationStrategyModePtrOutput { + return o +} + +func (o AnalysisValidationStrategyModePtrOutput) ToAnalysisValidationStrategyModePtrOutputWithContext(ctx context.Context) AnalysisValidationStrategyModePtrOutput { + return o +} + +func (o AnalysisValidationStrategyModePtrOutput) ToOutput(ctx context.Context) pulumix.Output[*AnalysisValidationStrategyMode] { + return pulumix.Output[*AnalysisValidationStrategyMode]{ + OutputState: o.OutputState, + } +} + +func (o AnalysisValidationStrategyModePtrOutput) Elem() AnalysisValidationStrategyModeOutput { + return o.ApplyT(func(v *AnalysisValidationStrategyMode) AnalysisValidationStrategyMode { + if v != nil { + return *v + } + var ret AnalysisValidationStrategyMode + return ret + }).(AnalysisValidationStrategyModeOutput) +} + +func (o AnalysisValidationStrategyModePtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o AnalysisValidationStrategyModePtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *AnalysisValidationStrategyMode) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// AnalysisValidationStrategyModeInput is an input type that accepts AnalysisValidationStrategyModeArgs and AnalysisValidationStrategyModeOutput values. +// You can construct a concrete instance of `AnalysisValidationStrategyModeInput` via: +// +// AnalysisValidationStrategyModeArgs{...} +type AnalysisValidationStrategyModeInput interface { + pulumi.Input + + ToAnalysisValidationStrategyModeOutput() AnalysisValidationStrategyModeOutput + ToAnalysisValidationStrategyModeOutputWithContext(context.Context) AnalysisValidationStrategyModeOutput +} + +var analysisValidationStrategyModePtrType = reflect.TypeOf((**AnalysisValidationStrategyMode)(nil)).Elem() + +type AnalysisValidationStrategyModePtrInput interface { + pulumi.Input + + ToAnalysisValidationStrategyModePtrOutput() AnalysisValidationStrategyModePtrOutput + ToAnalysisValidationStrategyModePtrOutputWithContext(context.Context) AnalysisValidationStrategyModePtrOutput +} + +type analysisValidationStrategyModePtr string + +func AnalysisValidationStrategyModePtr(v string) AnalysisValidationStrategyModePtrInput { + return (*analysisValidationStrategyModePtr)(&v) +} + +func (*analysisValidationStrategyModePtr) ElementType() reflect.Type { + return analysisValidationStrategyModePtrType +} + +func (in *analysisValidationStrategyModePtr) ToAnalysisValidationStrategyModePtrOutput() AnalysisValidationStrategyModePtrOutput { + return pulumi.ToOutput(in).(AnalysisValidationStrategyModePtrOutput) +} + +func (in *analysisValidationStrategyModePtr) ToAnalysisValidationStrategyModePtrOutputWithContext(ctx context.Context) AnalysisValidationStrategyModePtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(AnalysisValidationStrategyModePtrOutput) +} + +func (in *analysisValidationStrategyModePtr) ToOutput(ctx context.Context) pulumix.Output[*AnalysisValidationStrategyMode] { + return pulumix.Output[*AnalysisValidationStrategyMode]{ + OutputState: in.ToAnalysisValidationStrategyModePtrOutputWithContext(ctx).OutputState, + } +} + type AnalysisValueWhenUnsetOption string const ( @@ -38605,6 +38787,188 @@ func (in *dashboardUrlTargetConfigurationPtr) ToOutput(ctx context.Context) pulu } } +type DashboardValidationStrategyMode string + +const ( + DashboardValidationStrategyModeStrict = DashboardValidationStrategyMode("STRICT") + DashboardValidationStrategyModeLenient = DashboardValidationStrategyMode("LENIENT") +) + +func (DashboardValidationStrategyMode) ElementType() reflect.Type { + return reflect.TypeOf((*DashboardValidationStrategyMode)(nil)).Elem() +} + +func (e DashboardValidationStrategyMode) ToDashboardValidationStrategyModeOutput() DashboardValidationStrategyModeOutput { + return pulumi.ToOutput(e).(DashboardValidationStrategyModeOutput) +} + +func (e DashboardValidationStrategyMode) ToDashboardValidationStrategyModeOutputWithContext(ctx context.Context) DashboardValidationStrategyModeOutput { + return pulumi.ToOutputWithContext(ctx, e).(DashboardValidationStrategyModeOutput) +} + +func (e DashboardValidationStrategyMode) ToDashboardValidationStrategyModePtrOutput() DashboardValidationStrategyModePtrOutput { + return e.ToDashboardValidationStrategyModePtrOutputWithContext(context.Background()) +} + +func (e DashboardValidationStrategyMode) ToDashboardValidationStrategyModePtrOutputWithContext(ctx context.Context) DashboardValidationStrategyModePtrOutput { + return DashboardValidationStrategyMode(e).ToDashboardValidationStrategyModeOutputWithContext(ctx).ToDashboardValidationStrategyModePtrOutputWithContext(ctx) +} + +func (e DashboardValidationStrategyMode) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e DashboardValidationStrategyMode) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e DashboardValidationStrategyMode) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e DashboardValidationStrategyMode) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type DashboardValidationStrategyModeOutput struct{ *pulumi.OutputState } + +func (DashboardValidationStrategyModeOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DashboardValidationStrategyMode)(nil)).Elem() +} + +func (o DashboardValidationStrategyModeOutput) ToDashboardValidationStrategyModeOutput() DashboardValidationStrategyModeOutput { + return o +} + +func (o DashboardValidationStrategyModeOutput) ToDashboardValidationStrategyModeOutputWithContext(ctx context.Context) DashboardValidationStrategyModeOutput { + return o +} + +func (o DashboardValidationStrategyModeOutput) ToDashboardValidationStrategyModePtrOutput() DashboardValidationStrategyModePtrOutput { + return o.ToDashboardValidationStrategyModePtrOutputWithContext(context.Background()) +} + +func (o DashboardValidationStrategyModeOutput) ToDashboardValidationStrategyModePtrOutputWithContext(ctx context.Context) DashboardValidationStrategyModePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DashboardValidationStrategyMode) *DashboardValidationStrategyMode { + return &v + }).(DashboardValidationStrategyModePtrOutput) +} + +func (o DashboardValidationStrategyModeOutput) ToOutput(ctx context.Context) pulumix.Output[DashboardValidationStrategyMode] { + return pulumix.Output[DashboardValidationStrategyMode]{ + OutputState: o.OutputState, + } +} + +func (o DashboardValidationStrategyModeOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o DashboardValidationStrategyModeOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e DashboardValidationStrategyMode) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o DashboardValidationStrategyModeOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o DashboardValidationStrategyModeOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e DashboardValidationStrategyMode) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type DashboardValidationStrategyModePtrOutput struct{ *pulumi.OutputState } + +func (DashboardValidationStrategyModePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DashboardValidationStrategyMode)(nil)).Elem() +} + +func (o DashboardValidationStrategyModePtrOutput) ToDashboardValidationStrategyModePtrOutput() DashboardValidationStrategyModePtrOutput { + return o +} + +func (o DashboardValidationStrategyModePtrOutput) ToDashboardValidationStrategyModePtrOutputWithContext(ctx context.Context) DashboardValidationStrategyModePtrOutput { + return o +} + +func (o DashboardValidationStrategyModePtrOutput) ToOutput(ctx context.Context) pulumix.Output[*DashboardValidationStrategyMode] { + return pulumix.Output[*DashboardValidationStrategyMode]{ + OutputState: o.OutputState, + } +} + +func (o DashboardValidationStrategyModePtrOutput) Elem() DashboardValidationStrategyModeOutput { + return o.ApplyT(func(v *DashboardValidationStrategyMode) DashboardValidationStrategyMode { + if v != nil { + return *v + } + var ret DashboardValidationStrategyMode + return ret + }).(DashboardValidationStrategyModeOutput) +} + +func (o DashboardValidationStrategyModePtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o DashboardValidationStrategyModePtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *DashboardValidationStrategyMode) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// DashboardValidationStrategyModeInput is an input type that accepts DashboardValidationStrategyModeArgs and DashboardValidationStrategyModeOutput values. +// You can construct a concrete instance of `DashboardValidationStrategyModeInput` via: +// +// DashboardValidationStrategyModeArgs{...} +type DashboardValidationStrategyModeInput interface { + pulumi.Input + + ToDashboardValidationStrategyModeOutput() DashboardValidationStrategyModeOutput + ToDashboardValidationStrategyModeOutputWithContext(context.Context) DashboardValidationStrategyModeOutput +} + +var dashboardValidationStrategyModePtrType = reflect.TypeOf((**DashboardValidationStrategyMode)(nil)).Elem() + +type DashboardValidationStrategyModePtrInput interface { + pulumi.Input + + ToDashboardValidationStrategyModePtrOutput() DashboardValidationStrategyModePtrOutput + ToDashboardValidationStrategyModePtrOutputWithContext(context.Context) DashboardValidationStrategyModePtrOutput +} + +type dashboardValidationStrategyModePtr string + +func DashboardValidationStrategyModePtr(v string) DashboardValidationStrategyModePtrInput { + return (*dashboardValidationStrategyModePtr)(&v) +} + +func (*dashboardValidationStrategyModePtr) ElementType() reflect.Type { + return dashboardValidationStrategyModePtrType +} + +func (in *dashboardValidationStrategyModePtr) ToDashboardValidationStrategyModePtrOutput() DashboardValidationStrategyModePtrOutput { + return pulumi.ToOutput(in).(DashboardValidationStrategyModePtrOutput) +} + +func (in *dashboardValidationStrategyModePtr) ToDashboardValidationStrategyModePtrOutputWithContext(ctx context.Context) DashboardValidationStrategyModePtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(DashboardValidationStrategyModePtrOutput) +} + +func (in *dashboardValidationStrategyModePtr) ToOutput(ctx context.Context) pulumix.Output[*DashboardValidationStrategyMode] { + return pulumix.Output[*DashboardValidationStrategyMode]{ + OutputState: in.ToDashboardValidationStrategyModePtrOutputWithContext(ctx).OutputState, + } +} + type DashboardValueWhenUnsetOption string const ( @@ -61209,6 +61573,188 @@ func (in *templateUrlTargetConfigurationPtr) ToOutput(ctx context.Context) pulum } } +type TemplateValidationStrategyMode string + +const ( + TemplateValidationStrategyModeStrict = TemplateValidationStrategyMode("STRICT") + TemplateValidationStrategyModeLenient = TemplateValidationStrategyMode("LENIENT") +) + +func (TemplateValidationStrategyMode) ElementType() reflect.Type { + return reflect.TypeOf((*TemplateValidationStrategyMode)(nil)).Elem() +} + +func (e TemplateValidationStrategyMode) ToTemplateValidationStrategyModeOutput() TemplateValidationStrategyModeOutput { + return pulumi.ToOutput(e).(TemplateValidationStrategyModeOutput) +} + +func (e TemplateValidationStrategyMode) ToTemplateValidationStrategyModeOutputWithContext(ctx context.Context) TemplateValidationStrategyModeOutput { + return pulumi.ToOutputWithContext(ctx, e).(TemplateValidationStrategyModeOutput) +} + +func (e TemplateValidationStrategyMode) ToTemplateValidationStrategyModePtrOutput() TemplateValidationStrategyModePtrOutput { + return e.ToTemplateValidationStrategyModePtrOutputWithContext(context.Background()) +} + +func (e TemplateValidationStrategyMode) ToTemplateValidationStrategyModePtrOutputWithContext(ctx context.Context) TemplateValidationStrategyModePtrOutput { + return TemplateValidationStrategyMode(e).ToTemplateValidationStrategyModeOutputWithContext(ctx).ToTemplateValidationStrategyModePtrOutputWithContext(ctx) +} + +func (e TemplateValidationStrategyMode) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e TemplateValidationStrategyMode) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e TemplateValidationStrategyMode) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e TemplateValidationStrategyMode) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type TemplateValidationStrategyModeOutput struct{ *pulumi.OutputState } + +func (TemplateValidationStrategyModeOutput) ElementType() reflect.Type { + return reflect.TypeOf((*TemplateValidationStrategyMode)(nil)).Elem() +} + +func (o TemplateValidationStrategyModeOutput) ToTemplateValidationStrategyModeOutput() TemplateValidationStrategyModeOutput { + return o +} + +func (o TemplateValidationStrategyModeOutput) ToTemplateValidationStrategyModeOutputWithContext(ctx context.Context) TemplateValidationStrategyModeOutput { + return o +} + +func (o TemplateValidationStrategyModeOutput) ToTemplateValidationStrategyModePtrOutput() TemplateValidationStrategyModePtrOutput { + return o.ToTemplateValidationStrategyModePtrOutputWithContext(context.Background()) +} + +func (o TemplateValidationStrategyModeOutput) ToTemplateValidationStrategyModePtrOutputWithContext(ctx context.Context) TemplateValidationStrategyModePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v TemplateValidationStrategyMode) *TemplateValidationStrategyMode { + return &v + }).(TemplateValidationStrategyModePtrOutput) +} + +func (o TemplateValidationStrategyModeOutput) ToOutput(ctx context.Context) pulumix.Output[TemplateValidationStrategyMode] { + return pulumix.Output[TemplateValidationStrategyMode]{ + OutputState: o.OutputState, + } +} + +func (o TemplateValidationStrategyModeOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o TemplateValidationStrategyModeOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e TemplateValidationStrategyMode) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o TemplateValidationStrategyModeOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o TemplateValidationStrategyModeOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e TemplateValidationStrategyMode) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type TemplateValidationStrategyModePtrOutput struct{ *pulumi.OutputState } + +func (TemplateValidationStrategyModePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**TemplateValidationStrategyMode)(nil)).Elem() +} + +func (o TemplateValidationStrategyModePtrOutput) ToTemplateValidationStrategyModePtrOutput() TemplateValidationStrategyModePtrOutput { + return o +} + +func (o TemplateValidationStrategyModePtrOutput) ToTemplateValidationStrategyModePtrOutputWithContext(ctx context.Context) TemplateValidationStrategyModePtrOutput { + return o +} + +func (o TemplateValidationStrategyModePtrOutput) ToOutput(ctx context.Context) pulumix.Output[*TemplateValidationStrategyMode] { + return pulumix.Output[*TemplateValidationStrategyMode]{ + OutputState: o.OutputState, + } +} + +func (o TemplateValidationStrategyModePtrOutput) Elem() TemplateValidationStrategyModeOutput { + return o.ApplyT(func(v *TemplateValidationStrategyMode) TemplateValidationStrategyMode { + if v != nil { + return *v + } + var ret TemplateValidationStrategyMode + return ret + }).(TemplateValidationStrategyModeOutput) +} + +func (o TemplateValidationStrategyModePtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o TemplateValidationStrategyModePtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *TemplateValidationStrategyMode) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// TemplateValidationStrategyModeInput is an input type that accepts TemplateValidationStrategyModeArgs and TemplateValidationStrategyModeOutput values. +// You can construct a concrete instance of `TemplateValidationStrategyModeInput` via: +// +// TemplateValidationStrategyModeArgs{...} +type TemplateValidationStrategyModeInput interface { + pulumi.Input + + ToTemplateValidationStrategyModeOutput() TemplateValidationStrategyModeOutput + ToTemplateValidationStrategyModeOutputWithContext(context.Context) TemplateValidationStrategyModeOutput +} + +var templateValidationStrategyModePtrType = reflect.TypeOf((**TemplateValidationStrategyMode)(nil)).Elem() + +type TemplateValidationStrategyModePtrInput interface { + pulumi.Input + + ToTemplateValidationStrategyModePtrOutput() TemplateValidationStrategyModePtrOutput + ToTemplateValidationStrategyModePtrOutputWithContext(context.Context) TemplateValidationStrategyModePtrOutput +} + +type templateValidationStrategyModePtr string + +func TemplateValidationStrategyModePtr(v string) TemplateValidationStrategyModePtrInput { + return (*templateValidationStrategyModePtr)(&v) +} + +func (*templateValidationStrategyModePtr) ElementType() reflect.Type { + return templateValidationStrategyModePtrType +} + +func (in *templateValidationStrategyModePtr) ToTemplateValidationStrategyModePtrOutput() TemplateValidationStrategyModePtrOutput { + return pulumi.ToOutput(in).(TemplateValidationStrategyModePtrOutput) +} + +func (in *templateValidationStrategyModePtr) ToTemplateValidationStrategyModePtrOutputWithContext(ctx context.Context) TemplateValidationStrategyModePtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(TemplateValidationStrategyModePtrOutput) +} + +func (in *templateValidationStrategyModePtr) ToOutput(ctx context.Context) pulumix.Output[*TemplateValidationStrategyMode] { + return pulumix.Output[*TemplateValidationStrategyMode]{ + OutputState: in.ToTemplateValidationStrategyModePtrOutputWithContext(ctx).OutputState, + } +} + type TemplateValueWhenUnsetOption string const ( @@ -67525,6 +68071,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*AnalysisTopBottomSortOrderPtrInput)(nil)).Elem(), AnalysisTopBottomSortOrder("PERCENT_DIFFERENCE")) pulumi.RegisterInputType(reflect.TypeOf((*AnalysisUrlTargetConfigurationInput)(nil)).Elem(), AnalysisUrlTargetConfiguration("NEW_TAB")) pulumi.RegisterInputType(reflect.TypeOf((*AnalysisUrlTargetConfigurationPtrInput)(nil)).Elem(), AnalysisUrlTargetConfiguration("NEW_TAB")) + pulumi.RegisterInputType(reflect.TypeOf((*AnalysisValidationStrategyModeInput)(nil)).Elem(), AnalysisValidationStrategyMode("STRICT")) + pulumi.RegisterInputType(reflect.TypeOf((*AnalysisValidationStrategyModePtrInput)(nil)).Elem(), AnalysisValidationStrategyMode("STRICT")) pulumi.RegisterInputType(reflect.TypeOf((*AnalysisValueWhenUnsetOptionInput)(nil)).Elem(), AnalysisValueWhenUnsetOption("RECOMMENDED_VALUE")) pulumi.RegisterInputType(reflect.TypeOf((*AnalysisValueWhenUnsetOptionPtrInput)(nil)).Elem(), AnalysisValueWhenUnsetOption("RECOMMENDED_VALUE")) pulumi.RegisterInputType(reflect.TypeOf((*AnalysisVerticalTextAlignmentInput)(nil)).Elem(), AnalysisVerticalTextAlignment("TOP")) @@ -67745,6 +68293,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*DashboardUiStatePtrInput)(nil)).Elem(), DashboardUiState("EXPANDED")) pulumi.RegisterInputType(reflect.TypeOf((*DashboardUrlTargetConfigurationInput)(nil)).Elem(), DashboardUrlTargetConfiguration("NEW_TAB")) pulumi.RegisterInputType(reflect.TypeOf((*DashboardUrlTargetConfigurationPtrInput)(nil)).Elem(), DashboardUrlTargetConfiguration("NEW_TAB")) + pulumi.RegisterInputType(reflect.TypeOf((*DashboardValidationStrategyModeInput)(nil)).Elem(), DashboardValidationStrategyMode("STRICT")) + pulumi.RegisterInputType(reflect.TypeOf((*DashboardValidationStrategyModePtrInput)(nil)).Elem(), DashboardValidationStrategyMode("STRICT")) pulumi.RegisterInputType(reflect.TypeOf((*DashboardValueWhenUnsetOptionInput)(nil)).Elem(), DashboardValueWhenUnsetOption("RECOMMENDED_VALUE")) pulumi.RegisterInputType(reflect.TypeOf((*DashboardValueWhenUnsetOptionPtrInput)(nil)).Elem(), DashboardValueWhenUnsetOption("RECOMMENDED_VALUE")) pulumi.RegisterInputType(reflect.TypeOf((*DashboardVerticalTextAlignmentInput)(nil)).Elem(), DashboardVerticalTextAlignment("TOP")) @@ -67987,6 +68537,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*TemplateTopBottomSortOrderPtrInput)(nil)).Elem(), TemplateTopBottomSortOrder("PERCENT_DIFFERENCE")) pulumi.RegisterInputType(reflect.TypeOf((*TemplateUrlTargetConfigurationInput)(nil)).Elem(), TemplateUrlTargetConfiguration("NEW_TAB")) pulumi.RegisterInputType(reflect.TypeOf((*TemplateUrlTargetConfigurationPtrInput)(nil)).Elem(), TemplateUrlTargetConfiguration("NEW_TAB")) + pulumi.RegisterInputType(reflect.TypeOf((*TemplateValidationStrategyModeInput)(nil)).Elem(), TemplateValidationStrategyMode("STRICT")) + pulumi.RegisterInputType(reflect.TypeOf((*TemplateValidationStrategyModePtrInput)(nil)).Elem(), TemplateValidationStrategyMode("STRICT")) pulumi.RegisterInputType(reflect.TypeOf((*TemplateValueWhenUnsetOptionInput)(nil)).Elem(), TemplateValueWhenUnsetOption("RECOMMENDED_VALUE")) pulumi.RegisterInputType(reflect.TypeOf((*TemplateValueWhenUnsetOptionPtrInput)(nil)).Elem(), TemplateValueWhenUnsetOption("RECOMMENDED_VALUE")) pulumi.RegisterInputType(reflect.TypeOf((*TemplateVerticalTextAlignmentInput)(nil)).Elem(), TemplateVerticalTextAlignment("TOP")) @@ -68248,6 +68800,8 @@ func init() { pulumi.RegisterOutputType(AnalysisTopBottomSortOrderPtrOutput{}) pulumi.RegisterOutputType(AnalysisUrlTargetConfigurationOutput{}) pulumi.RegisterOutputType(AnalysisUrlTargetConfigurationPtrOutput{}) + pulumi.RegisterOutputType(AnalysisValidationStrategyModeOutput{}) + pulumi.RegisterOutputType(AnalysisValidationStrategyModePtrOutput{}) pulumi.RegisterOutputType(AnalysisValueWhenUnsetOptionOutput{}) pulumi.RegisterOutputType(AnalysisValueWhenUnsetOptionPtrOutput{}) pulumi.RegisterOutputType(AnalysisVerticalTextAlignmentOutput{}) @@ -68472,6 +69026,8 @@ func init() { pulumi.RegisterOutputType(DashboardUiStatePtrOutput{}) pulumi.RegisterOutputType(DashboardUrlTargetConfigurationOutput{}) pulumi.RegisterOutputType(DashboardUrlTargetConfigurationPtrOutput{}) + pulumi.RegisterOutputType(DashboardValidationStrategyModeOutput{}) + pulumi.RegisterOutputType(DashboardValidationStrategyModePtrOutput{}) pulumi.RegisterOutputType(DashboardValueWhenUnsetOptionOutput{}) pulumi.RegisterOutputType(DashboardValueWhenUnsetOptionPtrOutput{}) pulumi.RegisterOutputType(DashboardVerticalTextAlignmentOutput{}) @@ -68722,6 +69278,8 @@ func init() { pulumi.RegisterOutputType(TemplateTopBottomSortOrderPtrOutput{}) pulumi.RegisterOutputType(TemplateUrlTargetConfigurationOutput{}) pulumi.RegisterOutputType(TemplateUrlTargetConfigurationPtrOutput{}) + pulumi.RegisterOutputType(TemplateValidationStrategyModeOutput{}) + pulumi.RegisterOutputType(TemplateValidationStrategyModePtrOutput{}) pulumi.RegisterOutputType(TemplateValueWhenUnsetOptionOutput{}) pulumi.RegisterOutputType(TemplateValueWhenUnsetOptionPtrOutput{}) pulumi.RegisterOutputType(TemplateVerticalTextAlignmentOutput{}) diff --git a/sdk/go/aws/quicksight/pulumiTypes.go b/sdk/go/aws/quicksight/pulumiTypes.go index e6cc619833..8ef5387ebe 100644 --- a/sdk/go/aws/quicksight/pulumiTypes.go +++ b/sdk/go/aws/quicksight/pulumiTypes.go @@ -81418,6 +81418,163 @@ func (o AnalysisUniqueValuesComputationPtrOutput) Name() pulumi.StringPtrOutput }).(pulumi.StringPtrOutput) } +type AnalysisValidationStrategy struct { + Mode AnalysisValidationStrategyMode `pulumi:"mode"` +} + +// AnalysisValidationStrategyInput is an input type that accepts AnalysisValidationStrategyArgs and AnalysisValidationStrategyOutput values. +// You can construct a concrete instance of `AnalysisValidationStrategyInput` via: +// +// AnalysisValidationStrategyArgs{...} +type AnalysisValidationStrategyInput interface { + pulumi.Input + + ToAnalysisValidationStrategyOutput() AnalysisValidationStrategyOutput + ToAnalysisValidationStrategyOutputWithContext(context.Context) AnalysisValidationStrategyOutput +} + +type AnalysisValidationStrategyArgs struct { + Mode AnalysisValidationStrategyModeInput `pulumi:"mode"` +} + +func (AnalysisValidationStrategyArgs) ElementType() reflect.Type { + return reflect.TypeOf((*AnalysisValidationStrategy)(nil)).Elem() +} + +func (i AnalysisValidationStrategyArgs) ToAnalysisValidationStrategyOutput() AnalysisValidationStrategyOutput { + return i.ToAnalysisValidationStrategyOutputWithContext(context.Background()) +} + +func (i AnalysisValidationStrategyArgs) ToAnalysisValidationStrategyOutputWithContext(ctx context.Context) AnalysisValidationStrategyOutput { + return pulumi.ToOutputWithContext(ctx, i).(AnalysisValidationStrategyOutput) +} + +func (i AnalysisValidationStrategyArgs) ToOutput(ctx context.Context) pulumix.Output[AnalysisValidationStrategy] { + return pulumix.Output[AnalysisValidationStrategy]{ + OutputState: i.ToAnalysisValidationStrategyOutputWithContext(ctx).OutputState, + } +} + +func (i AnalysisValidationStrategyArgs) ToAnalysisValidationStrategyPtrOutput() AnalysisValidationStrategyPtrOutput { + return i.ToAnalysisValidationStrategyPtrOutputWithContext(context.Background()) +} + +func (i AnalysisValidationStrategyArgs) ToAnalysisValidationStrategyPtrOutputWithContext(ctx context.Context) AnalysisValidationStrategyPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AnalysisValidationStrategyOutput).ToAnalysisValidationStrategyPtrOutputWithContext(ctx) +} + +// AnalysisValidationStrategyPtrInput is an input type that accepts AnalysisValidationStrategyArgs, AnalysisValidationStrategyPtr and AnalysisValidationStrategyPtrOutput values. +// You can construct a concrete instance of `AnalysisValidationStrategyPtrInput` via: +// +// AnalysisValidationStrategyArgs{...} +// +// or: +// +// nil +type AnalysisValidationStrategyPtrInput interface { + pulumi.Input + + ToAnalysisValidationStrategyPtrOutput() AnalysisValidationStrategyPtrOutput + ToAnalysisValidationStrategyPtrOutputWithContext(context.Context) AnalysisValidationStrategyPtrOutput +} + +type analysisValidationStrategyPtrType AnalysisValidationStrategyArgs + +func AnalysisValidationStrategyPtr(v *AnalysisValidationStrategyArgs) AnalysisValidationStrategyPtrInput { + return (*analysisValidationStrategyPtrType)(v) +} + +func (*analysisValidationStrategyPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**AnalysisValidationStrategy)(nil)).Elem() +} + +func (i *analysisValidationStrategyPtrType) ToAnalysisValidationStrategyPtrOutput() AnalysisValidationStrategyPtrOutput { + return i.ToAnalysisValidationStrategyPtrOutputWithContext(context.Background()) +} + +func (i *analysisValidationStrategyPtrType) ToAnalysisValidationStrategyPtrOutputWithContext(ctx context.Context) AnalysisValidationStrategyPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AnalysisValidationStrategyPtrOutput) +} + +func (i *analysisValidationStrategyPtrType) ToOutput(ctx context.Context) pulumix.Output[*AnalysisValidationStrategy] { + return pulumix.Output[*AnalysisValidationStrategy]{ + OutputState: i.ToAnalysisValidationStrategyPtrOutputWithContext(ctx).OutputState, + } +} + +type AnalysisValidationStrategyOutput struct{ *pulumi.OutputState } + +func (AnalysisValidationStrategyOutput) ElementType() reflect.Type { + return reflect.TypeOf((*AnalysisValidationStrategy)(nil)).Elem() +} + +func (o AnalysisValidationStrategyOutput) ToAnalysisValidationStrategyOutput() AnalysisValidationStrategyOutput { + return o +} + +func (o AnalysisValidationStrategyOutput) ToAnalysisValidationStrategyOutputWithContext(ctx context.Context) AnalysisValidationStrategyOutput { + return o +} + +func (o AnalysisValidationStrategyOutput) ToAnalysisValidationStrategyPtrOutput() AnalysisValidationStrategyPtrOutput { + return o.ToAnalysisValidationStrategyPtrOutputWithContext(context.Background()) +} + +func (o AnalysisValidationStrategyOutput) ToAnalysisValidationStrategyPtrOutputWithContext(ctx context.Context) AnalysisValidationStrategyPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v AnalysisValidationStrategy) *AnalysisValidationStrategy { + return &v + }).(AnalysisValidationStrategyPtrOutput) +} + +func (o AnalysisValidationStrategyOutput) ToOutput(ctx context.Context) pulumix.Output[AnalysisValidationStrategy] { + return pulumix.Output[AnalysisValidationStrategy]{ + OutputState: o.OutputState, + } +} + +func (o AnalysisValidationStrategyOutput) Mode() AnalysisValidationStrategyModeOutput { + return o.ApplyT(func(v AnalysisValidationStrategy) AnalysisValidationStrategyMode { return v.Mode }).(AnalysisValidationStrategyModeOutput) +} + +type AnalysisValidationStrategyPtrOutput struct{ *pulumi.OutputState } + +func (AnalysisValidationStrategyPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**AnalysisValidationStrategy)(nil)).Elem() +} + +func (o AnalysisValidationStrategyPtrOutput) ToAnalysisValidationStrategyPtrOutput() AnalysisValidationStrategyPtrOutput { + return o +} + +func (o AnalysisValidationStrategyPtrOutput) ToAnalysisValidationStrategyPtrOutputWithContext(ctx context.Context) AnalysisValidationStrategyPtrOutput { + return o +} + +func (o AnalysisValidationStrategyPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*AnalysisValidationStrategy] { + return pulumix.Output[*AnalysisValidationStrategy]{ + OutputState: o.OutputState, + } +} + +func (o AnalysisValidationStrategyPtrOutput) Elem() AnalysisValidationStrategyOutput { + return o.ApplyT(func(v *AnalysisValidationStrategy) AnalysisValidationStrategy { + if v != nil { + return *v + } + var ret AnalysisValidationStrategy + return ret + }).(AnalysisValidationStrategyOutput) +} + +func (o AnalysisValidationStrategyPtrOutput) Mode() AnalysisValidationStrategyModePtrOutput { + return o.ApplyT(func(v *AnalysisValidationStrategy) *AnalysisValidationStrategyMode { + if v == nil { + return nil + } + return &v.Mode + }).(AnalysisValidationStrategyModePtrOutput) +} + type AnalysisVisibleRangeOptions struct { PercentRange *AnalysisPercentVisibleRange `pulumi:"percentRange"` } @@ -90740,67 +90897,6 @@ func (o DashboardBodySectionConfigurationArrayOutput) Index(i pulumi.IntInput) D }).(DashboardBodySectionConfigurationOutput) } -type DashboardBodySectionContent struct { - Layout *DashboardSectionLayoutConfiguration `pulumi:"layout"` -} - -// DashboardBodySectionContentInput is an input type that accepts DashboardBodySectionContentArgs and DashboardBodySectionContentOutput values. -// You can construct a concrete instance of `DashboardBodySectionContentInput` via: -// -// DashboardBodySectionContentArgs{...} -type DashboardBodySectionContentInput interface { - pulumi.Input - - ToDashboardBodySectionContentOutput() DashboardBodySectionContentOutput - ToDashboardBodySectionContentOutputWithContext(context.Context) DashboardBodySectionContentOutput -} - -type DashboardBodySectionContentArgs struct { - Layout DashboardSectionLayoutConfigurationPtrInput `pulumi:"layout"` -} - -func (DashboardBodySectionContentArgs) ElementType() reflect.Type { - return reflect.TypeOf((*DashboardBodySectionContent)(nil)).Elem() -} - -func (i DashboardBodySectionContentArgs) ToDashboardBodySectionContentOutput() DashboardBodySectionContentOutput { - return i.ToDashboardBodySectionContentOutputWithContext(context.Background()) -} - -func (i DashboardBodySectionContentArgs) ToDashboardBodySectionContentOutputWithContext(ctx context.Context) DashboardBodySectionContentOutput { - return pulumi.ToOutputWithContext(ctx, i).(DashboardBodySectionContentOutput) -} - -func (i DashboardBodySectionContentArgs) ToOutput(ctx context.Context) pulumix.Output[DashboardBodySectionContent] { - return pulumix.Output[DashboardBodySectionContent]{ - OutputState: i.ToDashboardBodySectionContentOutputWithContext(ctx).OutputState, - } -} - -type DashboardBodySectionContentOutput struct{ *pulumi.OutputState } - -func (DashboardBodySectionContentOutput) ElementType() reflect.Type { - return reflect.TypeOf((*DashboardBodySectionContent)(nil)).Elem() -} - -func (o DashboardBodySectionContentOutput) ToDashboardBodySectionContentOutput() DashboardBodySectionContentOutput { - return o -} - -func (o DashboardBodySectionContentOutput) ToDashboardBodySectionContentOutputWithContext(ctx context.Context) DashboardBodySectionContentOutput { - return o -} - -func (o DashboardBodySectionContentOutput) ToOutput(ctx context.Context) pulumix.Output[DashboardBodySectionContent] { - return pulumix.Output[DashboardBodySectionContent]{ - OutputState: o.OutputState, - } -} - -func (o DashboardBodySectionContentOutput) Layout() DashboardSectionLayoutConfigurationPtrOutput { - return o.ApplyT(func(v DashboardBodySectionContent) *DashboardSectionLayoutConfiguration { return v.Layout }).(DashboardSectionLayoutConfigurationPtrOutput) -} - func init() { pulumi.RegisterInputType(reflect.TypeOf((*AnalysisAggregationFunctionInput)(nil)).Elem(), AnalysisAggregationFunctionArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AnalysisAggregationFunctionPtrInput)(nil)).Elem(), AnalysisAggregationFunctionArgs{}) @@ -91687,6 +91783,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*AnalysisUnaggregatedFieldArrayInput)(nil)).Elem(), AnalysisUnaggregatedFieldArray{}) pulumi.RegisterInputType(reflect.TypeOf((*AnalysisUniqueValuesComputationInput)(nil)).Elem(), AnalysisUniqueValuesComputationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AnalysisUniqueValuesComputationPtrInput)(nil)).Elem(), AnalysisUniqueValuesComputationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*AnalysisValidationStrategyInput)(nil)).Elem(), AnalysisValidationStrategyArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*AnalysisValidationStrategyPtrInput)(nil)).Elem(), AnalysisValidationStrategyArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AnalysisVisibleRangeOptionsInput)(nil)).Elem(), AnalysisVisibleRangeOptionsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AnalysisVisibleRangeOptionsPtrInput)(nil)).Elem(), AnalysisVisibleRangeOptionsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AnalysisVisualInput)(nil)).Elem(), AnalysisVisualArgs{}) @@ -91789,7 +91887,6 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*DashboardBinWidthOptionsPtrInput)(nil)).Elem(), DashboardBinWidthOptionsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DashboardBodySectionConfigurationInput)(nil)).Elem(), DashboardBodySectionConfigurationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DashboardBodySectionConfigurationArrayInput)(nil)).Elem(), DashboardBodySectionConfigurationArray{}) - pulumi.RegisterInputType(reflect.TypeOf((*DashboardBodySectionContentInput)(nil)).Elem(), DashboardBodySectionContentArgs{}) pulumi.RegisterOutputType(AnalysisAggregationFunctionOutput{}) pulumi.RegisterOutputType(AnalysisAggregationFunctionPtrOutput{}) pulumi.RegisterOutputType(AnalysisAggregationSortConfigurationOutput{}) @@ -92681,6 +92778,8 @@ func init() { pulumi.RegisterOutputType(AnalysisUnaggregatedFieldArrayOutput{}) pulumi.RegisterOutputType(AnalysisUniqueValuesComputationOutput{}) pulumi.RegisterOutputType(AnalysisUniqueValuesComputationPtrOutput{}) + pulumi.RegisterOutputType(AnalysisValidationStrategyOutput{}) + pulumi.RegisterOutputType(AnalysisValidationStrategyPtrOutput{}) pulumi.RegisterOutputType(AnalysisVisibleRangeOptionsOutput{}) pulumi.RegisterOutputType(AnalysisVisibleRangeOptionsPtrOutput{}) pulumi.RegisterOutputType(AnalysisVisualOutput{}) @@ -92783,5 +92882,4 @@ func init() { pulumi.RegisterOutputType(DashboardBinWidthOptionsPtrOutput{}) pulumi.RegisterOutputType(DashboardBodySectionConfigurationOutput{}) pulumi.RegisterOutputType(DashboardBodySectionConfigurationArrayOutput{}) - pulumi.RegisterOutputType(DashboardBodySectionContentOutput{}) } diff --git a/sdk/go/aws/quicksight/pulumiTypes1.go b/sdk/go/aws/quicksight/pulumiTypes1.go index a7f5b5778a..812e71fb3f 100644 --- a/sdk/go/aws/quicksight/pulumiTypes1.go +++ b/sdk/go/aws/quicksight/pulumiTypes1.go @@ -14,6 +14,67 @@ import ( var _ = internal.GetEnvOrDefault +type DashboardBodySectionContent struct { + Layout *DashboardSectionLayoutConfiguration `pulumi:"layout"` +} + +// DashboardBodySectionContentInput is an input type that accepts DashboardBodySectionContentArgs and DashboardBodySectionContentOutput values. +// You can construct a concrete instance of `DashboardBodySectionContentInput` via: +// +// DashboardBodySectionContentArgs{...} +type DashboardBodySectionContentInput interface { + pulumi.Input + + ToDashboardBodySectionContentOutput() DashboardBodySectionContentOutput + ToDashboardBodySectionContentOutputWithContext(context.Context) DashboardBodySectionContentOutput +} + +type DashboardBodySectionContentArgs struct { + Layout DashboardSectionLayoutConfigurationPtrInput `pulumi:"layout"` +} + +func (DashboardBodySectionContentArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DashboardBodySectionContent)(nil)).Elem() +} + +func (i DashboardBodySectionContentArgs) ToDashboardBodySectionContentOutput() DashboardBodySectionContentOutput { + return i.ToDashboardBodySectionContentOutputWithContext(context.Background()) +} + +func (i DashboardBodySectionContentArgs) ToDashboardBodySectionContentOutputWithContext(ctx context.Context) DashboardBodySectionContentOutput { + return pulumi.ToOutputWithContext(ctx, i).(DashboardBodySectionContentOutput) +} + +func (i DashboardBodySectionContentArgs) ToOutput(ctx context.Context) pulumix.Output[DashboardBodySectionContent] { + return pulumix.Output[DashboardBodySectionContent]{ + OutputState: i.ToDashboardBodySectionContentOutputWithContext(ctx).OutputState, + } +} + +type DashboardBodySectionContentOutput struct{ *pulumi.OutputState } + +func (DashboardBodySectionContentOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DashboardBodySectionContent)(nil)).Elem() +} + +func (o DashboardBodySectionContentOutput) ToDashboardBodySectionContentOutput() DashboardBodySectionContentOutput { + return o +} + +func (o DashboardBodySectionContentOutput) ToDashboardBodySectionContentOutputWithContext(ctx context.Context) DashboardBodySectionContentOutput { + return o +} + +func (o DashboardBodySectionContentOutput) ToOutput(ctx context.Context) pulumix.Output[DashboardBodySectionContent] { + return pulumix.Output[DashboardBodySectionContent]{ + OutputState: o.OutputState, + } +} + +func (o DashboardBodySectionContentOutput) Layout() DashboardSectionLayoutConfigurationPtrOutput { + return o.ApplyT(func(v DashboardBodySectionContent) *DashboardSectionLayoutConfiguration { return v.Layout }).(DashboardSectionLayoutConfigurationPtrOutput) +} + type DashboardBoxPlotAggregatedFieldWells struct { GroupBy []DashboardDimensionField `pulumi:"groupBy"` Values []DashboardMeasureField `pulumi:"values"` @@ -77540,6 +77601,163 @@ func (o DashboardUniqueValuesComputationPtrOutput) Name() pulumi.StringPtrOutput }).(pulumi.StringPtrOutput) } +type DashboardValidationStrategy struct { + Mode DashboardValidationStrategyMode `pulumi:"mode"` +} + +// DashboardValidationStrategyInput is an input type that accepts DashboardValidationStrategyArgs and DashboardValidationStrategyOutput values. +// You can construct a concrete instance of `DashboardValidationStrategyInput` via: +// +// DashboardValidationStrategyArgs{...} +type DashboardValidationStrategyInput interface { + pulumi.Input + + ToDashboardValidationStrategyOutput() DashboardValidationStrategyOutput + ToDashboardValidationStrategyOutputWithContext(context.Context) DashboardValidationStrategyOutput +} + +type DashboardValidationStrategyArgs struct { + Mode DashboardValidationStrategyModeInput `pulumi:"mode"` +} + +func (DashboardValidationStrategyArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DashboardValidationStrategy)(nil)).Elem() +} + +func (i DashboardValidationStrategyArgs) ToDashboardValidationStrategyOutput() DashboardValidationStrategyOutput { + return i.ToDashboardValidationStrategyOutputWithContext(context.Background()) +} + +func (i DashboardValidationStrategyArgs) ToDashboardValidationStrategyOutputWithContext(ctx context.Context) DashboardValidationStrategyOutput { + return pulumi.ToOutputWithContext(ctx, i).(DashboardValidationStrategyOutput) +} + +func (i DashboardValidationStrategyArgs) ToOutput(ctx context.Context) pulumix.Output[DashboardValidationStrategy] { + return pulumix.Output[DashboardValidationStrategy]{ + OutputState: i.ToDashboardValidationStrategyOutputWithContext(ctx).OutputState, + } +} + +func (i DashboardValidationStrategyArgs) ToDashboardValidationStrategyPtrOutput() DashboardValidationStrategyPtrOutput { + return i.ToDashboardValidationStrategyPtrOutputWithContext(context.Background()) +} + +func (i DashboardValidationStrategyArgs) ToDashboardValidationStrategyPtrOutputWithContext(ctx context.Context) DashboardValidationStrategyPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DashboardValidationStrategyOutput).ToDashboardValidationStrategyPtrOutputWithContext(ctx) +} + +// DashboardValidationStrategyPtrInput is an input type that accepts DashboardValidationStrategyArgs, DashboardValidationStrategyPtr and DashboardValidationStrategyPtrOutput values. +// You can construct a concrete instance of `DashboardValidationStrategyPtrInput` via: +// +// DashboardValidationStrategyArgs{...} +// +// or: +// +// nil +type DashboardValidationStrategyPtrInput interface { + pulumi.Input + + ToDashboardValidationStrategyPtrOutput() DashboardValidationStrategyPtrOutput + ToDashboardValidationStrategyPtrOutputWithContext(context.Context) DashboardValidationStrategyPtrOutput +} + +type dashboardValidationStrategyPtrType DashboardValidationStrategyArgs + +func DashboardValidationStrategyPtr(v *DashboardValidationStrategyArgs) DashboardValidationStrategyPtrInput { + return (*dashboardValidationStrategyPtrType)(v) +} + +func (*dashboardValidationStrategyPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**DashboardValidationStrategy)(nil)).Elem() +} + +func (i *dashboardValidationStrategyPtrType) ToDashboardValidationStrategyPtrOutput() DashboardValidationStrategyPtrOutput { + return i.ToDashboardValidationStrategyPtrOutputWithContext(context.Background()) +} + +func (i *dashboardValidationStrategyPtrType) ToDashboardValidationStrategyPtrOutputWithContext(ctx context.Context) DashboardValidationStrategyPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DashboardValidationStrategyPtrOutput) +} + +func (i *dashboardValidationStrategyPtrType) ToOutput(ctx context.Context) pulumix.Output[*DashboardValidationStrategy] { + return pulumix.Output[*DashboardValidationStrategy]{ + OutputState: i.ToDashboardValidationStrategyPtrOutputWithContext(ctx).OutputState, + } +} + +type DashboardValidationStrategyOutput struct{ *pulumi.OutputState } + +func (DashboardValidationStrategyOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DashboardValidationStrategy)(nil)).Elem() +} + +func (o DashboardValidationStrategyOutput) ToDashboardValidationStrategyOutput() DashboardValidationStrategyOutput { + return o +} + +func (o DashboardValidationStrategyOutput) ToDashboardValidationStrategyOutputWithContext(ctx context.Context) DashboardValidationStrategyOutput { + return o +} + +func (o DashboardValidationStrategyOutput) ToDashboardValidationStrategyPtrOutput() DashboardValidationStrategyPtrOutput { + return o.ToDashboardValidationStrategyPtrOutputWithContext(context.Background()) +} + +func (o DashboardValidationStrategyOutput) ToDashboardValidationStrategyPtrOutputWithContext(ctx context.Context) DashboardValidationStrategyPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DashboardValidationStrategy) *DashboardValidationStrategy { + return &v + }).(DashboardValidationStrategyPtrOutput) +} + +func (o DashboardValidationStrategyOutput) ToOutput(ctx context.Context) pulumix.Output[DashboardValidationStrategy] { + return pulumix.Output[DashboardValidationStrategy]{ + OutputState: o.OutputState, + } +} + +func (o DashboardValidationStrategyOutput) Mode() DashboardValidationStrategyModeOutput { + return o.ApplyT(func(v DashboardValidationStrategy) DashboardValidationStrategyMode { return v.Mode }).(DashboardValidationStrategyModeOutput) +} + +type DashboardValidationStrategyPtrOutput struct{ *pulumi.OutputState } + +func (DashboardValidationStrategyPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DashboardValidationStrategy)(nil)).Elem() +} + +func (o DashboardValidationStrategyPtrOutput) ToDashboardValidationStrategyPtrOutput() DashboardValidationStrategyPtrOutput { + return o +} + +func (o DashboardValidationStrategyPtrOutput) ToDashboardValidationStrategyPtrOutputWithContext(ctx context.Context) DashboardValidationStrategyPtrOutput { + return o +} + +func (o DashboardValidationStrategyPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*DashboardValidationStrategy] { + return pulumix.Output[*DashboardValidationStrategy]{ + OutputState: o.OutputState, + } +} + +func (o DashboardValidationStrategyPtrOutput) Elem() DashboardValidationStrategyOutput { + return o.ApplyT(func(v *DashboardValidationStrategy) DashboardValidationStrategy { + if v != nil { + return *v + } + var ret DashboardValidationStrategy + return ret + }).(DashboardValidationStrategyOutput) +} + +func (o DashboardValidationStrategyPtrOutput) Mode() DashboardValidationStrategyModePtrOutput { + return o.ApplyT(func(v *DashboardValidationStrategy) *DashboardValidationStrategyMode { + if v == nil { + return nil + } + return &v.Mode + }).(DashboardValidationStrategyModePtrOutput) +} + type DashboardVersion struct { Arn *string `pulumi:"arn"` CreatedTime *string `pulumi:"createdTime"` @@ -90946,388 +91164,8 @@ func (o DataSourceResourcePermissionArrayOutput) Index(i pulumi.IntInput) DataSo }).(DataSourceResourcePermissionOutput) } -//

S3 parameters.

-type DataSourceS3Parameters struct { - ManifestFileLocation DataSourceManifestFileLocation `pulumi:"manifestFileLocation"` - //

Use the RoleArn structure to override an account-wide role for a specific S3 data source. For example, say an account administrator has turned off all S3 access with an account-wide role. The administrator can then use RoleArn to bypass the account-wide role and allow S3 access for the single S3 data source that is specified in the structure, even if the account-wide role forbidding S3 access is still active.

- RoleArn *string `pulumi:"roleArn"` -} - -// DataSourceS3ParametersInput is an input type that accepts DataSourceS3ParametersArgs and DataSourceS3ParametersOutput values. -// You can construct a concrete instance of `DataSourceS3ParametersInput` via: -// -// DataSourceS3ParametersArgs{...} -type DataSourceS3ParametersInput interface { - pulumi.Input - - ToDataSourceS3ParametersOutput() DataSourceS3ParametersOutput - ToDataSourceS3ParametersOutputWithContext(context.Context) DataSourceS3ParametersOutput -} - -//

S3 parameters.

-type DataSourceS3ParametersArgs struct { - ManifestFileLocation DataSourceManifestFileLocationInput `pulumi:"manifestFileLocation"` - //

Use the RoleArn structure to override an account-wide role for a specific S3 data source. For example, say an account administrator has turned off all S3 access with an account-wide role. The administrator can then use RoleArn to bypass the account-wide role and allow S3 access for the single S3 data source that is specified in the structure, even if the account-wide role forbidding S3 access is still active.

- RoleArn pulumi.StringPtrInput `pulumi:"roleArn"` -} - -func (DataSourceS3ParametersArgs) ElementType() reflect.Type { - return reflect.TypeOf((*DataSourceS3Parameters)(nil)).Elem() -} - -func (i DataSourceS3ParametersArgs) ToDataSourceS3ParametersOutput() DataSourceS3ParametersOutput { - return i.ToDataSourceS3ParametersOutputWithContext(context.Background()) -} - -func (i DataSourceS3ParametersArgs) ToDataSourceS3ParametersOutputWithContext(ctx context.Context) DataSourceS3ParametersOutput { - return pulumi.ToOutputWithContext(ctx, i).(DataSourceS3ParametersOutput) -} - -func (i DataSourceS3ParametersArgs) ToOutput(ctx context.Context) pulumix.Output[DataSourceS3Parameters] { - return pulumix.Output[DataSourceS3Parameters]{ - OutputState: i.ToDataSourceS3ParametersOutputWithContext(ctx).OutputState, - } -} - -func (i DataSourceS3ParametersArgs) ToDataSourceS3ParametersPtrOutput() DataSourceS3ParametersPtrOutput { - return i.ToDataSourceS3ParametersPtrOutputWithContext(context.Background()) -} - -func (i DataSourceS3ParametersArgs) ToDataSourceS3ParametersPtrOutputWithContext(ctx context.Context) DataSourceS3ParametersPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(DataSourceS3ParametersOutput).ToDataSourceS3ParametersPtrOutputWithContext(ctx) -} - -// DataSourceS3ParametersPtrInput is an input type that accepts DataSourceS3ParametersArgs, DataSourceS3ParametersPtr and DataSourceS3ParametersPtrOutput values. -// You can construct a concrete instance of `DataSourceS3ParametersPtrInput` via: -// -// DataSourceS3ParametersArgs{...} -// -// or: -// -// nil -type DataSourceS3ParametersPtrInput interface { - pulumi.Input - - ToDataSourceS3ParametersPtrOutput() DataSourceS3ParametersPtrOutput - ToDataSourceS3ParametersPtrOutputWithContext(context.Context) DataSourceS3ParametersPtrOutput -} - -type dataSourceS3ParametersPtrType DataSourceS3ParametersArgs - -func DataSourceS3ParametersPtr(v *DataSourceS3ParametersArgs) DataSourceS3ParametersPtrInput { - return (*dataSourceS3ParametersPtrType)(v) -} - -func (*dataSourceS3ParametersPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**DataSourceS3Parameters)(nil)).Elem() -} - -func (i *dataSourceS3ParametersPtrType) ToDataSourceS3ParametersPtrOutput() DataSourceS3ParametersPtrOutput { - return i.ToDataSourceS3ParametersPtrOutputWithContext(context.Background()) -} - -func (i *dataSourceS3ParametersPtrType) ToDataSourceS3ParametersPtrOutputWithContext(ctx context.Context) DataSourceS3ParametersPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(DataSourceS3ParametersPtrOutput) -} - -func (i *dataSourceS3ParametersPtrType) ToOutput(ctx context.Context) pulumix.Output[*DataSourceS3Parameters] { - return pulumix.Output[*DataSourceS3Parameters]{ - OutputState: i.ToDataSourceS3ParametersPtrOutputWithContext(ctx).OutputState, - } -} - -//

S3 parameters.

-type DataSourceS3ParametersOutput struct{ *pulumi.OutputState } - -func (DataSourceS3ParametersOutput) ElementType() reflect.Type { - return reflect.TypeOf((*DataSourceS3Parameters)(nil)).Elem() -} - -func (o DataSourceS3ParametersOutput) ToDataSourceS3ParametersOutput() DataSourceS3ParametersOutput { - return o -} - -func (o DataSourceS3ParametersOutput) ToDataSourceS3ParametersOutputWithContext(ctx context.Context) DataSourceS3ParametersOutput { - return o -} - -func (o DataSourceS3ParametersOutput) ToDataSourceS3ParametersPtrOutput() DataSourceS3ParametersPtrOutput { - return o.ToDataSourceS3ParametersPtrOutputWithContext(context.Background()) -} - -func (o DataSourceS3ParametersOutput) ToDataSourceS3ParametersPtrOutputWithContext(ctx context.Context) DataSourceS3ParametersPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v DataSourceS3Parameters) *DataSourceS3Parameters { - return &v - }).(DataSourceS3ParametersPtrOutput) -} - -func (o DataSourceS3ParametersOutput) ToOutput(ctx context.Context) pulumix.Output[DataSourceS3Parameters] { - return pulumix.Output[DataSourceS3Parameters]{ - OutputState: o.OutputState, - } -} - -func (o DataSourceS3ParametersOutput) ManifestFileLocation() DataSourceManifestFileLocationOutput { - return o.ApplyT(func(v DataSourceS3Parameters) DataSourceManifestFileLocation { return v.ManifestFileLocation }).(DataSourceManifestFileLocationOutput) -} - -//

Use the RoleArn structure to override an account-wide role for a specific S3 data source. For example, say an account administrator has turned off all S3 access with an account-wide role. The administrator can then use RoleArn to bypass the account-wide role and allow S3 access for the single S3 data source that is specified in the structure, even if the account-wide role forbidding S3 access is still active.

-func (o DataSourceS3ParametersOutput) RoleArn() pulumi.StringPtrOutput { - return o.ApplyT(func(v DataSourceS3Parameters) *string { return v.RoleArn }).(pulumi.StringPtrOutput) -} - -type DataSourceS3ParametersPtrOutput struct{ *pulumi.OutputState } - -func (DataSourceS3ParametersPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**DataSourceS3Parameters)(nil)).Elem() -} - -func (o DataSourceS3ParametersPtrOutput) ToDataSourceS3ParametersPtrOutput() DataSourceS3ParametersPtrOutput { - return o -} - -func (o DataSourceS3ParametersPtrOutput) ToDataSourceS3ParametersPtrOutputWithContext(ctx context.Context) DataSourceS3ParametersPtrOutput { - return o -} - -func (o DataSourceS3ParametersPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*DataSourceS3Parameters] { - return pulumix.Output[*DataSourceS3Parameters]{ - OutputState: o.OutputState, - } -} - -func (o DataSourceS3ParametersPtrOutput) Elem() DataSourceS3ParametersOutput { - return o.ApplyT(func(v *DataSourceS3Parameters) DataSourceS3Parameters { - if v != nil { - return *v - } - var ret DataSourceS3Parameters - return ret - }).(DataSourceS3ParametersOutput) -} - -func (o DataSourceS3ParametersPtrOutput) ManifestFileLocation() DataSourceManifestFileLocationPtrOutput { - return o.ApplyT(func(v *DataSourceS3Parameters) *DataSourceManifestFileLocation { - if v == nil { - return nil - } - return &v.ManifestFileLocation - }).(DataSourceManifestFileLocationPtrOutput) -} - -//

Use the RoleArn structure to override an account-wide role for a specific S3 data source. For example, say an account administrator has turned off all S3 access with an account-wide role. The administrator can then use RoleArn to bypass the account-wide role and allow S3 access for the single S3 data source that is specified in the structure, even if the account-wide role forbidding S3 access is still active.

-func (o DataSourceS3ParametersPtrOutput) RoleArn() pulumi.StringPtrOutput { - return o.ApplyT(func(v *DataSourceS3Parameters) *string { - if v == nil { - return nil - } - return v.RoleArn - }).(pulumi.StringPtrOutput) -} - -//

Snowflake parameters.

-type DataSourceSnowflakeParameters struct { - //

Database.

- Database string `pulumi:"database"` - //

Host.

- Host string `pulumi:"host"` - //

Warehouse.

- Warehouse string `pulumi:"warehouse"` -} - -// DataSourceSnowflakeParametersInput is an input type that accepts DataSourceSnowflakeParametersArgs and DataSourceSnowflakeParametersOutput values. -// You can construct a concrete instance of `DataSourceSnowflakeParametersInput` via: -// -// DataSourceSnowflakeParametersArgs{...} -type DataSourceSnowflakeParametersInput interface { - pulumi.Input - - ToDataSourceSnowflakeParametersOutput() DataSourceSnowflakeParametersOutput - ToDataSourceSnowflakeParametersOutputWithContext(context.Context) DataSourceSnowflakeParametersOutput -} - -//

Snowflake parameters.

-type DataSourceSnowflakeParametersArgs struct { - //

Database.

- Database pulumi.StringInput `pulumi:"database"` - //

Host.

- Host pulumi.StringInput `pulumi:"host"` - //

Warehouse.

- Warehouse pulumi.StringInput `pulumi:"warehouse"` -} - -func (DataSourceSnowflakeParametersArgs) ElementType() reflect.Type { - return reflect.TypeOf((*DataSourceSnowflakeParameters)(nil)).Elem() -} - -func (i DataSourceSnowflakeParametersArgs) ToDataSourceSnowflakeParametersOutput() DataSourceSnowflakeParametersOutput { - return i.ToDataSourceSnowflakeParametersOutputWithContext(context.Background()) -} - -func (i DataSourceSnowflakeParametersArgs) ToDataSourceSnowflakeParametersOutputWithContext(ctx context.Context) DataSourceSnowflakeParametersOutput { - return pulumi.ToOutputWithContext(ctx, i).(DataSourceSnowflakeParametersOutput) -} - -func (i DataSourceSnowflakeParametersArgs) ToOutput(ctx context.Context) pulumix.Output[DataSourceSnowflakeParameters] { - return pulumix.Output[DataSourceSnowflakeParameters]{ - OutputState: i.ToDataSourceSnowflakeParametersOutputWithContext(ctx).OutputState, - } -} - -func (i DataSourceSnowflakeParametersArgs) ToDataSourceSnowflakeParametersPtrOutput() DataSourceSnowflakeParametersPtrOutput { - return i.ToDataSourceSnowflakeParametersPtrOutputWithContext(context.Background()) -} - -func (i DataSourceSnowflakeParametersArgs) ToDataSourceSnowflakeParametersPtrOutputWithContext(ctx context.Context) DataSourceSnowflakeParametersPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(DataSourceSnowflakeParametersOutput).ToDataSourceSnowflakeParametersPtrOutputWithContext(ctx) -} - -// DataSourceSnowflakeParametersPtrInput is an input type that accepts DataSourceSnowflakeParametersArgs, DataSourceSnowflakeParametersPtr and DataSourceSnowflakeParametersPtrOutput values. -// You can construct a concrete instance of `DataSourceSnowflakeParametersPtrInput` via: -// -// DataSourceSnowflakeParametersArgs{...} -// -// or: -// -// nil -type DataSourceSnowflakeParametersPtrInput interface { - pulumi.Input - - ToDataSourceSnowflakeParametersPtrOutput() DataSourceSnowflakeParametersPtrOutput - ToDataSourceSnowflakeParametersPtrOutputWithContext(context.Context) DataSourceSnowflakeParametersPtrOutput -} - -type dataSourceSnowflakeParametersPtrType DataSourceSnowflakeParametersArgs - -func DataSourceSnowflakeParametersPtr(v *DataSourceSnowflakeParametersArgs) DataSourceSnowflakeParametersPtrInput { - return (*dataSourceSnowflakeParametersPtrType)(v) -} - -func (*dataSourceSnowflakeParametersPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**DataSourceSnowflakeParameters)(nil)).Elem() -} - -func (i *dataSourceSnowflakeParametersPtrType) ToDataSourceSnowflakeParametersPtrOutput() DataSourceSnowflakeParametersPtrOutput { - return i.ToDataSourceSnowflakeParametersPtrOutputWithContext(context.Background()) -} - -func (i *dataSourceSnowflakeParametersPtrType) ToDataSourceSnowflakeParametersPtrOutputWithContext(ctx context.Context) DataSourceSnowflakeParametersPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(DataSourceSnowflakeParametersPtrOutput) -} - -func (i *dataSourceSnowflakeParametersPtrType) ToOutput(ctx context.Context) pulumix.Output[*DataSourceSnowflakeParameters] { - return pulumix.Output[*DataSourceSnowflakeParameters]{ - OutputState: i.ToDataSourceSnowflakeParametersPtrOutputWithContext(ctx).OutputState, - } -} - -//

Snowflake parameters.

-type DataSourceSnowflakeParametersOutput struct{ *pulumi.OutputState } - -func (DataSourceSnowflakeParametersOutput) ElementType() reflect.Type { - return reflect.TypeOf((*DataSourceSnowflakeParameters)(nil)).Elem() -} - -func (o DataSourceSnowflakeParametersOutput) ToDataSourceSnowflakeParametersOutput() DataSourceSnowflakeParametersOutput { - return o -} - -func (o DataSourceSnowflakeParametersOutput) ToDataSourceSnowflakeParametersOutputWithContext(ctx context.Context) DataSourceSnowflakeParametersOutput { - return o -} - -func (o DataSourceSnowflakeParametersOutput) ToDataSourceSnowflakeParametersPtrOutput() DataSourceSnowflakeParametersPtrOutput { - return o.ToDataSourceSnowflakeParametersPtrOutputWithContext(context.Background()) -} - -func (o DataSourceSnowflakeParametersOutput) ToDataSourceSnowflakeParametersPtrOutputWithContext(ctx context.Context) DataSourceSnowflakeParametersPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v DataSourceSnowflakeParameters) *DataSourceSnowflakeParameters { - return &v - }).(DataSourceSnowflakeParametersPtrOutput) -} - -func (o DataSourceSnowflakeParametersOutput) ToOutput(ctx context.Context) pulumix.Output[DataSourceSnowflakeParameters] { - return pulumix.Output[DataSourceSnowflakeParameters]{ - OutputState: o.OutputState, - } -} - -//

Database.

-func (o DataSourceSnowflakeParametersOutput) Database() pulumi.StringOutput { - return o.ApplyT(func(v DataSourceSnowflakeParameters) string { return v.Database }).(pulumi.StringOutput) -} - -//

Host.

-func (o DataSourceSnowflakeParametersOutput) Host() pulumi.StringOutput { - return o.ApplyT(func(v DataSourceSnowflakeParameters) string { return v.Host }).(pulumi.StringOutput) -} - -//

Warehouse.

-func (o DataSourceSnowflakeParametersOutput) Warehouse() pulumi.StringOutput { - return o.ApplyT(func(v DataSourceSnowflakeParameters) string { return v.Warehouse }).(pulumi.StringOutput) -} - -type DataSourceSnowflakeParametersPtrOutput struct{ *pulumi.OutputState } - -func (DataSourceSnowflakeParametersPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**DataSourceSnowflakeParameters)(nil)).Elem() -} - -func (o DataSourceSnowflakeParametersPtrOutput) ToDataSourceSnowflakeParametersPtrOutput() DataSourceSnowflakeParametersPtrOutput { - return o -} - -func (o DataSourceSnowflakeParametersPtrOutput) ToDataSourceSnowflakeParametersPtrOutputWithContext(ctx context.Context) DataSourceSnowflakeParametersPtrOutput { - return o -} - -func (o DataSourceSnowflakeParametersPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*DataSourceSnowflakeParameters] { - return pulumix.Output[*DataSourceSnowflakeParameters]{ - OutputState: o.OutputState, - } -} - -func (o DataSourceSnowflakeParametersPtrOutput) Elem() DataSourceSnowflakeParametersOutput { - return o.ApplyT(func(v *DataSourceSnowflakeParameters) DataSourceSnowflakeParameters { - if v != nil { - return *v - } - var ret DataSourceSnowflakeParameters - return ret - }).(DataSourceSnowflakeParametersOutput) -} - -//

Database.

-func (o DataSourceSnowflakeParametersPtrOutput) Database() pulumi.StringPtrOutput { - return o.ApplyT(func(v *DataSourceSnowflakeParameters) *string { - if v == nil { - return nil - } - return &v.Database - }).(pulumi.StringPtrOutput) -} - -//

Host.

-func (o DataSourceSnowflakeParametersPtrOutput) Host() pulumi.StringPtrOutput { - return o.ApplyT(func(v *DataSourceSnowflakeParameters) *string { - if v == nil { - return nil - } - return &v.Host - }).(pulumi.StringPtrOutput) -} - -//

Warehouse.

-func (o DataSourceSnowflakeParametersPtrOutput) Warehouse() pulumi.StringPtrOutput { - return o.ApplyT(func(v *DataSourceSnowflakeParameters) *string { - if v == nil { - return nil - } - return &v.Warehouse - }).(pulumi.StringPtrOutput) -} - func init() { + pulumi.RegisterInputType(reflect.TypeOf((*DashboardBodySectionContentInput)(nil)).Elem(), DashboardBodySectionContentArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DashboardBoxPlotAggregatedFieldWellsInput)(nil)).Elem(), DashboardBoxPlotAggregatedFieldWellsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DashboardBoxPlotAggregatedFieldWellsPtrInput)(nil)).Elem(), DashboardBoxPlotAggregatedFieldWellsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DashboardBoxPlotChartConfigurationInput)(nil)).Elem(), DashboardBoxPlotChartConfigurationArgs{}) @@ -92170,6 +92008,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*DashboardUnaggregatedFieldArrayInput)(nil)).Elem(), DashboardUnaggregatedFieldArray{}) pulumi.RegisterInputType(reflect.TypeOf((*DashboardUniqueValuesComputationInput)(nil)).Elem(), DashboardUniqueValuesComputationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DashboardUniqueValuesComputationPtrInput)(nil)).Elem(), DashboardUniqueValuesComputationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DashboardValidationStrategyInput)(nil)).Elem(), DashboardValidationStrategyArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DashboardValidationStrategyPtrInput)(nil)).Elem(), DashboardValidationStrategyArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DashboardVersionDefinitionInput)(nil)).Elem(), DashboardVersionDefinitionArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DashboardVersionDefinitionPtrInput)(nil)).Elem(), DashboardVersionDefinitionArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DashboardVisibleRangeOptionsInput)(nil)).Elem(), DashboardVisibleRangeOptionsArgs{}) @@ -92311,10 +92151,7 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*DataSourceRedshiftParametersPtrInput)(nil)).Elem(), DataSourceRedshiftParametersArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DataSourceResourcePermissionInput)(nil)).Elem(), DataSourceResourcePermissionArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DataSourceResourcePermissionArrayInput)(nil)).Elem(), DataSourceResourcePermissionArray{}) - pulumi.RegisterInputType(reflect.TypeOf((*DataSourceS3ParametersInput)(nil)).Elem(), DataSourceS3ParametersArgs{}) - pulumi.RegisterInputType(reflect.TypeOf((*DataSourceS3ParametersPtrInput)(nil)).Elem(), DataSourceS3ParametersArgs{}) - pulumi.RegisterInputType(reflect.TypeOf((*DataSourceSnowflakeParametersInput)(nil)).Elem(), DataSourceSnowflakeParametersArgs{}) - pulumi.RegisterInputType(reflect.TypeOf((*DataSourceSnowflakeParametersPtrInput)(nil)).Elem(), DataSourceSnowflakeParametersArgs{}) + pulumi.RegisterOutputType(DashboardBodySectionContentOutput{}) pulumi.RegisterOutputType(DashboardBoxPlotAggregatedFieldWellsOutput{}) pulumi.RegisterOutputType(DashboardBoxPlotAggregatedFieldWellsPtrOutput{}) pulumi.RegisterOutputType(DashboardBoxPlotChartConfigurationOutput{}) @@ -93163,6 +93000,8 @@ func init() { pulumi.RegisterOutputType(DashboardUnaggregatedFieldArrayOutput{}) pulumi.RegisterOutputType(DashboardUniqueValuesComputationOutput{}) pulumi.RegisterOutputType(DashboardUniqueValuesComputationPtrOutput{}) + pulumi.RegisterOutputType(DashboardValidationStrategyOutput{}) + pulumi.RegisterOutputType(DashboardValidationStrategyPtrOutput{}) pulumi.RegisterOutputType(DashboardVersionOutput{}) pulumi.RegisterOutputType(DashboardVersionPtrOutput{}) pulumi.RegisterOutputType(DashboardVersionDefinitionOutput{}) @@ -93308,8 +93147,4 @@ func init() { pulumi.RegisterOutputType(DataSourceRedshiftParametersPtrOutput{}) pulumi.RegisterOutputType(DataSourceResourcePermissionOutput{}) pulumi.RegisterOutputType(DataSourceResourcePermissionArrayOutput{}) - pulumi.RegisterOutputType(DataSourceS3ParametersOutput{}) - pulumi.RegisterOutputType(DataSourceS3ParametersPtrOutput{}) - pulumi.RegisterOutputType(DataSourceSnowflakeParametersOutput{}) - pulumi.RegisterOutputType(DataSourceSnowflakeParametersPtrOutput{}) } diff --git a/sdk/go/aws/quicksight/pulumiTypes2.go b/sdk/go/aws/quicksight/pulumiTypes2.go index b5386f5d40..a8a336f0e0 100644 --- a/sdk/go/aws/quicksight/pulumiTypes2.go +++ b/sdk/go/aws/quicksight/pulumiTypes2.go @@ -14,6 +14,387 @@ import ( var _ = internal.GetEnvOrDefault +//

S3 parameters.

+type DataSourceS3Parameters struct { + ManifestFileLocation DataSourceManifestFileLocation `pulumi:"manifestFileLocation"` + //

Use the RoleArn structure to override an account-wide role for a specific S3 data source. For example, say an account administrator has turned off all S3 access with an account-wide role. The administrator can then use RoleArn to bypass the account-wide role and allow S3 access for the single S3 data source that is specified in the structure, even if the account-wide role forbidding S3 access is still active.

+ RoleArn *string `pulumi:"roleArn"` +} + +// DataSourceS3ParametersInput is an input type that accepts DataSourceS3ParametersArgs and DataSourceS3ParametersOutput values. +// You can construct a concrete instance of `DataSourceS3ParametersInput` via: +// +// DataSourceS3ParametersArgs{...} +type DataSourceS3ParametersInput interface { + pulumi.Input + + ToDataSourceS3ParametersOutput() DataSourceS3ParametersOutput + ToDataSourceS3ParametersOutputWithContext(context.Context) DataSourceS3ParametersOutput +} + +//

S3 parameters.

+type DataSourceS3ParametersArgs struct { + ManifestFileLocation DataSourceManifestFileLocationInput `pulumi:"manifestFileLocation"` + //

Use the RoleArn structure to override an account-wide role for a specific S3 data source. For example, say an account administrator has turned off all S3 access with an account-wide role. The administrator can then use RoleArn to bypass the account-wide role and allow S3 access for the single S3 data source that is specified in the structure, even if the account-wide role forbidding S3 access is still active.

+ RoleArn pulumi.StringPtrInput `pulumi:"roleArn"` +} + +func (DataSourceS3ParametersArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DataSourceS3Parameters)(nil)).Elem() +} + +func (i DataSourceS3ParametersArgs) ToDataSourceS3ParametersOutput() DataSourceS3ParametersOutput { + return i.ToDataSourceS3ParametersOutputWithContext(context.Background()) +} + +func (i DataSourceS3ParametersArgs) ToDataSourceS3ParametersOutputWithContext(ctx context.Context) DataSourceS3ParametersOutput { + return pulumi.ToOutputWithContext(ctx, i).(DataSourceS3ParametersOutput) +} + +func (i DataSourceS3ParametersArgs) ToOutput(ctx context.Context) pulumix.Output[DataSourceS3Parameters] { + return pulumix.Output[DataSourceS3Parameters]{ + OutputState: i.ToDataSourceS3ParametersOutputWithContext(ctx).OutputState, + } +} + +func (i DataSourceS3ParametersArgs) ToDataSourceS3ParametersPtrOutput() DataSourceS3ParametersPtrOutput { + return i.ToDataSourceS3ParametersPtrOutputWithContext(context.Background()) +} + +func (i DataSourceS3ParametersArgs) ToDataSourceS3ParametersPtrOutputWithContext(ctx context.Context) DataSourceS3ParametersPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DataSourceS3ParametersOutput).ToDataSourceS3ParametersPtrOutputWithContext(ctx) +} + +// DataSourceS3ParametersPtrInput is an input type that accepts DataSourceS3ParametersArgs, DataSourceS3ParametersPtr and DataSourceS3ParametersPtrOutput values. +// You can construct a concrete instance of `DataSourceS3ParametersPtrInput` via: +// +// DataSourceS3ParametersArgs{...} +// +// or: +// +// nil +type DataSourceS3ParametersPtrInput interface { + pulumi.Input + + ToDataSourceS3ParametersPtrOutput() DataSourceS3ParametersPtrOutput + ToDataSourceS3ParametersPtrOutputWithContext(context.Context) DataSourceS3ParametersPtrOutput +} + +type dataSourceS3ParametersPtrType DataSourceS3ParametersArgs + +func DataSourceS3ParametersPtr(v *DataSourceS3ParametersArgs) DataSourceS3ParametersPtrInput { + return (*dataSourceS3ParametersPtrType)(v) +} + +func (*dataSourceS3ParametersPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**DataSourceS3Parameters)(nil)).Elem() +} + +func (i *dataSourceS3ParametersPtrType) ToDataSourceS3ParametersPtrOutput() DataSourceS3ParametersPtrOutput { + return i.ToDataSourceS3ParametersPtrOutputWithContext(context.Background()) +} + +func (i *dataSourceS3ParametersPtrType) ToDataSourceS3ParametersPtrOutputWithContext(ctx context.Context) DataSourceS3ParametersPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DataSourceS3ParametersPtrOutput) +} + +func (i *dataSourceS3ParametersPtrType) ToOutput(ctx context.Context) pulumix.Output[*DataSourceS3Parameters] { + return pulumix.Output[*DataSourceS3Parameters]{ + OutputState: i.ToDataSourceS3ParametersPtrOutputWithContext(ctx).OutputState, + } +} + +//

S3 parameters.

+type DataSourceS3ParametersOutput struct{ *pulumi.OutputState } + +func (DataSourceS3ParametersOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DataSourceS3Parameters)(nil)).Elem() +} + +func (o DataSourceS3ParametersOutput) ToDataSourceS3ParametersOutput() DataSourceS3ParametersOutput { + return o +} + +func (o DataSourceS3ParametersOutput) ToDataSourceS3ParametersOutputWithContext(ctx context.Context) DataSourceS3ParametersOutput { + return o +} + +func (o DataSourceS3ParametersOutput) ToDataSourceS3ParametersPtrOutput() DataSourceS3ParametersPtrOutput { + return o.ToDataSourceS3ParametersPtrOutputWithContext(context.Background()) +} + +func (o DataSourceS3ParametersOutput) ToDataSourceS3ParametersPtrOutputWithContext(ctx context.Context) DataSourceS3ParametersPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DataSourceS3Parameters) *DataSourceS3Parameters { + return &v + }).(DataSourceS3ParametersPtrOutput) +} + +func (o DataSourceS3ParametersOutput) ToOutput(ctx context.Context) pulumix.Output[DataSourceS3Parameters] { + return pulumix.Output[DataSourceS3Parameters]{ + OutputState: o.OutputState, + } +} + +func (o DataSourceS3ParametersOutput) ManifestFileLocation() DataSourceManifestFileLocationOutput { + return o.ApplyT(func(v DataSourceS3Parameters) DataSourceManifestFileLocation { return v.ManifestFileLocation }).(DataSourceManifestFileLocationOutput) +} + +//

Use the RoleArn structure to override an account-wide role for a specific S3 data source. For example, say an account administrator has turned off all S3 access with an account-wide role. The administrator can then use RoleArn to bypass the account-wide role and allow S3 access for the single S3 data source that is specified in the structure, even if the account-wide role forbidding S3 access is still active.

+func (o DataSourceS3ParametersOutput) RoleArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v DataSourceS3Parameters) *string { return v.RoleArn }).(pulumi.StringPtrOutput) +} + +type DataSourceS3ParametersPtrOutput struct{ *pulumi.OutputState } + +func (DataSourceS3ParametersPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DataSourceS3Parameters)(nil)).Elem() +} + +func (o DataSourceS3ParametersPtrOutput) ToDataSourceS3ParametersPtrOutput() DataSourceS3ParametersPtrOutput { + return o +} + +func (o DataSourceS3ParametersPtrOutput) ToDataSourceS3ParametersPtrOutputWithContext(ctx context.Context) DataSourceS3ParametersPtrOutput { + return o +} + +func (o DataSourceS3ParametersPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*DataSourceS3Parameters] { + return pulumix.Output[*DataSourceS3Parameters]{ + OutputState: o.OutputState, + } +} + +func (o DataSourceS3ParametersPtrOutput) Elem() DataSourceS3ParametersOutput { + return o.ApplyT(func(v *DataSourceS3Parameters) DataSourceS3Parameters { + if v != nil { + return *v + } + var ret DataSourceS3Parameters + return ret + }).(DataSourceS3ParametersOutput) +} + +func (o DataSourceS3ParametersPtrOutput) ManifestFileLocation() DataSourceManifestFileLocationPtrOutput { + return o.ApplyT(func(v *DataSourceS3Parameters) *DataSourceManifestFileLocation { + if v == nil { + return nil + } + return &v.ManifestFileLocation + }).(DataSourceManifestFileLocationPtrOutput) +} + +//

Use the RoleArn structure to override an account-wide role for a specific S3 data source. For example, say an account administrator has turned off all S3 access with an account-wide role. The administrator can then use RoleArn to bypass the account-wide role and allow S3 access for the single S3 data source that is specified in the structure, even if the account-wide role forbidding S3 access is still active.

+func (o DataSourceS3ParametersPtrOutput) RoleArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v *DataSourceS3Parameters) *string { + if v == nil { + return nil + } + return v.RoleArn + }).(pulumi.StringPtrOutput) +} + +//

Snowflake parameters.

+type DataSourceSnowflakeParameters struct { + //

Database.

+ Database string `pulumi:"database"` + //

Host.

+ Host string `pulumi:"host"` + //

Warehouse.

+ Warehouse string `pulumi:"warehouse"` +} + +// DataSourceSnowflakeParametersInput is an input type that accepts DataSourceSnowflakeParametersArgs and DataSourceSnowflakeParametersOutput values. +// You can construct a concrete instance of `DataSourceSnowflakeParametersInput` via: +// +// DataSourceSnowflakeParametersArgs{...} +type DataSourceSnowflakeParametersInput interface { + pulumi.Input + + ToDataSourceSnowflakeParametersOutput() DataSourceSnowflakeParametersOutput + ToDataSourceSnowflakeParametersOutputWithContext(context.Context) DataSourceSnowflakeParametersOutput +} + +//

Snowflake parameters.

+type DataSourceSnowflakeParametersArgs struct { + //

Database.

+ Database pulumi.StringInput `pulumi:"database"` + //

Host.

+ Host pulumi.StringInput `pulumi:"host"` + //

Warehouse.

+ Warehouse pulumi.StringInput `pulumi:"warehouse"` +} + +func (DataSourceSnowflakeParametersArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DataSourceSnowflakeParameters)(nil)).Elem() +} + +func (i DataSourceSnowflakeParametersArgs) ToDataSourceSnowflakeParametersOutput() DataSourceSnowflakeParametersOutput { + return i.ToDataSourceSnowflakeParametersOutputWithContext(context.Background()) +} + +func (i DataSourceSnowflakeParametersArgs) ToDataSourceSnowflakeParametersOutputWithContext(ctx context.Context) DataSourceSnowflakeParametersOutput { + return pulumi.ToOutputWithContext(ctx, i).(DataSourceSnowflakeParametersOutput) +} + +func (i DataSourceSnowflakeParametersArgs) ToOutput(ctx context.Context) pulumix.Output[DataSourceSnowflakeParameters] { + return pulumix.Output[DataSourceSnowflakeParameters]{ + OutputState: i.ToDataSourceSnowflakeParametersOutputWithContext(ctx).OutputState, + } +} + +func (i DataSourceSnowflakeParametersArgs) ToDataSourceSnowflakeParametersPtrOutput() DataSourceSnowflakeParametersPtrOutput { + return i.ToDataSourceSnowflakeParametersPtrOutputWithContext(context.Background()) +} + +func (i DataSourceSnowflakeParametersArgs) ToDataSourceSnowflakeParametersPtrOutputWithContext(ctx context.Context) DataSourceSnowflakeParametersPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DataSourceSnowflakeParametersOutput).ToDataSourceSnowflakeParametersPtrOutputWithContext(ctx) +} + +// DataSourceSnowflakeParametersPtrInput is an input type that accepts DataSourceSnowflakeParametersArgs, DataSourceSnowflakeParametersPtr and DataSourceSnowflakeParametersPtrOutput values. +// You can construct a concrete instance of `DataSourceSnowflakeParametersPtrInput` via: +// +// DataSourceSnowflakeParametersArgs{...} +// +// or: +// +// nil +type DataSourceSnowflakeParametersPtrInput interface { + pulumi.Input + + ToDataSourceSnowflakeParametersPtrOutput() DataSourceSnowflakeParametersPtrOutput + ToDataSourceSnowflakeParametersPtrOutputWithContext(context.Context) DataSourceSnowflakeParametersPtrOutput +} + +type dataSourceSnowflakeParametersPtrType DataSourceSnowflakeParametersArgs + +func DataSourceSnowflakeParametersPtr(v *DataSourceSnowflakeParametersArgs) DataSourceSnowflakeParametersPtrInput { + return (*dataSourceSnowflakeParametersPtrType)(v) +} + +func (*dataSourceSnowflakeParametersPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**DataSourceSnowflakeParameters)(nil)).Elem() +} + +func (i *dataSourceSnowflakeParametersPtrType) ToDataSourceSnowflakeParametersPtrOutput() DataSourceSnowflakeParametersPtrOutput { + return i.ToDataSourceSnowflakeParametersPtrOutputWithContext(context.Background()) +} + +func (i *dataSourceSnowflakeParametersPtrType) ToDataSourceSnowflakeParametersPtrOutputWithContext(ctx context.Context) DataSourceSnowflakeParametersPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DataSourceSnowflakeParametersPtrOutput) +} + +func (i *dataSourceSnowflakeParametersPtrType) ToOutput(ctx context.Context) pulumix.Output[*DataSourceSnowflakeParameters] { + return pulumix.Output[*DataSourceSnowflakeParameters]{ + OutputState: i.ToDataSourceSnowflakeParametersPtrOutputWithContext(ctx).OutputState, + } +} + +//

Snowflake parameters.

+type DataSourceSnowflakeParametersOutput struct{ *pulumi.OutputState } + +func (DataSourceSnowflakeParametersOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DataSourceSnowflakeParameters)(nil)).Elem() +} + +func (o DataSourceSnowflakeParametersOutput) ToDataSourceSnowflakeParametersOutput() DataSourceSnowflakeParametersOutput { + return o +} + +func (o DataSourceSnowflakeParametersOutput) ToDataSourceSnowflakeParametersOutputWithContext(ctx context.Context) DataSourceSnowflakeParametersOutput { + return o +} + +func (o DataSourceSnowflakeParametersOutput) ToDataSourceSnowflakeParametersPtrOutput() DataSourceSnowflakeParametersPtrOutput { + return o.ToDataSourceSnowflakeParametersPtrOutputWithContext(context.Background()) +} + +func (o DataSourceSnowflakeParametersOutput) ToDataSourceSnowflakeParametersPtrOutputWithContext(ctx context.Context) DataSourceSnowflakeParametersPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DataSourceSnowflakeParameters) *DataSourceSnowflakeParameters { + return &v + }).(DataSourceSnowflakeParametersPtrOutput) +} + +func (o DataSourceSnowflakeParametersOutput) ToOutput(ctx context.Context) pulumix.Output[DataSourceSnowflakeParameters] { + return pulumix.Output[DataSourceSnowflakeParameters]{ + OutputState: o.OutputState, + } +} + +//

Database.

+func (o DataSourceSnowflakeParametersOutput) Database() pulumi.StringOutput { + return o.ApplyT(func(v DataSourceSnowflakeParameters) string { return v.Database }).(pulumi.StringOutput) +} + +//

Host.

+func (o DataSourceSnowflakeParametersOutput) Host() pulumi.StringOutput { + return o.ApplyT(func(v DataSourceSnowflakeParameters) string { return v.Host }).(pulumi.StringOutput) +} + +//

Warehouse.

+func (o DataSourceSnowflakeParametersOutput) Warehouse() pulumi.StringOutput { + return o.ApplyT(func(v DataSourceSnowflakeParameters) string { return v.Warehouse }).(pulumi.StringOutput) +} + +type DataSourceSnowflakeParametersPtrOutput struct{ *pulumi.OutputState } + +func (DataSourceSnowflakeParametersPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DataSourceSnowflakeParameters)(nil)).Elem() +} + +func (o DataSourceSnowflakeParametersPtrOutput) ToDataSourceSnowflakeParametersPtrOutput() DataSourceSnowflakeParametersPtrOutput { + return o +} + +func (o DataSourceSnowflakeParametersPtrOutput) ToDataSourceSnowflakeParametersPtrOutputWithContext(ctx context.Context) DataSourceSnowflakeParametersPtrOutput { + return o +} + +func (o DataSourceSnowflakeParametersPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*DataSourceSnowflakeParameters] { + return pulumix.Output[*DataSourceSnowflakeParameters]{ + OutputState: o.OutputState, + } +} + +func (o DataSourceSnowflakeParametersPtrOutput) Elem() DataSourceSnowflakeParametersOutput { + return o.ApplyT(func(v *DataSourceSnowflakeParameters) DataSourceSnowflakeParameters { + if v != nil { + return *v + } + var ret DataSourceSnowflakeParameters + return ret + }).(DataSourceSnowflakeParametersOutput) +} + +//

Database.

+func (o DataSourceSnowflakeParametersPtrOutput) Database() pulumi.StringPtrOutput { + return o.ApplyT(func(v *DataSourceSnowflakeParameters) *string { + if v == nil { + return nil + } + return &v.Database + }).(pulumi.StringPtrOutput) +} + +//

Host.

+func (o DataSourceSnowflakeParametersPtrOutput) Host() pulumi.StringPtrOutput { + return o.ApplyT(func(v *DataSourceSnowflakeParameters) *string { + if v == nil { + return nil + } + return &v.Host + }).(pulumi.StringPtrOutput) +} + +//

Warehouse.

+func (o DataSourceSnowflakeParametersPtrOutput) Warehouse() pulumi.StringPtrOutput { + return o.ApplyT(func(v *DataSourceSnowflakeParameters) *string { + if v == nil { + return nil + } + return &v.Warehouse + }).(pulumi.StringPtrOutput) +} + //

Spark parameters.

type DataSourceSparkParameters struct { //

Host.

@@ -82860,6 +83241,163 @@ func (o TemplateUniqueValuesComputationPtrOutput) Name() pulumi.StringPtrOutput }).(pulumi.StringPtrOutput) } +type TemplateValidationStrategy struct { + Mode TemplateValidationStrategyMode `pulumi:"mode"` +} + +// TemplateValidationStrategyInput is an input type that accepts TemplateValidationStrategyArgs and TemplateValidationStrategyOutput values. +// You can construct a concrete instance of `TemplateValidationStrategyInput` via: +// +// TemplateValidationStrategyArgs{...} +type TemplateValidationStrategyInput interface { + pulumi.Input + + ToTemplateValidationStrategyOutput() TemplateValidationStrategyOutput + ToTemplateValidationStrategyOutputWithContext(context.Context) TemplateValidationStrategyOutput +} + +type TemplateValidationStrategyArgs struct { + Mode TemplateValidationStrategyModeInput `pulumi:"mode"` +} + +func (TemplateValidationStrategyArgs) ElementType() reflect.Type { + return reflect.TypeOf((*TemplateValidationStrategy)(nil)).Elem() +} + +func (i TemplateValidationStrategyArgs) ToTemplateValidationStrategyOutput() TemplateValidationStrategyOutput { + return i.ToTemplateValidationStrategyOutputWithContext(context.Background()) +} + +func (i TemplateValidationStrategyArgs) ToTemplateValidationStrategyOutputWithContext(ctx context.Context) TemplateValidationStrategyOutput { + return pulumi.ToOutputWithContext(ctx, i).(TemplateValidationStrategyOutput) +} + +func (i TemplateValidationStrategyArgs) ToOutput(ctx context.Context) pulumix.Output[TemplateValidationStrategy] { + return pulumix.Output[TemplateValidationStrategy]{ + OutputState: i.ToTemplateValidationStrategyOutputWithContext(ctx).OutputState, + } +} + +func (i TemplateValidationStrategyArgs) ToTemplateValidationStrategyPtrOutput() TemplateValidationStrategyPtrOutput { + return i.ToTemplateValidationStrategyPtrOutputWithContext(context.Background()) +} + +func (i TemplateValidationStrategyArgs) ToTemplateValidationStrategyPtrOutputWithContext(ctx context.Context) TemplateValidationStrategyPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(TemplateValidationStrategyOutput).ToTemplateValidationStrategyPtrOutputWithContext(ctx) +} + +// TemplateValidationStrategyPtrInput is an input type that accepts TemplateValidationStrategyArgs, TemplateValidationStrategyPtr and TemplateValidationStrategyPtrOutput values. +// You can construct a concrete instance of `TemplateValidationStrategyPtrInput` via: +// +// TemplateValidationStrategyArgs{...} +// +// or: +// +// nil +type TemplateValidationStrategyPtrInput interface { + pulumi.Input + + ToTemplateValidationStrategyPtrOutput() TemplateValidationStrategyPtrOutput + ToTemplateValidationStrategyPtrOutputWithContext(context.Context) TemplateValidationStrategyPtrOutput +} + +type templateValidationStrategyPtrType TemplateValidationStrategyArgs + +func TemplateValidationStrategyPtr(v *TemplateValidationStrategyArgs) TemplateValidationStrategyPtrInput { + return (*templateValidationStrategyPtrType)(v) +} + +func (*templateValidationStrategyPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**TemplateValidationStrategy)(nil)).Elem() +} + +func (i *templateValidationStrategyPtrType) ToTemplateValidationStrategyPtrOutput() TemplateValidationStrategyPtrOutput { + return i.ToTemplateValidationStrategyPtrOutputWithContext(context.Background()) +} + +func (i *templateValidationStrategyPtrType) ToTemplateValidationStrategyPtrOutputWithContext(ctx context.Context) TemplateValidationStrategyPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(TemplateValidationStrategyPtrOutput) +} + +func (i *templateValidationStrategyPtrType) ToOutput(ctx context.Context) pulumix.Output[*TemplateValidationStrategy] { + return pulumix.Output[*TemplateValidationStrategy]{ + OutputState: i.ToTemplateValidationStrategyPtrOutputWithContext(ctx).OutputState, + } +} + +type TemplateValidationStrategyOutput struct{ *pulumi.OutputState } + +func (TemplateValidationStrategyOutput) ElementType() reflect.Type { + return reflect.TypeOf((*TemplateValidationStrategy)(nil)).Elem() +} + +func (o TemplateValidationStrategyOutput) ToTemplateValidationStrategyOutput() TemplateValidationStrategyOutput { + return o +} + +func (o TemplateValidationStrategyOutput) ToTemplateValidationStrategyOutputWithContext(ctx context.Context) TemplateValidationStrategyOutput { + return o +} + +func (o TemplateValidationStrategyOutput) ToTemplateValidationStrategyPtrOutput() TemplateValidationStrategyPtrOutput { + return o.ToTemplateValidationStrategyPtrOutputWithContext(context.Background()) +} + +func (o TemplateValidationStrategyOutput) ToTemplateValidationStrategyPtrOutputWithContext(ctx context.Context) TemplateValidationStrategyPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v TemplateValidationStrategy) *TemplateValidationStrategy { + return &v + }).(TemplateValidationStrategyPtrOutput) +} + +func (o TemplateValidationStrategyOutput) ToOutput(ctx context.Context) pulumix.Output[TemplateValidationStrategy] { + return pulumix.Output[TemplateValidationStrategy]{ + OutputState: o.OutputState, + } +} + +func (o TemplateValidationStrategyOutput) Mode() TemplateValidationStrategyModeOutput { + return o.ApplyT(func(v TemplateValidationStrategy) TemplateValidationStrategyMode { return v.Mode }).(TemplateValidationStrategyModeOutput) +} + +type TemplateValidationStrategyPtrOutput struct{ *pulumi.OutputState } + +func (TemplateValidationStrategyPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**TemplateValidationStrategy)(nil)).Elem() +} + +func (o TemplateValidationStrategyPtrOutput) ToTemplateValidationStrategyPtrOutput() TemplateValidationStrategyPtrOutput { + return o +} + +func (o TemplateValidationStrategyPtrOutput) ToTemplateValidationStrategyPtrOutputWithContext(ctx context.Context) TemplateValidationStrategyPtrOutput { + return o +} + +func (o TemplateValidationStrategyPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*TemplateValidationStrategy] { + return pulumix.Output[*TemplateValidationStrategy]{ + OutputState: o.OutputState, + } +} + +func (o TemplateValidationStrategyPtrOutput) Elem() TemplateValidationStrategyOutput { + return o.ApplyT(func(v *TemplateValidationStrategy) TemplateValidationStrategy { + if v != nil { + return *v + } + var ret TemplateValidationStrategy + return ret + }).(TemplateValidationStrategyOutput) +} + +func (o TemplateValidationStrategyPtrOutput) Mode() TemplateValidationStrategyModePtrOutput { + return o.ApplyT(func(v *TemplateValidationStrategy) *TemplateValidationStrategyMode { + if v == nil { + return nil + } + return &v.Mode + }).(TemplateValidationStrategyModePtrOutput) +} + type TemplateVersion struct { CreatedTime *string `pulumi:"createdTime"` DataSetConfigurations []TemplateDataSetConfiguration `pulumi:"dataSetConfigurations"` @@ -90120,475 +90658,11 @@ func (o TopicCategoryFilterPtrOutput) Inverse() pulumi.BoolPtrOutput { }).(pulumi.BoolPtrOutput) } -type TopicCategoryFilterConstant struct { - CollectiveConstant *TopicCollectiveConstant `pulumi:"collectiveConstant"` - ConstantType *TopicConstantType `pulumi:"constantType"` - SingularConstant *string `pulumi:"singularConstant"` -} - -// TopicCategoryFilterConstantInput is an input type that accepts TopicCategoryFilterConstantArgs and TopicCategoryFilterConstantOutput values. -// You can construct a concrete instance of `TopicCategoryFilterConstantInput` via: -// -// TopicCategoryFilterConstantArgs{...} -type TopicCategoryFilterConstantInput interface { - pulumi.Input - - ToTopicCategoryFilterConstantOutput() TopicCategoryFilterConstantOutput - ToTopicCategoryFilterConstantOutputWithContext(context.Context) TopicCategoryFilterConstantOutput -} - -type TopicCategoryFilterConstantArgs struct { - CollectiveConstant TopicCollectiveConstantPtrInput `pulumi:"collectiveConstant"` - ConstantType TopicConstantTypePtrInput `pulumi:"constantType"` - SingularConstant pulumi.StringPtrInput `pulumi:"singularConstant"` -} - -func (TopicCategoryFilterConstantArgs) ElementType() reflect.Type { - return reflect.TypeOf((*TopicCategoryFilterConstant)(nil)).Elem() -} - -func (i TopicCategoryFilterConstantArgs) ToTopicCategoryFilterConstantOutput() TopicCategoryFilterConstantOutput { - return i.ToTopicCategoryFilterConstantOutputWithContext(context.Background()) -} - -func (i TopicCategoryFilterConstantArgs) ToTopicCategoryFilterConstantOutputWithContext(ctx context.Context) TopicCategoryFilterConstantOutput { - return pulumi.ToOutputWithContext(ctx, i).(TopicCategoryFilterConstantOutput) -} - -func (i TopicCategoryFilterConstantArgs) ToOutput(ctx context.Context) pulumix.Output[TopicCategoryFilterConstant] { - return pulumix.Output[TopicCategoryFilterConstant]{ - OutputState: i.ToTopicCategoryFilterConstantOutputWithContext(ctx).OutputState, - } -} - -func (i TopicCategoryFilterConstantArgs) ToTopicCategoryFilterConstantPtrOutput() TopicCategoryFilterConstantPtrOutput { - return i.ToTopicCategoryFilterConstantPtrOutputWithContext(context.Background()) -} - -func (i TopicCategoryFilterConstantArgs) ToTopicCategoryFilterConstantPtrOutputWithContext(ctx context.Context) TopicCategoryFilterConstantPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(TopicCategoryFilterConstantOutput).ToTopicCategoryFilterConstantPtrOutputWithContext(ctx) -} - -// TopicCategoryFilterConstantPtrInput is an input type that accepts TopicCategoryFilterConstantArgs, TopicCategoryFilterConstantPtr and TopicCategoryFilterConstantPtrOutput values. -// You can construct a concrete instance of `TopicCategoryFilterConstantPtrInput` via: -// -// TopicCategoryFilterConstantArgs{...} -// -// or: -// -// nil -type TopicCategoryFilterConstantPtrInput interface { - pulumi.Input - - ToTopicCategoryFilterConstantPtrOutput() TopicCategoryFilterConstantPtrOutput - ToTopicCategoryFilterConstantPtrOutputWithContext(context.Context) TopicCategoryFilterConstantPtrOutput -} - -type topicCategoryFilterConstantPtrType TopicCategoryFilterConstantArgs - -func TopicCategoryFilterConstantPtr(v *TopicCategoryFilterConstantArgs) TopicCategoryFilterConstantPtrInput { - return (*topicCategoryFilterConstantPtrType)(v) -} - -func (*topicCategoryFilterConstantPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**TopicCategoryFilterConstant)(nil)).Elem() -} - -func (i *topicCategoryFilterConstantPtrType) ToTopicCategoryFilterConstantPtrOutput() TopicCategoryFilterConstantPtrOutput { - return i.ToTopicCategoryFilterConstantPtrOutputWithContext(context.Background()) -} - -func (i *topicCategoryFilterConstantPtrType) ToTopicCategoryFilterConstantPtrOutputWithContext(ctx context.Context) TopicCategoryFilterConstantPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(TopicCategoryFilterConstantPtrOutput) -} - -func (i *topicCategoryFilterConstantPtrType) ToOutput(ctx context.Context) pulumix.Output[*TopicCategoryFilterConstant] { - return pulumix.Output[*TopicCategoryFilterConstant]{ - OutputState: i.ToTopicCategoryFilterConstantPtrOutputWithContext(ctx).OutputState, - } -} - -type TopicCategoryFilterConstantOutput struct{ *pulumi.OutputState } - -func (TopicCategoryFilterConstantOutput) ElementType() reflect.Type { - return reflect.TypeOf((*TopicCategoryFilterConstant)(nil)).Elem() -} - -func (o TopicCategoryFilterConstantOutput) ToTopicCategoryFilterConstantOutput() TopicCategoryFilterConstantOutput { - return o -} - -func (o TopicCategoryFilterConstantOutput) ToTopicCategoryFilterConstantOutputWithContext(ctx context.Context) TopicCategoryFilterConstantOutput { - return o -} - -func (o TopicCategoryFilterConstantOutput) ToTopicCategoryFilterConstantPtrOutput() TopicCategoryFilterConstantPtrOutput { - return o.ToTopicCategoryFilterConstantPtrOutputWithContext(context.Background()) -} - -func (o TopicCategoryFilterConstantOutput) ToTopicCategoryFilterConstantPtrOutputWithContext(ctx context.Context) TopicCategoryFilterConstantPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v TopicCategoryFilterConstant) *TopicCategoryFilterConstant { - return &v - }).(TopicCategoryFilterConstantPtrOutput) -} - -func (o TopicCategoryFilterConstantOutput) ToOutput(ctx context.Context) pulumix.Output[TopicCategoryFilterConstant] { - return pulumix.Output[TopicCategoryFilterConstant]{ - OutputState: o.OutputState, - } -} - -func (o TopicCategoryFilterConstantOutput) CollectiveConstant() TopicCollectiveConstantPtrOutput { - return o.ApplyT(func(v TopicCategoryFilterConstant) *TopicCollectiveConstant { return v.CollectiveConstant }).(TopicCollectiveConstantPtrOutput) -} - -func (o TopicCategoryFilterConstantOutput) ConstantType() TopicConstantTypePtrOutput { - return o.ApplyT(func(v TopicCategoryFilterConstant) *TopicConstantType { return v.ConstantType }).(TopicConstantTypePtrOutput) -} - -func (o TopicCategoryFilterConstantOutput) SingularConstant() pulumi.StringPtrOutput { - return o.ApplyT(func(v TopicCategoryFilterConstant) *string { return v.SingularConstant }).(pulumi.StringPtrOutput) -} - -type TopicCategoryFilterConstantPtrOutput struct{ *pulumi.OutputState } - -func (TopicCategoryFilterConstantPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**TopicCategoryFilterConstant)(nil)).Elem() -} - -func (o TopicCategoryFilterConstantPtrOutput) ToTopicCategoryFilterConstantPtrOutput() TopicCategoryFilterConstantPtrOutput { - return o -} - -func (o TopicCategoryFilterConstantPtrOutput) ToTopicCategoryFilterConstantPtrOutputWithContext(ctx context.Context) TopicCategoryFilterConstantPtrOutput { - return o -} - -func (o TopicCategoryFilterConstantPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*TopicCategoryFilterConstant] { - return pulumix.Output[*TopicCategoryFilterConstant]{ - OutputState: o.OutputState, - } -} - -func (o TopicCategoryFilterConstantPtrOutput) Elem() TopicCategoryFilterConstantOutput { - return o.ApplyT(func(v *TopicCategoryFilterConstant) TopicCategoryFilterConstant { - if v != nil { - return *v - } - var ret TopicCategoryFilterConstant - return ret - }).(TopicCategoryFilterConstantOutput) -} - -func (o TopicCategoryFilterConstantPtrOutput) CollectiveConstant() TopicCollectiveConstantPtrOutput { - return o.ApplyT(func(v *TopicCategoryFilterConstant) *TopicCollectiveConstant { - if v == nil { - return nil - } - return v.CollectiveConstant - }).(TopicCollectiveConstantPtrOutput) -} - -func (o TopicCategoryFilterConstantPtrOutput) ConstantType() TopicConstantTypePtrOutput { - return o.ApplyT(func(v *TopicCategoryFilterConstant) *TopicConstantType { - if v == nil { - return nil - } - return v.ConstantType - }).(TopicConstantTypePtrOutput) -} - -func (o TopicCategoryFilterConstantPtrOutput) SingularConstant() pulumi.StringPtrOutput { - return o.ApplyT(func(v *TopicCategoryFilterConstant) *string { - if v == nil { - return nil - } - return v.SingularConstant - }).(pulumi.StringPtrOutput) -} - -type TopicCellValueSynonym struct { - CellValue *string `pulumi:"cellValue"` - Synonyms []string `pulumi:"synonyms"` -} - -// TopicCellValueSynonymInput is an input type that accepts TopicCellValueSynonymArgs and TopicCellValueSynonymOutput values. -// You can construct a concrete instance of `TopicCellValueSynonymInput` via: -// -// TopicCellValueSynonymArgs{...} -type TopicCellValueSynonymInput interface { - pulumi.Input - - ToTopicCellValueSynonymOutput() TopicCellValueSynonymOutput - ToTopicCellValueSynonymOutputWithContext(context.Context) TopicCellValueSynonymOutput -} - -type TopicCellValueSynonymArgs struct { - CellValue pulumi.StringPtrInput `pulumi:"cellValue"` - Synonyms pulumi.StringArrayInput `pulumi:"synonyms"` -} - -func (TopicCellValueSynonymArgs) ElementType() reflect.Type { - return reflect.TypeOf((*TopicCellValueSynonym)(nil)).Elem() -} - -func (i TopicCellValueSynonymArgs) ToTopicCellValueSynonymOutput() TopicCellValueSynonymOutput { - return i.ToTopicCellValueSynonymOutputWithContext(context.Background()) -} - -func (i TopicCellValueSynonymArgs) ToTopicCellValueSynonymOutputWithContext(ctx context.Context) TopicCellValueSynonymOutput { - return pulumi.ToOutputWithContext(ctx, i).(TopicCellValueSynonymOutput) -} - -func (i TopicCellValueSynonymArgs) ToOutput(ctx context.Context) pulumix.Output[TopicCellValueSynonym] { - return pulumix.Output[TopicCellValueSynonym]{ - OutputState: i.ToTopicCellValueSynonymOutputWithContext(ctx).OutputState, - } -} - -// TopicCellValueSynonymArrayInput is an input type that accepts TopicCellValueSynonymArray and TopicCellValueSynonymArrayOutput values. -// You can construct a concrete instance of `TopicCellValueSynonymArrayInput` via: -// -// TopicCellValueSynonymArray{ TopicCellValueSynonymArgs{...} } -type TopicCellValueSynonymArrayInput interface { - pulumi.Input - - ToTopicCellValueSynonymArrayOutput() TopicCellValueSynonymArrayOutput - ToTopicCellValueSynonymArrayOutputWithContext(context.Context) TopicCellValueSynonymArrayOutput -} - -type TopicCellValueSynonymArray []TopicCellValueSynonymInput - -func (TopicCellValueSynonymArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]TopicCellValueSynonym)(nil)).Elem() -} - -func (i TopicCellValueSynonymArray) ToTopicCellValueSynonymArrayOutput() TopicCellValueSynonymArrayOutput { - return i.ToTopicCellValueSynonymArrayOutputWithContext(context.Background()) -} - -func (i TopicCellValueSynonymArray) ToTopicCellValueSynonymArrayOutputWithContext(ctx context.Context) TopicCellValueSynonymArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(TopicCellValueSynonymArrayOutput) -} - -func (i TopicCellValueSynonymArray) ToOutput(ctx context.Context) pulumix.Output[[]TopicCellValueSynonym] { - return pulumix.Output[[]TopicCellValueSynonym]{ - OutputState: i.ToTopicCellValueSynonymArrayOutputWithContext(ctx).OutputState, - } -} - -type TopicCellValueSynonymOutput struct{ *pulumi.OutputState } - -func (TopicCellValueSynonymOutput) ElementType() reflect.Type { - return reflect.TypeOf((*TopicCellValueSynonym)(nil)).Elem() -} - -func (o TopicCellValueSynonymOutput) ToTopicCellValueSynonymOutput() TopicCellValueSynonymOutput { - return o -} - -func (o TopicCellValueSynonymOutput) ToTopicCellValueSynonymOutputWithContext(ctx context.Context) TopicCellValueSynonymOutput { - return o -} - -func (o TopicCellValueSynonymOutput) ToOutput(ctx context.Context) pulumix.Output[TopicCellValueSynonym] { - return pulumix.Output[TopicCellValueSynonym]{ - OutputState: o.OutputState, - } -} - -func (o TopicCellValueSynonymOutput) CellValue() pulumi.StringPtrOutput { - return o.ApplyT(func(v TopicCellValueSynonym) *string { return v.CellValue }).(pulumi.StringPtrOutput) -} - -func (o TopicCellValueSynonymOutput) Synonyms() pulumi.StringArrayOutput { - return o.ApplyT(func(v TopicCellValueSynonym) []string { return v.Synonyms }).(pulumi.StringArrayOutput) -} - -type TopicCellValueSynonymArrayOutput struct{ *pulumi.OutputState } - -func (TopicCellValueSynonymArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]TopicCellValueSynonym)(nil)).Elem() -} - -func (o TopicCellValueSynonymArrayOutput) ToTopicCellValueSynonymArrayOutput() TopicCellValueSynonymArrayOutput { - return o -} - -func (o TopicCellValueSynonymArrayOutput) ToTopicCellValueSynonymArrayOutputWithContext(ctx context.Context) TopicCellValueSynonymArrayOutput { - return o -} - -func (o TopicCellValueSynonymArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]TopicCellValueSynonym] { - return pulumix.Output[[]TopicCellValueSynonym]{ - OutputState: o.OutputState, - } -} - -func (o TopicCellValueSynonymArrayOutput) Index(i pulumi.IntInput) TopicCellValueSynonymOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) TopicCellValueSynonym { - return vs[0].([]TopicCellValueSynonym)[vs[1].(int)] - }).(TopicCellValueSynonymOutput) -} - -type TopicCollectiveConstant struct { - ValueList []string `pulumi:"valueList"` -} - -// TopicCollectiveConstantInput is an input type that accepts TopicCollectiveConstantArgs and TopicCollectiveConstantOutput values. -// You can construct a concrete instance of `TopicCollectiveConstantInput` via: -// -// TopicCollectiveConstantArgs{...} -type TopicCollectiveConstantInput interface { - pulumi.Input - - ToTopicCollectiveConstantOutput() TopicCollectiveConstantOutput - ToTopicCollectiveConstantOutputWithContext(context.Context) TopicCollectiveConstantOutput -} - -type TopicCollectiveConstantArgs struct { - ValueList pulumi.StringArrayInput `pulumi:"valueList"` -} - -func (TopicCollectiveConstantArgs) ElementType() reflect.Type { - return reflect.TypeOf((*TopicCollectiveConstant)(nil)).Elem() -} - -func (i TopicCollectiveConstantArgs) ToTopicCollectiveConstantOutput() TopicCollectiveConstantOutput { - return i.ToTopicCollectiveConstantOutputWithContext(context.Background()) -} - -func (i TopicCollectiveConstantArgs) ToTopicCollectiveConstantOutputWithContext(ctx context.Context) TopicCollectiveConstantOutput { - return pulumi.ToOutputWithContext(ctx, i).(TopicCollectiveConstantOutput) -} - -func (i TopicCollectiveConstantArgs) ToOutput(ctx context.Context) pulumix.Output[TopicCollectiveConstant] { - return pulumix.Output[TopicCollectiveConstant]{ - OutputState: i.ToTopicCollectiveConstantOutputWithContext(ctx).OutputState, - } -} - -func (i TopicCollectiveConstantArgs) ToTopicCollectiveConstantPtrOutput() TopicCollectiveConstantPtrOutput { - return i.ToTopicCollectiveConstantPtrOutputWithContext(context.Background()) -} - -func (i TopicCollectiveConstantArgs) ToTopicCollectiveConstantPtrOutputWithContext(ctx context.Context) TopicCollectiveConstantPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(TopicCollectiveConstantOutput).ToTopicCollectiveConstantPtrOutputWithContext(ctx) -} - -// TopicCollectiveConstantPtrInput is an input type that accepts TopicCollectiveConstantArgs, TopicCollectiveConstantPtr and TopicCollectiveConstantPtrOutput values. -// You can construct a concrete instance of `TopicCollectiveConstantPtrInput` via: -// -// TopicCollectiveConstantArgs{...} -// -// or: -// -// nil -type TopicCollectiveConstantPtrInput interface { - pulumi.Input - - ToTopicCollectiveConstantPtrOutput() TopicCollectiveConstantPtrOutput - ToTopicCollectiveConstantPtrOutputWithContext(context.Context) TopicCollectiveConstantPtrOutput -} - -type topicCollectiveConstantPtrType TopicCollectiveConstantArgs - -func TopicCollectiveConstantPtr(v *TopicCollectiveConstantArgs) TopicCollectiveConstantPtrInput { - return (*topicCollectiveConstantPtrType)(v) -} - -func (*topicCollectiveConstantPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**TopicCollectiveConstant)(nil)).Elem() -} - -func (i *topicCollectiveConstantPtrType) ToTopicCollectiveConstantPtrOutput() TopicCollectiveConstantPtrOutput { - return i.ToTopicCollectiveConstantPtrOutputWithContext(context.Background()) -} - -func (i *topicCollectiveConstantPtrType) ToTopicCollectiveConstantPtrOutputWithContext(ctx context.Context) TopicCollectiveConstantPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(TopicCollectiveConstantPtrOutput) -} - -func (i *topicCollectiveConstantPtrType) ToOutput(ctx context.Context) pulumix.Output[*TopicCollectiveConstant] { - return pulumix.Output[*TopicCollectiveConstant]{ - OutputState: i.ToTopicCollectiveConstantPtrOutputWithContext(ctx).OutputState, - } -} - -type TopicCollectiveConstantOutput struct{ *pulumi.OutputState } - -func (TopicCollectiveConstantOutput) ElementType() reflect.Type { - return reflect.TypeOf((*TopicCollectiveConstant)(nil)).Elem() -} - -func (o TopicCollectiveConstantOutput) ToTopicCollectiveConstantOutput() TopicCollectiveConstantOutput { - return o -} - -func (o TopicCollectiveConstantOutput) ToTopicCollectiveConstantOutputWithContext(ctx context.Context) TopicCollectiveConstantOutput { - return o -} - -func (o TopicCollectiveConstantOutput) ToTopicCollectiveConstantPtrOutput() TopicCollectiveConstantPtrOutput { - return o.ToTopicCollectiveConstantPtrOutputWithContext(context.Background()) -} - -func (o TopicCollectiveConstantOutput) ToTopicCollectiveConstantPtrOutputWithContext(ctx context.Context) TopicCollectiveConstantPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v TopicCollectiveConstant) *TopicCollectiveConstant { - return &v - }).(TopicCollectiveConstantPtrOutput) -} - -func (o TopicCollectiveConstantOutput) ToOutput(ctx context.Context) pulumix.Output[TopicCollectiveConstant] { - return pulumix.Output[TopicCollectiveConstant]{ - OutputState: o.OutputState, - } -} - -func (o TopicCollectiveConstantOutput) ValueList() pulumi.StringArrayOutput { - return o.ApplyT(func(v TopicCollectiveConstant) []string { return v.ValueList }).(pulumi.StringArrayOutput) -} - -type TopicCollectiveConstantPtrOutput struct{ *pulumi.OutputState } - -func (TopicCollectiveConstantPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**TopicCollectiveConstant)(nil)).Elem() -} - -func (o TopicCollectiveConstantPtrOutput) ToTopicCollectiveConstantPtrOutput() TopicCollectiveConstantPtrOutput { - return o -} - -func (o TopicCollectiveConstantPtrOutput) ToTopicCollectiveConstantPtrOutputWithContext(ctx context.Context) TopicCollectiveConstantPtrOutput { - return o -} - -func (o TopicCollectiveConstantPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*TopicCollectiveConstant] { - return pulumix.Output[*TopicCollectiveConstant]{ - OutputState: o.OutputState, - } -} - -func (o TopicCollectiveConstantPtrOutput) Elem() TopicCollectiveConstantOutput { - return o.ApplyT(func(v *TopicCollectiveConstant) TopicCollectiveConstant { - if v != nil { - return *v - } - var ret TopicCollectiveConstant - return ret - }).(TopicCollectiveConstantOutput) -} - -func (o TopicCollectiveConstantPtrOutput) ValueList() pulumi.StringArrayOutput { - return o.ApplyT(func(v *TopicCollectiveConstant) []string { - if v == nil { - return nil - } - return v.ValueList - }).(pulumi.StringArrayOutput) -} - func init() { + pulumi.RegisterInputType(reflect.TypeOf((*DataSourceS3ParametersInput)(nil)).Elem(), DataSourceS3ParametersArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DataSourceS3ParametersPtrInput)(nil)).Elem(), DataSourceS3ParametersArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DataSourceSnowflakeParametersInput)(nil)).Elem(), DataSourceSnowflakeParametersArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DataSourceSnowflakeParametersPtrInput)(nil)).Elem(), DataSourceSnowflakeParametersArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DataSourceSparkParametersInput)(nil)).Elem(), DataSourceSparkParametersArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DataSourceSparkParametersPtrInput)(nil)).Elem(), DataSourceSparkParametersArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DataSourceSqlServerParametersInput)(nil)).Elem(), DataSourceSqlServerParametersArgs{}) @@ -91490,6 +91564,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*TemplateUnaggregatedFieldArrayInput)(nil)).Elem(), TemplateUnaggregatedFieldArray{}) pulumi.RegisterInputType(reflect.TypeOf((*TemplateUniqueValuesComputationInput)(nil)).Elem(), TemplateUniqueValuesComputationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*TemplateUniqueValuesComputationPtrInput)(nil)).Elem(), TemplateUniqueValuesComputationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TemplateValidationStrategyInput)(nil)).Elem(), TemplateValidationStrategyArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TemplateValidationStrategyPtrInput)(nil)).Elem(), TemplateValidationStrategyArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*TemplateVersionDefinitionInput)(nil)).Elem(), TemplateVersionDefinitionArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*TemplateVersionDefinitionPtrInput)(nil)).Elem(), TemplateVersionDefinitionArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*TemplateVisibleRangeOptionsInput)(nil)).Elem(), TemplateVisibleRangeOptionsArgs{}) @@ -91565,12 +91641,10 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*TopicCalculatedFieldArrayInput)(nil)).Elem(), TopicCalculatedFieldArray{}) pulumi.RegisterInputType(reflect.TypeOf((*TopicCategoryFilterInput)(nil)).Elem(), TopicCategoryFilterArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*TopicCategoryFilterPtrInput)(nil)).Elem(), TopicCategoryFilterArgs{}) - pulumi.RegisterInputType(reflect.TypeOf((*TopicCategoryFilterConstantInput)(nil)).Elem(), TopicCategoryFilterConstantArgs{}) - pulumi.RegisterInputType(reflect.TypeOf((*TopicCategoryFilterConstantPtrInput)(nil)).Elem(), TopicCategoryFilterConstantArgs{}) - pulumi.RegisterInputType(reflect.TypeOf((*TopicCellValueSynonymInput)(nil)).Elem(), TopicCellValueSynonymArgs{}) - pulumi.RegisterInputType(reflect.TypeOf((*TopicCellValueSynonymArrayInput)(nil)).Elem(), TopicCellValueSynonymArray{}) - pulumi.RegisterInputType(reflect.TypeOf((*TopicCollectiveConstantInput)(nil)).Elem(), TopicCollectiveConstantArgs{}) - pulumi.RegisterInputType(reflect.TypeOf((*TopicCollectiveConstantPtrInput)(nil)).Elem(), TopicCollectiveConstantArgs{}) + pulumi.RegisterOutputType(DataSourceS3ParametersOutput{}) + pulumi.RegisterOutputType(DataSourceS3ParametersPtrOutput{}) + pulumi.RegisterOutputType(DataSourceSnowflakeParametersOutput{}) + pulumi.RegisterOutputType(DataSourceSnowflakeParametersPtrOutput{}) pulumi.RegisterOutputType(DataSourceSparkParametersOutput{}) pulumi.RegisterOutputType(DataSourceSparkParametersPtrOutput{}) pulumi.RegisterOutputType(DataSourceSqlServerParametersOutput{}) @@ -92478,6 +92552,8 @@ func init() { pulumi.RegisterOutputType(TemplateUnaggregatedFieldArrayOutput{}) pulumi.RegisterOutputType(TemplateUniqueValuesComputationOutput{}) pulumi.RegisterOutputType(TemplateUniqueValuesComputationPtrOutput{}) + pulumi.RegisterOutputType(TemplateValidationStrategyOutput{}) + pulumi.RegisterOutputType(TemplateValidationStrategyPtrOutput{}) pulumi.RegisterOutputType(TemplateVersionOutput{}) pulumi.RegisterOutputType(TemplateVersionDefinitionOutput{}) pulumi.RegisterOutputType(TemplateVersionDefinitionPtrOutput{}) @@ -92559,10 +92635,4 @@ func init() { pulumi.RegisterOutputType(TopicCalculatedFieldArrayOutput{}) pulumi.RegisterOutputType(TopicCategoryFilterOutput{}) pulumi.RegisterOutputType(TopicCategoryFilterPtrOutput{}) - pulumi.RegisterOutputType(TopicCategoryFilterConstantOutput{}) - pulumi.RegisterOutputType(TopicCategoryFilterConstantPtrOutput{}) - pulumi.RegisterOutputType(TopicCellValueSynonymOutput{}) - pulumi.RegisterOutputType(TopicCellValueSynonymArrayOutput{}) - pulumi.RegisterOutputType(TopicCollectiveConstantOutput{}) - pulumi.RegisterOutputType(TopicCollectiveConstantPtrOutput{}) } diff --git a/sdk/go/aws/quicksight/pulumiTypes3.go b/sdk/go/aws/quicksight/pulumiTypes3.go index 3b8cdd36a6..10d004ce81 100644 --- a/sdk/go/aws/quicksight/pulumiTypes3.go +++ b/sdk/go/aws/quicksight/pulumiTypes3.go @@ -14,6 +14,474 @@ import ( var _ = internal.GetEnvOrDefault +type TopicCategoryFilterConstant struct { + CollectiveConstant *TopicCollectiveConstant `pulumi:"collectiveConstant"` + ConstantType *TopicConstantType `pulumi:"constantType"` + SingularConstant *string `pulumi:"singularConstant"` +} + +// TopicCategoryFilterConstantInput is an input type that accepts TopicCategoryFilterConstantArgs and TopicCategoryFilterConstantOutput values. +// You can construct a concrete instance of `TopicCategoryFilterConstantInput` via: +// +// TopicCategoryFilterConstantArgs{...} +type TopicCategoryFilterConstantInput interface { + pulumi.Input + + ToTopicCategoryFilterConstantOutput() TopicCategoryFilterConstantOutput + ToTopicCategoryFilterConstantOutputWithContext(context.Context) TopicCategoryFilterConstantOutput +} + +type TopicCategoryFilterConstantArgs struct { + CollectiveConstant TopicCollectiveConstantPtrInput `pulumi:"collectiveConstant"` + ConstantType TopicConstantTypePtrInput `pulumi:"constantType"` + SingularConstant pulumi.StringPtrInput `pulumi:"singularConstant"` +} + +func (TopicCategoryFilterConstantArgs) ElementType() reflect.Type { + return reflect.TypeOf((*TopicCategoryFilterConstant)(nil)).Elem() +} + +func (i TopicCategoryFilterConstantArgs) ToTopicCategoryFilterConstantOutput() TopicCategoryFilterConstantOutput { + return i.ToTopicCategoryFilterConstantOutputWithContext(context.Background()) +} + +func (i TopicCategoryFilterConstantArgs) ToTopicCategoryFilterConstantOutputWithContext(ctx context.Context) TopicCategoryFilterConstantOutput { + return pulumi.ToOutputWithContext(ctx, i).(TopicCategoryFilterConstantOutput) +} + +func (i TopicCategoryFilterConstantArgs) ToOutput(ctx context.Context) pulumix.Output[TopicCategoryFilterConstant] { + return pulumix.Output[TopicCategoryFilterConstant]{ + OutputState: i.ToTopicCategoryFilterConstantOutputWithContext(ctx).OutputState, + } +} + +func (i TopicCategoryFilterConstantArgs) ToTopicCategoryFilterConstantPtrOutput() TopicCategoryFilterConstantPtrOutput { + return i.ToTopicCategoryFilterConstantPtrOutputWithContext(context.Background()) +} + +func (i TopicCategoryFilterConstantArgs) ToTopicCategoryFilterConstantPtrOutputWithContext(ctx context.Context) TopicCategoryFilterConstantPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(TopicCategoryFilterConstantOutput).ToTopicCategoryFilterConstantPtrOutputWithContext(ctx) +} + +// TopicCategoryFilterConstantPtrInput is an input type that accepts TopicCategoryFilterConstantArgs, TopicCategoryFilterConstantPtr and TopicCategoryFilterConstantPtrOutput values. +// You can construct a concrete instance of `TopicCategoryFilterConstantPtrInput` via: +// +// TopicCategoryFilterConstantArgs{...} +// +// or: +// +// nil +type TopicCategoryFilterConstantPtrInput interface { + pulumi.Input + + ToTopicCategoryFilterConstantPtrOutput() TopicCategoryFilterConstantPtrOutput + ToTopicCategoryFilterConstantPtrOutputWithContext(context.Context) TopicCategoryFilterConstantPtrOutput +} + +type topicCategoryFilterConstantPtrType TopicCategoryFilterConstantArgs + +func TopicCategoryFilterConstantPtr(v *TopicCategoryFilterConstantArgs) TopicCategoryFilterConstantPtrInput { + return (*topicCategoryFilterConstantPtrType)(v) +} + +func (*topicCategoryFilterConstantPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**TopicCategoryFilterConstant)(nil)).Elem() +} + +func (i *topicCategoryFilterConstantPtrType) ToTopicCategoryFilterConstantPtrOutput() TopicCategoryFilterConstantPtrOutput { + return i.ToTopicCategoryFilterConstantPtrOutputWithContext(context.Background()) +} + +func (i *topicCategoryFilterConstantPtrType) ToTopicCategoryFilterConstantPtrOutputWithContext(ctx context.Context) TopicCategoryFilterConstantPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(TopicCategoryFilterConstantPtrOutput) +} + +func (i *topicCategoryFilterConstantPtrType) ToOutput(ctx context.Context) pulumix.Output[*TopicCategoryFilterConstant] { + return pulumix.Output[*TopicCategoryFilterConstant]{ + OutputState: i.ToTopicCategoryFilterConstantPtrOutputWithContext(ctx).OutputState, + } +} + +type TopicCategoryFilterConstantOutput struct{ *pulumi.OutputState } + +func (TopicCategoryFilterConstantOutput) ElementType() reflect.Type { + return reflect.TypeOf((*TopicCategoryFilterConstant)(nil)).Elem() +} + +func (o TopicCategoryFilterConstantOutput) ToTopicCategoryFilterConstantOutput() TopicCategoryFilterConstantOutput { + return o +} + +func (o TopicCategoryFilterConstantOutput) ToTopicCategoryFilterConstantOutputWithContext(ctx context.Context) TopicCategoryFilterConstantOutput { + return o +} + +func (o TopicCategoryFilterConstantOutput) ToTopicCategoryFilterConstantPtrOutput() TopicCategoryFilterConstantPtrOutput { + return o.ToTopicCategoryFilterConstantPtrOutputWithContext(context.Background()) +} + +func (o TopicCategoryFilterConstantOutput) ToTopicCategoryFilterConstantPtrOutputWithContext(ctx context.Context) TopicCategoryFilterConstantPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v TopicCategoryFilterConstant) *TopicCategoryFilterConstant { + return &v + }).(TopicCategoryFilterConstantPtrOutput) +} + +func (o TopicCategoryFilterConstantOutput) ToOutput(ctx context.Context) pulumix.Output[TopicCategoryFilterConstant] { + return pulumix.Output[TopicCategoryFilterConstant]{ + OutputState: o.OutputState, + } +} + +func (o TopicCategoryFilterConstantOutput) CollectiveConstant() TopicCollectiveConstantPtrOutput { + return o.ApplyT(func(v TopicCategoryFilterConstant) *TopicCollectiveConstant { return v.CollectiveConstant }).(TopicCollectiveConstantPtrOutput) +} + +func (o TopicCategoryFilterConstantOutput) ConstantType() TopicConstantTypePtrOutput { + return o.ApplyT(func(v TopicCategoryFilterConstant) *TopicConstantType { return v.ConstantType }).(TopicConstantTypePtrOutput) +} + +func (o TopicCategoryFilterConstantOutput) SingularConstant() pulumi.StringPtrOutput { + return o.ApplyT(func(v TopicCategoryFilterConstant) *string { return v.SingularConstant }).(pulumi.StringPtrOutput) +} + +type TopicCategoryFilterConstantPtrOutput struct{ *pulumi.OutputState } + +func (TopicCategoryFilterConstantPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**TopicCategoryFilterConstant)(nil)).Elem() +} + +func (o TopicCategoryFilterConstantPtrOutput) ToTopicCategoryFilterConstantPtrOutput() TopicCategoryFilterConstantPtrOutput { + return o +} + +func (o TopicCategoryFilterConstantPtrOutput) ToTopicCategoryFilterConstantPtrOutputWithContext(ctx context.Context) TopicCategoryFilterConstantPtrOutput { + return o +} + +func (o TopicCategoryFilterConstantPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*TopicCategoryFilterConstant] { + return pulumix.Output[*TopicCategoryFilterConstant]{ + OutputState: o.OutputState, + } +} + +func (o TopicCategoryFilterConstantPtrOutput) Elem() TopicCategoryFilterConstantOutput { + return o.ApplyT(func(v *TopicCategoryFilterConstant) TopicCategoryFilterConstant { + if v != nil { + return *v + } + var ret TopicCategoryFilterConstant + return ret + }).(TopicCategoryFilterConstantOutput) +} + +func (o TopicCategoryFilterConstantPtrOutput) CollectiveConstant() TopicCollectiveConstantPtrOutput { + return o.ApplyT(func(v *TopicCategoryFilterConstant) *TopicCollectiveConstant { + if v == nil { + return nil + } + return v.CollectiveConstant + }).(TopicCollectiveConstantPtrOutput) +} + +func (o TopicCategoryFilterConstantPtrOutput) ConstantType() TopicConstantTypePtrOutput { + return o.ApplyT(func(v *TopicCategoryFilterConstant) *TopicConstantType { + if v == nil { + return nil + } + return v.ConstantType + }).(TopicConstantTypePtrOutput) +} + +func (o TopicCategoryFilterConstantPtrOutput) SingularConstant() pulumi.StringPtrOutput { + return o.ApplyT(func(v *TopicCategoryFilterConstant) *string { + if v == nil { + return nil + } + return v.SingularConstant + }).(pulumi.StringPtrOutput) +} + +type TopicCellValueSynonym struct { + CellValue *string `pulumi:"cellValue"` + Synonyms []string `pulumi:"synonyms"` +} + +// TopicCellValueSynonymInput is an input type that accepts TopicCellValueSynonymArgs and TopicCellValueSynonymOutput values. +// You can construct a concrete instance of `TopicCellValueSynonymInput` via: +// +// TopicCellValueSynonymArgs{...} +type TopicCellValueSynonymInput interface { + pulumi.Input + + ToTopicCellValueSynonymOutput() TopicCellValueSynonymOutput + ToTopicCellValueSynonymOutputWithContext(context.Context) TopicCellValueSynonymOutput +} + +type TopicCellValueSynonymArgs struct { + CellValue pulumi.StringPtrInput `pulumi:"cellValue"` + Synonyms pulumi.StringArrayInput `pulumi:"synonyms"` +} + +func (TopicCellValueSynonymArgs) ElementType() reflect.Type { + return reflect.TypeOf((*TopicCellValueSynonym)(nil)).Elem() +} + +func (i TopicCellValueSynonymArgs) ToTopicCellValueSynonymOutput() TopicCellValueSynonymOutput { + return i.ToTopicCellValueSynonymOutputWithContext(context.Background()) +} + +func (i TopicCellValueSynonymArgs) ToTopicCellValueSynonymOutputWithContext(ctx context.Context) TopicCellValueSynonymOutput { + return pulumi.ToOutputWithContext(ctx, i).(TopicCellValueSynonymOutput) +} + +func (i TopicCellValueSynonymArgs) ToOutput(ctx context.Context) pulumix.Output[TopicCellValueSynonym] { + return pulumix.Output[TopicCellValueSynonym]{ + OutputState: i.ToTopicCellValueSynonymOutputWithContext(ctx).OutputState, + } +} + +// TopicCellValueSynonymArrayInput is an input type that accepts TopicCellValueSynonymArray and TopicCellValueSynonymArrayOutput values. +// You can construct a concrete instance of `TopicCellValueSynonymArrayInput` via: +// +// TopicCellValueSynonymArray{ TopicCellValueSynonymArgs{...} } +type TopicCellValueSynonymArrayInput interface { + pulumi.Input + + ToTopicCellValueSynonymArrayOutput() TopicCellValueSynonymArrayOutput + ToTopicCellValueSynonymArrayOutputWithContext(context.Context) TopicCellValueSynonymArrayOutput +} + +type TopicCellValueSynonymArray []TopicCellValueSynonymInput + +func (TopicCellValueSynonymArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]TopicCellValueSynonym)(nil)).Elem() +} + +func (i TopicCellValueSynonymArray) ToTopicCellValueSynonymArrayOutput() TopicCellValueSynonymArrayOutput { + return i.ToTopicCellValueSynonymArrayOutputWithContext(context.Background()) +} + +func (i TopicCellValueSynonymArray) ToTopicCellValueSynonymArrayOutputWithContext(ctx context.Context) TopicCellValueSynonymArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(TopicCellValueSynonymArrayOutput) +} + +func (i TopicCellValueSynonymArray) ToOutput(ctx context.Context) pulumix.Output[[]TopicCellValueSynonym] { + return pulumix.Output[[]TopicCellValueSynonym]{ + OutputState: i.ToTopicCellValueSynonymArrayOutputWithContext(ctx).OutputState, + } +} + +type TopicCellValueSynonymOutput struct{ *pulumi.OutputState } + +func (TopicCellValueSynonymOutput) ElementType() reflect.Type { + return reflect.TypeOf((*TopicCellValueSynonym)(nil)).Elem() +} + +func (o TopicCellValueSynonymOutput) ToTopicCellValueSynonymOutput() TopicCellValueSynonymOutput { + return o +} + +func (o TopicCellValueSynonymOutput) ToTopicCellValueSynonymOutputWithContext(ctx context.Context) TopicCellValueSynonymOutput { + return o +} + +func (o TopicCellValueSynonymOutput) ToOutput(ctx context.Context) pulumix.Output[TopicCellValueSynonym] { + return pulumix.Output[TopicCellValueSynonym]{ + OutputState: o.OutputState, + } +} + +func (o TopicCellValueSynonymOutput) CellValue() pulumi.StringPtrOutput { + return o.ApplyT(func(v TopicCellValueSynonym) *string { return v.CellValue }).(pulumi.StringPtrOutput) +} + +func (o TopicCellValueSynonymOutput) Synonyms() pulumi.StringArrayOutput { + return o.ApplyT(func(v TopicCellValueSynonym) []string { return v.Synonyms }).(pulumi.StringArrayOutput) +} + +type TopicCellValueSynonymArrayOutput struct{ *pulumi.OutputState } + +func (TopicCellValueSynonymArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]TopicCellValueSynonym)(nil)).Elem() +} + +func (o TopicCellValueSynonymArrayOutput) ToTopicCellValueSynonymArrayOutput() TopicCellValueSynonymArrayOutput { + return o +} + +func (o TopicCellValueSynonymArrayOutput) ToTopicCellValueSynonymArrayOutputWithContext(ctx context.Context) TopicCellValueSynonymArrayOutput { + return o +} + +func (o TopicCellValueSynonymArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]TopicCellValueSynonym] { + return pulumix.Output[[]TopicCellValueSynonym]{ + OutputState: o.OutputState, + } +} + +func (o TopicCellValueSynonymArrayOutput) Index(i pulumi.IntInput) TopicCellValueSynonymOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) TopicCellValueSynonym { + return vs[0].([]TopicCellValueSynonym)[vs[1].(int)] + }).(TopicCellValueSynonymOutput) +} + +type TopicCollectiveConstant struct { + ValueList []string `pulumi:"valueList"` +} + +// TopicCollectiveConstantInput is an input type that accepts TopicCollectiveConstantArgs and TopicCollectiveConstantOutput values. +// You can construct a concrete instance of `TopicCollectiveConstantInput` via: +// +// TopicCollectiveConstantArgs{...} +type TopicCollectiveConstantInput interface { + pulumi.Input + + ToTopicCollectiveConstantOutput() TopicCollectiveConstantOutput + ToTopicCollectiveConstantOutputWithContext(context.Context) TopicCollectiveConstantOutput +} + +type TopicCollectiveConstantArgs struct { + ValueList pulumi.StringArrayInput `pulumi:"valueList"` +} + +func (TopicCollectiveConstantArgs) ElementType() reflect.Type { + return reflect.TypeOf((*TopicCollectiveConstant)(nil)).Elem() +} + +func (i TopicCollectiveConstantArgs) ToTopicCollectiveConstantOutput() TopicCollectiveConstantOutput { + return i.ToTopicCollectiveConstantOutputWithContext(context.Background()) +} + +func (i TopicCollectiveConstantArgs) ToTopicCollectiveConstantOutputWithContext(ctx context.Context) TopicCollectiveConstantOutput { + return pulumi.ToOutputWithContext(ctx, i).(TopicCollectiveConstantOutput) +} + +func (i TopicCollectiveConstantArgs) ToOutput(ctx context.Context) pulumix.Output[TopicCollectiveConstant] { + return pulumix.Output[TopicCollectiveConstant]{ + OutputState: i.ToTopicCollectiveConstantOutputWithContext(ctx).OutputState, + } +} + +func (i TopicCollectiveConstantArgs) ToTopicCollectiveConstantPtrOutput() TopicCollectiveConstantPtrOutput { + return i.ToTopicCollectiveConstantPtrOutputWithContext(context.Background()) +} + +func (i TopicCollectiveConstantArgs) ToTopicCollectiveConstantPtrOutputWithContext(ctx context.Context) TopicCollectiveConstantPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(TopicCollectiveConstantOutput).ToTopicCollectiveConstantPtrOutputWithContext(ctx) +} + +// TopicCollectiveConstantPtrInput is an input type that accepts TopicCollectiveConstantArgs, TopicCollectiveConstantPtr and TopicCollectiveConstantPtrOutput values. +// You can construct a concrete instance of `TopicCollectiveConstantPtrInput` via: +// +// TopicCollectiveConstantArgs{...} +// +// or: +// +// nil +type TopicCollectiveConstantPtrInput interface { + pulumi.Input + + ToTopicCollectiveConstantPtrOutput() TopicCollectiveConstantPtrOutput + ToTopicCollectiveConstantPtrOutputWithContext(context.Context) TopicCollectiveConstantPtrOutput +} + +type topicCollectiveConstantPtrType TopicCollectiveConstantArgs + +func TopicCollectiveConstantPtr(v *TopicCollectiveConstantArgs) TopicCollectiveConstantPtrInput { + return (*topicCollectiveConstantPtrType)(v) +} + +func (*topicCollectiveConstantPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**TopicCollectiveConstant)(nil)).Elem() +} + +func (i *topicCollectiveConstantPtrType) ToTopicCollectiveConstantPtrOutput() TopicCollectiveConstantPtrOutput { + return i.ToTopicCollectiveConstantPtrOutputWithContext(context.Background()) +} + +func (i *topicCollectiveConstantPtrType) ToTopicCollectiveConstantPtrOutputWithContext(ctx context.Context) TopicCollectiveConstantPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(TopicCollectiveConstantPtrOutput) +} + +func (i *topicCollectiveConstantPtrType) ToOutput(ctx context.Context) pulumix.Output[*TopicCollectiveConstant] { + return pulumix.Output[*TopicCollectiveConstant]{ + OutputState: i.ToTopicCollectiveConstantPtrOutputWithContext(ctx).OutputState, + } +} + +type TopicCollectiveConstantOutput struct{ *pulumi.OutputState } + +func (TopicCollectiveConstantOutput) ElementType() reflect.Type { + return reflect.TypeOf((*TopicCollectiveConstant)(nil)).Elem() +} + +func (o TopicCollectiveConstantOutput) ToTopicCollectiveConstantOutput() TopicCollectiveConstantOutput { + return o +} + +func (o TopicCollectiveConstantOutput) ToTopicCollectiveConstantOutputWithContext(ctx context.Context) TopicCollectiveConstantOutput { + return o +} + +func (o TopicCollectiveConstantOutput) ToTopicCollectiveConstantPtrOutput() TopicCollectiveConstantPtrOutput { + return o.ToTopicCollectiveConstantPtrOutputWithContext(context.Background()) +} + +func (o TopicCollectiveConstantOutput) ToTopicCollectiveConstantPtrOutputWithContext(ctx context.Context) TopicCollectiveConstantPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v TopicCollectiveConstant) *TopicCollectiveConstant { + return &v + }).(TopicCollectiveConstantPtrOutput) +} + +func (o TopicCollectiveConstantOutput) ToOutput(ctx context.Context) pulumix.Output[TopicCollectiveConstant] { + return pulumix.Output[TopicCollectiveConstant]{ + OutputState: o.OutputState, + } +} + +func (o TopicCollectiveConstantOutput) ValueList() pulumi.StringArrayOutput { + return o.ApplyT(func(v TopicCollectiveConstant) []string { return v.ValueList }).(pulumi.StringArrayOutput) +} + +type TopicCollectiveConstantPtrOutput struct{ *pulumi.OutputState } + +func (TopicCollectiveConstantPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**TopicCollectiveConstant)(nil)).Elem() +} + +func (o TopicCollectiveConstantPtrOutput) ToTopicCollectiveConstantPtrOutput() TopicCollectiveConstantPtrOutput { + return o +} + +func (o TopicCollectiveConstantPtrOutput) ToTopicCollectiveConstantPtrOutputWithContext(ctx context.Context) TopicCollectiveConstantPtrOutput { + return o +} + +func (o TopicCollectiveConstantPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*TopicCollectiveConstant] { + return pulumix.Output[*TopicCollectiveConstant]{ + OutputState: o.OutputState, + } +} + +func (o TopicCollectiveConstantPtrOutput) Elem() TopicCollectiveConstantOutput { + return o.ApplyT(func(v *TopicCollectiveConstant) TopicCollectiveConstant { + if v != nil { + return *v + } + var ret TopicCollectiveConstant + return ret + }).(TopicCollectiveConstantOutput) +} + +func (o TopicCollectiveConstantPtrOutput) ValueList() pulumi.StringArrayOutput { + return o.ApplyT(func(v *TopicCollectiveConstant) []string { + if v == nil { + return nil + } + return v.ValueList + }).(pulumi.StringArrayOutput) +} + type TopicColumn struct { Aggregation *TopicDefaultAggregation `pulumi:"aggregation"` AllowedAggregations []TopicAuthorSpecifiedAggregation `pulumi:"allowedAggregations"` @@ -4054,6 +4522,12 @@ func (o VpcConnectionTagArrayOutput) Index(i pulumi.IntInput) VpcConnectionTagOu } func init() { + pulumi.RegisterInputType(reflect.TypeOf((*TopicCategoryFilterConstantInput)(nil)).Elem(), TopicCategoryFilterConstantArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TopicCategoryFilterConstantPtrInput)(nil)).Elem(), TopicCategoryFilterConstantArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TopicCellValueSynonymInput)(nil)).Elem(), TopicCellValueSynonymArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TopicCellValueSynonymArrayInput)(nil)).Elem(), TopicCellValueSynonymArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*TopicCollectiveConstantInput)(nil)).Elem(), TopicCollectiveConstantArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TopicCollectiveConstantPtrInput)(nil)).Elem(), TopicCollectiveConstantArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*TopicColumnInput)(nil)).Elem(), TopicColumnArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*TopicColumnArrayInput)(nil)).Elem(), TopicColumnArray{}) pulumi.RegisterInputType(reflect.TypeOf((*TopicComparativeOrderInput)(nil)).Elem(), TopicComparativeOrderArgs{}) @@ -4098,6 +4572,12 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*TopicTypeParametersPtrInput)(nil)).Elem(), TopicTypeParametersArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*VpcConnectionTagInput)(nil)).Elem(), VpcConnectionTagArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*VpcConnectionTagArrayInput)(nil)).Elem(), VpcConnectionTagArray{}) + pulumi.RegisterOutputType(TopicCategoryFilterConstantOutput{}) + pulumi.RegisterOutputType(TopicCategoryFilterConstantPtrOutput{}) + pulumi.RegisterOutputType(TopicCellValueSynonymOutput{}) + pulumi.RegisterOutputType(TopicCellValueSynonymArrayOutput{}) + pulumi.RegisterOutputType(TopicCollectiveConstantOutput{}) + pulumi.RegisterOutputType(TopicCollectiveConstantPtrOutput{}) pulumi.RegisterOutputType(TopicColumnOutput{}) pulumi.RegisterOutputType(TopicColumnArrayOutput{}) pulumi.RegisterOutputType(TopicComparativeOrderOutput{}) diff --git a/sdk/go/aws/quicksight/template.go b/sdk/go/aws/quicksight/template.go index 98ddc57f62..87b1c6b1c1 100644 --- a/sdk/go/aws/quicksight/template.go +++ b/sdk/go/aws/quicksight/template.go @@ -27,6 +27,7 @@ type Template struct { SourceEntity TemplateSourceEntityPtrOutput `pulumi:"sourceEntity"` Tags TemplateTagArrayOutput `pulumi:"tags"` TemplateId pulumi.StringOutput `pulumi:"templateId"` + ValidationStrategy TemplateValidationStrategyPtrOutput `pulumi:"validationStrategy"` Version TemplateVersionOutput `pulumi:"version"` VersionDescription pulumi.StringPtrOutput `pulumi:"versionDescription"` } @@ -89,6 +90,7 @@ type templateArgs struct { SourceEntity *TemplateSourceEntity `pulumi:"sourceEntity"` Tags []TemplateTag `pulumi:"tags"` TemplateId string `pulumi:"templateId"` + ValidationStrategy *TemplateValidationStrategy `pulumi:"validationStrategy"` VersionDescription *string `pulumi:"versionDescription"` } @@ -101,6 +103,7 @@ type TemplateArgs struct { SourceEntity TemplateSourceEntityPtrInput Tags TemplateTagArrayInput TemplateId pulumi.StringInput + ValidationStrategy TemplateValidationStrategyPtrInput VersionDescription pulumi.StringPtrInput } @@ -193,6 +196,10 @@ func (o TemplateOutput) TemplateId() pulumi.StringOutput { return o.ApplyT(func(v *Template) pulumi.StringOutput { return v.TemplateId }).(pulumi.StringOutput) } +func (o TemplateOutput) ValidationStrategy() TemplateValidationStrategyPtrOutput { + return o.ApplyT(func(v *Template) TemplateValidationStrategyPtrOutput { return v.ValidationStrategy }).(TemplateValidationStrategyPtrOutput) +} + func (o TemplateOutput) Version() TemplateVersionOutput { return o.ApplyT(func(v *Template) TemplateVersionOutput { return v.Version }).(TemplateVersionOutput) } diff --git a/sdk/go/aws/s3/bucket.go b/sdk/go/aws/s3/bucket.go index 576f638803..c5e23c5845 100644 --- a/sdk/go/aws/s3/bucket.go +++ b/sdk/go/aws/s3/bucket.go @@ -16,52 +16,31 @@ import ( type Bucket struct { pulumi.CustomResourceState - // Configuration for the transfer acceleration state. - AccelerateConfiguration BucketAccelerateConfigurationPtrOutput `pulumi:"accelerateConfiguration"` - // A canned access control list (ACL) that grants predefined permissions to the bucket. - AccessControl BucketAccessControlPtrOutput `pulumi:"accessControl"` - // The configuration and any analyses for the analytics filter of an Amazon S3 bucket. - AnalyticsConfigurations BucketAnalyticsConfigurationArrayOutput `pulumi:"analyticsConfigurations"` - // The Amazon Resource Name (ARN) of the specified bucket. - Arn pulumi.StringOutput `pulumi:"arn"` - BucketEncryption BucketEncryptionPtrOutput `pulumi:"bucketEncryption"` - // A name for the bucket. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. - BucketName pulumi.StringPtrOutput `pulumi:"bucketName"` - // Rules that define cross-origin resource sharing of objects in this bucket. - CorsConfiguration BucketCorsConfigurationPtrOutput `pulumi:"corsConfiguration"` - // The IPv4 DNS name of the specified bucket. - DomainName pulumi.StringOutput `pulumi:"domainName"` - // The IPv6 DNS name of the specified bucket. For more information about dual-stack endpoints, see [Using Amazon S3 Dual-Stack Endpoints](https://docs.aws.amazon.com/AmazonS3/latest/dev/dual-stack-endpoints.html). - DualStackDomainName pulumi.StringOutput `pulumi:"dualStackDomainName"` - // Specifies the S3 Intelligent-Tiering configuration for an Amazon S3 bucket. + AccelerateConfiguration BucketAccelerateConfigurationPtrOutput `pulumi:"accelerateConfiguration"` + AccessControl pulumi.StringPtrOutput `pulumi:"accessControl"` + AnalyticsConfigurations BucketAnalyticsConfigurationArrayOutput `pulumi:"analyticsConfigurations"` + Arn pulumi.StringOutput `pulumi:"arn"` + BucketEncryption BucketEncryptionPtrOutput `pulumi:"bucketEncryption"` + BucketName pulumi.StringPtrOutput `pulumi:"bucketName"` + CorsConfiguration BucketCorsConfigurationPtrOutput `pulumi:"corsConfiguration"` + DomainName pulumi.StringOutput `pulumi:"domainName"` + DualStackDomainName pulumi.StringOutput `pulumi:"dualStackDomainName"` IntelligentTieringConfigurations BucketIntelligentTieringConfigurationArrayOutput `pulumi:"intelligentTieringConfigurations"` - // The inventory configuration for an Amazon S3 bucket. - InventoryConfigurations BucketInventoryConfigurationArrayOutput `pulumi:"inventoryConfigurations"` - // Rules that define how Amazon S3 manages objects during their lifetime. - LifecycleConfiguration BucketLifecycleConfigurationPtrOutput `pulumi:"lifecycleConfiguration"` - // Settings that define where logs are stored. - LoggingConfiguration BucketLoggingConfigurationPtrOutput `pulumi:"loggingConfiguration"` - // Settings that define a metrics configuration for the CloudWatch request metrics from the bucket. - MetricsConfigurations BucketMetricsConfigurationArrayOutput `pulumi:"metricsConfigurations"` - // Configuration that defines how Amazon S3 handles bucket notifications. - NotificationConfiguration BucketNotificationConfigurationPtrOutput `pulumi:"notificationConfiguration"` - // Places an Object Lock configuration on the specified bucket. - ObjectLockConfiguration BucketObjectLockConfigurationPtrOutput `pulumi:"objectLockConfiguration"` - // Indicates whether this bucket has an Object Lock configuration enabled. - ObjectLockEnabled pulumi.BoolPtrOutput `pulumi:"objectLockEnabled"` - // Specifies the container element for object ownership rules. - OwnershipControls BucketOwnershipControlsPtrOutput `pulumi:"ownershipControls"` - PublicAccessBlockConfiguration BucketPublicAccessBlockConfigurationPtrOutput `pulumi:"publicAccessBlockConfiguration"` - // Returns the regional domain name of the specified bucket. - RegionalDomainName pulumi.StringOutput `pulumi:"regionalDomainName"` - // Configuration for replicating objects in an S3 bucket. - ReplicationConfiguration BucketReplicationConfigurationPtrOutput `pulumi:"replicationConfiguration"` - // An arbitrary set of tags (key-value pairs) for this S3 bucket. - Tags BucketTagArrayOutput `pulumi:"tags"` - VersioningConfiguration BucketVersioningConfigurationPtrOutput `pulumi:"versioningConfiguration"` - WebsiteConfiguration BucketWebsiteConfigurationPtrOutput `pulumi:"websiteConfiguration"` - // The Amazon S3 website endpoint for the specified bucket. - WebsiteUrl pulumi.StringOutput `pulumi:"websiteUrl"` + InventoryConfigurations BucketInventoryConfigurationArrayOutput `pulumi:"inventoryConfigurations"` + LifecycleConfiguration BucketLifecycleConfigurationPtrOutput `pulumi:"lifecycleConfiguration"` + LoggingConfiguration BucketLoggingConfigurationPtrOutput `pulumi:"loggingConfiguration"` + MetricsConfigurations BucketMetricsConfigurationArrayOutput `pulumi:"metricsConfigurations"` + NotificationConfiguration BucketNotificationConfigurationPtrOutput `pulumi:"notificationConfiguration"` + ObjectLockConfiguration BucketObjectLockConfigurationPtrOutput `pulumi:"objectLockConfiguration"` + ObjectLockEnabled pulumi.BoolPtrOutput `pulumi:"objectLockEnabled"` + OwnershipControls BucketOwnershipControlsPtrOutput `pulumi:"ownershipControls"` + PublicAccessBlockConfiguration BucketPublicAccessBlockConfigurationPtrOutput `pulumi:"publicAccessBlockConfiguration"` + RegionalDomainName pulumi.StringOutput `pulumi:"regionalDomainName"` + ReplicationConfiguration BucketReplicationConfigurationPtrOutput `pulumi:"replicationConfiguration"` + Tags BucketTagArrayOutput `pulumi:"tags"` + VersioningConfiguration BucketVersioningConfigurationPtrOutput `pulumi:"versioningConfiguration"` + WebsiteConfiguration BucketWebsiteConfigurationPtrOutput `pulumi:"websiteConfiguration"` + WebsiteUrl pulumi.StringOutput `pulumi:"websiteUrl"` } // NewBucket registers a new resource with the given unique name, arguments, and options. @@ -109,82 +88,50 @@ func (BucketState) ElementType() reflect.Type { } type bucketArgs struct { - // Configuration for the transfer acceleration state. - AccelerateConfiguration *BucketAccelerateConfiguration `pulumi:"accelerateConfiguration"` - // A canned access control list (ACL) that grants predefined permissions to the bucket. - AccessControl *BucketAccessControl `pulumi:"accessControl"` - // The configuration and any analyses for the analytics filter of an Amazon S3 bucket. - AnalyticsConfigurations []BucketAnalyticsConfiguration `pulumi:"analyticsConfigurations"` - BucketEncryption *BucketEncryption `pulumi:"bucketEncryption"` - // A name for the bucket. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. - BucketName *string `pulumi:"bucketName"` - // Rules that define cross-origin resource sharing of objects in this bucket. - CorsConfiguration *BucketCorsConfiguration `pulumi:"corsConfiguration"` - // Specifies the S3 Intelligent-Tiering configuration for an Amazon S3 bucket. + AccelerateConfiguration *BucketAccelerateConfiguration `pulumi:"accelerateConfiguration"` + AccessControl *string `pulumi:"accessControl"` + AnalyticsConfigurations []BucketAnalyticsConfiguration `pulumi:"analyticsConfigurations"` + BucketEncryption *BucketEncryption `pulumi:"bucketEncryption"` + BucketName *string `pulumi:"bucketName"` + CorsConfiguration *BucketCorsConfiguration `pulumi:"corsConfiguration"` IntelligentTieringConfigurations []BucketIntelligentTieringConfiguration `pulumi:"intelligentTieringConfigurations"` - // The inventory configuration for an Amazon S3 bucket. - InventoryConfigurations []BucketInventoryConfiguration `pulumi:"inventoryConfigurations"` - // Rules that define how Amazon S3 manages objects during their lifetime. - LifecycleConfiguration *BucketLifecycleConfiguration `pulumi:"lifecycleConfiguration"` - // Settings that define where logs are stored. - LoggingConfiguration *BucketLoggingConfiguration `pulumi:"loggingConfiguration"` - // Settings that define a metrics configuration for the CloudWatch request metrics from the bucket. - MetricsConfigurations []BucketMetricsConfiguration `pulumi:"metricsConfigurations"` - // Configuration that defines how Amazon S3 handles bucket notifications. - NotificationConfiguration *BucketNotificationConfiguration `pulumi:"notificationConfiguration"` - // Places an Object Lock configuration on the specified bucket. - ObjectLockConfiguration *BucketObjectLockConfiguration `pulumi:"objectLockConfiguration"` - // Indicates whether this bucket has an Object Lock configuration enabled. - ObjectLockEnabled *bool `pulumi:"objectLockEnabled"` - // Specifies the container element for object ownership rules. - OwnershipControls *BucketOwnershipControls `pulumi:"ownershipControls"` - PublicAccessBlockConfiguration *BucketPublicAccessBlockConfiguration `pulumi:"publicAccessBlockConfiguration"` - // Configuration for replicating objects in an S3 bucket. - ReplicationConfiguration *BucketReplicationConfiguration `pulumi:"replicationConfiguration"` - // An arbitrary set of tags (key-value pairs) for this S3 bucket. - Tags []BucketTag `pulumi:"tags"` - VersioningConfiguration *BucketVersioningConfiguration `pulumi:"versioningConfiguration"` - WebsiteConfiguration *BucketWebsiteConfiguration `pulumi:"websiteConfiguration"` + InventoryConfigurations []BucketInventoryConfiguration `pulumi:"inventoryConfigurations"` + LifecycleConfiguration *BucketLifecycleConfiguration `pulumi:"lifecycleConfiguration"` + LoggingConfiguration *BucketLoggingConfiguration `pulumi:"loggingConfiguration"` + MetricsConfigurations []BucketMetricsConfiguration `pulumi:"metricsConfigurations"` + NotificationConfiguration *BucketNotificationConfiguration `pulumi:"notificationConfiguration"` + ObjectLockConfiguration *BucketObjectLockConfiguration `pulumi:"objectLockConfiguration"` + ObjectLockEnabled *bool `pulumi:"objectLockEnabled"` + OwnershipControls *BucketOwnershipControls `pulumi:"ownershipControls"` + PublicAccessBlockConfiguration *BucketPublicAccessBlockConfiguration `pulumi:"publicAccessBlockConfiguration"` + ReplicationConfiguration *BucketReplicationConfiguration `pulumi:"replicationConfiguration"` + Tags []BucketTag `pulumi:"tags"` + VersioningConfiguration *BucketVersioningConfiguration `pulumi:"versioningConfiguration"` + WebsiteConfiguration *BucketWebsiteConfiguration `pulumi:"websiteConfiguration"` } // The set of arguments for constructing a Bucket resource. type BucketArgs struct { - // Configuration for the transfer acceleration state. - AccelerateConfiguration BucketAccelerateConfigurationPtrInput - // A canned access control list (ACL) that grants predefined permissions to the bucket. - AccessControl BucketAccessControlPtrInput - // The configuration and any analyses for the analytics filter of an Amazon S3 bucket. - AnalyticsConfigurations BucketAnalyticsConfigurationArrayInput - BucketEncryption BucketEncryptionPtrInput - // A name for the bucket. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. - BucketName pulumi.StringPtrInput - // Rules that define cross-origin resource sharing of objects in this bucket. - CorsConfiguration BucketCorsConfigurationPtrInput - // Specifies the S3 Intelligent-Tiering configuration for an Amazon S3 bucket. + AccelerateConfiguration BucketAccelerateConfigurationPtrInput + AccessControl pulumi.StringPtrInput + AnalyticsConfigurations BucketAnalyticsConfigurationArrayInput + BucketEncryption BucketEncryptionPtrInput + BucketName pulumi.StringPtrInput + CorsConfiguration BucketCorsConfigurationPtrInput IntelligentTieringConfigurations BucketIntelligentTieringConfigurationArrayInput - // The inventory configuration for an Amazon S3 bucket. - InventoryConfigurations BucketInventoryConfigurationArrayInput - // Rules that define how Amazon S3 manages objects during their lifetime. - LifecycleConfiguration BucketLifecycleConfigurationPtrInput - // Settings that define where logs are stored. - LoggingConfiguration BucketLoggingConfigurationPtrInput - // Settings that define a metrics configuration for the CloudWatch request metrics from the bucket. - MetricsConfigurations BucketMetricsConfigurationArrayInput - // Configuration that defines how Amazon S3 handles bucket notifications. - NotificationConfiguration BucketNotificationConfigurationPtrInput - // Places an Object Lock configuration on the specified bucket. - ObjectLockConfiguration BucketObjectLockConfigurationPtrInput - // Indicates whether this bucket has an Object Lock configuration enabled. - ObjectLockEnabled pulumi.BoolPtrInput - // Specifies the container element for object ownership rules. - OwnershipControls BucketOwnershipControlsPtrInput - PublicAccessBlockConfiguration BucketPublicAccessBlockConfigurationPtrInput - // Configuration for replicating objects in an S3 bucket. - ReplicationConfiguration BucketReplicationConfigurationPtrInput - // An arbitrary set of tags (key-value pairs) for this S3 bucket. - Tags BucketTagArrayInput - VersioningConfiguration BucketVersioningConfigurationPtrInput - WebsiteConfiguration BucketWebsiteConfigurationPtrInput + InventoryConfigurations BucketInventoryConfigurationArrayInput + LifecycleConfiguration BucketLifecycleConfigurationPtrInput + LoggingConfiguration BucketLoggingConfigurationPtrInput + MetricsConfigurations BucketMetricsConfigurationArrayInput + NotificationConfiguration BucketNotificationConfigurationPtrInput + ObjectLockConfiguration BucketObjectLockConfigurationPtrInput + ObjectLockEnabled pulumi.BoolPtrInput + OwnershipControls BucketOwnershipControlsPtrInput + PublicAccessBlockConfiguration BucketPublicAccessBlockConfigurationPtrInput + ReplicationConfiguration BucketReplicationConfigurationPtrInput + Tags BucketTagArrayInput + VersioningConfiguration BucketVersioningConfigurationPtrInput + WebsiteConfiguration BucketWebsiteConfigurationPtrInput } func (BucketArgs) ElementType() reflect.Type { @@ -236,22 +183,18 @@ func (o BucketOutput) ToOutput(ctx context.Context) pulumix.Output[*Bucket] { } } -// Configuration for the transfer acceleration state. func (o BucketOutput) AccelerateConfiguration() BucketAccelerateConfigurationPtrOutput { return o.ApplyT(func(v *Bucket) BucketAccelerateConfigurationPtrOutput { return v.AccelerateConfiguration }).(BucketAccelerateConfigurationPtrOutput) } -// A canned access control list (ACL) that grants predefined permissions to the bucket. -func (o BucketOutput) AccessControl() BucketAccessControlPtrOutput { - return o.ApplyT(func(v *Bucket) BucketAccessControlPtrOutput { return v.AccessControl }).(BucketAccessControlPtrOutput) +func (o BucketOutput) AccessControl() pulumi.StringPtrOutput { + return o.ApplyT(func(v *Bucket) pulumi.StringPtrOutput { return v.AccessControl }).(pulumi.StringPtrOutput) } -// The configuration and any analyses for the analytics filter of an Amazon S3 bucket. func (o BucketOutput) AnalyticsConfigurations() BucketAnalyticsConfigurationArrayOutput { return o.ApplyT(func(v *Bucket) BucketAnalyticsConfigurationArrayOutput { return v.AnalyticsConfigurations }).(BucketAnalyticsConfigurationArrayOutput) } -// The Amazon Resource Name (ARN) of the specified bucket. func (o BucketOutput) Arn() pulumi.StringOutput { return o.ApplyT(func(v *Bucket) pulumi.StringOutput { return v.Arn }).(pulumi.StringOutput) } @@ -260,69 +203,56 @@ func (o BucketOutput) BucketEncryption() BucketEncryptionPtrOutput { return o.ApplyT(func(v *Bucket) BucketEncryptionPtrOutput { return v.BucketEncryption }).(BucketEncryptionPtrOutput) } -// A name for the bucket. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. func (o BucketOutput) BucketName() pulumi.StringPtrOutput { return o.ApplyT(func(v *Bucket) pulumi.StringPtrOutput { return v.BucketName }).(pulumi.StringPtrOutput) } -// Rules that define cross-origin resource sharing of objects in this bucket. func (o BucketOutput) CorsConfiguration() BucketCorsConfigurationPtrOutput { return o.ApplyT(func(v *Bucket) BucketCorsConfigurationPtrOutput { return v.CorsConfiguration }).(BucketCorsConfigurationPtrOutput) } -// The IPv4 DNS name of the specified bucket. func (o BucketOutput) DomainName() pulumi.StringOutput { return o.ApplyT(func(v *Bucket) pulumi.StringOutput { return v.DomainName }).(pulumi.StringOutput) } -// The IPv6 DNS name of the specified bucket. For more information about dual-stack endpoints, see [Using Amazon S3 Dual-Stack Endpoints](https://docs.aws.amazon.com/AmazonS3/latest/dev/dual-stack-endpoints.html). func (o BucketOutput) DualStackDomainName() pulumi.StringOutput { return o.ApplyT(func(v *Bucket) pulumi.StringOutput { return v.DualStackDomainName }).(pulumi.StringOutput) } -// Specifies the S3 Intelligent-Tiering configuration for an Amazon S3 bucket. func (o BucketOutput) IntelligentTieringConfigurations() BucketIntelligentTieringConfigurationArrayOutput { return o.ApplyT(func(v *Bucket) BucketIntelligentTieringConfigurationArrayOutput { return v.IntelligentTieringConfigurations }).(BucketIntelligentTieringConfigurationArrayOutput) } -// The inventory configuration for an Amazon S3 bucket. func (o BucketOutput) InventoryConfigurations() BucketInventoryConfigurationArrayOutput { return o.ApplyT(func(v *Bucket) BucketInventoryConfigurationArrayOutput { return v.InventoryConfigurations }).(BucketInventoryConfigurationArrayOutput) } -// Rules that define how Amazon S3 manages objects during their lifetime. func (o BucketOutput) LifecycleConfiguration() BucketLifecycleConfigurationPtrOutput { return o.ApplyT(func(v *Bucket) BucketLifecycleConfigurationPtrOutput { return v.LifecycleConfiguration }).(BucketLifecycleConfigurationPtrOutput) } -// Settings that define where logs are stored. func (o BucketOutput) LoggingConfiguration() BucketLoggingConfigurationPtrOutput { return o.ApplyT(func(v *Bucket) BucketLoggingConfigurationPtrOutput { return v.LoggingConfiguration }).(BucketLoggingConfigurationPtrOutput) } -// Settings that define a metrics configuration for the CloudWatch request metrics from the bucket. func (o BucketOutput) MetricsConfigurations() BucketMetricsConfigurationArrayOutput { return o.ApplyT(func(v *Bucket) BucketMetricsConfigurationArrayOutput { return v.MetricsConfigurations }).(BucketMetricsConfigurationArrayOutput) } -// Configuration that defines how Amazon S3 handles bucket notifications. func (o BucketOutput) NotificationConfiguration() BucketNotificationConfigurationPtrOutput { return o.ApplyT(func(v *Bucket) BucketNotificationConfigurationPtrOutput { return v.NotificationConfiguration }).(BucketNotificationConfigurationPtrOutput) } -// Places an Object Lock configuration on the specified bucket. func (o BucketOutput) ObjectLockConfiguration() BucketObjectLockConfigurationPtrOutput { return o.ApplyT(func(v *Bucket) BucketObjectLockConfigurationPtrOutput { return v.ObjectLockConfiguration }).(BucketObjectLockConfigurationPtrOutput) } -// Indicates whether this bucket has an Object Lock configuration enabled. func (o BucketOutput) ObjectLockEnabled() pulumi.BoolPtrOutput { return o.ApplyT(func(v *Bucket) pulumi.BoolPtrOutput { return v.ObjectLockEnabled }).(pulumi.BoolPtrOutput) } -// Specifies the container element for object ownership rules. func (o BucketOutput) OwnershipControls() BucketOwnershipControlsPtrOutput { return o.ApplyT(func(v *Bucket) BucketOwnershipControlsPtrOutput { return v.OwnershipControls }).(BucketOwnershipControlsPtrOutput) } @@ -331,17 +261,14 @@ func (o BucketOutput) PublicAccessBlockConfiguration() BucketPublicAccessBlockCo return o.ApplyT(func(v *Bucket) BucketPublicAccessBlockConfigurationPtrOutput { return v.PublicAccessBlockConfiguration }).(BucketPublicAccessBlockConfigurationPtrOutput) } -// Returns the regional domain name of the specified bucket. func (o BucketOutput) RegionalDomainName() pulumi.StringOutput { return o.ApplyT(func(v *Bucket) pulumi.StringOutput { return v.RegionalDomainName }).(pulumi.StringOutput) } -// Configuration for replicating objects in an S3 bucket. func (o BucketOutput) ReplicationConfiguration() BucketReplicationConfigurationPtrOutput { return o.ApplyT(func(v *Bucket) BucketReplicationConfigurationPtrOutput { return v.ReplicationConfiguration }).(BucketReplicationConfigurationPtrOutput) } -// An arbitrary set of tags (key-value pairs) for this S3 bucket. func (o BucketOutput) Tags() BucketTagArrayOutput { return o.ApplyT(func(v *Bucket) BucketTagArrayOutput { return v.Tags }).(BucketTagArrayOutput) } @@ -354,7 +281,6 @@ func (o BucketOutput) WebsiteConfiguration() BucketWebsiteConfigurationPtrOutput return o.ApplyT(func(v *Bucket) BucketWebsiteConfigurationPtrOutput { return v.WebsiteConfiguration }).(BucketWebsiteConfigurationPtrOutput) } -// The Amazon S3 website endpoint for the specified bucket. func (o BucketOutput) WebsiteUrl() pulumi.StringOutput { return o.ApplyT(func(v *Bucket) pulumi.StringOutput { return v.WebsiteUrl }).(pulumi.StringOutput) } diff --git a/sdk/go/aws/s3/getBucket.go b/sdk/go/aws/s3/getBucket.go index 8f60488268..c8e1e43c3c 100644 --- a/sdk/go/aws/s3/getBucket.go +++ b/sdk/go/aws/s3/getBucket.go @@ -24,51 +24,34 @@ func LookupBucket(ctx *pulumi.Context, args *LookupBucketArgs, opts ...pulumi.In } type LookupBucketArgs struct { - // A name for the bucket. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. - BucketName string `pulumi:"bucketName"` + Id string `pulumi:"id"` } type LookupBucketResult struct { - // Configuration for the transfer acceleration state. - AccelerateConfiguration *BucketAccelerateConfiguration `pulumi:"accelerateConfiguration"` - // The configuration and any analyses for the analytics filter of an Amazon S3 bucket. - AnalyticsConfigurations []BucketAnalyticsConfiguration `pulumi:"analyticsConfigurations"` - // The Amazon Resource Name (ARN) of the specified bucket. - Arn *string `pulumi:"arn"` - BucketEncryption *BucketEncryption `pulumi:"bucketEncryption"` - // Rules that define cross-origin resource sharing of objects in this bucket. - CorsConfiguration *BucketCorsConfiguration `pulumi:"corsConfiguration"` - // The IPv4 DNS name of the specified bucket. - DomainName *string `pulumi:"domainName"` - // The IPv6 DNS name of the specified bucket. For more information about dual-stack endpoints, see [Using Amazon S3 Dual-Stack Endpoints](https://docs.aws.amazon.com/AmazonS3/latest/dev/dual-stack-endpoints.html). - DualStackDomainName *string `pulumi:"dualStackDomainName"` - // Specifies the S3 Intelligent-Tiering configuration for an Amazon S3 bucket. + AccelerateConfiguration *BucketAccelerateConfiguration `pulumi:"accelerateConfiguration"` + AccessControl *string `pulumi:"accessControl"` + AnalyticsConfigurations []BucketAnalyticsConfiguration `pulumi:"analyticsConfigurations"` + Arn *string `pulumi:"arn"` + BucketEncryption *BucketEncryption `pulumi:"bucketEncryption"` + CorsConfiguration *BucketCorsConfiguration `pulumi:"corsConfiguration"` + DomainName *string `pulumi:"domainName"` + DualStackDomainName *string `pulumi:"dualStackDomainName"` + Id *string `pulumi:"id"` IntelligentTieringConfigurations []BucketIntelligentTieringConfiguration `pulumi:"intelligentTieringConfigurations"` - // The inventory configuration for an Amazon S3 bucket. - InventoryConfigurations []BucketInventoryConfiguration `pulumi:"inventoryConfigurations"` - // Rules that define how Amazon S3 manages objects during their lifetime. - LifecycleConfiguration *BucketLifecycleConfiguration `pulumi:"lifecycleConfiguration"` - // Settings that define where logs are stored. - LoggingConfiguration *BucketLoggingConfiguration `pulumi:"loggingConfiguration"` - // Settings that define a metrics configuration for the CloudWatch request metrics from the bucket. - MetricsConfigurations []BucketMetricsConfiguration `pulumi:"metricsConfigurations"` - // Configuration that defines how Amazon S3 handles bucket notifications. - NotificationConfiguration *BucketNotificationConfiguration `pulumi:"notificationConfiguration"` - // Places an Object Lock configuration on the specified bucket. - ObjectLockConfiguration *BucketObjectLockConfiguration `pulumi:"objectLockConfiguration"` - // Specifies the container element for object ownership rules. - OwnershipControls *BucketOwnershipControls `pulumi:"ownershipControls"` - PublicAccessBlockConfiguration *BucketPublicAccessBlockConfiguration `pulumi:"publicAccessBlockConfiguration"` - // Returns the regional domain name of the specified bucket. - RegionalDomainName *string `pulumi:"regionalDomainName"` - // Configuration for replicating objects in an S3 bucket. - ReplicationConfiguration *BucketReplicationConfiguration `pulumi:"replicationConfiguration"` - // An arbitrary set of tags (key-value pairs) for this S3 bucket. - Tags []BucketTag `pulumi:"tags"` - VersioningConfiguration *BucketVersioningConfiguration `pulumi:"versioningConfiguration"` - WebsiteConfiguration *BucketWebsiteConfiguration `pulumi:"websiteConfiguration"` - // The Amazon S3 website endpoint for the specified bucket. - WebsiteUrl *string `pulumi:"websiteUrl"` + InventoryConfigurations []BucketInventoryConfiguration `pulumi:"inventoryConfigurations"` + LifecycleConfiguration *BucketLifecycleConfiguration `pulumi:"lifecycleConfiguration"` + LoggingConfiguration *BucketLoggingConfiguration `pulumi:"loggingConfiguration"` + MetricsConfigurations []BucketMetricsConfiguration `pulumi:"metricsConfigurations"` + NotificationConfiguration *BucketNotificationConfiguration `pulumi:"notificationConfiguration"` + ObjectLockConfiguration *BucketObjectLockConfiguration `pulumi:"objectLockConfiguration"` + OwnershipControls *BucketOwnershipControls `pulumi:"ownershipControls"` + PublicAccessBlockConfiguration *BucketPublicAccessBlockConfiguration `pulumi:"publicAccessBlockConfiguration"` + RegionalDomainName *string `pulumi:"regionalDomainName"` + ReplicationConfiguration *BucketReplicationConfiguration `pulumi:"replicationConfiguration"` + Tags []BucketTag `pulumi:"tags"` + VersioningConfiguration *BucketVersioningConfiguration `pulumi:"versioningConfiguration"` + WebsiteConfiguration *BucketWebsiteConfiguration `pulumi:"websiteConfiguration"` + WebsiteUrl *string `pulumi:"websiteUrl"` } func LookupBucketOutput(ctx *pulumi.Context, args LookupBucketOutputArgs, opts ...pulumi.InvokeOption) LookupBucketResultOutput { @@ -85,8 +68,7 @@ func LookupBucketOutput(ctx *pulumi.Context, args LookupBucketOutputArgs, opts . } type LookupBucketOutputArgs struct { - // A name for the bucket. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. - BucketName pulumi.StringInput `pulumi:"bucketName"` + Id pulumi.StringInput `pulumi:"id"` } func (LookupBucketOutputArgs) ElementType() reflect.Type { @@ -113,17 +95,18 @@ func (o LookupBucketResultOutput) ToOutput(ctx context.Context) pulumix.Output[L } } -// Configuration for the transfer acceleration state. func (o LookupBucketResultOutput) AccelerateConfiguration() BucketAccelerateConfigurationPtrOutput { return o.ApplyT(func(v LookupBucketResult) *BucketAccelerateConfiguration { return v.AccelerateConfiguration }).(BucketAccelerateConfigurationPtrOutput) } -// The configuration and any analyses for the analytics filter of an Amazon S3 bucket. +func (o LookupBucketResultOutput) AccessControl() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupBucketResult) *string { return v.AccessControl }).(pulumi.StringPtrOutput) +} + func (o LookupBucketResultOutput) AnalyticsConfigurations() BucketAnalyticsConfigurationArrayOutput { return o.ApplyT(func(v LookupBucketResult) []BucketAnalyticsConfiguration { return v.AnalyticsConfigurations }).(BucketAnalyticsConfigurationArrayOutput) } -// The Amazon Resource Name (ARN) of the specified bucket. func (o LookupBucketResultOutput) Arn() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupBucketResult) *string { return v.Arn }).(pulumi.StringPtrOutput) } @@ -132,59 +115,52 @@ func (o LookupBucketResultOutput) BucketEncryption() BucketEncryptionPtrOutput { return o.ApplyT(func(v LookupBucketResult) *BucketEncryption { return v.BucketEncryption }).(BucketEncryptionPtrOutput) } -// Rules that define cross-origin resource sharing of objects in this bucket. func (o LookupBucketResultOutput) CorsConfiguration() BucketCorsConfigurationPtrOutput { return o.ApplyT(func(v LookupBucketResult) *BucketCorsConfiguration { return v.CorsConfiguration }).(BucketCorsConfigurationPtrOutput) } -// The IPv4 DNS name of the specified bucket. func (o LookupBucketResultOutput) DomainName() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupBucketResult) *string { return v.DomainName }).(pulumi.StringPtrOutput) } -// The IPv6 DNS name of the specified bucket. For more information about dual-stack endpoints, see [Using Amazon S3 Dual-Stack Endpoints](https://docs.aws.amazon.com/AmazonS3/latest/dev/dual-stack-endpoints.html). func (o LookupBucketResultOutput) DualStackDomainName() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupBucketResult) *string { return v.DualStackDomainName }).(pulumi.StringPtrOutput) } -// Specifies the S3 Intelligent-Tiering configuration for an Amazon S3 bucket. +func (o LookupBucketResultOutput) Id() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupBucketResult) *string { return v.Id }).(pulumi.StringPtrOutput) +} + func (o LookupBucketResultOutput) IntelligentTieringConfigurations() BucketIntelligentTieringConfigurationArrayOutput { return o.ApplyT(func(v LookupBucketResult) []BucketIntelligentTieringConfiguration { return v.IntelligentTieringConfigurations }).(BucketIntelligentTieringConfigurationArrayOutput) } -// The inventory configuration for an Amazon S3 bucket. func (o LookupBucketResultOutput) InventoryConfigurations() BucketInventoryConfigurationArrayOutput { return o.ApplyT(func(v LookupBucketResult) []BucketInventoryConfiguration { return v.InventoryConfigurations }).(BucketInventoryConfigurationArrayOutput) } -// Rules that define how Amazon S3 manages objects during their lifetime. func (o LookupBucketResultOutput) LifecycleConfiguration() BucketLifecycleConfigurationPtrOutput { return o.ApplyT(func(v LookupBucketResult) *BucketLifecycleConfiguration { return v.LifecycleConfiguration }).(BucketLifecycleConfigurationPtrOutput) } -// Settings that define where logs are stored. func (o LookupBucketResultOutput) LoggingConfiguration() BucketLoggingConfigurationPtrOutput { return o.ApplyT(func(v LookupBucketResult) *BucketLoggingConfiguration { return v.LoggingConfiguration }).(BucketLoggingConfigurationPtrOutput) } -// Settings that define a metrics configuration for the CloudWatch request metrics from the bucket. func (o LookupBucketResultOutput) MetricsConfigurations() BucketMetricsConfigurationArrayOutput { return o.ApplyT(func(v LookupBucketResult) []BucketMetricsConfiguration { return v.MetricsConfigurations }).(BucketMetricsConfigurationArrayOutput) } -// Configuration that defines how Amazon S3 handles bucket notifications. func (o LookupBucketResultOutput) NotificationConfiguration() BucketNotificationConfigurationPtrOutput { return o.ApplyT(func(v LookupBucketResult) *BucketNotificationConfiguration { return v.NotificationConfiguration }).(BucketNotificationConfigurationPtrOutput) } -// Places an Object Lock configuration on the specified bucket. func (o LookupBucketResultOutput) ObjectLockConfiguration() BucketObjectLockConfigurationPtrOutput { return o.ApplyT(func(v LookupBucketResult) *BucketObjectLockConfiguration { return v.ObjectLockConfiguration }).(BucketObjectLockConfigurationPtrOutput) } -// Specifies the container element for object ownership rules. func (o LookupBucketResultOutput) OwnershipControls() BucketOwnershipControlsPtrOutput { return o.ApplyT(func(v LookupBucketResult) *BucketOwnershipControls { return v.OwnershipControls }).(BucketOwnershipControlsPtrOutput) } @@ -195,17 +171,14 @@ func (o LookupBucketResultOutput) PublicAccessBlockConfiguration() BucketPublicA }).(BucketPublicAccessBlockConfigurationPtrOutput) } -// Returns the regional domain name of the specified bucket. func (o LookupBucketResultOutput) RegionalDomainName() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupBucketResult) *string { return v.RegionalDomainName }).(pulumi.StringPtrOutput) } -// Configuration for replicating objects in an S3 bucket. func (o LookupBucketResultOutput) ReplicationConfiguration() BucketReplicationConfigurationPtrOutput { return o.ApplyT(func(v LookupBucketResult) *BucketReplicationConfiguration { return v.ReplicationConfiguration }).(BucketReplicationConfigurationPtrOutput) } -// An arbitrary set of tags (key-value pairs) for this S3 bucket. func (o LookupBucketResultOutput) Tags() BucketTagArrayOutput { return o.ApplyT(func(v LookupBucketResult) []BucketTag { return v.Tags }).(BucketTagArrayOutput) } @@ -218,7 +191,6 @@ func (o LookupBucketResultOutput) WebsiteConfiguration() BucketWebsiteConfigurat return o.ApplyT(func(v LookupBucketResult) *BucketWebsiteConfiguration { return v.WebsiteConfiguration }).(BucketWebsiteConfigurationPtrOutput) } -// The Amazon S3 website endpoint for the specified bucket. func (o LookupBucketResultOutput) WebsiteUrl() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupBucketResult) *string { return v.WebsiteUrl }).(pulumi.StringPtrOutput) } diff --git a/sdk/go/aws/s3/pulumiEnums.go b/sdk/go/aws/s3/pulumiEnums.go index 2245853733..6a0bee6b6d 100644 --- a/sdk/go/aws/s3/pulumiEnums.go +++ b/sdk/go/aws/s3/pulumiEnums.go @@ -114,4722 +114,6 @@ func (o AccessPointNetworkOriginPtrOutput) ToStringPtrOutputWithContext(ctx cont }).(pulumi.StringPtrOutput) } -// Configures the transfer acceleration state for an Amazon S3 bucket. -type BucketAccelerateConfigurationAccelerationStatus string - -const ( - BucketAccelerateConfigurationAccelerationStatusEnabled = BucketAccelerateConfigurationAccelerationStatus("Enabled") - BucketAccelerateConfigurationAccelerationStatusSuspended = BucketAccelerateConfigurationAccelerationStatus("Suspended") -) - -func (BucketAccelerateConfigurationAccelerationStatus) ElementType() reflect.Type { - return reflect.TypeOf((*BucketAccelerateConfigurationAccelerationStatus)(nil)).Elem() -} - -func (e BucketAccelerateConfigurationAccelerationStatus) ToBucketAccelerateConfigurationAccelerationStatusOutput() BucketAccelerateConfigurationAccelerationStatusOutput { - return pulumi.ToOutput(e).(BucketAccelerateConfigurationAccelerationStatusOutput) -} - -func (e BucketAccelerateConfigurationAccelerationStatus) ToBucketAccelerateConfigurationAccelerationStatusOutputWithContext(ctx context.Context) BucketAccelerateConfigurationAccelerationStatusOutput { - return pulumi.ToOutputWithContext(ctx, e).(BucketAccelerateConfigurationAccelerationStatusOutput) -} - -func (e BucketAccelerateConfigurationAccelerationStatus) ToBucketAccelerateConfigurationAccelerationStatusPtrOutput() BucketAccelerateConfigurationAccelerationStatusPtrOutput { - return e.ToBucketAccelerateConfigurationAccelerationStatusPtrOutputWithContext(context.Background()) -} - -func (e BucketAccelerateConfigurationAccelerationStatus) ToBucketAccelerateConfigurationAccelerationStatusPtrOutputWithContext(ctx context.Context) BucketAccelerateConfigurationAccelerationStatusPtrOutput { - return BucketAccelerateConfigurationAccelerationStatus(e).ToBucketAccelerateConfigurationAccelerationStatusOutputWithContext(ctx).ToBucketAccelerateConfigurationAccelerationStatusPtrOutputWithContext(ctx) -} - -func (e BucketAccelerateConfigurationAccelerationStatus) ToStringOutput() pulumi.StringOutput { - return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) -} - -func (e BucketAccelerateConfigurationAccelerationStatus) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) -} - -func (e BucketAccelerateConfigurationAccelerationStatus) ToStringPtrOutput() pulumi.StringPtrOutput { - return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) -} - -func (e BucketAccelerateConfigurationAccelerationStatus) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) -} - -type BucketAccelerateConfigurationAccelerationStatusOutput struct{ *pulumi.OutputState } - -func (BucketAccelerateConfigurationAccelerationStatusOutput) ElementType() reflect.Type { - return reflect.TypeOf((*BucketAccelerateConfigurationAccelerationStatus)(nil)).Elem() -} - -func (o BucketAccelerateConfigurationAccelerationStatusOutput) ToBucketAccelerateConfigurationAccelerationStatusOutput() BucketAccelerateConfigurationAccelerationStatusOutput { - return o -} - -func (o BucketAccelerateConfigurationAccelerationStatusOutput) ToBucketAccelerateConfigurationAccelerationStatusOutputWithContext(ctx context.Context) BucketAccelerateConfigurationAccelerationStatusOutput { - return o -} - -func (o BucketAccelerateConfigurationAccelerationStatusOutput) ToBucketAccelerateConfigurationAccelerationStatusPtrOutput() BucketAccelerateConfigurationAccelerationStatusPtrOutput { - return o.ToBucketAccelerateConfigurationAccelerationStatusPtrOutputWithContext(context.Background()) -} - -func (o BucketAccelerateConfigurationAccelerationStatusOutput) ToBucketAccelerateConfigurationAccelerationStatusPtrOutputWithContext(ctx context.Context) BucketAccelerateConfigurationAccelerationStatusPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v BucketAccelerateConfigurationAccelerationStatus) *BucketAccelerateConfigurationAccelerationStatus { - return &v - }).(BucketAccelerateConfigurationAccelerationStatusPtrOutput) -} - -func (o BucketAccelerateConfigurationAccelerationStatusOutput) ToOutput(ctx context.Context) pulumix.Output[BucketAccelerateConfigurationAccelerationStatus] { - return pulumix.Output[BucketAccelerateConfigurationAccelerationStatus]{ - OutputState: o.OutputState, - } -} - -func (o BucketAccelerateConfigurationAccelerationStatusOutput) ToStringOutput() pulumi.StringOutput { - return o.ToStringOutputWithContext(context.Background()) -} - -func (o BucketAccelerateConfigurationAccelerationStatusOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e BucketAccelerateConfigurationAccelerationStatus) string { - return string(e) - }).(pulumi.StringOutput) -} - -func (o BucketAccelerateConfigurationAccelerationStatusOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o BucketAccelerateConfigurationAccelerationStatusOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e BucketAccelerateConfigurationAccelerationStatus) *string { - v := string(e) - return &v - }).(pulumi.StringPtrOutput) -} - -type BucketAccelerateConfigurationAccelerationStatusPtrOutput struct{ *pulumi.OutputState } - -func (BucketAccelerateConfigurationAccelerationStatusPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**BucketAccelerateConfigurationAccelerationStatus)(nil)).Elem() -} - -func (o BucketAccelerateConfigurationAccelerationStatusPtrOutput) ToBucketAccelerateConfigurationAccelerationStatusPtrOutput() BucketAccelerateConfigurationAccelerationStatusPtrOutput { - return o -} - -func (o BucketAccelerateConfigurationAccelerationStatusPtrOutput) ToBucketAccelerateConfigurationAccelerationStatusPtrOutputWithContext(ctx context.Context) BucketAccelerateConfigurationAccelerationStatusPtrOutput { - return o -} - -func (o BucketAccelerateConfigurationAccelerationStatusPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*BucketAccelerateConfigurationAccelerationStatus] { - return pulumix.Output[*BucketAccelerateConfigurationAccelerationStatus]{ - OutputState: o.OutputState, - } -} - -func (o BucketAccelerateConfigurationAccelerationStatusPtrOutput) Elem() BucketAccelerateConfigurationAccelerationStatusOutput { - return o.ApplyT(func(v *BucketAccelerateConfigurationAccelerationStatus) BucketAccelerateConfigurationAccelerationStatus { - if v != nil { - return *v - } - var ret BucketAccelerateConfigurationAccelerationStatus - return ret - }).(BucketAccelerateConfigurationAccelerationStatusOutput) -} - -func (o BucketAccelerateConfigurationAccelerationStatusPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o BucketAccelerateConfigurationAccelerationStatusPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e *BucketAccelerateConfigurationAccelerationStatus) *string { - if e == nil { - return nil - } - v := string(*e) - return &v - }).(pulumi.StringPtrOutput) -} - -// BucketAccelerateConfigurationAccelerationStatusInput is an input type that accepts BucketAccelerateConfigurationAccelerationStatusArgs and BucketAccelerateConfigurationAccelerationStatusOutput values. -// You can construct a concrete instance of `BucketAccelerateConfigurationAccelerationStatusInput` via: -// -// BucketAccelerateConfigurationAccelerationStatusArgs{...} -type BucketAccelerateConfigurationAccelerationStatusInput interface { - pulumi.Input - - ToBucketAccelerateConfigurationAccelerationStatusOutput() BucketAccelerateConfigurationAccelerationStatusOutput - ToBucketAccelerateConfigurationAccelerationStatusOutputWithContext(context.Context) BucketAccelerateConfigurationAccelerationStatusOutput -} - -var bucketAccelerateConfigurationAccelerationStatusPtrType = reflect.TypeOf((**BucketAccelerateConfigurationAccelerationStatus)(nil)).Elem() - -type BucketAccelerateConfigurationAccelerationStatusPtrInput interface { - pulumi.Input - - ToBucketAccelerateConfigurationAccelerationStatusPtrOutput() BucketAccelerateConfigurationAccelerationStatusPtrOutput - ToBucketAccelerateConfigurationAccelerationStatusPtrOutputWithContext(context.Context) BucketAccelerateConfigurationAccelerationStatusPtrOutput -} - -type bucketAccelerateConfigurationAccelerationStatusPtr string - -func BucketAccelerateConfigurationAccelerationStatusPtr(v string) BucketAccelerateConfigurationAccelerationStatusPtrInput { - return (*bucketAccelerateConfigurationAccelerationStatusPtr)(&v) -} - -func (*bucketAccelerateConfigurationAccelerationStatusPtr) ElementType() reflect.Type { - return bucketAccelerateConfigurationAccelerationStatusPtrType -} - -func (in *bucketAccelerateConfigurationAccelerationStatusPtr) ToBucketAccelerateConfigurationAccelerationStatusPtrOutput() BucketAccelerateConfigurationAccelerationStatusPtrOutput { - return pulumi.ToOutput(in).(BucketAccelerateConfigurationAccelerationStatusPtrOutput) -} - -func (in *bucketAccelerateConfigurationAccelerationStatusPtr) ToBucketAccelerateConfigurationAccelerationStatusPtrOutputWithContext(ctx context.Context) BucketAccelerateConfigurationAccelerationStatusPtrOutput { - return pulumi.ToOutputWithContext(ctx, in).(BucketAccelerateConfigurationAccelerationStatusPtrOutput) -} - -func (in *bucketAccelerateConfigurationAccelerationStatusPtr) ToOutput(ctx context.Context) pulumix.Output[*BucketAccelerateConfigurationAccelerationStatus] { - return pulumix.Output[*BucketAccelerateConfigurationAccelerationStatus]{ - OutputState: in.ToBucketAccelerateConfigurationAccelerationStatusPtrOutputWithContext(ctx).OutputState, - } -} - -// A canned access control list (ACL) that grants predefined permissions to the bucket. -type BucketAccessControl string - -const ( - BucketAccessControlAuthenticatedRead = BucketAccessControl("AuthenticatedRead") - BucketAccessControlAwsExecRead = BucketAccessControl("AwsExecRead") - BucketAccessControlBucketOwnerFullControl = BucketAccessControl("BucketOwnerFullControl") - BucketAccessControlBucketOwnerRead = BucketAccessControl("BucketOwnerRead") - BucketAccessControlLogDeliveryWrite = BucketAccessControl("LogDeliveryWrite") - BucketAccessControlPrivate = BucketAccessControl("Private") - BucketAccessControlPublicRead = BucketAccessControl("PublicRead") - BucketAccessControlPublicReadWrite = BucketAccessControl("PublicReadWrite") -) - -func (BucketAccessControl) ElementType() reflect.Type { - return reflect.TypeOf((*BucketAccessControl)(nil)).Elem() -} - -func (e BucketAccessControl) ToBucketAccessControlOutput() BucketAccessControlOutput { - return pulumi.ToOutput(e).(BucketAccessControlOutput) -} - -func (e BucketAccessControl) ToBucketAccessControlOutputWithContext(ctx context.Context) BucketAccessControlOutput { - return pulumi.ToOutputWithContext(ctx, e).(BucketAccessControlOutput) -} - -func (e BucketAccessControl) ToBucketAccessControlPtrOutput() BucketAccessControlPtrOutput { - return e.ToBucketAccessControlPtrOutputWithContext(context.Background()) -} - -func (e BucketAccessControl) ToBucketAccessControlPtrOutputWithContext(ctx context.Context) BucketAccessControlPtrOutput { - return BucketAccessControl(e).ToBucketAccessControlOutputWithContext(ctx).ToBucketAccessControlPtrOutputWithContext(ctx) -} - -func (e BucketAccessControl) ToStringOutput() pulumi.StringOutput { - return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) -} - -func (e BucketAccessControl) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) -} - -func (e BucketAccessControl) ToStringPtrOutput() pulumi.StringPtrOutput { - return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) -} - -func (e BucketAccessControl) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) -} - -type BucketAccessControlOutput struct{ *pulumi.OutputState } - -func (BucketAccessControlOutput) ElementType() reflect.Type { - return reflect.TypeOf((*BucketAccessControl)(nil)).Elem() -} - -func (o BucketAccessControlOutput) ToBucketAccessControlOutput() BucketAccessControlOutput { - return o -} - -func (o BucketAccessControlOutput) ToBucketAccessControlOutputWithContext(ctx context.Context) BucketAccessControlOutput { - return o -} - -func (o BucketAccessControlOutput) ToBucketAccessControlPtrOutput() BucketAccessControlPtrOutput { - return o.ToBucketAccessControlPtrOutputWithContext(context.Background()) -} - -func (o BucketAccessControlOutput) ToBucketAccessControlPtrOutputWithContext(ctx context.Context) BucketAccessControlPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v BucketAccessControl) *BucketAccessControl { - return &v - }).(BucketAccessControlPtrOutput) -} - -func (o BucketAccessControlOutput) ToOutput(ctx context.Context) pulumix.Output[BucketAccessControl] { - return pulumix.Output[BucketAccessControl]{ - OutputState: o.OutputState, - } -} - -func (o BucketAccessControlOutput) ToStringOutput() pulumi.StringOutput { - return o.ToStringOutputWithContext(context.Background()) -} - -func (o BucketAccessControlOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e BucketAccessControl) string { - return string(e) - }).(pulumi.StringOutput) -} - -func (o BucketAccessControlOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o BucketAccessControlOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e BucketAccessControl) *string { - v := string(e) - return &v - }).(pulumi.StringPtrOutput) -} - -type BucketAccessControlPtrOutput struct{ *pulumi.OutputState } - -func (BucketAccessControlPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**BucketAccessControl)(nil)).Elem() -} - -func (o BucketAccessControlPtrOutput) ToBucketAccessControlPtrOutput() BucketAccessControlPtrOutput { - return o -} - -func (o BucketAccessControlPtrOutput) ToBucketAccessControlPtrOutputWithContext(ctx context.Context) BucketAccessControlPtrOutput { - return o -} - -func (o BucketAccessControlPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*BucketAccessControl] { - return pulumix.Output[*BucketAccessControl]{ - OutputState: o.OutputState, - } -} - -func (o BucketAccessControlPtrOutput) Elem() BucketAccessControlOutput { - return o.ApplyT(func(v *BucketAccessControl) BucketAccessControl { - if v != nil { - return *v - } - var ret BucketAccessControl - return ret - }).(BucketAccessControlOutput) -} - -func (o BucketAccessControlPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o BucketAccessControlPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e *BucketAccessControl) *string { - if e == nil { - return nil - } - v := string(*e) - return &v - }).(pulumi.StringPtrOutput) -} - -// BucketAccessControlInput is an input type that accepts BucketAccessControlArgs and BucketAccessControlOutput values. -// You can construct a concrete instance of `BucketAccessControlInput` via: -// -// BucketAccessControlArgs{...} -type BucketAccessControlInput interface { - pulumi.Input - - ToBucketAccessControlOutput() BucketAccessControlOutput - ToBucketAccessControlOutputWithContext(context.Context) BucketAccessControlOutput -} - -var bucketAccessControlPtrType = reflect.TypeOf((**BucketAccessControl)(nil)).Elem() - -type BucketAccessControlPtrInput interface { - pulumi.Input - - ToBucketAccessControlPtrOutput() BucketAccessControlPtrOutput - ToBucketAccessControlPtrOutputWithContext(context.Context) BucketAccessControlPtrOutput -} - -type bucketAccessControlPtr string - -func BucketAccessControlPtr(v string) BucketAccessControlPtrInput { - return (*bucketAccessControlPtr)(&v) -} - -func (*bucketAccessControlPtr) ElementType() reflect.Type { - return bucketAccessControlPtrType -} - -func (in *bucketAccessControlPtr) ToBucketAccessControlPtrOutput() BucketAccessControlPtrOutput { - return pulumi.ToOutput(in).(BucketAccessControlPtrOutput) -} - -func (in *bucketAccessControlPtr) ToBucketAccessControlPtrOutputWithContext(ctx context.Context) BucketAccessControlPtrOutput { - return pulumi.ToOutputWithContext(ctx, in).(BucketAccessControlPtrOutput) -} - -func (in *bucketAccessControlPtr) ToOutput(ctx context.Context) pulumix.Output[*BucketAccessControl] { - return pulumix.Output[*BucketAccessControl]{ - OutputState: in.ToBucketAccessControlPtrOutputWithContext(ctx).OutputState, - } -} - -type BucketCorsRuleAllowedMethodsItem string - -const ( - BucketCorsRuleAllowedMethodsItemGet = BucketCorsRuleAllowedMethodsItem("GET") - BucketCorsRuleAllowedMethodsItemPut = BucketCorsRuleAllowedMethodsItem("PUT") - BucketCorsRuleAllowedMethodsItemHead = BucketCorsRuleAllowedMethodsItem("HEAD") - BucketCorsRuleAllowedMethodsItemPost = BucketCorsRuleAllowedMethodsItem("POST") - BucketCorsRuleAllowedMethodsItemDelete = BucketCorsRuleAllowedMethodsItem("DELETE") -) - -func (BucketCorsRuleAllowedMethodsItem) ElementType() reflect.Type { - return reflect.TypeOf((*BucketCorsRuleAllowedMethodsItem)(nil)).Elem() -} - -func (e BucketCorsRuleAllowedMethodsItem) ToBucketCorsRuleAllowedMethodsItemOutput() BucketCorsRuleAllowedMethodsItemOutput { - return pulumi.ToOutput(e).(BucketCorsRuleAllowedMethodsItemOutput) -} - -func (e BucketCorsRuleAllowedMethodsItem) ToBucketCorsRuleAllowedMethodsItemOutputWithContext(ctx context.Context) BucketCorsRuleAllowedMethodsItemOutput { - return pulumi.ToOutputWithContext(ctx, e).(BucketCorsRuleAllowedMethodsItemOutput) -} - -func (e BucketCorsRuleAllowedMethodsItem) ToBucketCorsRuleAllowedMethodsItemPtrOutput() BucketCorsRuleAllowedMethodsItemPtrOutput { - return e.ToBucketCorsRuleAllowedMethodsItemPtrOutputWithContext(context.Background()) -} - -func (e BucketCorsRuleAllowedMethodsItem) ToBucketCorsRuleAllowedMethodsItemPtrOutputWithContext(ctx context.Context) BucketCorsRuleAllowedMethodsItemPtrOutput { - return BucketCorsRuleAllowedMethodsItem(e).ToBucketCorsRuleAllowedMethodsItemOutputWithContext(ctx).ToBucketCorsRuleAllowedMethodsItemPtrOutputWithContext(ctx) -} - -func (e BucketCorsRuleAllowedMethodsItem) ToStringOutput() pulumi.StringOutput { - return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) -} - -func (e BucketCorsRuleAllowedMethodsItem) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) -} - -func (e BucketCorsRuleAllowedMethodsItem) ToStringPtrOutput() pulumi.StringPtrOutput { - return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) -} - -func (e BucketCorsRuleAllowedMethodsItem) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) -} - -type BucketCorsRuleAllowedMethodsItemOutput struct{ *pulumi.OutputState } - -func (BucketCorsRuleAllowedMethodsItemOutput) ElementType() reflect.Type { - return reflect.TypeOf((*BucketCorsRuleAllowedMethodsItem)(nil)).Elem() -} - -func (o BucketCorsRuleAllowedMethodsItemOutput) ToBucketCorsRuleAllowedMethodsItemOutput() BucketCorsRuleAllowedMethodsItemOutput { - return o -} - -func (o BucketCorsRuleAllowedMethodsItemOutput) ToBucketCorsRuleAllowedMethodsItemOutputWithContext(ctx context.Context) BucketCorsRuleAllowedMethodsItemOutput { - return o -} - -func (o BucketCorsRuleAllowedMethodsItemOutput) ToBucketCorsRuleAllowedMethodsItemPtrOutput() BucketCorsRuleAllowedMethodsItemPtrOutput { - return o.ToBucketCorsRuleAllowedMethodsItemPtrOutputWithContext(context.Background()) -} - -func (o BucketCorsRuleAllowedMethodsItemOutput) ToBucketCorsRuleAllowedMethodsItemPtrOutputWithContext(ctx context.Context) BucketCorsRuleAllowedMethodsItemPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v BucketCorsRuleAllowedMethodsItem) *BucketCorsRuleAllowedMethodsItem { - return &v - }).(BucketCorsRuleAllowedMethodsItemPtrOutput) -} - -func (o BucketCorsRuleAllowedMethodsItemOutput) ToOutput(ctx context.Context) pulumix.Output[BucketCorsRuleAllowedMethodsItem] { - return pulumix.Output[BucketCorsRuleAllowedMethodsItem]{ - OutputState: o.OutputState, - } -} - -func (o BucketCorsRuleAllowedMethodsItemOutput) ToStringOutput() pulumi.StringOutput { - return o.ToStringOutputWithContext(context.Background()) -} - -func (o BucketCorsRuleAllowedMethodsItemOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e BucketCorsRuleAllowedMethodsItem) string { - return string(e) - }).(pulumi.StringOutput) -} - -func (o BucketCorsRuleAllowedMethodsItemOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o BucketCorsRuleAllowedMethodsItemOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e BucketCorsRuleAllowedMethodsItem) *string { - v := string(e) - return &v - }).(pulumi.StringPtrOutput) -} - -type BucketCorsRuleAllowedMethodsItemPtrOutput struct{ *pulumi.OutputState } - -func (BucketCorsRuleAllowedMethodsItemPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**BucketCorsRuleAllowedMethodsItem)(nil)).Elem() -} - -func (o BucketCorsRuleAllowedMethodsItemPtrOutput) ToBucketCorsRuleAllowedMethodsItemPtrOutput() BucketCorsRuleAllowedMethodsItemPtrOutput { - return o -} - -func (o BucketCorsRuleAllowedMethodsItemPtrOutput) ToBucketCorsRuleAllowedMethodsItemPtrOutputWithContext(ctx context.Context) BucketCorsRuleAllowedMethodsItemPtrOutput { - return o -} - -func (o BucketCorsRuleAllowedMethodsItemPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*BucketCorsRuleAllowedMethodsItem] { - return pulumix.Output[*BucketCorsRuleAllowedMethodsItem]{ - OutputState: o.OutputState, - } -} - -func (o BucketCorsRuleAllowedMethodsItemPtrOutput) Elem() BucketCorsRuleAllowedMethodsItemOutput { - return o.ApplyT(func(v *BucketCorsRuleAllowedMethodsItem) BucketCorsRuleAllowedMethodsItem { - if v != nil { - return *v - } - var ret BucketCorsRuleAllowedMethodsItem - return ret - }).(BucketCorsRuleAllowedMethodsItemOutput) -} - -func (o BucketCorsRuleAllowedMethodsItemPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o BucketCorsRuleAllowedMethodsItemPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e *BucketCorsRuleAllowedMethodsItem) *string { - if e == nil { - return nil - } - v := string(*e) - return &v - }).(pulumi.StringPtrOutput) -} - -// BucketCorsRuleAllowedMethodsItemInput is an input type that accepts BucketCorsRuleAllowedMethodsItemArgs and BucketCorsRuleAllowedMethodsItemOutput values. -// You can construct a concrete instance of `BucketCorsRuleAllowedMethodsItemInput` via: -// -// BucketCorsRuleAllowedMethodsItemArgs{...} -type BucketCorsRuleAllowedMethodsItemInput interface { - pulumi.Input - - ToBucketCorsRuleAllowedMethodsItemOutput() BucketCorsRuleAllowedMethodsItemOutput - ToBucketCorsRuleAllowedMethodsItemOutputWithContext(context.Context) BucketCorsRuleAllowedMethodsItemOutput -} - -var bucketCorsRuleAllowedMethodsItemPtrType = reflect.TypeOf((**BucketCorsRuleAllowedMethodsItem)(nil)).Elem() - -type BucketCorsRuleAllowedMethodsItemPtrInput interface { - pulumi.Input - - ToBucketCorsRuleAllowedMethodsItemPtrOutput() BucketCorsRuleAllowedMethodsItemPtrOutput - ToBucketCorsRuleAllowedMethodsItemPtrOutputWithContext(context.Context) BucketCorsRuleAllowedMethodsItemPtrOutput -} - -type bucketCorsRuleAllowedMethodsItemPtr string - -func BucketCorsRuleAllowedMethodsItemPtr(v string) BucketCorsRuleAllowedMethodsItemPtrInput { - return (*bucketCorsRuleAllowedMethodsItemPtr)(&v) -} - -func (*bucketCorsRuleAllowedMethodsItemPtr) ElementType() reflect.Type { - return bucketCorsRuleAllowedMethodsItemPtrType -} - -func (in *bucketCorsRuleAllowedMethodsItemPtr) ToBucketCorsRuleAllowedMethodsItemPtrOutput() BucketCorsRuleAllowedMethodsItemPtrOutput { - return pulumi.ToOutput(in).(BucketCorsRuleAllowedMethodsItemPtrOutput) -} - -func (in *bucketCorsRuleAllowedMethodsItemPtr) ToBucketCorsRuleAllowedMethodsItemPtrOutputWithContext(ctx context.Context) BucketCorsRuleAllowedMethodsItemPtrOutput { - return pulumi.ToOutputWithContext(ctx, in).(BucketCorsRuleAllowedMethodsItemPtrOutput) -} - -func (in *bucketCorsRuleAllowedMethodsItemPtr) ToOutput(ctx context.Context) pulumix.Output[*BucketCorsRuleAllowedMethodsItem] { - return pulumix.Output[*BucketCorsRuleAllowedMethodsItem]{ - OutputState: in.ToBucketCorsRuleAllowedMethodsItemPtrOutputWithContext(ctx).OutputState, - } -} - -// BucketCorsRuleAllowedMethodsItemArrayInput is an input type that accepts BucketCorsRuleAllowedMethodsItemArray and BucketCorsRuleAllowedMethodsItemArrayOutput values. -// You can construct a concrete instance of `BucketCorsRuleAllowedMethodsItemArrayInput` via: -// -// BucketCorsRuleAllowedMethodsItemArray{ BucketCorsRuleAllowedMethodsItemArgs{...} } -type BucketCorsRuleAllowedMethodsItemArrayInput interface { - pulumi.Input - - ToBucketCorsRuleAllowedMethodsItemArrayOutput() BucketCorsRuleAllowedMethodsItemArrayOutput - ToBucketCorsRuleAllowedMethodsItemArrayOutputWithContext(context.Context) BucketCorsRuleAllowedMethodsItemArrayOutput -} - -type BucketCorsRuleAllowedMethodsItemArray []BucketCorsRuleAllowedMethodsItem - -func (BucketCorsRuleAllowedMethodsItemArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]BucketCorsRuleAllowedMethodsItem)(nil)).Elem() -} - -func (i BucketCorsRuleAllowedMethodsItemArray) ToBucketCorsRuleAllowedMethodsItemArrayOutput() BucketCorsRuleAllowedMethodsItemArrayOutput { - return i.ToBucketCorsRuleAllowedMethodsItemArrayOutputWithContext(context.Background()) -} - -func (i BucketCorsRuleAllowedMethodsItemArray) ToBucketCorsRuleAllowedMethodsItemArrayOutputWithContext(ctx context.Context) BucketCorsRuleAllowedMethodsItemArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(BucketCorsRuleAllowedMethodsItemArrayOutput) -} - -func (i BucketCorsRuleAllowedMethodsItemArray) ToOutput(ctx context.Context) pulumix.Output[[]BucketCorsRuleAllowedMethodsItem] { - return pulumix.Output[[]BucketCorsRuleAllowedMethodsItem]{ - OutputState: i.ToBucketCorsRuleAllowedMethodsItemArrayOutputWithContext(ctx).OutputState, - } -} - -type BucketCorsRuleAllowedMethodsItemArrayOutput struct{ *pulumi.OutputState } - -func (BucketCorsRuleAllowedMethodsItemArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]BucketCorsRuleAllowedMethodsItem)(nil)).Elem() -} - -func (o BucketCorsRuleAllowedMethodsItemArrayOutput) ToBucketCorsRuleAllowedMethodsItemArrayOutput() BucketCorsRuleAllowedMethodsItemArrayOutput { - return o -} - -func (o BucketCorsRuleAllowedMethodsItemArrayOutput) ToBucketCorsRuleAllowedMethodsItemArrayOutputWithContext(ctx context.Context) BucketCorsRuleAllowedMethodsItemArrayOutput { - return o -} - -func (o BucketCorsRuleAllowedMethodsItemArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]BucketCorsRuleAllowedMethodsItem] { - return pulumix.Output[[]BucketCorsRuleAllowedMethodsItem]{ - OutputState: o.OutputState, - } -} - -func (o BucketCorsRuleAllowedMethodsItemArrayOutput) Index(i pulumi.IntInput) BucketCorsRuleAllowedMethodsItemOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) BucketCorsRuleAllowedMethodsItem { - return vs[0].([]BucketCorsRuleAllowedMethodsItem)[vs[1].(int)] - }).(BucketCorsRuleAllowedMethodsItemOutput) -} - -type BucketDefaultRetentionMode string - -const ( - BucketDefaultRetentionModeCompliance = BucketDefaultRetentionMode("COMPLIANCE") - BucketDefaultRetentionModeGovernance = BucketDefaultRetentionMode("GOVERNANCE") -) - -func (BucketDefaultRetentionMode) ElementType() reflect.Type { - return reflect.TypeOf((*BucketDefaultRetentionMode)(nil)).Elem() -} - -func (e BucketDefaultRetentionMode) ToBucketDefaultRetentionModeOutput() BucketDefaultRetentionModeOutput { - return pulumi.ToOutput(e).(BucketDefaultRetentionModeOutput) -} - -func (e BucketDefaultRetentionMode) ToBucketDefaultRetentionModeOutputWithContext(ctx context.Context) BucketDefaultRetentionModeOutput { - return pulumi.ToOutputWithContext(ctx, e).(BucketDefaultRetentionModeOutput) -} - -func (e BucketDefaultRetentionMode) ToBucketDefaultRetentionModePtrOutput() BucketDefaultRetentionModePtrOutput { - return e.ToBucketDefaultRetentionModePtrOutputWithContext(context.Background()) -} - -func (e BucketDefaultRetentionMode) ToBucketDefaultRetentionModePtrOutputWithContext(ctx context.Context) BucketDefaultRetentionModePtrOutput { - return BucketDefaultRetentionMode(e).ToBucketDefaultRetentionModeOutputWithContext(ctx).ToBucketDefaultRetentionModePtrOutputWithContext(ctx) -} - -func (e BucketDefaultRetentionMode) ToStringOutput() pulumi.StringOutput { - return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) -} - -func (e BucketDefaultRetentionMode) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) -} - -func (e BucketDefaultRetentionMode) ToStringPtrOutput() pulumi.StringPtrOutput { - return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) -} - -func (e BucketDefaultRetentionMode) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) -} - -type BucketDefaultRetentionModeOutput struct{ *pulumi.OutputState } - -func (BucketDefaultRetentionModeOutput) ElementType() reflect.Type { - return reflect.TypeOf((*BucketDefaultRetentionMode)(nil)).Elem() -} - -func (o BucketDefaultRetentionModeOutput) ToBucketDefaultRetentionModeOutput() BucketDefaultRetentionModeOutput { - return o -} - -func (o BucketDefaultRetentionModeOutput) ToBucketDefaultRetentionModeOutputWithContext(ctx context.Context) BucketDefaultRetentionModeOutput { - return o -} - -func (o BucketDefaultRetentionModeOutput) ToBucketDefaultRetentionModePtrOutput() BucketDefaultRetentionModePtrOutput { - return o.ToBucketDefaultRetentionModePtrOutputWithContext(context.Background()) -} - -func (o BucketDefaultRetentionModeOutput) ToBucketDefaultRetentionModePtrOutputWithContext(ctx context.Context) BucketDefaultRetentionModePtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v BucketDefaultRetentionMode) *BucketDefaultRetentionMode { - return &v - }).(BucketDefaultRetentionModePtrOutput) -} - -func (o BucketDefaultRetentionModeOutput) ToOutput(ctx context.Context) pulumix.Output[BucketDefaultRetentionMode] { - return pulumix.Output[BucketDefaultRetentionMode]{ - OutputState: o.OutputState, - } -} - -func (o BucketDefaultRetentionModeOutput) ToStringOutput() pulumi.StringOutput { - return o.ToStringOutputWithContext(context.Background()) -} - -func (o BucketDefaultRetentionModeOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e BucketDefaultRetentionMode) string { - return string(e) - }).(pulumi.StringOutput) -} - -func (o BucketDefaultRetentionModeOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o BucketDefaultRetentionModeOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e BucketDefaultRetentionMode) *string { - v := string(e) - return &v - }).(pulumi.StringPtrOutput) -} - -type BucketDefaultRetentionModePtrOutput struct{ *pulumi.OutputState } - -func (BucketDefaultRetentionModePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**BucketDefaultRetentionMode)(nil)).Elem() -} - -func (o BucketDefaultRetentionModePtrOutput) ToBucketDefaultRetentionModePtrOutput() BucketDefaultRetentionModePtrOutput { - return o -} - -func (o BucketDefaultRetentionModePtrOutput) ToBucketDefaultRetentionModePtrOutputWithContext(ctx context.Context) BucketDefaultRetentionModePtrOutput { - return o -} - -func (o BucketDefaultRetentionModePtrOutput) ToOutput(ctx context.Context) pulumix.Output[*BucketDefaultRetentionMode] { - return pulumix.Output[*BucketDefaultRetentionMode]{ - OutputState: o.OutputState, - } -} - -func (o BucketDefaultRetentionModePtrOutput) Elem() BucketDefaultRetentionModeOutput { - return o.ApplyT(func(v *BucketDefaultRetentionMode) BucketDefaultRetentionMode { - if v != nil { - return *v - } - var ret BucketDefaultRetentionMode - return ret - }).(BucketDefaultRetentionModeOutput) -} - -func (o BucketDefaultRetentionModePtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o BucketDefaultRetentionModePtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e *BucketDefaultRetentionMode) *string { - if e == nil { - return nil - } - v := string(*e) - return &v - }).(pulumi.StringPtrOutput) -} - -// BucketDefaultRetentionModeInput is an input type that accepts BucketDefaultRetentionModeArgs and BucketDefaultRetentionModeOutput values. -// You can construct a concrete instance of `BucketDefaultRetentionModeInput` via: -// -// BucketDefaultRetentionModeArgs{...} -type BucketDefaultRetentionModeInput interface { - pulumi.Input - - ToBucketDefaultRetentionModeOutput() BucketDefaultRetentionModeOutput - ToBucketDefaultRetentionModeOutputWithContext(context.Context) BucketDefaultRetentionModeOutput -} - -var bucketDefaultRetentionModePtrType = reflect.TypeOf((**BucketDefaultRetentionMode)(nil)).Elem() - -type BucketDefaultRetentionModePtrInput interface { - pulumi.Input - - ToBucketDefaultRetentionModePtrOutput() BucketDefaultRetentionModePtrOutput - ToBucketDefaultRetentionModePtrOutputWithContext(context.Context) BucketDefaultRetentionModePtrOutput -} - -type bucketDefaultRetentionModePtr string - -func BucketDefaultRetentionModePtr(v string) BucketDefaultRetentionModePtrInput { - return (*bucketDefaultRetentionModePtr)(&v) -} - -func (*bucketDefaultRetentionModePtr) ElementType() reflect.Type { - return bucketDefaultRetentionModePtrType -} - -func (in *bucketDefaultRetentionModePtr) ToBucketDefaultRetentionModePtrOutput() BucketDefaultRetentionModePtrOutput { - return pulumi.ToOutput(in).(BucketDefaultRetentionModePtrOutput) -} - -func (in *bucketDefaultRetentionModePtr) ToBucketDefaultRetentionModePtrOutputWithContext(ctx context.Context) BucketDefaultRetentionModePtrOutput { - return pulumi.ToOutputWithContext(ctx, in).(BucketDefaultRetentionModePtrOutput) -} - -func (in *bucketDefaultRetentionModePtr) ToOutput(ctx context.Context) pulumix.Output[*BucketDefaultRetentionMode] { - return pulumix.Output[*BucketDefaultRetentionMode]{ - OutputState: in.ToBucketDefaultRetentionModePtrOutputWithContext(ctx).OutputState, - } -} - -type BucketDeleteMarkerReplicationStatus string - -const ( - BucketDeleteMarkerReplicationStatusDisabled = BucketDeleteMarkerReplicationStatus("Disabled") - BucketDeleteMarkerReplicationStatusEnabled = BucketDeleteMarkerReplicationStatus("Enabled") -) - -func (BucketDeleteMarkerReplicationStatus) ElementType() reflect.Type { - return reflect.TypeOf((*BucketDeleteMarkerReplicationStatus)(nil)).Elem() -} - -func (e BucketDeleteMarkerReplicationStatus) ToBucketDeleteMarkerReplicationStatusOutput() BucketDeleteMarkerReplicationStatusOutput { - return pulumi.ToOutput(e).(BucketDeleteMarkerReplicationStatusOutput) -} - -func (e BucketDeleteMarkerReplicationStatus) ToBucketDeleteMarkerReplicationStatusOutputWithContext(ctx context.Context) BucketDeleteMarkerReplicationStatusOutput { - return pulumi.ToOutputWithContext(ctx, e).(BucketDeleteMarkerReplicationStatusOutput) -} - -func (e BucketDeleteMarkerReplicationStatus) ToBucketDeleteMarkerReplicationStatusPtrOutput() BucketDeleteMarkerReplicationStatusPtrOutput { - return e.ToBucketDeleteMarkerReplicationStatusPtrOutputWithContext(context.Background()) -} - -func (e BucketDeleteMarkerReplicationStatus) ToBucketDeleteMarkerReplicationStatusPtrOutputWithContext(ctx context.Context) BucketDeleteMarkerReplicationStatusPtrOutput { - return BucketDeleteMarkerReplicationStatus(e).ToBucketDeleteMarkerReplicationStatusOutputWithContext(ctx).ToBucketDeleteMarkerReplicationStatusPtrOutputWithContext(ctx) -} - -func (e BucketDeleteMarkerReplicationStatus) ToStringOutput() pulumi.StringOutput { - return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) -} - -func (e BucketDeleteMarkerReplicationStatus) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) -} - -func (e BucketDeleteMarkerReplicationStatus) ToStringPtrOutput() pulumi.StringPtrOutput { - return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) -} - -func (e BucketDeleteMarkerReplicationStatus) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) -} - -type BucketDeleteMarkerReplicationStatusOutput struct{ *pulumi.OutputState } - -func (BucketDeleteMarkerReplicationStatusOutput) ElementType() reflect.Type { - return reflect.TypeOf((*BucketDeleteMarkerReplicationStatus)(nil)).Elem() -} - -func (o BucketDeleteMarkerReplicationStatusOutput) ToBucketDeleteMarkerReplicationStatusOutput() BucketDeleteMarkerReplicationStatusOutput { - return o -} - -func (o BucketDeleteMarkerReplicationStatusOutput) ToBucketDeleteMarkerReplicationStatusOutputWithContext(ctx context.Context) BucketDeleteMarkerReplicationStatusOutput { - return o -} - -func (o BucketDeleteMarkerReplicationStatusOutput) ToBucketDeleteMarkerReplicationStatusPtrOutput() BucketDeleteMarkerReplicationStatusPtrOutput { - return o.ToBucketDeleteMarkerReplicationStatusPtrOutputWithContext(context.Background()) -} - -func (o BucketDeleteMarkerReplicationStatusOutput) ToBucketDeleteMarkerReplicationStatusPtrOutputWithContext(ctx context.Context) BucketDeleteMarkerReplicationStatusPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v BucketDeleteMarkerReplicationStatus) *BucketDeleteMarkerReplicationStatus { - return &v - }).(BucketDeleteMarkerReplicationStatusPtrOutput) -} - -func (o BucketDeleteMarkerReplicationStatusOutput) ToOutput(ctx context.Context) pulumix.Output[BucketDeleteMarkerReplicationStatus] { - return pulumix.Output[BucketDeleteMarkerReplicationStatus]{ - OutputState: o.OutputState, - } -} - -func (o BucketDeleteMarkerReplicationStatusOutput) ToStringOutput() pulumi.StringOutput { - return o.ToStringOutputWithContext(context.Background()) -} - -func (o BucketDeleteMarkerReplicationStatusOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e BucketDeleteMarkerReplicationStatus) string { - return string(e) - }).(pulumi.StringOutput) -} - -func (o BucketDeleteMarkerReplicationStatusOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o BucketDeleteMarkerReplicationStatusOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e BucketDeleteMarkerReplicationStatus) *string { - v := string(e) - return &v - }).(pulumi.StringPtrOutput) -} - -type BucketDeleteMarkerReplicationStatusPtrOutput struct{ *pulumi.OutputState } - -func (BucketDeleteMarkerReplicationStatusPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**BucketDeleteMarkerReplicationStatus)(nil)).Elem() -} - -func (o BucketDeleteMarkerReplicationStatusPtrOutput) ToBucketDeleteMarkerReplicationStatusPtrOutput() BucketDeleteMarkerReplicationStatusPtrOutput { - return o -} - -func (o BucketDeleteMarkerReplicationStatusPtrOutput) ToBucketDeleteMarkerReplicationStatusPtrOutputWithContext(ctx context.Context) BucketDeleteMarkerReplicationStatusPtrOutput { - return o -} - -func (o BucketDeleteMarkerReplicationStatusPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*BucketDeleteMarkerReplicationStatus] { - return pulumix.Output[*BucketDeleteMarkerReplicationStatus]{ - OutputState: o.OutputState, - } -} - -func (o BucketDeleteMarkerReplicationStatusPtrOutput) Elem() BucketDeleteMarkerReplicationStatusOutput { - return o.ApplyT(func(v *BucketDeleteMarkerReplicationStatus) BucketDeleteMarkerReplicationStatus { - if v != nil { - return *v - } - var ret BucketDeleteMarkerReplicationStatus - return ret - }).(BucketDeleteMarkerReplicationStatusOutput) -} - -func (o BucketDeleteMarkerReplicationStatusPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o BucketDeleteMarkerReplicationStatusPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e *BucketDeleteMarkerReplicationStatus) *string { - if e == nil { - return nil - } - v := string(*e) - return &v - }).(pulumi.StringPtrOutput) -} - -// BucketDeleteMarkerReplicationStatusInput is an input type that accepts BucketDeleteMarkerReplicationStatusArgs and BucketDeleteMarkerReplicationStatusOutput values. -// You can construct a concrete instance of `BucketDeleteMarkerReplicationStatusInput` via: -// -// BucketDeleteMarkerReplicationStatusArgs{...} -type BucketDeleteMarkerReplicationStatusInput interface { - pulumi.Input - - ToBucketDeleteMarkerReplicationStatusOutput() BucketDeleteMarkerReplicationStatusOutput - ToBucketDeleteMarkerReplicationStatusOutputWithContext(context.Context) BucketDeleteMarkerReplicationStatusOutput -} - -var bucketDeleteMarkerReplicationStatusPtrType = reflect.TypeOf((**BucketDeleteMarkerReplicationStatus)(nil)).Elem() - -type BucketDeleteMarkerReplicationStatusPtrInput interface { - pulumi.Input - - ToBucketDeleteMarkerReplicationStatusPtrOutput() BucketDeleteMarkerReplicationStatusPtrOutput - ToBucketDeleteMarkerReplicationStatusPtrOutputWithContext(context.Context) BucketDeleteMarkerReplicationStatusPtrOutput -} - -type bucketDeleteMarkerReplicationStatusPtr string - -func BucketDeleteMarkerReplicationStatusPtr(v string) BucketDeleteMarkerReplicationStatusPtrInput { - return (*bucketDeleteMarkerReplicationStatusPtr)(&v) -} - -func (*bucketDeleteMarkerReplicationStatusPtr) ElementType() reflect.Type { - return bucketDeleteMarkerReplicationStatusPtrType -} - -func (in *bucketDeleteMarkerReplicationStatusPtr) ToBucketDeleteMarkerReplicationStatusPtrOutput() BucketDeleteMarkerReplicationStatusPtrOutput { - return pulumi.ToOutput(in).(BucketDeleteMarkerReplicationStatusPtrOutput) -} - -func (in *bucketDeleteMarkerReplicationStatusPtr) ToBucketDeleteMarkerReplicationStatusPtrOutputWithContext(ctx context.Context) BucketDeleteMarkerReplicationStatusPtrOutput { - return pulumi.ToOutputWithContext(ctx, in).(BucketDeleteMarkerReplicationStatusPtrOutput) -} - -func (in *bucketDeleteMarkerReplicationStatusPtr) ToOutput(ctx context.Context) pulumix.Output[*BucketDeleteMarkerReplicationStatus] { - return pulumix.Output[*BucketDeleteMarkerReplicationStatus]{ - OutputState: in.ToBucketDeleteMarkerReplicationStatusPtrOutputWithContext(ctx).OutputState, - } -} - -// Specifies the file format used when exporting data to Amazon S3. -type BucketDestinationFormat string - -const ( - BucketDestinationFormatCsv = BucketDestinationFormat("CSV") - BucketDestinationFormatOrc = BucketDestinationFormat("ORC") - BucketDestinationFormatParquet = BucketDestinationFormat("Parquet") -) - -func (BucketDestinationFormat) ElementType() reflect.Type { - return reflect.TypeOf((*BucketDestinationFormat)(nil)).Elem() -} - -func (e BucketDestinationFormat) ToBucketDestinationFormatOutput() BucketDestinationFormatOutput { - return pulumi.ToOutput(e).(BucketDestinationFormatOutput) -} - -func (e BucketDestinationFormat) ToBucketDestinationFormatOutputWithContext(ctx context.Context) BucketDestinationFormatOutput { - return pulumi.ToOutputWithContext(ctx, e).(BucketDestinationFormatOutput) -} - -func (e BucketDestinationFormat) ToBucketDestinationFormatPtrOutput() BucketDestinationFormatPtrOutput { - return e.ToBucketDestinationFormatPtrOutputWithContext(context.Background()) -} - -func (e BucketDestinationFormat) ToBucketDestinationFormatPtrOutputWithContext(ctx context.Context) BucketDestinationFormatPtrOutput { - return BucketDestinationFormat(e).ToBucketDestinationFormatOutputWithContext(ctx).ToBucketDestinationFormatPtrOutputWithContext(ctx) -} - -func (e BucketDestinationFormat) ToStringOutput() pulumi.StringOutput { - return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) -} - -func (e BucketDestinationFormat) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) -} - -func (e BucketDestinationFormat) ToStringPtrOutput() pulumi.StringPtrOutput { - return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) -} - -func (e BucketDestinationFormat) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) -} - -type BucketDestinationFormatOutput struct{ *pulumi.OutputState } - -func (BucketDestinationFormatOutput) ElementType() reflect.Type { - return reflect.TypeOf((*BucketDestinationFormat)(nil)).Elem() -} - -func (o BucketDestinationFormatOutput) ToBucketDestinationFormatOutput() BucketDestinationFormatOutput { - return o -} - -func (o BucketDestinationFormatOutput) ToBucketDestinationFormatOutputWithContext(ctx context.Context) BucketDestinationFormatOutput { - return o -} - -func (o BucketDestinationFormatOutput) ToBucketDestinationFormatPtrOutput() BucketDestinationFormatPtrOutput { - return o.ToBucketDestinationFormatPtrOutputWithContext(context.Background()) -} - -func (o BucketDestinationFormatOutput) ToBucketDestinationFormatPtrOutputWithContext(ctx context.Context) BucketDestinationFormatPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v BucketDestinationFormat) *BucketDestinationFormat { - return &v - }).(BucketDestinationFormatPtrOutput) -} - -func (o BucketDestinationFormatOutput) ToOutput(ctx context.Context) pulumix.Output[BucketDestinationFormat] { - return pulumix.Output[BucketDestinationFormat]{ - OutputState: o.OutputState, - } -} - -func (o BucketDestinationFormatOutput) ToStringOutput() pulumi.StringOutput { - return o.ToStringOutputWithContext(context.Background()) -} - -func (o BucketDestinationFormatOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e BucketDestinationFormat) string { - return string(e) - }).(pulumi.StringOutput) -} - -func (o BucketDestinationFormatOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o BucketDestinationFormatOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e BucketDestinationFormat) *string { - v := string(e) - return &v - }).(pulumi.StringPtrOutput) -} - -type BucketDestinationFormatPtrOutput struct{ *pulumi.OutputState } - -func (BucketDestinationFormatPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**BucketDestinationFormat)(nil)).Elem() -} - -func (o BucketDestinationFormatPtrOutput) ToBucketDestinationFormatPtrOutput() BucketDestinationFormatPtrOutput { - return o -} - -func (o BucketDestinationFormatPtrOutput) ToBucketDestinationFormatPtrOutputWithContext(ctx context.Context) BucketDestinationFormatPtrOutput { - return o -} - -func (o BucketDestinationFormatPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*BucketDestinationFormat] { - return pulumix.Output[*BucketDestinationFormat]{ - OutputState: o.OutputState, - } -} - -func (o BucketDestinationFormatPtrOutput) Elem() BucketDestinationFormatOutput { - return o.ApplyT(func(v *BucketDestinationFormat) BucketDestinationFormat { - if v != nil { - return *v - } - var ret BucketDestinationFormat - return ret - }).(BucketDestinationFormatOutput) -} - -func (o BucketDestinationFormatPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o BucketDestinationFormatPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e *BucketDestinationFormat) *string { - if e == nil { - return nil - } - v := string(*e) - return &v - }).(pulumi.StringPtrOutput) -} - -// BucketDestinationFormatInput is an input type that accepts BucketDestinationFormatArgs and BucketDestinationFormatOutput values. -// You can construct a concrete instance of `BucketDestinationFormatInput` via: -// -// BucketDestinationFormatArgs{...} -type BucketDestinationFormatInput interface { - pulumi.Input - - ToBucketDestinationFormatOutput() BucketDestinationFormatOutput - ToBucketDestinationFormatOutputWithContext(context.Context) BucketDestinationFormatOutput -} - -var bucketDestinationFormatPtrType = reflect.TypeOf((**BucketDestinationFormat)(nil)).Elem() - -type BucketDestinationFormatPtrInput interface { - pulumi.Input - - ToBucketDestinationFormatPtrOutput() BucketDestinationFormatPtrOutput - ToBucketDestinationFormatPtrOutputWithContext(context.Context) BucketDestinationFormatPtrOutput -} - -type bucketDestinationFormatPtr string - -func BucketDestinationFormatPtr(v string) BucketDestinationFormatPtrInput { - return (*bucketDestinationFormatPtr)(&v) -} - -func (*bucketDestinationFormatPtr) ElementType() reflect.Type { - return bucketDestinationFormatPtrType -} - -func (in *bucketDestinationFormatPtr) ToBucketDestinationFormatPtrOutput() BucketDestinationFormatPtrOutput { - return pulumi.ToOutput(in).(BucketDestinationFormatPtrOutput) -} - -func (in *bucketDestinationFormatPtr) ToBucketDestinationFormatPtrOutputWithContext(ctx context.Context) BucketDestinationFormatPtrOutput { - return pulumi.ToOutputWithContext(ctx, in).(BucketDestinationFormatPtrOutput) -} - -func (in *bucketDestinationFormatPtr) ToOutput(ctx context.Context) pulumix.Output[*BucketDestinationFormat] { - return pulumix.Output[*BucketDestinationFormat]{ - OutputState: in.ToBucketDestinationFormatPtrOutputWithContext(ctx).OutputState, - } -} - -// Specifies the status of the configuration. -type BucketIntelligentTieringConfigurationStatus string - -const ( - BucketIntelligentTieringConfigurationStatusDisabled = BucketIntelligentTieringConfigurationStatus("Disabled") - BucketIntelligentTieringConfigurationStatusEnabled = BucketIntelligentTieringConfigurationStatus("Enabled") -) - -func (BucketIntelligentTieringConfigurationStatus) ElementType() reflect.Type { - return reflect.TypeOf((*BucketIntelligentTieringConfigurationStatus)(nil)).Elem() -} - -func (e BucketIntelligentTieringConfigurationStatus) ToBucketIntelligentTieringConfigurationStatusOutput() BucketIntelligentTieringConfigurationStatusOutput { - return pulumi.ToOutput(e).(BucketIntelligentTieringConfigurationStatusOutput) -} - -func (e BucketIntelligentTieringConfigurationStatus) ToBucketIntelligentTieringConfigurationStatusOutputWithContext(ctx context.Context) BucketIntelligentTieringConfigurationStatusOutput { - return pulumi.ToOutputWithContext(ctx, e).(BucketIntelligentTieringConfigurationStatusOutput) -} - -func (e BucketIntelligentTieringConfigurationStatus) ToBucketIntelligentTieringConfigurationStatusPtrOutput() BucketIntelligentTieringConfigurationStatusPtrOutput { - return e.ToBucketIntelligentTieringConfigurationStatusPtrOutputWithContext(context.Background()) -} - -func (e BucketIntelligentTieringConfigurationStatus) ToBucketIntelligentTieringConfigurationStatusPtrOutputWithContext(ctx context.Context) BucketIntelligentTieringConfigurationStatusPtrOutput { - return BucketIntelligentTieringConfigurationStatus(e).ToBucketIntelligentTieringConfigurationStatusOutputWithContext(ctx).ToBucketIntelligentTieringConfigurationStatusPtrOutputWithContext(ctx) -} - -func (e BucketIntelligentTieringConfigurationStatus) ToStringOutput() pulumi.StringOutput { - return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) -} - -func (e BucketIntelligentTieringConfigurationStatus) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) -} - -func (e BucketIntelligentTieringConfigurationStatus) ToStringPtrOutput() pulumi.StringPtrOutput { - return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) -} - -func (e BucketIntelligentTieringConfigurationStatus) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) -} - -type BucketIntelligentTieringConfigurationStatusOutput struct{ *pulumi.OutputState } - -func (BucketIntelligentTieringConfigurationStatusOutput) ElementType() reflect.Type { - return reflect.TypeOf((*BucketIntelligentTieringConfigurationStatus)(nil)).Elem() -} - -func (o BucketIntelligentTieringConfigurationStatusOutput) ToBucketIntelligentTieringConfigurationStatusOutput() BucketIntelligentTieringConfigurationStatusOutput { - return o -} - -func (o BucketIntelligentTieringConfigurationStatusOutput) ToBucketIntelligentTieringConfigurationStatusOutputWithContext(ctx context.Context) BucketIntelligentTieringConfigurationStatusOutput { - return o -} - -func (o BucketIntelligentTieringConfigurationStatusOutput) ToBucketIntelligentTieringConfigurationStatusPtrOutput() BucketIntelligentTieringConfigurationStatusPtrOutput { - return o.ToBucketIntelligentTieringConfigurationStatusPtrOutputWithContext(context.Background()) -} - -func (o BucketIntelligentTieringConfigurationStatusOutput) ToBucketIntelligentTieringConfigurationStatusPtrOutputWithContext(ctx context.Context) BucketIntelligentTieringConfigurationStatusPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v BucketIntelligentTieringConfigurationStatus) *BucketIntelligentTieringConfigurationStatus { - return &v - }).(BucketIntelligentTieringConfigurationStatusPtrOutput) -} - -func (o BucketIntelligentTieringConfigurationStatusOutput) ToOutput(ctx context.Context) pulumix.Output[BucketIntelligentTieringConfigurationStatus] { - return pulumix.Output[BucketIntelligentTieringConfigurationStatus]{ - OutputState: o.OutputState, - } -} - -func (o BucketIntelligentTieringConfigurationStatusOutput) ToStringOutput() pulumi.StringOutput { - return o.ToStringOutputWithContext(context.Background()) -} - -func (o BucketIntelligentTieringConfigurationStatusOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e BucketIntelligentTieringConfigurationStatus) string { - return string(e) - }).(pulumi.StringOutput) -} - -func (o BucketIntelligentTieringConfigurationStatusOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o BucketIntelligentTieringConfigurationStatusOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e BucketIntelligentTieringConfigurationStatus) *string { - v := string(e) - return &v - }).(pulumi.StringPtrOutput) -} - -type BucketIntelligentTieringConfigurationStatusPtrOutput struct{ *pulumi.OutputState } - -func (BucketIntelligentTieringConfigurationStatusPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**BucketIntelligentTieringConfigurationStatus)(nil)).Elem() -} - -func (o BucketIntelligentTieringConfigurationStatusPtrOutput) ToBucketIntelligentTieringConfigurationStatusPtrOutput() BucketIntelligentTieringConfigurationStatusPtrOutput { - return o -} - -func (o BucketIntelligentTieringConfigurationStatusPtrOutput) ToBucketIntelligentTieringConfigurationStatusPtrOutputWithContext(ctx context.Context) BucketIntelligentTieringConfigurationStatusPtrOutput { - return o -} - -func (o BucketIntelligentTieringConfigurationStatusPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*BucketIntelligentTieringConfigurationStatus] { - return pulumix.Output[*BucketIntelligentTieringConfigurationStatus]{ - OutputState: o.OutputState, - } -} - -func (o BucketIntelligentTieringConfigurationStatusPtrOutput) Elem() BucketIntelligentTieringConfigurationStatusOutput { - return o.ApplyT(func(v *BucketIntelligentTieringConfigurationStatus) BucketIntelligentTieringConfigurationStatus { - if v != nil { - return *v - } - var ret BucketIntelligentTieringConfigurationStatus - return ret - }).(BucketIntelligentTieringConfigurationStatusOutput) -} - -func (o BucketIntelligentTieringConfigurationStatusPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o BucketIntelligentTieringConfigurationStatusPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e *BucketIntelligentTieringConfigurationStatus) *string { - if e == nil { - return nil - } - v := string(*e) - return &v - }).(pulumi.StringPtrOutput) -} - -// BucketIntelligentTieringConfigurationStatusInput is an input type that accepts BucketIntelligentTieringConfigurationStatusArgs and BucketIntelligentTieringConfigurationStatusOutput values. -// You can construct a concrete instance of `BucketIntelligentTieringConfigurationStatusInput` via: -// -// BucketIntelligentTieringConfigurationStatusArgs{...} -type BucketIntelligentTieringConfigurationStatusInput interface { - pulumi.Input - - ToBucketIntelligentTieringConfigurationStatusOutput() BucketIntelligentTieringConfigurationStatusOutput - ToBucketIntelligentTieringConfigurationStatusOutputWithContext(context.Context) BucketIntelligentTieringConfigurationStatusOutput -} - -var bucketIntelligentTieringConfigurationStatusPtrType = reflect.TypeOf((**BucketIntelligentTieringConfigurationStatus)(nil)).Elem() - -type BucketIntelligentTieringConfigurationStatusPtrInput interface { - pulumi.Input - - ToBucketIntelligentTieringConfigurationStatusPtrOutput() BucketIntelligentTieringConfigurationStatusPtrOutput - ToBucketIntelligentTieringConfigurationStatusPtrOutputWithContext(context.Context) BucketIntelligentTieringConfigurationStatusPtrOutput -} - -type bucketIntelligentTieringConfigurationStatusPtr string - -func BucketIntelligentTieringConfigurationStatusPtr(v string) BucketIntelligentTieringConfigurationStatusPtrInput { - return (*bucketIntelligentTieringConfigurationStatusPtr)(&v) -} - -func (*bucketIntelligentTieringConfigurationStatusPtr) ElementType() reflect.Type { - return bucketIntelligentTieringConfigurationStatusPtrType -} - -func (in *bucketIntelligentTieringConfigurationStatusPtr) ToBucketIntelligentTieringConfigurationStatusPtrOutput() BucketIntelligentTieringConfigurationStatusPtrOutput { - return pulumi.ToOutput(in).(BucketIntelligentTieringConfigurationStatusPtrOutput) -} - -func (in *bucketIntelligentTieringConfigurationStatusPtr) ToBucketIntelligentTieringConfigurationStatusPtrOutputWithContext(ctx context.Context) BucketIntelligentTieringConfigurationStatusPtrOutput { - return pulumi.ToOutputWithContext(ctx, in).(BucketIntelligentTieringConfigurationStatusPtrOutput) -} - -func (in *bucketIntelligentTieringConfigurationStatusPtr) ToOutput(ctx context.Context) pulumix.Output[*BucketIntelligentTieringConfigurationStatus] { - return pulumix.Output[*BucketIntelligentTieringConfigurationStatus]{ - OutputState: in.ToBucketIntelligentTieringConfigurationStatusPtrOutputWithContext(ctx).OutputState, - } -} - -// Object versions to include in the inventory list. -type BucketInventoryConfigurationIncludedObjectVersions string - -const ( - BucketInventoryConfigurationIncludedObjectVersionsAll = BucketInventoryConfigurationIncludedObjectVersions("All") - BucketInventoryConfigurationIncludedObjectVersionsCurrent = BucketInventoryConfigurationIncludedObjectVersions("Current") -) - -func (BucketInventoryConfigurationIncludedObjectVersions) ElementType() reflect.Type { - return reflect.TypeOf((*BucketInventoryConfigurationIncludedObjectVersions)(nil)).Elem() -} - -func (e BucketInventoryConfigurationIncludedObjectVersions) ToBucketInventoryConfigurationIncludedObjectVersionsOutput() BucketInventoryConfigurationIncludedObjectVersionsOutput { - return pulumi.ToOutput(e).(BucketInventoryConfigurationIncludedObjectVersionsOutput) -} - -func (e BucketInventoryConfigurationIncludedObjectVersions) ToBucketInventoryConfigurationIncludedObjectVersionsOutputWithContext(ctx context.Context) BucketInventoryConfigurationIncludedObjectVersionsOutput { - return pulumi.ToOutputWithContext(ctx, e).(BucketInventoryConfigurationIncludedObjectVersionsOutput) -} - -func (e BucketInventoryConfigurationIncludedObjectVersions) ToBucketInventoryConfigurationIncludedObjectVersionsPtrOutput() BucketInventoryConfigurationIncludedObjectVersionsPtrOutput { - return e.ToBucketInventoryConfigurationIncludedObjectVersionsPtrOutputWithContext(context.Background()) -} - -func (e BucketInventoryConfigurationIncludedObjectVersions) ToBucketInventoryConfigurationIncludedObjectVersionsPtrOutputWithContext(ctx context.Context) BucketInventoryConfigurationIncludedObjectVersionsPtrOutput { - return BucketInventoryConfigurationIncludedObjectVersions(e).ToBucketInventoryConfigurationIncludedObjectVersionsOutputWithContext(ctx).ToBucketInventoryConfigurationIncludedObjectVersionsPtrOutputWithContext(ctx) -} - -func (e BucketInventoryConfigurationIncludedObjectVersions) ToStringOutput() pulumi.StringOutput { - return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) -} - -func (e BucketInventoryConfigurationIncludedObjectVersions) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) -} - -func (e BucketInventoryConfigurationIncludedObjectVersions) ToStringPtrOutput() pulumi.StringPtrOutput { - return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) -} - -func (e BucketInventoryConfigurationIncludedObjectVersions) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) -} - -type BucketInventoryConfigurationIncludedObjectVersionsOutput struct{ *pulumi.OutputState } - -func (BucketInventoryConfigurationIncludedObjectVersionsOutput) ElementType() reflect.Type { - return reflect.TypeOf((*BucketInventoryConfigurationIncludedObjectVersions)(nil)).Elem() -} - -func (o BucketInventoryConfigurationIncludedObjectVersionsOutput) ToBucketInventoryConfigurationIncludedObjectVersionsOutput() BucketInventoryConfigurationIncludedObjectVersionsOutput { - return o -} - -func (o BucketInventoryConfigurationIncludedObjectVersionsOutput) ToBucketInventoryConfigurationIncludedObjectVersionsOutputWithContext(ctx context.Context) BucketInventoryConfigurationIncludedObjectVersionsOutput { - return o -} - -func (o BucketInventoryConfigurationIncludedObjectVersionsOutput) ToBucketInventoryConfigurationIncludedObjectVersionsPtrOutput() BucketInventoryConfigurationIncludedObjectVersionsPtrOutput { - return o.ToBucketInventoryConfigurationIncludedObjectVersionsPtrOutputWithContext(context.Background()) -} - -func (o BucketInventoryConfigurationIncludedObjectVersionsOutput) ToBucketInventoryConfigurationIncludedObjectVersionsPtrOutputWithContext(ctx context.Context) BucketInventoryConfigurationIncludedObjectVersionsPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v BucketInventoryConfigurationIncludedObjectVersions) *BucketInventoryConfigurationIncludedObjectVersions { - return &v - }).(BucketInventoryConfigurationIncludedObjectVersionsPtrOutput) -} - -func (o BucketInventoryConfigurationIncludedObjectVersionsOutput) ToOutput(ctx context.Context) pulumix.Output[BucketInventoryConfigurationIncludedObjectVersions] { - return pulumix.Output[BucketInventoryConfigurationIncludedObjectVersions]{ - OutputState: o.OutputState, - } -} - -func (o BucketInventoryConfigurationIncludedObjectVersionsOutput) ToStringOutput() pulumi.StringOutput { - return o.ToStringOutputWithContext(context.Background()) -} - -func (o BucketInventoryConfigurationIncludedObjectVersionsOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e BucketInventoryConfigurationIncludedObjectVersions) string { - return string(e) - }).(pulumi.StringOutput) -} - -func (o BucketInventoryConfigurationIncludedObjectVersionsOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o BucketInventoryConfigurationIncludedObjectVersionsOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e BucketInventoryConfigurationIncludedObjectVersions) *string { - v := string(e) - return &v - }).(pulumi.StringPtrOutput) -} - -type BucketInventoryConfigurationIncludedObjectVersionsPtrOutput struct{ *pulumi.OutputState } - -func (BucketInventoryConfigurationIncludedObjectVersionsPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**BucketInventoryConfigurationIncludedObjectVersions)(nil)).Elem() -} - -func (o BucketInventoryConfigurationIncludedObjectVersionsPtrOutput) ToBucketInventoryConfigurationIncludedObjectVersionsPtrOutput() BucketInventoryConfigurationIncludedObjectVersionsPtrOutput { - return o -} - -func (o BucketInventoryConfigurationIncludedObjectVersionsPtrOutput) ToBucketInventoryConfigurationIncludedObjectVersionsPtrOutputWithContext(ctx context.Context) BucketInventoryConfigurationIncludedObjectVersionsPtrOutput { - return o -} - -func (o BucketInventoryConfigurationIncludedObjectVersionsPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*BucketInventoryConfigurationIncludedObjectVersions] { - return pulumix.Output[*BucketInventoryConfigurationIncludedObjectVersions]{ - OutputState: o.OutputState, - } -} - -func (o BucketInventoryConfigurationIncludedObjectVersionsPtrOutput) Elem() BucketInventoryConfigurationIncludedObjectVersionsOutput { - return o.ApplyT(func(v *BucketInventoryConfigurationIncludedObjectVersions) BucketInventoryConfigurationIncludedObjectVersions { - if v != nil { - return *v - } - var ret BucketInventoryConfigurationIncludedObjectVersions - return ret - }).(BucketInventoryConfigurationIncludedObjectVersionsOutput) -} - -func (o BucketInventoryConfigurationIncludedObjectVersionsPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o BucketInventoryConfigurationIncludedObjectVersionsPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e *BucketInventoryConfigurationIncludedObjectVersions) *string { - if e == nil { - return nil - } - v := string(*e) - return &v - }).(pulumi.StringPtrOutput) -} - -// BucketInventoryConfigurationIncludedObjectVersionsInput is an input type that accepts BucketInventoryConfigurationIncludedObjectVersionsArgs and BucketInventoryConfigurationIncludedObjectVersionsOutput values. -// You can construct a concrete instance of `BucketInventoryConfigurationIncludedObjectVersionsInput` via: -// -// BucketInventoryConfigurationIncludedObjectVersionsArgs{...} -type BucketInventoryConfigurationIncludedObjectVersionsInput interface { - pulumi.Input - - ToBucketInventoryConfigurationIncludedObjectVersionsOutput() BucketInventoryConfigurationIncludedObjectVersionsOutput - ToBucketInventoryConfigurationIncludedObjectVersionsOutputWithContext(context.Context) BucketInventoryConfigurationIncludedObjectVersionsOutput -} - -var bucketInventoryConfigurationIncludedObjectVersionsPtrType = reflect.TypeOf((**BucketInventoryConfigurationIncludedObjectVersions)(nil)).Elem() - -type BucketInventoryConfigurationIncludedObjectVersionsPtrInput interface { - pulumi.Input - - ToBucketInventoryConfigurationIncludedObjectVersionsPtrOutput() BucketInventoryConfigurationIncludedObjectVersionsPtrOutput - ToBucketInventoryConfigurationIncludedObjectVersionsPtrOutputWithContext(context.Context) BucketInventoryConfigurationIncludedObjectVersionsPtrOutput -} - -type bucketInventoryConfigurationIncludedObjectVersionsPtr string - -func BucketInventoryConfigurationIncludedObjectVersionsPtr(v string) BucketInventoryConfigurationIncludedObjectVersionsPtrInput { - return (*bucketInventoryConfigurationIncludedObjectVersionsPtr)(&v) -} - -func (*bucketInventoryConfigurationIncludedObjectVersionsPtr) ElementType() reflect.Type { - return bucketInventoryConfigurationIncludedObjectVersionsPtrType -} - -func (in *bucketInventoryConfigurationIncludedObjectVersionsPtr) ToBucketInventoryConfigurationIncludedObjectVersionsPtrOutput() BucketInventoryConfigurationIncludedObjectVersionsPtrOutput { - return pulumi.ToOutput(in).(BucketInventoryConfigurationIncludedObjectVersionsPtrOutput) -} - -func (in *bucketInventoryConfigurationIncludedObjectVersionsPtr) ToBucketInventoryConfigurationIncludedObjectVersionsPtrOutputWithContext(ctx context.Context) BucketInventoryConfigurationIncludedObjectVersionsPtrOutput { - return pulumi.ToOutputWithContext(ctx, in).(BucketInventoryConfigurationIncludedObjectVersionsPtrOutput) -} - -func (in *bucketInventoryConfigurationIncludedObjectVersionsPtr) ToOutput(ctx context.Context) pulumix.Output[*BucketInventoryConfigurationIncludedObjectVersions] { - return pulumix.Output[*BucketInventoryConfigurationIncludedObjectVersions]{ - OutputState: in.ToBucketInventoryConfigurationIncludedObjectVersionsPtrOutputWithContext(ctx).OutputState, - } -} - -type BucketInventoryConfigurationOptionalFieldsItem string - -const ( - BucketInventoryConfigurationOptionalFieldsItemSize = BucketInventoryConfigurationOptionalFieldsItem("Size") - BucketInventoryConfigurationOptionalFieldsItemLastModifiedDate = BucketInventoryConfigurationOptionalFieldsItem("LastModifiedDate") - BucketInventoryConfigurationOptionalFieldsItemStorageClass = BucketInventoryConfigurationOptionalFieldsItem("StorageClass") - BucketInventoryConfigurationOptionalFieldsItemETag = BucketInventoryConfigurationOptionalFieldsItem("ETag") - BucketInventoryConfigurationOptionalFieldsItemIsMultipartUploaded = BucketInventoryConfigurationOptionalFieldsItem("IsMultipartUploaded") - BucketInventoryConfigurationOptionalFieldsItemReplicationStatus = BucketInventoryConfigurationOptionalFieldsItem("ReplicationStatus") - BucketInventoryConfigurationOptionalFieldsItemEncryptionStatus = BucketInventoryConfigurationOptionalFieldsItem("EncryptionStatus") - BucketInventoryConfigurationOptionalFieldsItemObjectLockRetainUntilDate = BucketInventoryConfigurationOptionalFieldsItem("ObjectLockRetainUntilDate") - BucketInventoryConfigurationOptionalFieldsItemObjectLockMode = BucketInventoryConfigurationOptionalFieldsItem("ObjectLockMode") - BucketInventoryConfigurationOptionalFieldsItemObjectLockLegalHoldStatus = BucketInventoryConfigurationOptionalFieldsItem("ObjectLockLegalHoldStatus") - BucketInventoryConfigurationOptionalFieldsItemIntelligentTieringAccessTier = BucketInventoryConfigurationOptionalFieldsItem("IntelligentTieringAccessTier") - BucketInventoryConfigurationOptionalFieldsItemBucketKeyStatus = BucketInventoryConfigurationOptionalFieldsItem("BucketKeyStatus") -) - -func (BucketInventoryConfigurationOptionalFieldsItem) ElementType() reflect.Type { - return reflect.TypeOf((*BucketInventoryConfigurationOptionalFieldsItem)(nil)).Elem() -} - -func (e BucketInventoryConfigurationOptionalFieldsItem) ToBucketInventoryConfigurationOptionalFieldsItemOutput() BucketInventoryConfigurationOptionalFieldsItemOutput { - return pulumi.ToOutput(e).(BucketInventoryConfigurationOptionalFieldsItemOutput) -} - -func (e BucketInventoryConfigurationOptionalFieldsItem) ToBucketInventoryConfigurationOptionalFieldsItemOutputWithContext(ctx context.Context) BucketInventoryConfigurationOptionalFieldsItemOutput { - return pulumi.ToOutputWithContext(ctx, e).(BucketInventoryConfigurationOptionalFieldsItemOutput) -} - -func (e BucketInventoryConfigurationOptionalFieldsItem) ToBucketInventoryConfigurationOptionalFieldsItemPtrOutput() BucketInventoryConfigurationOptionalFieldsItemPtrOutput { - return e.ToBucketInventoryConfigurationOptionalFieldsItemPtrOutputWithContext(context.Background()) -} - -func (e BucketInventoryConfigurationOptionalFieldsItem) ToBucketInventoryConfigurationOptionalFieldsItemPtrOutputWithContext(ctx context.Context) BucketInventoryConfigurationOptionalFieldsItemPtrOutput { - return BucketInventoryConfigurationOptionalFieldsItem(e).ToBucketInventoryConfigurationOptionalFieldsItemOutputWithContext(ctx).ToBucketInventoryConfigurationOptionalFieldsItemPtrOutputWithContext(ctx) -} - -func (e BucketInventoryConfigurationOptionalFieldsItem) ToStringOutput() pulumi.StringOutput { - return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) -} - -func (e BucketInventoryConfigurationOptionalFieldsItem) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) -} - -func (e BucketInventoryConfigurationOptionalFieldsItem) ToStringPtrOutput() pulumi.StringPtrOutput { - return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) -} - -func (e BucketInventoryConfigurationOptionalFieldsItem) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) -} - -type BucketInventoryConfigurationOptionalFieldsItemOutput struct{ *pulumi.OutputState } - -func (BucketInventoryConfigurationOptionalFieldsItemOutput) ElementType() reflect.Type { - return reflect.TypeOf((*BucketInventoryConfigurationOptionalFieldsItem)(nil)).Elem() -} - -func (o BucketInventoryConfigurationOptionalFieldsItemOutput) ToBucketInventoryConfigurationOptionalFieldsItemOutput() BucketInventoryConfigurationOptionalFieldsItemOutput { - return o -} - -func (o BucketInventoryConfigurationOptionalFieldsItemOutput) ToBucketInventoryConfigurationOptionalFieldsItemOutputWithContext(ctx context.Context) BucketInventoryConfigurationOptionalFieldsItemOutput { - return o -} - -func (o BucketInventoryConfigurationOptionalFieldsItemOutput) ToBucketInventoryConfigurationOptionalFieldsItemPtrOutput() BucketInventoryConfigurationOptionalFieldsItemPtrOutput { - return o.ToBucketInventoryConfigurationOptionalFieldsItemPtrOutputWithContext(context.Background()) -} - -func (o BucketInventoryConfigurationOptionalFieldsItemOutput) ToBucketInventoryConfigurationOptionalFieldsItemPtrOutputWithContext(ctx context.Context) BucketInventoryConfigurationOptionalFieldsItemPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v BucketInventoryConfigurationOptionalFieldsItem) *BucketInventoryConfigurationOptionalFieldsItem { - return &v - }).(BucketInventoryConfigurationOptionalFieldsItemPtrOutput) -} - -func (o BucketInventoryConfigurationOptionalFieldsItemOutput) ToOutput(ctx context.Context) pulumix.Output[BucketInventoryConfigurationOptionalFieldsItem] { - return pulumix.Output[BucketInventoryConfigurationOptionalFieldsItem]{ - OutputState: o.OutputState, - } -} - -func (o BucketInventoryConfigurationOptionalFieldsItemOutput) ToStringOutput() pulumi.StringOutput { - return o.ToStringOutputWithContext(context.Background()) -} - -func (o BucketInventoryConfigurationOptionalFieldsItemOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e BucketInventoryConfigurationOptionalFieldsItem) string { - return string(e) - }).(pulumi.StringOutput) -} - -func (o BucketInventoryConfigurationOptionalFieldsItemOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o BucketInventoryConfigurationOptionalFieldsItemOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e BucketInventoryConfigurationOptionalFieldsItem) *string { - v := string(e) - return &v - }).(pulumi.StringPtrOutput) -} - -type BucketInventoryConfigurationOptionalFieldsItemPtrOutput struct{ *pulumi.OutputState } - -func (BucketInventoryConfigurationOptionalFieldsItemPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**BucketInventoryConfigurationOptionalFieldsItem)(nil)).Elem() -} - -func (o BucketInventoryConfigurationOptionalFieldsItemPtrOutput) ToBucketInventoryConfigurationOptionalFieldsItemPtrOutput() BucketInventoryConfigurationOptionalFieldsItemPtrOutput { - return o -} - -func (o BucketInventoryConfigurationOptionalFieldsItemPtrOutput) ToBucketInventoryConfigurationOptionalFieldsItemPtrOutputWithContext(ctx context.Context) BucketInventoryConfigurationOptionalFieldsItemPtrOutput { - return o -} - -func (o BucketInventoryConfigurationOptionalFieldsItemPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*BucketInventoryConfigurationOptionalFieldsItem] { - return pulumix.Output[*BucketInventoryConfigurationOptionalFieldsItem]{ - OutputState: o.OutputState, - } -} - -func (o BucketInventoryConfigurationOptionalFieldsItemPtrOutput) Elem() BucketInventoryConfigurationOptionalFieldsItemOutput { - return o.ApplyT(func(v *BucketInventoryConfigurationOptionalFieldsItem) BucketInventoryConfigurationOptionalFieldsItem { - if v != nil { - return *v - } - var ret BucketInventoryConfigurationOptionalFieldsItem - return ret - }).(BucketInventoryConfigurationOptionalFieldsItemOutput) -} - -func (o BucketInventoryConfigurationOptionalFieldsItemPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o BucketInventoryConfigurationOptionalFieldsItemPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e *BucketInventoryConfigurationOptionalFieldsItem) *string { - if e == nil { - return nil - } - v := string(*e) - return &v - }).(pulumi.StringPtrOutput) -} - -// BucketInventoryConfigurationOptionalFieldsItemInput is an input type that accepts BucketInventoryConfigurationOptionalFieldsItemArgs and BucketInventoryConfigurationOptionalFieldsItemOutput values. -// You can construct a concrete instance of `BucketInventoryConfigurationOptionalFieldsItemInput` via: -// -// BucketInventoryConfigurationOptionalFieldsItemArgs{...} -type BucketInventoryConfigurationOptionalFieldsItemInput interface { - pulumi.Input - - ToBucketInventoryConfigurationOptionalFieldsItemOutput() BucketInventoryConfigurationOptionalFieldsItemOutput - ToBucketInventoryConfigurationOptionalFieldsItemOutputWithContext(context.Context) BucketInventoryConfigurationOptionalFieldsItemOutput -} - -var bucketInventoryConfigurationOptionalFieldsItemPtrType = reflect.TypeOf((**BucketInventoryConfigurationOptionalFieldsItem)(nil)).Elem() - -type BucketInventoryConfigurationOptionalFieldsItemPtrInput interface { - pulumi.Input - - ToBucketInventoryConfigurationOptionalFieldsItemPtrOutput() BucketInventoryConfigurationOptionalFieldsItemPtrOutput - ToBucketInventoryConfigurationOptionalFieldsItemPtrOutputWithContext(context.Context) BucketInventoryConfigurationOptionalFieldsItemPtrOutput -} - -type bucketInventoryConfigurationOptionalFieldsItemPtr string - -func BucketInventoryConfigurationOptionalFieldsItemPtr(v string) BucketInventoryConfigurationOptionalFieldsItemPtrInput { - return (*bucketInventoryConfigurationOptionalFieldsItemPtr)(&v) -} - -func (*bucketInventoryConfigurationOptionalFieldsItemPtr) ElementType() reflect.Type { - return bucketInventoryConfigurationOptionalFieldsItemPtrType -} - -func (in *bucketInventoryConfigurationOptionalFieldsItemPtr) ToBucketInventoryConfigurationOptionalFieldsItemPtrOutput() BucketInventoryConfigurationOptionalFieldsItemPtrOutput { - return pulumi.ToOutput(in).(BucketInventoryConfigurationOptionalFieldsItemPtrOutput) -} - -func (in *bucketInventoryConfigurationOptionalFieldsItemPtr) ToBucketInventoryConfigurationOptionalFieldsItemPtrOutputWithContext(ctx context.Context) BucketInventoryConfigurationOptionalFieldsItemPtrOutput { - return pulumi.ToOutputWithContext(ctx, in).(BucketInventoryConfigurationOptionalFieldsItemPtrOutput) -} - -func (in *bucketInventoryConfigurationOptionalFieldsItemPtr) ToOutput(ctx context.Context) pulumix.Output[*BucketInventoryConfigurationOptionalFieldsItem] { - return pulumix.Output[*BucketInventoryConfigurationOptionalFieldsItem]{ - OutputState: in.ToBucketInventoryConfigurationOptionalFieldsItemPtrOutputWithContext(ctx).OutputState, - } -} - -// BucketInventoryConfigurationOptionalFieldsItemArrayInput is an input type that accepts BucketInventoryConfigurationOptionalFieldsItemArray and BucketInventoryConfigurationOptionalFieldsItemArrayOutput values. -// You can construct a concrete instance of `BucketInventoryConfigurationOptionalFieldsItemArrayInput` via: -// -// BucketInventoryConfigurationOptionalFieldsItemArray{ BucketInventoryConfigurationOptionalFieldsItemArgs{...} } -type BucketInventoryConfigurationOptionalFieldsItemArrayInput interface { - pulumi.Input - - ToBucketInventoryConfigurationOptionalFieldsItemArrayOutput() BucketInventoryConfigurationOptionalFieldsItemArrayOutput - ToBucketInventoryConfigurationOptionalFieldsItemArrayOutputWithContext(context.Context) BucketInventoryConfigurationOptionalFieldsItemArrayOutput -} - -type BucketInventoryConfigurationOptionalFieldsItemArray []BucketInventoryConfigurationOptionalFieldsItem - -func (BucketInventoryConfigurationOptionalFieldsItemArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]BucketInventoryConfigurationOptionalFieldsItem)(nil)).Elem() -} - -func (i BucketInventoryConfigurationOptionalFieldsItemArray) ToBucketInventoryConfigurationOptionalFieldsItemArrayOutput() BucketInventoryConfigurationOptionalFieldsItemArrayOutput { - return i.ToBucketInventoryConfigurationOptionalFieldsItemArrayOutputWithContext(context.Background()) -} - -func (i BucketInventoryConfigurationOptionalFieldsItemArray) ToBucketInventoryConfigurationOptionalFieldsItemArrayOutputWithContext(ctx context.Context) BucketInventoryConfigurationOptionalFieldsItemArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(BucketInventoryConfigurationOptionalFieldsItemArrayOutput) -} - -func (i BucketInventoryConfigurationOptionalFieldsItemArray) ToOutput(ctx context.Context) pulumix.Output[[]BucketInventoryConfigurationOptionalFieldsItem] { - return pulumix.Output[[]BucketInventoryConfigurationOptionalFieldsItem]{ - OutputState: i.ToBucketInventoryConfigurationOptionalFieldsItemArrayOutputWithContext(ctx).OutputState, - } -} - -type BucketInventoryConfigurationOptionalFieldsItemArrayOutput struct{ *pulumi.OutputState } - -func (BucketInventoryConfigurationOptionalFieldsItemArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]BucketInventoryConfigurationOptionalFieldsItem)(nil)).Elem() -} - -func (o BucketInventoryConfigurationOptionalFieldsItemArrayOutput) ToBucketInventoryConfigurationOptionalFieldsItemArrayOutput() BucketInventoryConfigurationOptionalFieldsItemArrayOutput { - return o -} - -func (o BucketInventoryConfigurationOptionalFieldsItemArrayOutput) ToBucketInventoryConfigurationOptionalFieldsItemArrayOutputWithContext(ctx context.Context) BucketInventoryConfigurationOptionalFieldsItemArrayOutput { - return o -} - -func (o BucketInventoryConfigurationOptionalFieldsItemArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]BucketInventoryConfigurationOptionalFieldsItem] { - return pulumix.Output[[]BucketInventoryConfigurationOptionalFieldsItem]{ - OutputState: o.OutputState, - } -} - -func (o BucketInventoryConfigurationOptionalFieldsItemArrayOutput) Index(i pulumi.IntInput) BucketInventoryConfigurationOptionalFieldsItemOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) BucketInventoryConfigurationOptionalFieldsItem { - return vs[0].([]BucketInventoryConfigurationOptionalFieldsItem)[vs[1].(int)] - }).(BucketInventoryConfigurationOptionalFieldsItemOutput) -} - -// Specifies the schedule for generating inventory results. -type BucketInventoryConfigurationScheduleFrequency string - -const ( - BucketInventoryConfigurationScheduleFrequencyDaily = BucketInventoryConfigurationScheduleFrequency("Daily") - BucketInventoryConfigurationScheduleFrequencyWeekly = BucketInventoryConfigurationScheduleFrequency("Weekly") -) - -func (BucketInventoryConfigurationScheduleFrequency) ElementType() reflect.Type { - return reflect.TypeOf((*BucketInventoryConfigurationScheduleFrequency)(nil)).Elem() -} - -func (e BucketInventoryConfigurationScheduleFrequency) ToBucketInventoryConfigurationScheduleFrequencyOutput() BucketInventoryConfigurationScheduleFrequencyOutput { - return pulumi.ToOutput(e).(BucketInventoryConfigurationScheduleFrequencyOutput) -} - -func (e BucketInventoryConfigurationScheduleFrequency) ToBucketInventoryConfigurationScheduleFrequencyOutputWithContext(ctx context.Context) BucketInventoryConfigurationScheduleFrequencyOutput { - return pulumi.ToOutputWithContext(ctx, e).(BucketInventoryConfigurationScheduleFrequencyOutput) -} - -func (e BucketInventoryConfigurationScheduleFrequency) ToBucketInventoryConfigurationScheduleFrequencyPtrOutput() BucketInventoryConfigurationScheduleFrequencyPtrOutput { - return e.ToBucketInventoryConfigurationScheduleFrequencyPtrOutputWithContext(context.Background()) -} - -func (e BucketInventoryConfigurationScheduleFrequency) ToBucketInventoryConfigurationScheduleFrequencyPtrOutputWithContext(ctx context.Context) BucketInventoryConfigurationScheduleFrequencyPtrOutput { - return BucketInventoryConfigurationScheduleFrequency(e).ToBucketInventoryConfigurationScheduleFrequencyOutputWithContext(ctx).ToBucketInventoryConfigurationScheduleFrequencyPtrOutputWithContext(ctx) -} - -func (e BucketInventoryConfigurationScheduleFrequency) ToStringOutput() pulumi.StringOutput { - return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) -} - -func (e BucketInventoryConfigurationScheduleFrequency) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) -} - -func (e BucketInventoryConfigurationScheduleFrequency) ToStringPtrOutput() pulumi.StringPtrOutput { - return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) -} - -func (e BucketInventoryConfigurationScheduleFrequency) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) -} - -type BucketInventoryConfigurationScheduleFrequencyOutput struct{ *pulumi.OutputState } - -func (BucketInventoryConfigurationScheduleFrequencyOutput) ElementType() reflect.Type { - return reflect.TypeOf((*BucketInventoryConfigurationScheduleFrequency)(nil)).Elem() -} - -func (o BucketInventoryConfigurationScheduleFrequencyOutput) ToBucketInventoryConfigurationScheduleFrequencyOutput() BucketInventoryConfigurationScheduleFrequencyOutput { - return o -} - -func (o BucketInventoryConfigurationScheduleFrequencyOutput) ToBucketInventoryConfigurationScheduleFrequencyOutputWithContext(ctx context.Context) BucketInventoryConfigurationScheduleFrequencyOutput { - return o -} - -func (o BucketInventoryConfigurationScheduleFrequencyOutput) ToBucketInventoryConfigurationScheduleFrequencyPtrOutput() BucketInventoryConfigurationScheduleFrequencyPtrOutput { - return o.ToBucketInventoryConfigurationScheduleFrequencyPtrOutputWithContext(context.Background()) -} - -func (o BucketInventoryConfigurationScheduleFrequencyOutput) ToBucketInventoryConfigurationScheduleFrequencyPtrOutputWithContext(ctx context.Context) BucketInventoryConfigurationScheduleFrequencyPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v BucketInventoryConfigurationScheduleFrequency) *BucketInventoryConfigurationScheduleFrequency { - return &v - }).(BucketInventoryConfigurationScheduleFrequencyPtrOutput) -} - -func (o BucketInventoryConfigurationScheduleFrequencyOutput) ToOutput(ctx context.Context) pulumix.Output[BucketInventoryConfigurationScheduleFrequency] { - return pulumix.Output[BucketInventoryConfigurationScheduleFrequency]{ - OutputState: o.OutputState, - } -} - -func (o BucketInventoryConfigurationScheduleFrequencyOutput) ToStringOutput() pulumi.StringOutput { - return o.ToStringOutputWithContext(context.Background()) -} - -func (o BucketInventoryConfigurationScheduleFrequencyOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e BucketInventoryConfigurationScheduleFrequency) string { - return string(e) - }).(pulumi.StringOutput) -} - -func (o BucketInventoryConfigurationScheduleFrequencyOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o BucketInventoryConfigurationScheduleFrequencyOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e BucketInventoryConfigurationScheduleFrequency) *string { - v := string(e) - return &v - }).(pulumi.StringPtrOutput) -} - -type BucketInventoryConfigurationScheduleFrequencyPtrOutput struct{ *pulumi.OutputState } - -func (BucketInventoryConfigurationScheduleFrequencyPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**BucketInventoryConfigurationScheduleFrequency)(nil)).Elem() -} - -func (o BucketInventoryConfigurationScheduleFrequencyPtrOutput) ToBucketInventoryConfigurationScheduleFrequencyPtrOutput() BucketInventoryConfigurationScheduleFrequencyPtrOutput { - return o -} - -func (o BucketInventoryConfigurationScheduleFrequencyPtrOutput) ToBucketInventoryConfigurationScheduleFrequencyPtrOutputWithContext(ctx context.Context) BucketInventoryConfigurationScheduleFrequencyPtrOutput { - return o -} - -func (o BucketInventoryConfigurationScheduleFrequencyPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*BucketInventoryConfigurationScheduleFrequency] { - return pulumix.Output[*BucketInventoryConfigurationScheduleFrequency]{ - OutputState: o.OutputState, - } -} - -func (o BucketInventoryConfigurationScheduleFrequencyPtrOutput) Elem() BucketInventoryConfigurationScheduleFrequencyOutput { - return o.ApplyT(func(v *BucketInventoryConfigurationScheduleFrequency) BucketInventoryConfigurationScheduleFrequency { - if v != nil { - return *v - } - var ret BucketInventoryConfigurationScheduleFrequency - return ret - }).(BucketInventoryConfigurationScheduleFrequencyOutput) -} - -func (o BucketInventoryConfigurationScheduleFrequencyPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o BucketInventoryConfigurationScheduleFrequencyPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e *BucketInventoryConfigurationScheduleFrequency) *string { - if e == nil { - return nil - } - v := string(*e) - return &v - }).(pulumi.StringPtrOutput) -} - -// BucketInventoryConfigurationScheduleFrequencyInput is an input type that accepts BucketInventoryConfigurationScheduleFrequencyArgs and BucketInventoryConfigurationScheduleFrequencyOutput values. -// You can construct a concrete instance of `BucketInventoryConfigurationScheduleFrequencyInput` via: -// -// BucketInventoryConfigurationScheduleFrequencyArgs{...} -type BucketInventoryConfigurationScheduleFrequencyInput interface { - pulumi.Input - - ToBucketInventoryConfigurationScheduleFrequencyOutput() BucketInventoryConfigurationScheduleFrequencyOutput - ToBucketInventoryConfigurationScheduleFrequencyOutputWithContext(context.Context) BucketInventoryConfigurationScheduleFrequencyOutput -} - -var bucketInventoryConfigurationScheduleFrequencyPtrType = reflect.TypeOf((**BucketInventoryConfigurationScheduleFrequency)(nil)).Elem() - -type BucketInventoryConfigurationScheduleFrequencyPtrInput interface { - pulumi.Input - - ToBucketInventoryConfigurationScheduleFrequencyPtrOutput() BucketInventoryConfigurationScheduleFrequencyPtrOutput - ToBucketInventoryConfigurationScheduleFrequencyPtrOutputWithContext(context.Context) BucketInventoryConfigurationScheduleFrequencyPtrOutput -} - -type bucketInventoryConfigurationScheduleFrequencyPtr string - -func BucketInventoryConfigurationScheduleFrequencyPtr(v string) BucketInventoryConfigurationScheduleFrequencyPtrInput { - return (*bucketInventoryConfigurationScheduleFrequencyPtr)(&v) -} - -func (*bucketInventoryConfigurationScheduleFrequencyPtr) ElementType() reflect.Type { - return bucketInventoryConfigurationScheduleFrequencyPtrType -} - -func (in *bucketInventoryConfigurationScheduleFrequencyPtr) ToBucketInventoryConfigurationScheduleFrequencyPtrOutput() BucketInventoryConfigurationScheduleFrequencyPtrOutput { - return pulumi.ToOutput(in).(BucketInventoryConfigurationScheduleFrequencyPtrOutput) -} - -func (in *bucketInventoryConfigurationScheduleFrequencyPtr) ToBucketInventoryConfigurationScheduleFrequencyPtrOutputWithContext(ctx context.Context) BucketInventoryConfigurationScheduleFrequencyPtrOutput { - return pulumi.ToOutputWithContext(ctx, in).(BucketInventoryConfigurationScheduleFrequencyPtrOutput) -} - -func (in *bucketInventoryConfigurationScheduleFrequencyPtr) ToOutput(ctx context.Context) pulumix.Output[*BucketInventoryConfigurationScheduleFrequency] { - return pulumix.Output[*BucketInventoryConfigurationScheduleFrequency]{ - OutputState: in.ToBucketInventoryConfigurationScheduleFrequencyPtrOutputWithContext(ctx).OutputState, - } -} - -type BucketMetricsStatus string - -const ( - BucketMetricsStatusDisabled = BucketMetricsStatus("Disabled") - BucketMetricsStatusEnabled = BucketMetricsStatus("Enabled") -) - -func (BucketMetricsStatus) ElementType() reflect.Type { - return reflect.TypeOf((*BucketMetricsStatus)(nil)).Elem() -} - -func (e BucketMetricsStatus) ToBucketMetricsStatusOutput() BucketMetricsStatusOutput { - return pulumi.ToOutput(e).(BucketMetricsStatusOutput) -} - -func (e BucketMetricsStatus) ToBucketMetricsStatusOutputWithContext(ctx context.Context) BucketMetricsStatusOutput { - return pulumi.ToOutputWithContext(ctx, e).(BucketMetricsStatusOutput) -} - -func (e BucketMetricsStatus) ToBucketMetricsStatusPtrOutput() BucketMetricsStatusPtrOutput { - return e.ToBucketMetricsStatusPtrOutputWithContext(context.Background()) -} - -func (e BucketMetricsStatus) ToBucketMetricsStatusPtrOutputWithContext(ctx context.Context) BucketMetricsStatusPtrOutput { - return BucketMetricsStatus(e).ToBucketMetricsStatusOutputWithContext(ctx).ToBucketMetricsStatusPtrOutputWithContext(ctx) -} - -func (e BucketMetricsStatus) ToStringOutput() pulumi.StringOutput { - return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) -} - -func (e BucketMetricsStatus) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) -} - -func (e BucketMetricsStatus) ToStringPtrOutput() pulumi.StringPtrOutput { - return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) -} - -func (e BucketMetricsStatus) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) -} - -type BucketMetricsStatusOutput struct{ *pulumi.OutputState } - -func (BucketMetricsStatusOutput) ElementType() reflect.Type { - return reflect.TypeOf((*BucketMetricsStatus)(nil)).Elem() -} - -func (o BucketMetricsStatusOutput) ToBucketMetricsStatusOutput() BucketMetricsStatusOutput { - return o -} - -func (o BucketMetricsStatusOutput) ToBucketMetricsStatusOutputWithContext(ctx context.Context) BucketMetricsStatusOutput { - return o -} - -func (o BucketMetricsStatusOutput) ToBucketMetricsStatusPtrOutput() BucketMetricsStatusPtrOutput { - return o.ToBucketMetricsStatusPtrOutputWithContext(context.Background()) -} - -func (o BucketMetricsStatusOutput) ToBucketMetricsStatusPtrOutputWithContext(ctx context.Context) BucketMetricsStatusPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v BucketMetricsStatus) *BucketMetricsStatus { - return &v - }).(BucketMetricsStatusPtrOutput) -} - -func (o BucketMetricsStatusOutput) ToOutput(ctx context.Context) pulumix.Output[BucketMetricsStatus] { - return pulumix.Output[BucketMetricsStatus]{ - OutputState: o.OutputState, - } -} - -func (o BucketMetricsStatusOutput) ToStringOutput() pulumi.StringOutput { - return o.ToStringOutputWithContext(context.Background()) -} - -func (o BucketMetricsStatusOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e BucketMetricsStatus) string { - return string(e) - }).(pulumi.StringOutput) -} - -func (o BucketMetricsStatusOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o BucketMetricsStatusOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e BucketMetricsStatus) *string { - v := string(e) - return &v - }).(pulumi.StringPtrOutput) -} - -type BucketMetricsStatusPtrOutput struct{ *pulumi.OutputState } - -func (BucketMetricsStatusPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**BucketMetricsStatus)(nil)).Elem() -} - -func (o BucketMetricsStatusPtrOutput) ToBucketMetricsStatusPtrOutput() BucketMetricsStatusPtrOutput { - return o -} - -func (o BucketMetricsStatusPtrOutput) ToBucketMetricsStatusPtrOutputWithContext(ctx context.Context) BucketMetricsStatusPtrOutput { - return o -} - -func (o BucketMetricsStatusPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*BucketMetricsStatus] { - return pulumix.Output[*BucketMetricsStatus]{ - OutputState: o.OutputState, - } -} - -func (o BucketMetricsStatusPtrOutput) Elem() BucketMetricsStatusOutput { - return o.ApplyT(func(v *BucketMetricsStatus) BucketMetricsStatus { - if v != nil { - return *v - } - var ret BucketMetricsStatus - return ret - }).(BucketMetricsStatusOutput) -} - -func (o BucketMetricsStatusPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o BucketMetricsStatusPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e *BucketMetricsStatus) *string { - if e == nil { - return nil - } - v := string(*e) - return &v - }).(pulumi.StringPtrOutput) -} - -// BucketMetricsStatusInput is an input type that accepts BucketMetricsStatusArgs and BucketMetricsStatusOutput values. -// You can construct a concrete instance of `BucketMetricsStatusInput` via: -// -// BucketMetricsStatusArgs{...} -type BucketMetricsStatusInput interface { - pulumi.Input - - ToBucketMetricsStatusOutput() BucketMetricsStatusOutput - ToBucketMetricsStatusOutputWithContext(context.Context) BucketMetricsStatusOutput -} - -var bucketMetricsStatusPtrType = reflect.TypeOf((**BucketMetricsStatus)(nil)).Elem() - -type BucketMetricsStatusPtrInput interface { - pulumi.Input - - ToBucketMetricsStatusPtrOutput() BucketMetricsStatusPtrOutput - ToBucketMetricsStatusPtrOutputWithContext(context.Context) BucketMetricsStatusPtrOutput -} - -type bucketMetricsStatusPtr string - -func BucketMetricsStatusPtr(v string) BucketMetricsStatusPtrInput { - return (*bucketMetricsStatusPtr)(&v) -} - -func (*bucketMetricsStatusPtr) ElementType() reflect.Type { - return bucketMetricsStatusPtrType -} - -func (in *bucketMetricsStatusPtr) ToBucketMetricsStatusPtrOutput() BucketMetricsStatusPtrOutput { - return pulumi.ToOutput(in).(BucketMetricsStatusPtrOutput) -} - -func (in *bucketMetricsStatusPtr) ToBucketMetricsStatusPtrOutputWithContext(ctx context.Context) BucketMetricsStatusPtrOutput { - return pulumi.ToOutputWithContext(ctx, in).(BucketMetricsStatusPtrOutput) -} - -func (in *bucketMetricsStatusPtr) ToOutput(ctx context.Context) pulumix.Output[*BucketMetricsStatus] { - return pulumix.Output[*BucketMetricsStatus]{ - OutputState: in.ToBucketMetricsStatusPtrOutputWithContext(ctx).OutputState, - } -} - -// The class of storage used to store the object. -type BucketNoncurrentVersionTransitionStorageClass string - -const ( - BucketNoncurrentVersionTransitionStorageClassDeepArchive = BucketNoncurrentVersionTransitionStorageClass("DEEP_ARCHIVE") - BucketNoncurrentVersionTransitionStorageClassGlacier = BucketNoncurrentVersionTransitionStorageClass("GLACIER") - BucketNoncurrentVersionTransitionStorageClassGlacierIr = BucketNoncurrentVersionTransitionStorageClass("GLACIER_IR") - BucketNoncurrentVersionTransitionStorageClassIntelligentTiering = BucketNoncurrentVersionTransitionStorageClass("INTELLIGENT_TIERING") - BucketNoncurrentVersionTransitionStorageClassOnezoneIa = BucketNoncurrentVersionTransitionStorageClass("ONEZONE_IA") - BucketNoncurrentVersionTransitionStorageClassStandardIa = BucketNoncurrentVersionTransitionStorageClass("STANDARD_IA") -) - -func (BucketNoncurrentVersionTransitionStorageClass) ElementType() reflect.Type { - return reflect.TypeOf((*BucketNoncurrentVersionTransitionStorageClass)(nil)).Elem() -} - -func (e BucketNoncurrentVersionTransitionStorageClass) ToBucketNoncurrentVersionTransitionStorageClassOutput() BucketNoncurrentVersionTransitionStorageClassOutput { - return pulumi.ToOutput(e).(BucketNoncurrentVersionTransitionStorageClassOutput) -} - -func (e BucketNoncurrentVersionTransitionStorageClass) ToBucketNoncurrentVersionTransitionStorageClassOutputWithContext(ctx context.Context) BucketNoncurrentVersionTransitionStorageClassOutput { - return pulumi.ToOutputWithContext(ctx, e).(BucketNoncurrentVersionTransitionStorageClassOutput) -} - -func (e BucketNoncurrentVersionTransitionStorageClass) ToBucketNoncurrentVersionTransitionStorageClassPtrOutput() BucketNoncurrentVersionTransitionStorageClassPtrOutput { - return e.ToBucketNoncurrentVersionTransitionStorageClassPtrOutputWithContext(context.Background()) -} - -func (e BucketNoncurrentVersionTransitionStorageClass) ToBucketNoncurrentVersionTransitionStorageClassPtrOutputWithContext(ctx context.Context) BucketNoncurrentVersionTransitionStorageClassPtrOutput { - return BucketNoncurrentVersionTransitionStorageClass(e).ToBucketNoncurrentVersionTransitionStorageClassOutputWithContext(ctx).ToBucketNoncurrentVersionTransitionStorageClassPtrOutputWithContext(ctx) -} - -func (e BucketNoncurrentVersionTransitionStorageClass) ToStringOutput() pulumi.StringOutput { - return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) -} - -func (e BucketNoncurrentVersionTransitionStorageClass) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) -} - -func (e BucketNoncurrentVersionTransitionStorageClass) ToStringPtrOutput() pulumi.StringPtrOutput { - return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) -} - -func (e BucketNoncurrentVersionTransitionStorageClass) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) -} - -type BucketNoncurrentVersionTransitionStorageClassOutput struct{ *pulumi.OutputState } - -func (BucketNoncurrentVersionTransitionStorageClassOutput) ElementType() reflect.Type { - return reflect.TypeOf((*BucketNoncurrentVersionTransitionStorageClass)(nil)).Elem() -} - -func (o BucketNoncurrentVersionTransitionStorageClassOutput) ToBucketNoncurrentVersionTransitionStorageClassOutput() BucketNoncurrentVersionTransitionStorageClassOutput { - return o -} - -func (o BucketNoncurrentVersionTransitionStorageClassOutput) ToBucketNoncurrentVersionTransitionStorageClassOutputWithContext(ctx context.Context) BucketNoncurrentVersionTransitionStorageClassOutput { - return o -} - -func (o BucketNoncurrentVersionTransitionStorageClassOutput) ToBucketNoncurrentVersionTransitionStorageClassPtrOutput() BucketNoncurrentVersionTransitionStorageClassPtrOutput { - return o.ToBucketNoncurrentVersionTransitionStorageClassPtrOutputWithContext(context.Background()) -} - -func (o BucketNoncurrentVersionTransitionStorageClassOutput) ToBucketNoncurrentVersionTransitionStorageClassPtrOutputWithContext(ctx context.Context) BucketNoncurrentVersionTransitionStorageClassPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v BucketNoncurrentVersionTransitionStorageClass) *BucketNoncurrentVersionTransitionStorageClass { - return &v - }).(BucketNoncurrentVersionTransitionStorageClassPtrOutput) -} - -func (o BucketNoncurrentVersionTransitionStorageClassOutput) ToOutput(ctx context.Context) pulumix.Output[BucketNoncurrentVersionTransitionStorageClass] { - return pulumix.Output[BucketNoncurrentVersionTransitionStorageClass]{ - OutputState: o.OutputState, - } -} - -func (o BucketNoncurrentVersionTransitionStorageClassOutput) ToStringOutput() pulumi.StringOutput { - return o.ToStringOutputWithContext(context.Background()) -} - -func (o BucketNoncurrentVersionTransitionStorageClassOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e BucketNoncurrentVersionTransitionStorageClass) string { - return string(e) - }).(pulumi.StringOutput) -} - -func (o BucketNoncurrentVersionTransitionStorageClassOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o BucketNoncurrentVersionTransitionStorageClassOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e BucketNoncurrentVersionTransitionStorageClass) *string { - v := string(e) - return &v - }).(pulumi.StringPtrOutput) -} - -type BucketNoncurrentVersionTransitionStorageClassPtrOutput struct{ *pulumi.OutputState } - -func (BucketNoncurrentVersionTransitionStorageClassPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**BucketNoncurrentVersionTransitionStorageClass)(nil)).Elem() -} - -func (o BucketNoncurrentVersionTransitionStorageClassPtrOutput) ToBucketNoncurrentVersionTransitionStorageClassPtrOutput() BucketNoncurrentVersionTransitionStorageClassPtrOutput { - return o -} - -func (o BucketNoncurrentVersionTransitionStorageClassPtrOutput) ToBucketNoncurrentVersionTransitionStorageClassPtrOutputWithContext(ctx context.Context) BucketNoncurrentVersionTransitionStorageClassPtrOutput { - return o -} - -func (o BucketNoncurrentVersionTransitionStorageClassPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*BucketNoncurrentVersionTransitionStorageClass] { - return pulumix.Output[*BucketNoncurrentVersionTransitionStorageClass]{ - OutputState: o.OutputState, - } -} - -func (o BucketNoncurrentVersionTransitionStorageClassPtrOutput) Elem() BucketNoncurrentVersionTransitionStorageClassOutput { - return o.ApplyT(func(v *BucketNoncurrentVersionTransitionStorageClass) BucketNoncurrentVersionTransitionStorageClass { - if v != nil { - return *v - } - var ret BucketNoncurrentVersionTransitionStorageClass - return ret - }).(BucketNoncurrentVersionTransitionStorageClassOutput) -} - -func (o BucketNoncurrentVersionTransitionStorageClassPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o BucketNoncurrentVersionTransitionStorageClassPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e *BucketNoncurrentVersionTransitionStorageClass) *string { - if e == nil { - return nil - } - v := string(*e) - return &v - }).(pulumi.StringPtrOutput) -} - -// BucketNoncurrentVersionTransitionStorageClassInput is an input type that accepts BucketNoncurrentVersionTransitionStorageClassArgs and BucketNoncurrentVersionTransitionStorageClassOutput values. -// You can construct a concrete instance of `BucketNoncurrentVersionTransitionStorageClassInput` via: -// -// BucketNoncurrentVersionTransitionStorageClassArgs{...} -type BucketNoncurrentVersionTransitionStorageClassInput interface { - pulumi.Input - - ToBucketNoncurrentVersionTransitionStorageClassOutput() BucketNoncurrentVersionTransitionStorageClassOutput - ToBucketNoncurrentVersionTransitionStorageClassOutputWithContext(context.Context) BucketNoncurrentVersionTransitionStorageClassOutput -} - -var bucketNoncurrentVersionTransitionStorageClassPtrType = reflect.TypeOf((**BucketNoncurrentVersionTransitionStorageClass)(nil)).Elem() - -type BucketNoncurrentVersionTransitionStorageClassPtrInput interface { - pulumi.Input - - ToBucketNoncurrentVersionTransitionStorageClassPtrOutput() BucketNoncurrentVersionTransitionStorageClassPtrOutput - ToBucketNoncurrentVersionTransitionStorageClassPtrOutputWithContext(context.Context) BucketNoncurrentVersionTransitionStorageClassPtrOutput -} - -type bucketNoncurrentVersionTransitionStorageClassPtr string - -func BucketNoncurrentVersionTransitionStorageClassPtr(v string) BucketNoncurrentVersionTransitionStorageClassPtrInput { - return (*bucketNoncurrentVersionTransitionStorageClassPtr)(&v) -} - -func (*bucketNoncurrentVersionTransitionStorageClassPtr) ElementType() reflect.Type { - return bucketNoncurrentVersionTransitionStorageClassPtrType -} - -func (in *bucketNoncurrentVersionTransitionStorageClassPtr) ToBucketNoncurrentVersionTransitionStorageClassPtrOutput() BucketNoncurrentVersionTransitionStorageClassPtrOutput { - return pulumi.ToOutput(in).(BucketNoncurrentVersionTransitionStorageClassPtrOutput) -} - -func (in *bucketNoncurrentVersionTransitionStorageClassPtr) ToBucketNoncurrentVersionTransitionStorageClassPtrOutputWithContext(ctx context.Context) BucketNoncurrentVersionTransitionStorageClassPtrOutput { - return pulumi.ToOutputWithContext(ctx, in).(BucketNoncurrentVersionTransitionStorageClassPtrOutput) -} - -func (in *bucketNoncurrentVersionTransitionStorageClassPtr) ToOutput(ctx context.Context) pulumix.Output[*BucketNoncurrentVersionTransitionStorageClass] { - return pulumix.Output[*BucketNoncurrentVersionTransitionStorageClass]{ - OutputState: in.ToBucketNoncurrentVersionTransitionStorageClassPtrOutputWithContext(ctx).OutputState, - } -} - -// Specifies an object ownership rule. -type BucketOwnershipControlsRuleObjectOwnership string - -const ( - BucketOwnershipControlsRuleObjectOwnershipObjectWriter = BucketOwnershipControlsRuleObjectOwnership("ObjectWriter") - BucketOwnershipControlsRuleObjectOwnershipBucketOwnerPreferred = BucketOwnershipControlsRuleObjectOwnership("BucketOwnerPreferred") - BucketOwnershipControlsRuleObjectOwnershipBucketOwnerEnforced = BucketOwnershipControlsRuleObjectOwnership("BucketOwnerEnforced") -) - -func (BucketOwnershipControlsRuleObjectOwnership) ElementType() reflect.Type { - return reflect.TypeOf((*BucketOwnershipControlsRuleObjectOwnership)(nil)).Elem() -} - -func (e BucketOwnershipControlsRuleObjectOwnership) ToBucketOwnershipControlsRuleObjectOwnershipOutput() BucketOwnershipControlsRuleObjectOwnershipOutput { - return pulumi.ToOutput(e).(BucketOwnershipControlsRuleObjectOwnershipOutput) -} - -func (e BucketOwnershipControlsRuleObjectOwnership) ToBucketOwnershipControlsRuleObjectOwnershipOutputWithContext(ctx context.Context) BucketOwnershipControlsRuleObjectOwnershipOutput { - return pulumi.ToOutputWithContext(ctx, e).(BucketOwnershipControlsRuleObjectOwnershipOutput) -} - -func (e BucketOwnershipControlsRuleObjectOwnership) ToBucketOwnershipControlsRuleObjectOwnershipPtrOutput() BucketOwnershipControlsRuleObjectOwnershipPtrOutput { - return e.ToBucketOwnershipControlsRuleObjectOwnershipPtrOutputWithContext(context.Background()) -} - -func (e BucketOwnershipControlsRuleObjectOwnership) ToBucketOwnershipControlsRuleObjectOwnershipPtrOutputWithContext(ctx context.Context) BucketOwnershipControlsRuleObjectOwnershipPtrOutput { - return BucketOwnershipControlsRuleObjectOwnership(e).ToBucketOwnershipControlsRuleObjectOwnershipOutputWithContext(ctx).ToBucketOwnershipControlsRuleObjectOwnershipPtrOutputWithContext(ctx) -} - -func (e BucketOwnershipControlsRuleObjectOwnership) ToStringOutput() pulumi.StringOutput { - return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) -} - -func (e BucketOwnershipControlsRuleObjectOwnership) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) -} - -func (e BucketOwnershipControlsRuleObjectOwnership) ToStringPtrOutput() pulumi.StringPtrOutput { - return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) -} - -func (e BucketOwnershipControlsRuleObjectOwnership) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) -} - -type BucketOwnershipControlsRuleObjectOwnershipOutput struct{ *pulumi.OutputState } - -func (BucketOwnershipControlsRuleObjectOwnershipOutput) ElementType() reflect.Type { - return reflect.TypeOf((*BucketOwnershipControlsRuleObjectOwnership)(nil)).Elem() -} - -func (o BucketOwnershipControlsRuleObjectOwnershipOutput) ToBucketOwnershipControlsRuleObjectOwnershipOutput() BucketOwnershipControlsRuleObjectOwnershipOutput { - return o -} - -func (o BucketOwnershipControlsRuleObjectOwnershipOutput) ToBucketOwnershipControlsRuleObjectOwnershipOutputWithContext(ctx context.Context) BucketOwnershipControlsRuleObjectOwnershipOutput { - return o -} - -func (o BucketOwnershipControlsRuleObjectOwnershipOutput) ToBucketOwnershipControlsRuleObjectOwnershipPtrOutput() BucketOwnershipControlsRuleObjectOwnershipPtrOutput { - return o.ToBucketOwnershipControlsRuleObjectOwnershipPtrOutputWithContext(context.Background()) -} - -func (o BucketOwnershipControlsRuleObjectOwnershipOutput) ToBucketOwnershipControlsRuleObjectOwnershipPtrOutputWithContext(ctx context.Context) BucketOwnershipControlsRuleObjectOwnershipPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v BucketOwnershipControlsRuleObjectOwnership) *BucketOwnershipControlsRuleObjectOwnership { - return &v - }).(BucketOwnershipControlsRuleObjectOwnershipPtrOutput) -} - -func (o BucketOwnershipControlsRuleObjectOwnershipOutput) ToOutput(ctx context.Context) pulumix.Output[BucketOwnershipControlsRuleObjectOwnership] { - return pulumix.Output[BucketOwnershipControlsRuleObjectOwnership]{ - OutputState: o.OutputState, - } -} - -func (o BucketOwnershipControlsRuleObjectOwnershipOutput) ToStringOutput() pulumi.StringOutput { - return o.ToStringOutputWithContext(context.Background()) -} - -func (o BucketOwnershipControlsRuleObjectOwnershipOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e BucketOwnershipControlsRuleObjectOwnership) string { - return string(e) - }).(pulumi.StringOutput) -} - -func (o BucketOwnershipControlsRuleObjectOwnershipOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o BucketOwnershipControlsRuleObjectOwnershipOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e BucketOwnershipControlsRuleObjectOwnership) *string { - v := string(e) - return &v - }).(pulumi.StringPtrOutput) -} - -type BucketOwnershipControlsRuleObjectOwnershipPtrOutput struct{ *pulumi.OutputState } - -func (BucketOwnershipControlsRuleObjectOwnershipPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**BucketOwnershipControlsRuleObjectOwnership)(nil)).Elem() -} - -func (o BucketOwnershipControlsRuleObjectOwnershipPtrOutput) ToBucketOwnershipControlsRuleObjectOwnershipPtrOutput() BucketOwnershipControlsRuleObjectOwnershipPtrOutput { - return o -} - -func (o BucketOwnershipControlsRuleObjectOwnershipPtrOutput) ToBucketOwnershipControlsRuleObjectOwnershipPtrOutputWithContext(ctx context.Context) BucketOwnershipControlsRuleObjectOwnershipPtrOutput { - return o -} - -func (o BucketOwnershipControlsRuleObjectOwnershipPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*BucketOwnershipControlsRuleObjectOwnership] { - return pulumix.Output[*BucketOwnershipControlsRuleObjectOwnership]{ - OutputState: o.OutputState, - } -} - -func (o BucketOwnershipControlsRuleObjectOwnershipPtrOutput) Elem() BucketOwnershipControlsRuleObjectOwnershipOutput { - return o.ApplyT(func(v *BucketOwnershipControlsRuleObjectOwnership) BucketOwnershipControlsRuleObjectOwnership { - if v != nil { - return *v - } - var ret BucketOwnershipControlsRuleObjectOwnership - return ret - }).(BucketOwnershipControlsRuleObjectOwnershipOutput) -} - -func (o BucketOwnershipControlsRuleObjectOwnershipPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o BucketOwnershipControlsRuleObjectOwnershipPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e *BucketOwnershipControlsRuleObjectOwnership) *string { - if e == nil { - return nil - } - v := string(*e) - return &v - }).(pulumi.StringPtrOutput) -} - -// BucketOwnershipControlsRuleObjectOwnershipInput is an input type that accepts BucketOwnershipControlsRuleObjectOwnershipArgs and BucketOwnershipControlsRuleObjectOwnershipOutput values. -// You can construct a concrete instance of `BucketOwnershipControlsRuleObjectOwnershipInput` via: -// -// BucketOwnershipControlsRuleObjectOwnershipArgs{...} -type BucketOwnershipControlsRuleObjectOwnershipInput interface { - pulumi.Input - - ToBucketOwnershipControlsRuleObjectOwnershipOutput() BucketOwnershipControlsRuleObjectOwnershipOutput - ToBucketOwnershipControlsRuleObjectOwnershipOutputWithContext(context.Context) BucketOwnershipControlsRuleObjectOwnershipOutput -} - -var bucketOwnershipControlsRuleObjectOwnershipPtrType = reflect.TypeOf((**BucketOwnershipControlsRuleObjectOwnership)(nil)).Elem() - -type BucketOwnershipControlsRuleObjectOwnershipPtrInput interface { - pulumi.Input - - ToBucketOwnershipControlsRuleObjectOwnershipPtrOutput() BucketOwnershipControlsRuleObjectOwnershipPtrOutput - ToBucketOwnershipControlsRuleObjectOwnershipPtrOutputWithContext(context.Context) BucketOwnershipControlsRuleObjectOwnershipPtrOutput -} - -type bucketOwnershipControlsRuleObjectOwnershipPtr string - -func BucketOwnershipControlsRuleObjectOwnershipPtr(v string) BucketOwnershipControlsRuleObjectOwnershipPtrInput { - return (*bucketOwnershipControlsRuleObjectOwnershipPtr)(&v) -} - -func (*bucketOwnershipControlsRuleObjectOwnershipPtr) ElementType() reflect.Type { - return bucketOwnershipControlsRuleObjectOwnershipPtrType -} - -func (in *bucketOwnershipControlsRuleObjectOwnershipPtr) ToBucketOwnershipControlsRuleObjectOwnershipPtrOutput() BucketOwnershipControlsRuleObjectOwnershipPtrOutput { - return pulumi.ToOutput(in).(BucketOwnershipControlsRuleObjectOwnershipPtrOutput) -} - -func (in *bucketOwnershipControlsRuleObjectOwnershipPtr) ToBucketOwnershipControlsRuleObjectOwnershipPtrOutputWithContext(ctx context.Context) BucketOwnershipControlsRuleObjectOwnershipPtrOutput { - return pulumi.ToOutputWithContext(ctx, in).(BucketOwnershipControlsRuleObjectOwnershipPtrOutput) -} - -func (in *bucketOwnershipControlsRuleObjectOwnershipPtr) ToOutput(ctx context.Context) pulumix.Output[*BucketOwnershipControlsRuleObjectOwnership] { - return pulumix.Output[*BucketOwnershipControlsRuleObjectOwnership]{ - OutputState: in.ToBucketOwnershipControlsRuleObjectOwnershipPtrOutputWithContext(ctx).OutputState, - } -} - -// Protocol to use when redirecting requests. The default is the protocol that is used in the original request. -type BucketRedirectAllRequestsToProtocol string - -const ( - BucketRedirectAllRequestsToProtocolHttp = BucketRedirectAllRequestsToProtocol("http") - BucketRedirectAllRequestsToProtocolHttps = BucketRedirectAllRequestsToProtocol("https") -) - -func (BucketRedirectAllRequestsToProtocol) ElementType() reflect.Type { - return reflect.TypeOf((*BucketRedirectAllRequestsToProtocol)(nil)).Elem() -} - -func (e BucketRedirectAllRequestsToProtocol) ToBucketRedirectAllRequestsToProtocolOutput() BucketRedirectAllRequestsToProtocolOutput { - return pulumi.ToOutput(e).(BucketRedirectAllRequestsToProtocolOutput) -} - -func (e BucketRedirectAllRequestsToProtocol) ToBucketRedirectAllRequestsToProtocolOutputWithContext(ctx context.Context) BucketRedirectAllRequestsToProtocolOutput { - return pulumi.ToOutputWithContext(ctx, e).(BucketRedirectAllRequestsToProtocolOutput) -} - -func (e BucketRedirectAllRequestsToProtocol) ToBucketRedirectAllRequestsToProtocolPtrOutput() BucketRedirectAllRequestsToProtocolPtrOutput { - return e.ToBucketRedirectAllRequestsToProtocolPtrOutputWithContext(context.Background()) -} - -func (e BucketRedirectAllRequestsToProtocol) ToBucketRedirectAllRequestsToProtocolPtrOutputWithContext(ctx context.Context) BucketRedirectAllRequestsToProtocolPtrOutput { - return BucketRedirectAllRequestsToProtocol(e).ToBucketRedirectAllRequestsToProtocolOutputWithContext(ctx).ToBucketRedirectAllRequestsToProtocolPtrOutputWithContext(ctx) -} - -func (e BucketRedirectAllRequestsToProtocol) ToStringOutput() pulumi.StringOutput { - return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) -} - -func (e BucketRedirectAllRequestsToProtocol) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) -} - -func (e BucketRedirectAllRequestsToProtocol) ToStringPtrOutput() pulumi.StringPtrOutput { - return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) -} - -func (e BucketRedirectAllRequestsToProtocol) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) -} - -type BucketRedirectAllRequestsToProtocolOutput struct{ *pulumi.OutputState } - -func (BucketRedirectAllRequestsToProtocolOutput) ElementType() reflect.Type { - return reflect.TypeOf((*BucketRedirectAllRequestsToProtocol)(nil)).Elem() -} - -func (o BucketRedirectAllRequestsToProtocolOutput) ToBucketRedirectAllRequestsToProtocolOutput() BucketRedirectAllRequestsToProtocolOutput { - return o -} - -func (o BucketRedirectAllRequestsToProtocolOutput) ToBucketRedirectAllRequestsToProtocolOutputWithContext(ctx context.Context) BucketRedirectAllRequestsToProtocolOutput { - return o -} - -func (o BucketRedirectAllRequestsToProtocolOutput) ToBucketRedirectAllRequestsToProtocolPtrOutput() BucketRedirectAllRequestsToProtocolPtrOutput { - return o.ToBucketRedirectAllRequestsToProtocolPtrOutputWithContext(context.Background()) -} - -func (o BucketRedirectAllRequestsToProtocolOutput) ToBucketRedirectAllRequestsToProtocolPtrOutputWithContext(ctx context.Context) BucketRedirectAllRequestsToProtocolPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v BucketRedirectAllRequestsToProtocol) *BucketRedirectAllRequestsToProtocol { - return &v - }).(BucketRedirectAllRequestsToProtocolPtrOutput) -} - -func (o BucketRedirectAllRequestsToProtocolOutput) ToOutput(ctx context.Context) pulumix.Output[BucketRedirectAllRequestsToProtocol] { - return pulumix.Output[BucketRedirectAllRequestsToProtocol]{ - OutputState: o.OutputState, - } -} - -func (o BucketRedirectAllRequestsToProtocolOutput) ToStringOutput() pulumi.StringOutput { - return o.ToStringOutputWithContext(context.Background()) -} - -func (o BucketRedirectAllRequestsToProtocolOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e BucketRedirectAllRequestsToProtocol) string { - return string(e) - }).(pulumi.StringOutput) -} - -func (o BucketRedirectAllRequestsToProtocolOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o BucketRedirectAllRequestsToProtocolOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e BucketRedirectAllRequestsToProtocol) *string { - v := string(e) - return &v - }).(pulumi.StringPtrOutput) -} - -type BucketRedirectAllRequestsToProtocolPtrOutput struct{ *pulumi.OutputState } - -func (BucketRedirectAllRequestsToProtocolPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**BucketRedirectAllRequestsToProtocol)(nil)).Elem() -} - -func (o BucketRedirectAllRequestsToProtocolPtrOutput) ToBucketRedirectAllRequestsToProtocolPtrOutput() BucketRedirectAllRequestsToProtocolPtrOutput { - return o -} - -func (o BucketRedirectAllRequestsToProtocolPtrOutput) ToBucketRedirectAllRequestsToProtocolPtrOutputWithContext(ctx context.Context) BucketRedirectAllRequestsToProtocolPtrOutput { - return o -} - -func (o BucketRedirectAllRequestsToProtocolPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*BucketRedirectAllRequestsToProtocol] { - return pulumix.Output[*BucketRedirectAllRequestsToProtocol]{ - OutputState: o.OutputState, - } -} - -func (o BucketRedirectAllRequestsToProtocolPtrOutput) Elem() BucketRedirectAllRequestsToProtocolOutput { - return o.ApplyT(func(v *BucketRedirectAllRequestsToProtocol) BucketRedirectAllRequestsToProtocol { - if v != nil { - return *v - } - var ret BucketRedirectAllRequestsToProtocol - return ret - }).(BucketRedirectAllRequestsToProtocolOutput) -} - -func (o BucketRedirectAllRequestsToProtocolPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o BucketRedirectAllRequestsToProtocolPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e *BucketRedirectAllRequestsToProtocol) *string { - if e == nil { - return nil - } - v := string(*e) - return &v - }).(pulumi.StringPtrOutput) -} - -// BucketRedirectAllRequestsToProtocolInput is an input type that accepts BucketRedirectAllRequestsToProtocolArgs and BucketRedirectAllRequestsToProtocolOutput values. -// You can construct a concrete instance of `BucketRedirectAllRequestsToProtocolInput` via: -// -// BucketRedirectAllRequestsToProtocolArgs{...} -type BucketRedirectAllRequestsToProtocolInput interface { - pulumi.Input - - ToBucketRedirectAllRequestsToProtocolOutput() BucketRedirectAllRequestsToProtocolOutput - ToBucketRedirectAllRequestsToProtocolOutputWithContext(context.Context) BucketRedirectAllRequestsToProtocolOutput -} - -var bucketRedirectAllRequestsToProtocolPtrType = reflect.TypeOf((**BucketRedirectAllRequestsToProtocol)(nil)).Elem() - -type BucketRedirectAllRequestsToProtocolPtrInput interface { - pulumi.Input - - ToBucketRedirectAllRequestsToProtocolPtrOutput() BucketRedirectAllRequestsToProtocolPtrOutput - ToBucketRedirectAllRequestsToProtocolPtrOutputWithContext(context.Context) BucketRedirectAllRequestsToProtocolPtrOutput -} - -type bucketRedirectAllRequestsToProtocolPtr string - -func BucketRedirectAllRequestsToProtocolPtr(v string) BucketRedirectAllRequestsToProtocolPtrInput { - return (*bucketRedirectAllRequestsToProtocolPtr)(&v) -} - -func (*bucketRedirectAllRequestsToProtocolPtr) ElementType() reflect.Type { - return bucketRedirectAllRequestsToProtocolPtrType -} - -func (in *bucketRedirectAllRequestsToProtocolPtr) ToBucketRedirectAllRequestsToProtocolPtrOutput() BucketRedirectAllRequestsToProtocolPtrOutput { - return pulumi.ToOutput(in).(BucketRedirectAllRequestsToProtocolPtrOutput) -} - -func (in *bucketRedirectAllRequestsToProtocolPtr) ToBucketRedirectAllRequestsToProtocolPtrOutputWithContext(ctx context.Context) BucketRedirectAllRequestsToProtocolPtrOutput { - return pulumi.ToOutputWithContext(ctx, in).(BucketRedirectAllRequestsToProtocolPtrOutput) -} - -func (in *bucketRedirectAllRequestsToProtocolPtr) ToOutput(ctx context.Context) pulumix.Output[*BucketRedirectAllRequestsToProtocol] { - return pulumix.Output[*BucketRedirectAllRequestsToProtocol]{ - OutputState: in.ToBucketRedirectAllRequestsToProtocolPtrOutputWithContext(ctx).OutputState, - } -} - -// Protocol to use when redirecting requests. The default is the protocol that is used in the original request. -type BucketRedirectRuleProtocol string - -const ( - BucketRedirectRuleProtocolHttp = BucketRedirectRuleProtocol("http") - BucketRedirectRuleProtocolHttps = BucketRedirectRuleProtocol("https") -) - -func (BucketRedirectRuleProtocol) ElementType() reflect.Type { - return reflect.TypeOf((*BucketRedirectRuleProtocol)(nil)).Elem() -} - -func (e BucketRedirectRuleProtocol) ToBucketRedirectRuleProtocolOutput() BucketRedirectRuleProtocolOutput { - return pulumi.ToOutput(e).(BucketRedirectRuleProtocolOutput) -} - -func (e BucketRedirectRuleProtocol) ToBucketRedirectRuleProtocolOutputWithContext(ctx context.Context) BucketRedirectRuleProtocolOutput { - return pulumi.ToOutputWithContext(ctx, e).(BucketRedirectRuleProtocolOutput) -} - -func (e BucketRedirectRuleProtocol) ToBucketRedirectRuleProtocolPtrOutput() BucketRedirectRuleProtocolPtrOutput { - return e.ToBucketRedirectRuleProtocolPtrOutputWithContext(context.Background()) -} - -func (e BucketRedirectRuleProtocol) ToBucketRedirectRuleProtocolPtrOutputWithContext(ctx context.Context) BucketRedirectRuleProtocolPtrOutput { - return BucketRedirectRuleProtocol(e).ToBucketRedirectRuleProtocolOutputWithContext(ctx).ToBucketRedirectRuleProtocolPtrOutputWithContext(ctx) -} - -func (e BucketRedirectRuleProtocol) ToStringOutput() pulumi.StringOutput { - return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) -} - -func (e BucketRedirectRuleProtocol) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) -} - -func (e BucketRedirectRuleProtocol) ToStringPtrOutput() pulumi.StringPtrOutput { - return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) -} - -func (e BucketRedirectRuleProtocol) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) -} - -type BucketRedirectRuleProtocolOutput struct{ *pulumi.OutputState } - -func (BucketRedirectRuleProtocolOutput) ElementType() reflect.Type { - return reflect.TypeOf((*BucketRedirectRuleProtocol)(nil)).Elem() -} - -func (o BucketRedirectRuleProtocolOutput) ToBucketRedirectRuleProtocolOutput() BucketRedirectRuleProtocolOutput { - return o -} - -func (o BucketRedirectRuleProtocolOutput) ToBucketRedirectRuleProtocolOutputWithContext(ctx context.Context) BucketRedirectRuleProtocolOutput { - return o -} - -func (o BucketRedirectRuleProtocolOutput) ToBucketRedirectRuleProtocolPtrOutput() BucketRedirectRuleProtocolPtrOutput { - return o.ToBucketRedirectRuleProtocolPtrOutputWithContext(context.Background()) -} - -func (o BucketRedirectRuleProtocolOutput) ToBucketRedirectRuleProtocolPtrOutputWithContext(ctx context.Context) BucketRedirectRuleProtocolPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v BucketRedirectRuleProtocol) *BucketRedirectRuleProtocol { - return &v - }).(BucketRedirectRuleProtocolPtrOutput) -} - -func (o BucketRedirectRuleProtocolOutput) ToOutput(ctx context.Context) pulumix.Output[BucketRedirectRuleProtocol] { - return pulumix.Output[BucketRedirectRuleProtocol]{ - OutputState: o.OutputState, - } -} - -func (o BucketRedirectRuleProtocolOutput) ToStringOutput() pulumi.StringOutput { - return o.ToStringOutputWithContext(context.Background()) -} - -func (o BucketRedirectRuleProtocolOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e BucketRedirectRuleProtocol) string { - return string(e) - }).(pulumi.StringOutput) -} - -func (o BucketRedirectRuleProtocolOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o BucketRedirectRuleProtocolOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e BucketRedirectRuleProtocol) *string { - v := string(e) - return &v - }).(pulumi.StringPtrOutput) -} - -type BucketRedirectRuleProtocolPtrOutput struct{ *pulumi.OutputState } - -func (BucketRedirectRuleProtocolPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**BucketRedirectRuleProtocol)(nil)).Elem() -} - -func (o BucketRedirectRuleProtocolPtrOutput) ToBucketRedirectRuleProtocolPtrOutput() BucketRedirectRuleProtocolPtrOutput { - return o -} - -func (o BucketRedirectRuleProtocolPtrOutput) ToBucketRedirectRuleProtocolPtrOutputWithContext(ctx context.Context) BucketRedirectRuleProtocolPtrOutput { - return o -} - -func (o BucketRedirectRuleProtocolPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*BucketRedirectRuleProtocol] { - return pulumix.Output[*BucketRedirectRuleProtocol]{ - OutputState: o.OutputState, - } -} - -func (o BucketRedirectRuleProtocolPtrOutput) Elem() BucketRedirectRuleProtocolOutput { - return o.ApplyT(func(v *BucketRedirectRuleProtocol) BucketRedirectRuleProtocol { - if v != nil { - return *v - } - var ret BucketRedirectRuleProtocol - return ret - }).(BucketRedirectRuleProtocolOutput) -} - -func (o BucketRedirectRuleProtocolPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o BucketRedirectRuleProtocolPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e *BucketRedirectRuleProtocol) *string { - if e == nil { - return nil - } - v := string(*e) - return &v - }).(pulumi.StringPtrOutput) -} - -// BucketRedirectRuleProtocolInput is an input type that accepts BucketRedirectRuleProtocolArgs and BucketRedirectRuleProtocolOutput values. -// You can construct a concrete instance of `BucketRedirectRuleProtocolInput` via: -// -// BucketRedirectRuleProtocolArgs{...} -type BucketRedirectRuleProtocolInput interface { - pulumi.Input - - ToBucketRedirectRuleProtocolOutput() BucketRedirectRuleProtocolOutput - ToBucketRedirectRuleProtocolOutputWithContext(context.Context) BucketRedirectRuleProtocolOutput -} - -var bucketRedirectRuleProtocolPtrType = reflect.TypeOf((**BucketRedirectRuleProtocol)(nil)).Elem() - -type BucketRedirectRuleProtocolPtrInput interface { - pulumi.Input - - ToBucketRedirectRuleProtocolPtrOutput() BucketRedirectRuleProtocolPtrOutput - ToBucketRedirectRuleProtocolPtrOutputWithContext(context.Context) BucketRedirectRuleProtocolPtrOutput -} - -type bucketRedirectRuleProtocolPtr string - -func BucketRedirectRuleProtocolPtr(v string) BucketRedirectRuleProtocolPtrInput { - return (*bucketRedirectRuleProtocolPtr)(&v) -} - -func (*bucketRedirectRuleProtocolPtr) ElementType() reflect.Type { - return bucketRedirectRuleProtocolPtrType -} - -func (in *bucketRedirectRuleProtocolPtr) ToBucketRedirectRuleProtocolPtrOutput() BucketRedirectRuleProtocolPtrOutput { - return pulumi.ToOutput(in).(BucketRedirectRuleProtocolPtrOutput) -} - -func (in *bucketRedirectRuleProtocolPtr) ToBucketRedirectRuleProtocolPtrOutputWithContext(ctx context.Context) BucketRedirectRuleProtocolPtrOutput { - return pulumi.ToOutputWithContext(ctx, in).(BucketRedirectRuleProtocolPtrOutput) -} - -func (in *bucketRedirectRuleProtocolPtr) ToOutput(ctx context.Context) pulumix.Output[*BucketRedirectRuleProtocol] { - return pulumix.Output[*BucketRedirectRuleProtocol]{ - OutputState: in.ToBucketRedirectRuleProtocolPtrOutputWithContext(ctx).OutputState, - } -} - -// Specifies whether Amazon S3 replicates modifications on replicas. -type BucketReplicaModificationsStatus string - -const ( - BucketReplicaModificationsStatusEnabled = BucketReplicaModificationsStatus("Enabled") - BucketReplicaModificationsStatusDisabled = BucketReplicaModificationsStatus("Disabled") -) - -func (BucketReplicaModificationsStatus) ElementType() reflect.Type { - return reflect.TypeOf((*BucketReplicaModificationsStatus)(nil)).Elem() -} - -func (e BucketReplicaModificationsStatus) ToBucketReplicaModificationsStatusOutput() BucketReplicaModificationsStatusOutput { - return pulumi.ToOutput(e).(BucketReplicaModificationsStatusOutput) -} - -func (e BucketReplicaModificationsStatus) ToBucketReplicaModificationsStatusOutputWithContext(ctx context.Context) BucketReplicaModificationsStatusOutput { - return pulumi.ToOutputWithContext(ctx, e).(BucketReplicaModificationsStatusOutput) -} - -func (e BucketReplicaModificationsStatus) ToBucketReplicaModificationsStatusPtrOutput() BucketReplicaModificationsStatusPtrOutput { - return e.ToBucketReplicaModificationsStatusPtrOutputWithContext(context.Background()) -} - -func (e BucketReplicaModificationsStatus) ToBucketReplicaModificationsStatusPtrOutputWithContext(ctx context.Context) BucketReplicaModificationsStatusPtrOutput { - return BucketReplicaModificationsStatus(e).ToBucketReplicaModificationsStatusOutputWithContext(ctx).ToBucketReplicaModificationsStatusPtrOutputWithContext(ctx) -} - -func (e BucketReplicaModificationsStatus) ToStringOutput() pulumi.StringOutput { - return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) -} - -func (e BucketReplicaModificationsStatus) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) -} - -func (e BucketReplicaModificationsStatus) ToStringPtrOutput() pulumi.StringPtrOutput { - return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) -} - -func (e BucketReplicaModificationsStatus) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) -} - -type BucketReplicaModificationsStatusOutput struct{ *pulumi.OutputState } - -func (BucketReplicaModificationsStatusOutput) ElementType() reflect.Type { - return reflect.TypeOf((*BucketReplicaModificationsStatus)(nil)).Elem() -} - -func (o BucketReplicaModificationsStatusOutput) ToBucketReplicaModificationsStatusOutput() BucketReplicaModificationsStatusOutput { - return o -} - -func (o BucketReplicaModificationsStatusOutput) ToBucketReplicaModificationsStatusOutputWithContext(ctx context.Context) BucketReplicaModificationsStatusOutput { - return o -} - -func (o BucketReplicaModificationsStatusOutput) ToBucketReplicaModificationsStatusPtrOutput() BucketReplicaModificationsStatusPtrOutput { - return o.ToBucketReplicaModificationsStatusPtrOutputWithContext(context.Background()) -} - -func (o BucketReplicaModificationsStatusOutput) ToBucketReplicaModificationsStatusPtrOutputWithContext(ctx context.Context) BucketReplicaModificationsStatusPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v BucketReplicaModificationsStatus) *BucketReplicaModificationsStatus { - return &v - }).(BucketReplicaModificationsStatusPtrOutput) -} - -func (o BucketReplicaModificationsStatusOutput) ToOutput(ctx context.Context) pulumix.Output[BucketReplicaModificationsStatus] { - return pulumix.Output[BucketReplicaModificationsStatus]{ - OutputState: o.OutputState, - } -} - -func (o BucketReplicaModificationsStatusOutput) ToStringOutput() pulumi.StringOutput { - return o.ToStringOutputWithContext(context.Background()) -} - -func (o BucketReplicaModificationsStatusOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e BucketReplicaModificationsStatus) string { - return string(e) - }).(pulumi.StringOutput) -} - -func (o BucketReplicaModificationsStatusOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o BucketReplicaModificationsStatusOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e BucketReplicaModificationsStatus) *string { - v := string(e) - return &v - }).(pulumi.StringPtrOutput) -} - -type BucketReplicaModificationsStatusPtrOutput struct{ *pulumi.OutputState } - -func (BucketReplicaModificationsStatusPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**BucketReplicaModificationsStatus)(nil)).Elem() -} - -func (o BucketReplicaModificationsStatusPtrOutput) ToBucketReplicaModificationsStatusPtrOutput() BucketReplicaModificationsStatusPtrOutput { - return o -} - -func (o BucketReplicaModificationsStatusPtrOutput) ToBucketReplicaModificationsStatusPtrOutputWithContext(ctx context.Context) BucketReplicaModificationsStatusPtrOutput { - return o -} - -func (o BucketReplicaModificationsStatusPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*BucketReplicaModificationsStatus] { - return pulumix.Output[*BucketReplicaModificationsStatus]{ - OutputState: o.OutputState, - } -} - -func (o BucketReplicaModificationsStatusPtrOutput) Elem() BucketReplicaModificationsStatusOutput { - return o.ApplyT(func(v *BucketReplicaModificationsStatus) BucketReplicaModificationsStatus { - if v != nil { - return *v - } - var ret BucketReplicaModificationsStatus - return ret - }).(BucketReplicaModificationsStatusOutput) -} - -func (o BucketReplicaModificationsStatusPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o BucketReplicaModificationsStatusPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e *BucketReplicaModificationsStatus) *string { - if e == nil { - return nil - } - v := string(*e) - return &v - }).(pulumi.StringPtrOutput) -} - -// BucketReplicaModificationsStatusInput is an input type that accepts BucketReplicaModificationsStatusArgs and BucketReplicaModificationsStatusOutput values. -// You can construct a concrete instance of `BucketReplicaModificationsStatusInput` via: -// -// BucketReplicaModificationsStatusArgs{...} -type BucketReplicaModificationsStatusInput interface { - pulumi.Input - - ToBucketReplicaModificationsStatusOutput() BucketReplicaModificationsStatusOutput - ToBucketReplicaModificationsStatusOutputWithContext(context.Context) BucketReplicaModificationsStatusOutput -} - -var bucketReplicaModificationsStatusPtrType = reflect.TypeOf((**BucketReplicaModificationsStatus)(nil)).Elem() - -type BucketReplicaModificationsStatusPtrInput interface { - pulumi.Input - - ToBucketReplicaModificationsStatusPtrOutput() BucketReplicaModificationsStatusPtrOutput - ToBucketReplicaModificationsStatusPtrOutputWithContext(context.Context) BucketReplicaModificationsStatusPtrOutput -} - -type bucketReplicaModificationsStatusPtr string - -func BucketReplicaModificationsStatusPtr(v string) BucketReplicaModificationsStatusPtrInput { - return (*bucketReplicaModificationsStatusPtr)(&v) -} - -func (*bucketReplicaModificationsStatusPtr) ElementType() reflect.Type { - return bucketReplicaModificationsStatusPtrType -} - -func (in *bucketReplicaModificationsStatusPtr) ToBucketReplicaModificationsStatusPtrOutput() BucketReplicaModificationsStatusPtrOutput { - return pulumi.ToOutput(in).(BucketReplicaModificationsStatusPtrOutput) -} - -func (in *bucketReplicaModificationsStatusPtr) ToBucketReplicaModificationsStatusPtrOutputWithContext(ctx context.Context) BucketReplicaModificationsStatusPtrOutput { - return pulumi.ToOutputWithContext(ctx, in).(BucketReplicaModificationsStatusPtrOutput) -} - -func (in *bucketReplicaModificationsStatusPtr) ToOutput(ctx context.Context) pulumix.Output[*BucketReplicaModificationsStatus] { - return pulumix.Output[*BucketReplicaModificationsStatus]{ - OutputState: in.ToBucketReplicaModificationsStatusPtrOutputWithContext(ctx).OutputState, - } -} - -// The storage class to use when replicating objects, such as S3 Standard or reduced redundancy. -type BucketReplicationDestinationStorageClass string - -const ( - BucketReplicationDestinationStorageClassDeepArchive = BucketReplicationDestinationStorageClass("DEEP_ARCHIVE") - BucketReplicationDestinationStorageClassGlacier = BucketReplicationDestinationStorageClass("GLACIER") - BucketReplicationDestinationStorageClassGlacierIr = BucketReplicationDestinationStorageClass("GLACIER_IR") - BucketReplicationDestinationStorageClassIntelligentTiering = BucketReplicationDestinationStorageClass("INTELLIGENT_TIERING") - BucketReplicationDestinationStorageClassOnezoneIa = BucketReplicationDestinationStorageClass("ONEZONE_IA") - BucketReplicationDestinationStorageClassReducedRedundancy = BucketReplicationDestinationStorageClass("REDUCED_REDUNDANCY") - BucketReplicationDestinationStorageClassStandard = BucketReplicationDestinationStorageClass("STANDARD") - BucketReplicationDestinationStorageClassStandardIa = BucketReplicationDestinationStorageClass("STANDARD_IA") -) - -func (BucketReplicationDestinationStorageClass) ElementType() reflect.Type { - return reflect.TypeOf((*BucketReplicationDestinationStorageClass)(nil)).Elem() -} - -func (e BucketReplicationDestinationStorageClass) ToBucketReplicationDestinationStorageClassOutput() BucketReplicationDestinationStorageClassOutput { - return pulumi.ToOutput(e).(BucketReplicationDestinationStorageClassOutput) -} - -func (e BucketReplicationDestinationStorageClass) ToBucketReplicationDestinationStorageClassOutputWithContext(ctx context.Context) BucketReplicationDestinationStorageClassOutput { - return pulumi.ToOutputWithContext(ctx, e).(BucketReplicationDestinationStorageClassOutput) -} - -func (e BucketReplicationDestinationStorageClass) ToBucketReplicationDestinationStorageClassPtrOutput() BucketReplicationDestinationStorageClassPtrOutput { - return e.ToBucketReplicationDestinationStorageClassPtrOutputWithContext(context.Background()) -} - -func (e BucketReplicationDestinationStorageClass) ToBucketReplicationDestinationStorageClassPtrOutputWithContext(ctx context.Context) BucketReplicationDestinationStorageClassPtrOutput { - return BucketReplicationDestinationStorageClass(e).ToBucketReplicationDestinationStorageClassOutputWithContext(ctx).ToBucketReplicationDestinationStorageClassPtrOutputWithContext(ctx) -} - -func (e BucketReplicationDestinationStorageClass) ToStringOutput() pulumi.StringOutput { - return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) -} - -func (e BucketReplicationDestinationStorageClass) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) -} - -func (e BucketReplicationDestinationStorageClass) ToStringPtrOutput() pulumi.StringPtrOutput { - return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) -} - -func (e BucketReplicationDestinationStorageClass) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) -} - -type BucketReplicationDestinationStorageClassOutput struct{ *pulumi.OutputState } - -func (BucketReplicationDestinationStorageClassOutput) ElementType() reflect.Type { - return reflect.TypeOf((*BucketReplicationDestinationStorageClass)(nil)).Elem() -} - -func (o BucketReplicationDestinationStorageClassOutput) ToBucketReplicationDestinationStorageClassOutput() BucketReplicationDestinationStorageClassOutput { - return o -} - -func (o BucketReplicationDestinationStorageClassOutput) ToBucketReplicationDestinationStorageClassOutputWithContext(ctx context.Context) BucketReplicationDestinationStorageClassOutput { - return o -} - -func (o BucketReplicationDestinationStorageClassOutput) ToBucketReplicationDestinationStorageClassPtrOutput() BucketReplicationDestinationStorageClassPtrOutput { - return o.ToBucketReplicationDestinationStorageClassPtrOutputWithContext(context.Background()) -} - -func (o BucketReplicationDestinationStorageClassOutput) ToBucketReplicationDestinationStorageClassPtrOutputWithContext(ctx context.Context) BucketReplicationDestinationStorageClassPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v BucketReplicationDestinationStorageClass) *BucketReplicationDestinationStorageClass { - return &v - }).(BucketReplicationDestinationStorageClassPtrOutput) -} - -func (o BucketReplicationDestinationStorageClassOutput) ToOutput(ctx context.Context) pulumix.Output[BucketReplicationDestinationStorageClass] { - return pulumix.Output[BucketReplicationDestinationStorageClass]{ - OutputState: o.OutputState, - } -} - -func (o BucketReplicationDestinationStorageClassOutput) ToStringOutput() pulumi.StringOutput { - return o.ToStringOutputWithContext(context.Background()) -} - -func (o BucketReplicationDestinationStorageClassOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e BucketReplicationDestinationStorageClass) string { - return string(e) - }).(pulumi.StringOutput) -} - -func (o BucketReplicationDestinationStorageClassOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o BucketReplicationDestinationStorageClassOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e BucketReplicationDestinationStorageClass) *string { - v := string(e) - return &v - }).(pulumi.StringPtrOutput) -} - -type BucketReplicationDestinationStorageClassPtrOutput struct{ *pulumi.OutputState } - -func (BucketReplicationDestinationStorageClassPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**BucketReplicationDestinationStorageClass)(nil)).Elem() -} - -func (o BucketReplicationDestinationStorageClassPtrOutput) ToBucketReplicationDestinationStorageClassPtrOutput() BucketReplicationDestinationStorageClassPtrOutput { - return o -} - -func (o BucketReplicationDestinationStorageClassPtrOutput) ToBucketReplicationDestinationStorageClassPtrOutputWithContext(ctx context.Context) BucketReplicationDestinationStorageClassPtrOutput { - return o -} - -func (o BucketReplicationDestinationStorageClassPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*BucketReplicationDestinationStorageClass] { - return pulumix.Output[*BucketReplicationDestinationStorageClass]{ - OutputState: o.OutputState, - } -} - -func (o BucketReplicationDestinationStorageClassPtrOutput) Elem() BucketReplicationDestinationStorageClassOutput { - return o.ApplyT(func(v *BucketReplicationDestinationStorageClass) BucketReplicationDestinationStorageClass { - if v != nil { - return *v - } - var ret BucketReplicationDestinationStorageClass - return ret - }).(BucketReplicationDestinationStorageClassOutput) -} - -func (o BucketReplicationDestinationStorageClassPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o BucketReplicationDestinationStorageClassPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e *BucketReplicationDestinationStorageClass) *string { - if e == nil { - return nil - } - v := string(*e) - return &v - }).(pulumi.StringPtrOutput) -} - -// BucketReplicationDestinationStorageClassInput is an input type that accepts BucketReplicationDestinationStorageClassArgs and BucketReplicationDestinationStorageClassOutput values. -// You can construct a concrete instance of `BucketReplicationDestinationStorageClassInput` via: -// -// BucketReplicationDestinationStorageClassArgs{...} -type BucketReplicationDestinationStorageClassInput interface { - pulumi.Input - - ToBucketReplicationDestinationStorageClassOutput() BucketReplicationDestinationStorageClassOutput - ToBucketReplicationDestinationStorageClassOutputWithContext(context.Context) BucketReplicationDestinationStorageClassOutput -} - -var bucketReplicationDestinationStorageClassPtrType = reflect.TypeOf((**BucketReplicationDestinationStorageClass)(nil)).Elem() - -type BucketReplicationDestinationStorageClassPtrInput interface { - pulumi.Input - - ToBucketReplicationDestinationStorageClassPtrOutput() BucketReplicationDestinationStorageClassPtrOutput - ToBucketReplicationDestinationStorageClassPtrOutputWithContext(context.Context) BucketReplicationDestinationStorageClassPtrOutput -} - -type bucketReplicationDestinationStorageClassPtr string - -func BucketReplicationDestinationStorageClassPtr(v string) BucketReplicationDestinationStorageClassPtrInput { - return (*bucketReplicationDestinationStorageClassPtr)(&v) -} - -func (*bucketReplicationDestinationStorageClassPtr) ElementType() reflect.Type { - return bucketReplicationDestinationStorageClassPtrType -} - -func (in *bucketReplicationDestinationStorageClassPtr) ToBucketReplicationDestinationStorageClassPtrOutput() BucketReplicationDestinationStorageClassPtrOutput { - return pulumi.ToOutput(in).(BucketReplicationDestinationStorageClassPtrOutput) -} - -func (in *bucketReplicationDestinationStorageClassPtr) ToBucketReplicationDestinationStorageClassPtrOutputWithContext(ctx context.Context) BucketReplicationDestinationStorageClassPtrOutput { - return pulumi.ToOutputWithContext(ctx, in).(BucketReplicationDestinationStorageClassPtrOutput) -} - -func (in *bucketReplicationDestinationStorageClassPtr) ToOutput(ctx context.Context) pulumix.Output[*BucketReplicationDestinationStorageClass] { - return pulumix.Output[*BucketReplicationDestinationStorageClass]{ - OutputState: in.ToBucketReplicationDestinationStorageClassPtrOutputWithContext(ctx).OutputState, - } -} - -// Specifies whether the rule is enabled. -type BucketReplicationRuleStatus string - -const ( - BucketReplicationRuleStatusDisabled = BucketReplicationRuleStatus("Disabled") - BucketReplicationRuleStatusEnabled = BucketReplicationRuleStatus("Enabled") -) - -func (BucketReplicationRuleStatus) ElementType() reflect.Type { - return reflect.TypeOf((*BucketReplicationRuleStatus)(nil)).Elem() -} - -func (e BucketReplicationRuleStatus) ToBucketReplicationRuleStatusOutput() BucketReplicationRuleStatusOutput { - return pulumi.ToOutput(e).(BucketReplicationRuleStatusOutput) -} - -func (e BucketReplicationRuleStatus) ToBucketReplicationRuleStatusOutputWithContext(ctx context.Context) BucketReplicationRuleStatusOutput { - return pulumi.ToOutputWithContext(ctx, e).(BucketReplicationRuleStatusOutput) -} - -func (e BucketReplicationRuleStatus) ToBucketReplicationRuleStatusPtrOutput() BucketReplicationRuleStatusPtrOutput { - return e.ToBucketReplicationRuleStatusPtrOutputWithContext(context.Background()) -} - -func (e BucketReplicationRuleStatus) ToBucketReplicationRuleStatusPtrOutputWithContext(ctx context.Context) BucketReplicationRuleStatusPtrOutput { - return BucketReplicationRuleStatus(e).ToBucketReplicationRuleStatusOutputWithContext(ctx).ToBucketReplicationRuleStatusPtrOutputWithContext(ctx) -} - -func (e BucketReplicationRuleStatus) ToStringOutput() pulumi.StringOutput { - return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) -} - -func (e BucketReplicationRuleStatus) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) -} - -func (e BucketReplicationRuleStatus) ToStringPtrOutput() pulumi.StringPtrOutput { - return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) -} - -func (e BucketReplicationRuleStatus) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) -} - -type BucketReplicationRuleStatusOutput struct{ *pulumi.OutputState } - -func (BucketReplicationRuleStatusOutput) ElementType() reflect.Type { - return reflect.TypeOf((*BucketReplicationRuleStatus)(nil)).Elem() -} - -func (o BucketReplicationRuleStatusOutput) ToBucketReplicationRuleStatusOutput() BucketReplicationRuleStatusOutput { - return o -} - -func (o BucketReplicationRuleStatusOutput) ToBucketReplicationRuleStatusOutputWithContext(ctx context.Context) BucketReplicationRuleStatusOutput { - return o -} - -func (o BucketReplicationRuleStatusOutput) ToBucketReplicationRuleStatusPtrOutput() BucketReplicationRuleStatusPtrOutput { - return o.ToBucketReplicationRuleStatusPtrOutputWithContext(context.Background()) -} - -func (o BucketReplicationRuleStatusOutput) ToBucketReplicationRuleStatusPtrOutputWithContext(ctx context.Context) BucketReplicationRuleStatusPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v BucketReplicationRuleStatus) *BucketReplicationRuleStatus { - return &v - }).(BucketReplicationRuleStatusPtrOutput) -} - -func (o BucketReplicationRuleStatusOutput) ToOutput(ctx context.Context) pulumix.Output[BucketReplicationRuleStatus] { - return pulumix.Output[BucketReplicationRuleStatus]{ - OutputState: o.OutputState, - } -} - -func (o BucketReplicationRuleStatusOutput) ToStringOutput() pulumi.StringOutput { - return o.ToStringOutputWithContext(context.Background()) -} - -func (o BucketReplicationRuleStatusOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e BucketReplicationRuleStatus) string { - return string(e) - }).(pulumi.StringOutput) -} - -func (o BucketReplicationRuleStatusOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o BucketReplicationRuleStatusOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e BucketReplicationRuleStatus) *string { - v := string(e) - return &v - }).(pulumi.StringPtrOutput) -} - -type BucketReplicationRuleStatusPtrOutput struct{ *pulumi.OutputState } - -func (BucketReplicationRuleStatusPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**BucketReplicationRuleStatus)(nil)).Elem() -} - -func (o BucketReplicationRuleStatusPtrOutput) ToBucketReplicationRuleStatusPtrOutput() BucketReplicationRuleStatusPtrOutput { - return o -} - -func (o BucketReplicationRuleStatusPtrOutput) ToBucketReplicationRuleStatusPtrOutputWithContext(ctx context.Context) BucketReplicationRuleStatusPtrOutput { - return o -} - -func (o BucketReplicationRuleStatusPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*BucketReplicationRuleStatus] { - return pulumix.Output[*BucketReplicationRuleStatus]{ - OutputState: o.OutputState, - } -} - -func (o BucketReplicationRuleStatusPtrOutput) Elem() BucketReplicationRuleStatusOutput { - return o.ApplyT(func(v *BucketReplicationRuleStatus) BucketReplicationRuleStatus { - if v != nil { - return *v - } - var ret BucketReplicationRuleStatus - return ret - }).(BucketReplicationRuleStatusOutput) -} - -func (o BucketReplicationRuleStatusPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o BucketReplicationRuleStatusPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e *BucketReplicationRuleStatus) *string { - if e == nil { - return nil - } - v := string(*e) - return &v - }).(pulumi.StringPtrOutput) -} - -// BucketReplicationRuleStatusInput is an input type that accepts BucketReplicationRuleStatusArgs and BucketReplicationRuleStatusOutput values. -// You can construct a concrete instance of `BucketReplicationRuleStatusInput` via: -// -// BucketReplicationRuleStatusArgs{...} -type BucketReplicationRuleStatusInput interface { - pulumi.Input - - ToBucketReplicationRuleStatusOutput() BucketReplicationRuleStatusOutput - ToBucketReplicationRuleStatusOutputWithContext(context.Context) BucketReplicationRuleStatusOutput -} - -var bucketReplicationRuleStatusPtrType = reflect.TypeOf((**BucketReplicationRuleStatus)(nil)).Elem() - -type BucketReplicationRuleStatusPtrInput interface { - pulumi.Input - - ToBucketReplicationRuleStatusPtrOutput() BucketReplicationRuleStatusPtrOutput - ToBucketReplicationRuleStatusPtrOutputWithContext(context.Context) BucketReplicationRuleStatusPtrOutput -} - -type bucketReplicationRuleStatusPtr string - -func BucketReplicationRuleStatusPtr(v string) BucketReplicationRuleStatusPtrInput { - return (*bucketReplicationRuleStatusPtr)(&v) -} - -func (*bucketReplicationRuleStatusPtr) ElementType() reflect.Type { - return bucketReplicationRuleStatusPtrType -} - -func (in *bucketReplicationRuleStatusPtr) ToBucketReplicationRuleStatusPtrOutput() BucketReplicationRuleStatusPtrOutput { - return pulumi.ToOutput(in).(BucketReplicationRuleStatusPtrOutput) -} - -func (in *bucketReplicationRuleStatusPtr) ToBucketReplicationRuleStatusPtrOutputWithContext(ctx context.Context) BucketReplicationRuleStatusPtrOutput { - return pulumi.ToOutputWithContext(ctx, in).(BucketReplicationRuleStatusPtrOutput) -} - -func (in *bucketReplicationRuleStatusPtr) ToOutput(ctx context.Context) pulumix.Output[*BucketReplicationRuleStatus] { - return pulumix.Output[*BucketReplicationRuleStatus]{ - OutputState: in.ToBucketReplicationRuleStatusPtrOutputWithContext(ctx).OutputState, - } -} - -type BucketReplicationTimeStatus string - -const ( - BucketReplicationTimeStatusDisabled = BucketReplicationTimeStatus("Disabled") - BucketReplicationTimeStatusEnabled = BucketReplicationTimeStatus("Enabled") -) - -func (BucketReplicationTimeStatus) ElementType() reflect.Type { - return reflect.TypeOf((*BucketReplicationTimeStatus)(nil)).Elem() -} - -func (e BucketReplicationTimeStatus) ToBucketReplicationTimeStatusOutput() BucketReplicationTimeStatusOutput { - return pulumi.ToOutput(e).(BucketReplicationTimeStatusOutput) -} - -func (e BucketReplicationTimeStatus) ToBucketReplicationTimeStatusOutputWithContext(ctx context.Context) BucketReplicationTimeStatusOutput { - return pulumi.ToOutputWithContext(ctx, e).(BucketReplicationTimeStatusOutput) -} - -func (e BucketReplicationTimeStatus) ToBucketReplicationTimeStatusPtrOutput() BucketReplicationTimeStatusPtrOutput { - return e.ToBucketReplicationTimeStatusPtrOutputWithContext(context.Background()) -} - -func (e BucketReplicationTimeStatus) ToBucketReplicationTimeStatusPtrOutputWithContext(ctx context.Context) BucketReplicationTimeStatusPtrOutput { - return BucketReplicationTimeStatus(e).ToBucketReplicationTimeStatusOutputWithContext(ctx).ToBucketReplicationTimeStatusPtrOutputWithContext(ctx) -} - -func (e BucketReplicationTimeStatus) ToStringOutput() pulumi.StringOutput { - return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) -} - -func (e BucketReplicationTimeStatus) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) -} - -func (e BucketReplicationTimeStatus) ToStringPtrOutput() pulumi.StringPtrOutput { - return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) -} - -func (e BucketReplicationTimeStatus) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) -} - -type BucketReplicationTimeStatusOutput struct{ *pulumi.OutputState } - -func (BucketReplicationTimeStatusOutput) ElementType() reflect.Type { - return reflect.TypeOf((*BucketReplicationTimeStatus)(nil)).Elem() -} - -func (o BucketReplicationTimeStatusOutput) ToBucketReplicationTimeStatusOutput() BucketReplicationTimeStatusOutput { - return o -} - -func (o BucketReplicationTimeStatusOutput) ToBucketReplicationTimeStatusOutputWithContext(ctx context.Context) BucketReplicationTimeStatusOutput { - return o -} - -func (o BucketReplicationTimeStatusOutput) ToBucketReplicationTimeStatusPtrOutput() BucketReplicationTimeStatusPtrOutput { - return o.ToBucketReplicationTimeStatusPtrOutputWithContext(context.Background()) -} - -func (o BucketReplicationTimeStatusOutput) ToBucketReplicationTimeStatusPtrOutputWithContext(ctx context.Context) BucketReplicationTimeStatusPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v BucketReplicationTimeStatus) *BucketReplicationTimeStatus { - return &v - }).(BucketReplicationTimeStatusPtrOutput) -} - -func (o BucketReplicationTimeStatusOutput) ToOutput(ctx context.Context) pulumix.Output[BucketReplicationTimeStatus] { - return pulumix.Output[BucketReplicationTimeStatus]{ - OutputState: o.OutputState, - } -} - -func (o BucketReplicationTimeStatusOutput) ToStringOutput() pulumi.StringOutput { - return o.ToStringOutputWithContext(context.Background()) -} - -func (o BucketReplicationTimeStatusOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e BucketReplicationTimeStatus) string { - return string(e) - }).(pulumi.StringOutput) -} - -func (o BucketReplicationTimeStatusOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o BucketReplicationTimeStatusOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e BucketReplicationTimeStatus) *string { - v := string(e) - return &v - }).(pulumi.StringPtrOutput) -} - -type BucketReplicationTimeStatusPtrOutput struct{ *pulumi.OutputState } - -func (BucketReplicationTimeStatusPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**BucketReplicationTimeStatus)(nil)).Elem() -} - -func (o BucketReplicationTimeStatusPtrOutput) ToBucketReplicationTimeStatusPtrOutput() BucketReplicationTimeStatusPtrOutput { - return o -} - -func (o BucketReplicationTimeStatusPtrOutput) ToBucketReplicationTimeStatusPtrOutputWithContext(ctx context.Context) BucketReplicationTimeStatusPtrOutput { - return o -} - -func (o BucketReplicationTimeStatusPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*BucketReplicationTimeStatus] { - return pulumix.Output[*BucketReplicationTimeStatus]{ - OutputState: o.OutputState, - } -} - -func (o BucketReplicationTimeStatusPtrOutput) Elem() BucketReplicationTimeStatusOutput { - return o.ApplyT(func(v *BucketReplicationTimeStatus) BucketReplicationTimeStatus { - if v != nil { - return *v - } - var ret BucketReplicationTimeStatus - return ret - }).(BucketReplicationTimeStatusOutput) -} - -func (o BucketReplicationTimeStatusPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o BucketReplicationTimeStatusPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e *BucketReplicationTimeStatus) *string { - if e == nil { - return nil - } - v := string(*e) - return &v - }).(pulumi.StringPtrOutput) -} - -// BucketReplicationTimeStatusInput is an input type that accepts BucketReplicationTimeStatusArgs and BucketReplicationTimeStatusOutput values. -// You can construct a concrete instance of `BucketReplicationTimeStatusInput` via: -// -// BucketReplicationTimeStatusArgs{...} -type BucketReplicationTimeStatusInput interface { - pulumi.Input - - ToBucketReplicationTimeStatusOutput() BucketReplicationTimeStatusOutput - ToBucketReplicationTimeStatusOutputWithContext(context.Context) BucketReplicationTimeStatusOutput -} - -var bucketReplicationTimeStatusPtrType = reflect.TypeOf((**BucketReplicationTimeStatus)(nil)).Elem() - -type BucketReplicationTimeStatusPtrInput interface { - pulumi.Input - - ToBucketReplicationTimeStatusPtrOutput() BucketReplicationTimeStatusPtrOutput - ToBucketReplicationTimeStatusPtrOutputWithContext(context.Context) BucketReplicationTimeStatusPtrOutput -} - -type bucketReplicationTimeStatusPtr string - -func BucketReplicationTimeStatusPtr(v string) BucketReplicationTimeStatusPtrInput { - return (*bucketReplicationTimeStatusPtr)(&v) -} - -func (*bucketReplicationTimeStatusPtr) ElementType() reflect.Type { - return bucketReplicationTimeStatusPtrType -} - -func (in *bucketReplicationTimeStatusPtr) ToBucketReplicationTimeStatusPtrOutput() BucketReplicationTimeStatusPtrOutput { - return pulumi.ToOutput(in).(BucketReplicationTimeStatusPtrOutput) -} - -func (in *bucketReplicationTimeStatusPtr) ToBucketReplicationTimeStatusPtrOutputWithContext(ctx context.Context) BucketReplicationTimeStatusPtrOutput { - return pulumi.ToOutputWithContext(ctx, in).(BucketReplicationTimeStatusPtrOutput) -} - -func (in *bucketReplicationTimeStatusPtr) ToOutput(ctx context.Context) pulumix.Output[*BucketReplicationTimeStatus] { - return pulumix.Output[*BucketReplicationTimeStatus]{ - OutputState: in.ToBucketReplicationTimeStatusPtrOutputWithContext(ctx).OutputState, - } -} - -type BucketRuleStatus string - -const ( - BucketRuleStatusEnabled = BucketRuleStatus("Enabled") - BucketRuleStatusDisabled = BucketRuleStatus("Disabled") -) - -func (BucketRuleStatus) ElementType() reflect.Type { - return reflect.TypeOf((*BucketRuleStatus)(nil)).Elem() -} - -func (e BucketRuleStatus) ToBucketRuleStatusOutput() BucketRuleStatusOutput { - return pulumi.ToOutput(e).(BucketRuleStatusOutput) -} - -func (e BucketRuleStatus) ToBucketRuleStatusOutputWithContext(ctx context.Context) BucketRuleStatusOutput { - return pulumi.ToOutputWithContext(ctx, e).(BucketRuleStatusOutput) -} - -func (e BucketRuleStatus) ToBucketRuleStatusPtrOutput() BucketRuleStatusPtrOutput { - return e.ToBucketRuleStatusPtrOutputWithContext(context.Background()) -} - -func (e BucketRuleStatus) ToBucketRuleStatusPtrOutputWithContext(ctx context.Context) BucketRuleStatusPtrOutput { - return BucketRuleStatus(e).ToBucketRuleStatusOutputWithContext(ctx).ToBucketRuleStatusPtrOutputWithContext(ctx) -} - -func (e BucketRuleStatus) ToStringOutput() pulumi.StringOutput { - return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) -} - -func (e BucketRuleStatus) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) -} - -func (e BucketRuleStatus) ToStringPtrOutput() pulumi.StringPtrOutput { - return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) -} - -func (e BucketRuleStatus) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) -} - -type BucketRuleStatusOutput struct{ *pulumi.OutputState } - -func (BucketRuleStatusOutput) ElementType() reflect.Type { - return reflect.TypeOf((*BucketRuleStatus)(nil)).Elem() -} - -func (o BucketRuleStatusOutput) ToBucketRuleStatusOutput() BucketRuleStatusOutput { - return o -} - -func (o BucketRuleStatusOutput) ToBucketRuleStatusOutputWithContext(ctx context.Context) BucketRuleStatusOutput { - return o -} - -func (o BucketRuleStatusOutput) ToBucketRuleStatusPtrOutput() BucketRuleStatusPtrOutput { - return o.ToBucketRuleStatusPtrOutputWithContext(context.Background()) -} - -func (o BucketRuleStatusOutput) ToBucketRuleStatusPtrOutputWithContext(ctx context.Context) BucketRuleStatusPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v BucketRuleStatus) *BucketRuleStatus { - return &v - }).(BucketRuleStatusPtrOutput) -} - -func (o BucketRuleStatusOutput) ToOutput(ctx context.Context) pulumix.Output[BucketRuleStatus] { - return pulumix.Output[BucketRuleStatus]{ - OutputState: o.OutputState, - } -} - -func (o BucketRuleStatusOutput) ToStringOutput() pulumi.StringOutput { - return o.ToStringOutputWithContext(context.Background()) -} - -func (o BucketRuleStatusOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e BucketRuleStatus) string { - return string(e) - }).(pulumi.StringOutput) -} - -func (o BucketRuleStatusOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o BucketRuleStatusOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e BucketRuleStatus) *string { - v := string(e) - return &v - }).(pulumi.StringPtrOutput) -} - -type BucketRuleStatusPtrOutput struct{ *pulumi.OutputState } - -func (BucketRuleStatusPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**BucketRuleStatus)(nil)).Elem() -} - -func (o BucketRuleStatusPtrOutput) ToBucketRuleStatusPtrOutput() BucketRuleStatusPtrOutput { - return o -} - -func (o BucketRuleStatusPtrOutput) ToBucketRuleStatusPtrOutputWithContext(ctx context.Context) BucketRuleStatusPtrOutput { - return o -} - -func (o BucketRuleStatusPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*BucketRuleStatus] { - return pulumix.Output[*BucketRuleStatus]{ - OutputState: o.OutputState, - } -} - -func (o BucketRuleStatusPtrOutput) Elem() BucketRuleStatusOutput { - return o.ApplyT(func(v *BucketRuleStatus) BucketRuleStatus { - if v != nil { - return *v - } - var ret BucketRuleStatus - return ret - }).(BucketRuleStatusOutput) -} - -func (o BucketRuleStatusPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o BucketRuleStatusPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e *BucketRuleStatus) *string { - if e == nil { - return nil - } - v := string(*e) - return &v - }).(pulumi.StringPtrOutput) -} - -// BucketRuleStatusInput is an input type that accepts BucketRuleStatusArgs and BucketRuleStatusOutput values. -// You can construct a concrete instance of `BucketRuleStatusInput` via: -// -// BucketRuleStatusArgs{...} -type BucketRuleStatusInput interface { - pulumi.Input - - ToBucketRuleStatusOutput() BucketRuleStatusOutput - ToBucketRuleStatusOutputWithContext(context.Context) BucketRuleStatusOutput -} - -var bucketRuleStatusPtrType = reflect.TypeOf((**BucketRuleStatus)(nil)).Elem() - -type BucketRuleStatusPtrInput interface { - pulumi.Input - - ToBucketRuleStatusPtrOutput() BucketRuleStatusPtrOutput - ToBucketRuleStatusPtrOutputWithContext(context.Context) BucketRuleStatusPtrOutput -} - -type bucketRuleStatusPtr string - -func BucketRuleStatusPtr(v string) BucketRuleStatusPtrInput { - return (*bucketRuleStatusPtr)(&v) -} - -func (*bucketRuleStatusPtr) ElementType() reflect.Type { - return bucketRuleStatusPtrType -} - -func (in *bucketRuleStatusPtr) ToBucketRuleStatusPtrOutput() BucketRuleStatusPtrOutput { - return pulumi.ToOutput(in).(BucketRuleStatusPtrOutput) -} - -func (in *bucketRuleStatusPtr) ToBucketRuleStatusPtrOutputWithContext(ctx context.Context) BucketRuleStatusPtrOutput { - return pulumi.ToOutputWithContext(ctx, in).(BucketRuleStatusPtrOutput) -} - -func (in *bucketRuleStatusPtr) ToOutput(ctx context.Context) pulumix.Output[*BucketRuleStatus] { - return pulumix.Output[*BucketRuleStatus]{ - OutputState: in.ToBucketRuleStatusPtrOutputWithContext(ctx).OutputState, - } -} - -type BucketServerSideEncryptionByDefaultSseAlgorithm string - -const ( - BucketServerSideEncryptionByDefaultSseAlgorithmAwskms = BucketServerSideEncryptionByDefaultSseAlgorithm("aws:kms") - BucketServerSideEncryptionByDefaultSseAlgorithmAes256 = BucketServerSideEncryptionByDefaultSseAlgorithm("AES256") - BucketServerSideEncryptionByDefaultSseAlgorithmAwskmsdsse = BucketServerSideEncryptionByDefaultSseAlgorithm("aws:kms:dsse") -) - -func (BucketServerSideEncryptionByDefaultSseAlgorithm) ElementType() reflect.Type { - return reflect.TypeOf((*BucketServerSideEncryptionByDefaultSseAlgorithm)(nil)).Elem() -} - -func (e BucketServerSideEncryptionByDefaultSseAlgorithm) ToBucketServerSideEncryptionByDefaultSseAlgorithmOutput() BucketServerSideEncryptionByDefaultSseAlgorithmOutput { - return pulumi.ToOutput(e).(BucketServerSideEncryptionByDefaultSseAlgorithmOutput) -} - -func (e BucketServerSideEncryptionByDefaultSseAlgorithm) ToBucketServerSideEncryptionByDefaultSseAlgorithmOutputWithContext(ctx context.Context) BucketServerSideEncryptionByDefaultSseAlgorithmOutput { - return pulumi.ToOutputWithContext(ctx, e).(BucketServerSideEncryptionByDefaultSseAlgorithmOutput) -} - -func (e BucketServerSideEncryptionByDefaultSseAlgorithm) ToBucketServerSideEncryptionByDefaultSseAlgorithmPtrOutput() BucketServerSideEncryptionByDefaultSseAlgorithmPtrOutput { - return e.ToBucketServerSideEncryptionByDefaultSseAlgorithmPtrOutputWithContext(context.Background()) -} - -func (e BucketServerSideEncryptionByDefaultSseAlgorithm) ToBucketServerSideEncryptionByDefaultSseAlgorithmPtrOutputWithContext(ctx context.Context) BucketServerSideEncryptionByDefaultSseAlgorithmPtrOutput { - return BucketServerSideEncryptionByDefaultSseAlgorithm(e).ToBucketServerSideEncryptionByDefaultSseAlgorithmOutputWithContext(ctx).ToBucketServerSideEncryptionByDefaultSseAlgorithmPtrOutputWithContext(ctx) -} - -func (e BucketServerSideEncryptionByDefaultSseAlgorithm) ToStringOutput() pulumi.StringOutput { - return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) -} - -func (e BucketServerSideEncryptionByDefaultSseAlgorithm) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) -} - -func (e BucketServerSideEncryptionByDefaultSseAlgorithm) ToStringPtrOutput() pulumi.StringPtrOutput { - return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) -} - -func (e BucketServerSideEncryptionByDefaultSseAlgorithm) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) -} - -type BucketServerSideEncryptionByDefaultSseAlgorithmOutput struct{ *pulumi.OutputState } - -func (BucketServerSideEncryptionByDefaultSseAlgorithmOutput) ElementType() reflect.Type { - return reflect.TypeOf((*BucketServerSideEncryptionByDefaultSseAlgorithm)(nil)).Elem() -} - -func (o BucketServerSideEncryptionByDefaultSseAlgorithmOutput) ToBucketServerSideEncryptionByDefaultSseAlgorithmOutput() BucketServerSideEncryptionByDefaultSseAlgorithmOutput { - return o -} - -func (o BucketServerSideEncryptionByDefaultSseAlgorithmOutput) ToBucketServerSideEncryptionByDefaultSseAlgorithmOutputWithContext(ctx context.Context) BucketServerSideEncryptionByDefaultSseAlgorithmOutput { - return o -} - -func (o BucketServerSideEncryptionByDefaultSseAlgorithmOutput) ToBucketServerSideEncryptionByDefaultSseAlgorithmPtrOutput() BucketServerSideEncryptionByDefaultSseAlgorithmPtrOutput { - return o.ToBucketServerSideEncryptionByDefaultSseAlgorithmPtrOutputWithContext(context.Background()) -} - -func (o BucketServerSideEncryptionByDefaultSseAlgorithmOutput) ToBucketServerSideEncryptionByDefaultSseAlgorithmPtrOutputWithContext(ctx context.Context) BucketServerSideEncryptionByDefaultSseAlgorithmPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v BucketServerSideEncryptionByDefaultSseAlgorithm) *BucketServerSideEncryptionByDefaultSseAlgorithm { - return &v - }).(BucketServerSideEncryptionByDefaultSseAlgorithmPtrOutput) -} - -func (o BucketServerSideEncryptionByDefaultSseAlgorithmOutput) ToOutput(ctx context.Context) pulumix.Output[BucketServerSideEncryptionByDefaultSseAlgorithm] { - return pulumix.Output[BucketServerSideEncryptionByDefaultSseAlgorithm]{ - OutputState: o.OutputState, - } -} - -func (o BucketServerSideEncryptionByDefaultSseAlgorithmOutput) ToStringOutput() pulumi.StringOutput { - return o.ToStringOutputWithContext(context.Background()) -} - -func (o BucketServerSideEncryptionByDefaultSseAlgorithmOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e BucketServerSideEncryptionByDefaultSseAlgorithm) string { - return string(e) - }).(pulumi.StringOutput) -} - -func (o BucketServerSideEncryptionByDefaultSseAlgorithmOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o BucketServerSideEncryptionByDefaultSseAlgorithmOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e BucketServerSideEncryptionByDefaultSseAlgorithm) *string { - v := string(e) - return &v - }).(pulumi.StringPtrOutput) -} - -type BucketServerSideEncryptionByDefaultSseAlgorithmPtrOutput struct{ *pulumi.OutputState } - -func (BucketServerSideEncryptionByDefaultSseAlgorithmPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**BucketServerSideEncryptionByDefaultSseAlgorithm)(nil)).Elem() -} - -func (o BucketServerSideEncryptionByDefaultSseAlgorithmPtrOutput) ToBucketServerSideEncryptionByDefaultSseAlgorithmPtrOutput() BucketServerSideEncryptionByDefaultSseAlgorithmPtrOutput { - return o -} - -func (o BucketServerSideEncryptionByDefaultSseAlgorithmPtrOutput) ToBucketServerSideEncryptionByDefaultSseAlgorithmPtrOutputWithContext(ctx context.Context) BucketServerSideEncryptionByDefaultSseAlgorithmPtrOutput { - return o -} - -func (o BucketServerSideEncryptionByDefaultSseAlgorithmPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*BucketServerSideEncryptionByDefaultSseAlgorithm] { - return pulumix.Output[*BucketServerSideEncryptionByDefaultSseAlgorithm]{ - OutputState: o.OutputState, - } -} - -func (o BucketServerSideEncryptionByDefaultSseAlgorithmPtrOutput) Elem() BucketServerSideEncryptionByDefaultSseAlgorithmOutput { - return o.ApplyT(func(v *BucketServerSideEncryptionByDefaultSseAlgorithm) BucketServerSideEncryptionByDefaultSseAlgorithm { - if v != nil { - return *v - } - var ret BucketServerSideEncryptionByDefaultSseAlgorithm - return ret - }).(BucketServerSideEncryptionByDefaultSseAlgorithmOutput) -} - -func (o BucketServerSideEncryptionByDefaultSseAlgorithmPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o BucketServerSideEncryptionByDefaultSseAlgorithmPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e *BucketServerSideEncryptionByDefaultSseAlgorithm) *string { - if e == nil { - return nil - } - v := string(*e) - return &v - }).(pulumi.StringPtrOutput) -} - -// BucketServerSideEncryptionByDefaultSseAlgorithmInput is an input type that accepts BucketServerSideEncryptionByDefaultSseAlgorithmArgs and BucketServerSideEncryptionByDefaultSseAlgorithmOutput values. -// You can construct a concrete instance of `BucketServerSideEncryptionByDefaultSseAlgorithmInput` via: -// -// BucketServerSideEncryptionByDefaultSseAlgorithmArgs{...} -type BucketServerSideEncryptionByDefaultSseAlgorithmInput interface { - pulumi.Input - - ToBucketServerSideEncryptionByDefaultSseAlgorithmOutput() BucketServerSideEncryptionByDefaultSseAlgorithmOutput - ToBucketServerSideEncryptionByDefaultSseAlgorithmOutputWithContext(context.Context) BucketServerSideEncryptionByDefaultSseAlgorithmOutput -} - -var bucketServerSideEncryptionByDefaultSseAlgorithmPtrType = reflect.TypeOf((**BucketServerSideEncryptionByDefaultSseAlgorithm)(nil)).Elem() - -type BucketServerSideEncryptionByDefaultSseAlgorithmPtrInput interface { - pulumi.Input - - ToBucketServerSideEncryptionByDefaultSseAlgorithmPtrOutput() BucketServerSideEncryptionByDefaultSseAlgorithmPtrOutput - ToBucketServerSideEncryptionByDefaultSseAlgorithmPtrOutputWithContext(context.Context) BucketServerSideEncryptionByDefaultSseAlgorithmPtrOutput -} - -type bucketServerSideEncryptionByDefaultSseAlgorithmPtr string - -func BucketServerSideEncryptionByDefaultSseAlgorithmPtr(v string) BucketServerSideEncryptionByDefaultSseAlgorithmPtrInput { - return (*bucketServerSideEncryptionByDefaultSseAlgorithmPtr)(&v) -} - -func (*bucketServerSideEncryptionByDefaultSseAlgorithmPtr) ElementType() reflect.Type { - return bucketServerSideEncryptionByDefaultSseAlgorithmPtrType -} - -func (in *bucketServerSideEncryptionByDefaultSseAlgorithmPtr) ToBucketServerSideEncryptionByDefaultSseAlgorithmPtrOutput() BucketServerSideEncryptionByDefaultSseAlgorithmPtrOutput { - return pulumi.ToOutput(in).(BucketServerSideEncryptionByDefaultSseAlgorithmPtrOutput) -} - -func (in *bucketServerSideEncryptionByDefaultSseAlgorithmPtr) ToBucketServerSideEncryptionByDefaultSseAlgorithmPtrOutputWithContext(ctx context.Context) BucketServerSideEncryptionByDefaultSseAlgorithmPtrOutput { - return pulumi.ToOutputWithContext(ctx, in).(BucketServerSideEncryptionByDefaultSseAlgorithmPtrOutput) -} - -func (in *bucketServerSideEncryptionByDefaultSseAlgorithmPtr) ToOutput(ctx context.Context) pulumix.Output[*BucketServerSideEncryptionByDefaultSseAlgorithm] { - return pulumix.Output[*BucketServerSideEncryptionByDefaultSseAlgorithm]{ - OutputState: in.ToBucketServerSideEncryptionByDefaultSseAlgorithmPtrOutputWithContext(ctx).OutputState, - } -} - -// Specifies whether Amazon S3 replicates objects created with server-side encryption using a customer master key (CMK) stored in AWS Key Management Service. -type BucketSseKmsEncryptedObjectsStatus string - -const ( - BucketSseKmsEncryptedObjectsStatusDisabled = BucketSseKmsEncryptedObjectsStatus("Disabled") - BucketSseKmsEncryptedObjectsStatusEnabled = BucketSseKmsEncryptedObjectsStatus("Enabled") -) - -func (BucketSseKmsEncryptedObjectsStatus) ElementType() reflect.Type { - return reflect.TypeOf((*BucketSseKmsEncryptedObjectsStatus)(nil)).Elem() -} - -func (e BucketSseKmsEncryptedObjectsStatus) ToBucketSseKmsEncryptedObjectsStatusOutput() BucketSseKmsEncryptedObjectsStatusOutput { - return pulumi.ToOutput(e).(BucketSseKmsEncryptedObjectsStatusOutput) -} - -func (e BucketSseKmsEncryptedObjectsStatus) ToBucketSseKmsEncryptedObjectsStatusOutputWithContext(ctx context.Context) BucketSseKmsEncryptedObjectsStatusOutput { - return pulumi.ToOutputWithContext(ctx, e).(BucketSseKmsEncryptedObjectsStatusOutput) -} - -func (e BucketSseKmsEncryptedObjectsStatus) ToBucketSseKmsEncryptedObjectsStatusPtrOutput() BucketSseKmsEncryptedObjectsStatusPtrOutput { - return e.ToBucketSseKmsEncryptedObjectsStatusPtrOutputWithContext(context.Background()) -} - -func (e BucketSseKmsEncryptedObjectsStatus) ToBucketSseKmsEncryptedObjectsStatusPtrOutputWithContext(ctx context.Context) BucketSseKmsEncryptedObjectsStatusPtrOutput { - return BucketSseKmsEncryptedObjectsStatus(e).ToBucketSseKmsEncryptedObjectsStatusOutputWithContext(ctx).ToBucketSseKmsEncryptedObjectsStatusPtrOutputWithContext(ctx) -} - -func (e BucketSseKmsEncryptedObjectsStatus) ToStringOutput() pulumi.StringOutput { - return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) -} - -func (e BucketSseKmsEncryptedObjectsStatus) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) -} - -func (e BucketSseKmsEncryptedObjectsStatus) ToStringPtrOutput() pulumi.StringPtrOutput { - return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) -} - -func (e BucketSseKmsEncryptedObjectsStatus) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) -} - -type BucketSseKmsEncryptedObjectsStatusOutput struct{ *pulumi.OutputState } - -func (BucketSseKmsEncryptedObjectsStatusOutput) ElementType() reflect.Type { - return reflect.TypeOf((*BucketSseKmsEncryptedObjectsStatus)(nil)).Elem() -} - -func (o BucketSseKmsEncryptedObjectsStatusOutput) ToBucketSseKmsEncryptedObjectsStatusOutput() BucketSseKmsEncryptedObjectsStatusOutput { - return o -} - -func (o BucketSseKmsEncryptedObjectsStatusOutput) ToBucketSseKmsEncryptedObjectsStatusOutputWithContext(ctx context.Context) BucketSseKmsEncryptedObjectsStatusOutput { - return o -} - -func (o BucketSseKmsEncryptedObjectsStatusOutput) ToBucketSseKmsEncryptedObjectsStatusPtrOutput() BucketSseKmsEncryptedObjectsStatusPtrOutput { - return o.ToBucketSseKmsEncryptedObjectsStatusPtrOutputWithContext(context.Background()) -} - -func (o BucketSseKmsEncryptedObjectsStatusOutput) ToBucketSseKmsEncryptedObjectsStatusPtrOutputWithContext(ctx context.Context) BucketSseKmsEncryptedObjectsStatusPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v BucketSseKmsEncryptedObjectsStatus) *BucketSseKmsEncryptedObjectsStatus { - return &v - }).(BucketSseKmsEncryptedObjectsStatusPtrOutput) -} - -func (o BucketSseKmsEncryptedObjectsStatusOutput) ToOutput(ctx context.Context) pulumix.Output[BucketSseKmsEncryptedObjectsStatus] { - return pulumix.Output[BucketSseKmsEncryptedObjectsStatus]{ - OutputState: o.OutputState, - } -} - -func (o BucketSseKmsEncryptedObjectsStatusOutput) ToStringOutput() pulumi.StringOutput { - return o.ToStringOutputWithContext(context.Background()) -} - -func (o BucketSseKmsEncryptedObjectsStatusOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e BucketSseKmsEncryptedObjectsStatus) string { - return string(e) - }).(pulumi.StringOutput) -} - -func (o BucketSseKmsEncryptedObjectsStatusOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o BucketSseKmsEncryptedObjectsStatusOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e BucketSseKmsEncryptedObjectsStatus) *string { - v := string(e) - return &v - }).(pulumi.StringPtrOutput) -} - -type BucketSseKmsEncryptedObjectsStatusPtrOutput struct{ *pulumi.OutputState } - -func (BucketSseKmsEncryptedObjectsStatusPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**BucketSseKmsEncryptedObjectsStatus)(nil)).Elem() -} - -func (o BucketSseKmsEncryptedObjectsStatusPtrOutput) ToBucketSseKmsEncryptedObjectsStatusPtrOutput() BucketSseKmsEncryptedObjectsStatusPtrOutput { - return o -} - -func (o BucketSseKmsEncryptedObjectsStatusPtrOutput) ToBucketSseKmsEncryptedObjectsStatusPtrOutputWithContext(ctx context.Context) BucketSseKmsEncryptedObjectsStatusPtrOutput { - return o -} - -func (o BucketSseKmsEncryptedObjectsStatusPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*BucketSseKmsEncryptedObjectsStatus] { - return pulumix.Output[*BucketSseKmsEncryptedObjectsStatus]{ - OutputState: o.OutputState, - } -} - -func (o BucketSseKmsEncryptedObjectsStatusPtrOutput) Elem() BucketSseKmsEncryptedObjectsStatusOutput { - return o.ApplyT(func(v *BucketSseKmsEncryptedObjectsStatus) BucketSseKmsEncryptedObjectsStatus { - if v != nil { - return *v - } - var ret BucketSseKmsEncryptedObjectsStatus - return ret - }).(BucketSseKmsEncryptedObjectsStatusOutput) -} - -func (o BucketSseKmsEncryptedObjectsStatusPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o BucketSseKmsEncryptedObjectsStatusPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e *BucketSseKmsEncryptedObjectsStatus) *string { - if e == nil { - return nil - } - v := string(*e) - return &v - }).(pulumi.StringPtrOutput) -} - -// BucketSseKmsEncryptedObjectsStatusInput is an input type that accepts BucketSseKmsEncryptedObjectsStatusArgs and BucketSseKmsEncryptedObjectsStatusOutput values. -// You can construct a concrete instance of `BucketSseKmsEncryptedObjectsStatusInput` via: -// -// BucketSseKmsEncryptedObjectsStatusArgs{...} -type BucketSseKmsEncryptedObjectsStatusInput interface { - pulumi.Input - - ToBucketSseKmsEncryptedObjectsStatusOutput() BucketSseKmsEncryptedObjectsStatusOutput - ToBucketSseKmsEncryptedObjectsStatusOutputWithContext(context.Context) BucketSseKmsEncryptedObjectsStatusOutput -} - -var bucketSseKmsEncryptedObjectsStatusPtrType = reflect.TypeOf((**BucketSseKmsEncryptedObjectsStatus)(nil)).Elem() - -type BucketSseKmsEncryptedObjectsStatusPtrInput interface { - pulumi.Input - - ToBucketSseKmsEncryptedObjectsStatusPtrOutput() BucketSseKmsEncryptedObjectsStatusPtrOutput - ToBucketSseKmsEncryptedObjectsStatusPtrOutputWithContext(context.Context) BucketSseKmsEncryptedObjectsStatusPtrOutput -} - -type bucketSseKmsEncryptedObjectsStatusPtr string - -func BucketSseKmsEncryptedObjectsStatusPtr(v string) BucketSseKmsEncryptedObjectsStatusPtrInput { - return (*bucketSseKmsEncryptedObjectsStatusPtr)(&v) -} - -func (*bucketSseKmsEncryptedObjectsStatusPtr) ElementType() reflect.Type { - return bucketSseKmsEncryptedObjectsStatusPtrType -} - -func (in *bucketSseKmsEncryptedObjectsStatusPtr) ToBucketSseKmsEncryptedObjectsStatusPtrOutput() BucketSseKmsEncryptedObjectsStatusPtrOutput { - return pulumi.ToOutput(in).(BucketSseKmsEncryptedObjectsStatusPtrOutput) -} - -func (in *bucketSseKmsEncryptedObjectsStatusPtr) ToBucketSseKmsEncryptedObjectsStatusPtrOutputWithContext(ctx context.Context) BucketSseKmsEncryptedObjectsStatusPtrOutput { - return pulumi.ToOutputWithContext(ctx, in).(BucketSseKmsEncryptedObjectsStatusPtrOutput) -} - -func (in *bucketSseKmsEncryptedObjectsStatusPtr) ToOutput(ctx context.Context) pulumix.Output[*BucketSseKmsEncryptedObjectsStatus] { - return pulumix.Output[*BucketSseKmsEncryptedObjectsStatus]{ - OutputState: in.ToBucketSseKmsEncryptedObjectsStatusPtrOutputWithContext(ctx).OutputState, - } -} - -// S3 Intelligent-Tiering access tier. See Storage class for automatically optimizing frequently and infrequently accessed objects for a list of access tiers in the S3 Intelligent-Tiering storage class. -type BucketTieringAccessTier string - -const ( - BucketTieringAccessTierArchiveAccess = BucketTieringAccessTier("ARCHIVE_ACCESS") - BucketTieringAccessTierDeepArchiveAccess = BucketTieringAccessTier("DEEP_ARCHIVE_ACCESS") -) - -func (BucketTieringAccessTier) ElementType() reflect.Type { - return reflect.TypeOf((*BucketTieringAccessTier)(nil)).Elem() -} - -func (e BucketTieringAccessTier) ToBucketTieringAccessTierOutput() BucketTieringAccessTierOutput { - return pulumi.ToOutput(e).(BucketTieringAccessTierOutput) -} - -func (e BucketTieringAccessTier) ToBucketTieringAccessTierOutputWithContext(ctx context.Context) BucketTieringAccessTierOutput { - return pulumi.ToOutputWithContext(ctx, e).(BucketTieringAccessTierOutput) -} - -func (e BucketTieringAccessTier) ToBucketTieringAccessTierPtrOutput() BucketTieringAccessTierPtrOutput { - return e.ToBucketTieringAccessTierPtrOutputWithContext(context.Background()) -} - -func (e BucketTieringAccessTier) ToBucketTieringAccessTierPtrOutputWithContext(ctx context.Context) BucketTieringAccessTierPtrOutput { - return BucketTieringAccessTier(e).ToBucketTieringAccessTierOutputWithContext(ctx).ToBucketTieringAccessTierPtrOutputWithContext(ctx) -} - -func (e BucketTieringAccessTier) ToStringOutput() pulumi.StringOutput { - return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) -} - -func (e BucketTieringAccessTier) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) -} - -func (e BucketTieringAccessTier) ToStringPtrOutput() pulumi.StringPtrOutput { - return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) -} - -func (e BucketTieringAccessTier) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) -} - -type BucketTieringAccessTierOutput struct{ *pulumi.OutputState } - -func (BucketTieringAccessTierOutput) ElementType() reflect.Type { - return reflect.TypeOf((*BucketTieringAccessTier)(nil)).Elem() -} - -func (o BucketTieringAccessTierOutput) ToBucketTieringAccessTierOutput() BucketTieringAccessTierOutput { - return o -} - -func (o BucketTieringAccessTierOutput) ToBucketTieringAccessTierOutputWithContext(ctx context.Context) BucketTieringAccessTierOutput { - return o -} - -func (o BucketTieringAccessTierOutput) ToBucketTieringAccessTierPtrOutput() BucketTieringAccessTierPtrOutput { - return o.ToBucketTieringAccessTierPtrOutputWithContext(context.Background()) -} - -func (o BucketTieringAccessTierOutput) ToBucketTieringAccessTierPtrOutputWithContext(ctx context.Context) BucketTieringAccessTierPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v BucketTieringAccessTier) *BucketTieringAccessTier { - return &v - }).(BucketTieringAccessTierPtrOutput) -} - -func (o BucketTieringAccessTierOutput) ToOutput(ctx context.Context) pulumix.Output[BucketTieringAccessTier] { - return pulumix.Output[BucketTieringAccessTier]{ - OutputState: o.OutputState, - } -} - -func (o BucketTieringAccessTierOutput) ToStringOutput() pulumi.StringOutput { - return o.ToStringOutputWithContext(context.Background()) -} - -func (o BucketTieringAccessTierOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e BucketTieringAccessTier) string { - return string(e) - }).(pulumi.StringOutput) -} - -func (o BucketTieringAccessTierOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o BucketTieringAccessTierOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e BucketTieringAccessTier) *string { - v := string(e) - return &v - }).(pulumi.StringPtrOutput) -} - -type BucketTieringAccessTierPtrOutput struct{ *pulumi.OutputState } - -func (BucketTieringAccessTierPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**BucketTieringAccessTier)(nil)).Elem() -} - -func (o BucketTieringAccessTierPtrOutput) ToBucketTieringAccessTierPtrOutput() BucketTieringAccessTierPtrOutput { - return o -} - -func (o BucketTieringAccessTierPtrOutput) ToBucketTieringAccessTierPtrOutputWithContext(ctx context.Context) BucketTieringAccessTierPtrOutput { - return o -} - -func (o BucketTieringAccessTierPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*BucketTieringAccessTier] { - return pulumix.Output[*BucketTieringAccessTier]{ - OutputState: o.OutputState, - } -} - -func (o BucketTieringAccessTierPtrOutput) Elem() BucketTieringAccessTierOutput { - return o.ApplyT(func(v *BucketTieringAccessTier) BucketTieringAccessTier { - if v != nil { - return *v - } - var ret BucketTieringAccessTier - return ret - }).(BucketTieringAccessTierOutput) -} - -func (o BucketTieringAccessTierPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o BucketTieringAccessTierPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e *BucketTieringAccessTier) *string { - if e == nil { - return nil - } - v := string(*e) - return &v - }).(pulumi.StringPtrOutput) -} - -// BucketTieringAccessTierInput is an input type that accepts BucketTieringAccessTierArgs and BucketTieringAccessTierOutput values. -// You can construct a concrete instance of `BucketTieringAccessTierInput` via: -// -// BucketTieringAccessTierArgs{...} -type BucketTieringAccessTierInput interface { - pulumi.Input - - ToBucketTieringAccessTierOutput() BucketTieringAccessTierOutput - ToBucketTieringAccessTierOutputWithContext(context.Context) BucketTieringAccessTierOutput -} - -var bucketTieringAccessTierPtrType = reflect.TypeOf((**BucketTieringAccessTier)(nil)).Elem() - -type BucketTieringAccessTierPtrInput interface { - pulumi.Input - - ToBucketTieringAccessTierPtrOutput() BucketTieringAccessTierPtrOutput - ToBucketTieringAccessTierPtrOutputWithContext(context.Context) BucketTieringAccessTierPtrOutput -} - -type bucketTieringAccessTierPtr string - -func BucketTieringAccessTierPtr(v string) BucketTieringAccessTierPtrInput { - return (*bucketTieringAccessTierPtr)(&v) -} - -func (*bucketTieringAccessTierPtr) ElementType() reflect.Type { - return bucketTieringAccessTierPtrType -} - -func (in *bucketTieringAccessTierPtr) ToBucketTieringAccessTierPtrOutput() BucketTieringAccessTierPtrOutput { - return pulumi.ToOutput(in).(BucketTieringAccessTierPtrOutput) -} - -func (in *bucketTieringAccessTierPtr) ToBucketTieringAccessTierPtrOutputWithContext(ctx context.Context) BucketTieringAccessTierPtrOutput { - return pulumi.ToOutputWithContext(ctx, in).(BucketTieringAccessTierPtrOutput) -} - -func (in *bucketTieringAccessTierPtr) ToOutput(ctx context.Context) pulumix.Output[*BucketTieringAccessTier] { - return pulumix.Output[*BucketTieringAccessTier]{ - OutputState: in.ToBucketTieringAccessTierPtrOutputWithContext(ctx).OutputState, - } -} - -type BucketTransitionStorageClass string - -const ( - BucketTransitionStorageClassDeepArchive = BucketTransitionStorageClass("DEEP_ARCHIVE") - BucketTransitionStorageClassGlacier = BucketTransitionStorageClass("GLACIER") - BucketTransitionStorageClassGlacierIr = BucketTransitionStorageClass("GLACIER_IR") - BucketTransitionStorageClassIntelligentTiering = BucketTransitionStorageClass("INTELLIGENT_TIERING") - BucketTransitionStorageClassOnezoneIa = BucketTransitionStorageClass("ONEZONE_IA") - BucketTransitionStorageClassStandardIa = BucketTransitionStorageClass("STANDARD_IA") -) - -func (BucketTransitionStorageClass) ElementType() reflect.Type { - return reflect.TypeOf((*BucketTransitionStorageClass)(nil)).Elem() -} - -func (e BucketTransitionStorageClass) ToBucketTransitionStorageClassOutput() BucketTransitionStorageClassOutput { - return pulumi.ToOutput(e).(BucketTransitionStorageClassOutput) -} - -func (e BucketTransitionStorageClass) ToBucketTransitionStorageClassOutputWithContext(ctx context.Context) BucketTransitionStorageClassOutput { - return pulumi.ToOutputWithContext(ctx, e).(BucketTransitionStorageClassOutput) -} - -func (e BucketTransitionStorageClass) ToBucketTransitionStorageClassPtrOutput() BucketTransitionStorageClassPtrOutput { - return e.ToBucketTransitionStorageClassPtrOutputWithContext(context.Background()) -} - -func (e BucketTransitionStorageClass) ToBucketTransitionStorageClassPtrOutputWithContext(ctx context.Context) BucketTransitionStorageClassPtrOutput { - return BucketTransitionStorageClass(e).ToBucketTransitionStorageClassOutputWithContext(ctx).ToBucketTransitionStorageClassPtrOutputWithContext(ctx) -} - -func (e BucketTransitionStorageClass) ToStringOutput() pulumi.StringOutput { - return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) -} - -func (e BucketTransitionStorageClass) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) -} - -func (e BucketTransitionStorageClass) ToStringPtrOutput() pulumi.StringPtrOutput { - return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) -} - -func (e BucketTransitionStorageClass) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) -} - -type BucketTransitionStorageClassOutput struct{ *pulumi.OutputState } - -func (BucketTransitionStorageClassOutput) ElementType() reflect.Type { - return reflect.TypeOf((*BucketTransitionStorageClass)(nil)).Elem() -} - -func (o BucketTransitionStorageClassOutput) ToBucketTransitionStorageClassOutput() BucketTransitionStorageClassOutput { - return o -} - -func (o BucketTransitionStorageClassOutput) ToBucketTransitionStorageClassOutputWithContext(ctx context.Context) BucketTransitionStorageClassOutput { - return o -} - -func (o BucketTransitionStorageClassOutput) ToBucketTransitionStorageClassPtrOutput() BucketTransitionStorageClassPtrOutput { - return o.ToBucketTransitionStorageClassPtrOutputWithContext(context.Background()) -} - -func (o BucketTransitionStorageClassOutput) ToBucketTransitionStorageClassPtrOutputWithContext(ctx context.Context) BucketTransitionStorageClassPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v BucketTransitionStorageClass) *BucketTransitionStorageClass { - return &v - }).(BucketTransitionStorageClassPtrOutput) -} - -func (o BucketTransitionStorageClassOutput) ToOutput(ctx context.Context) pulumix.Output[BucketTransitionStorageClass] { - return pulumix.Output[BucketTransitionStorageClass]{ - OutputState: o.OutputState, - } -} - -func (o BucketTransitionStorageClassOutput) ToStringOutput() pulumi.StringOutput { - return o.ToStringOutputWithContext(context.Background()) -} - -func (o BucketTransitionStorageClassOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e BucketTransitionStorageClass) string { - return string(e) - }).(pulumi.StringOutput) -} - -func (o BucketTransitionStorageClassOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o BucketTransitionStorageClassOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e BucketTransitionStorageClass) *string { - v := string(e) - return &v - }).(pulumi.StringPtrOutput) -} - -type BucketTransitionStorageClassPtrOutput struct{ *pulumi.OutputState } - -func (BucketTransitionStorageClassPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**BucketTransitionStorageClass)(nil)).Elem() -} - -func (o BucketTransitionStorageClassPtrOutput) ToBucketTransitionStorageClassPtrOutput() BucketTransitionStorageClassPtrOutput { - return o -} - -func (o BucketTransitionStorageClassPtrOutput) ToBucketTransitionStorageClassPtrOutputWithContext(ctx context.Context) BucketTransitionStorageClassPtrOutput { - return o -} - -func (o BucketTransitionStorageClassPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*BucketTransitionStorageClass] { - return pulumix.Output[*BucketTransitionStorageClass]{ - OutputState: o.OutputState, - } -} - -func (o BucketTransitionStorageClassPtrOutput) Elem() BucketTransitionStorageClassOutput { - return o.ApplyT(func(v *BucketTransitionStorageClass) BucketTransitionStorageClass { - if v != nil { - return *v - } - var ret BucketTransitionStorageClass - return ret - }).(BucketTransitionStorageClassOutput) -} - -func (o BucketTransitionStorageClassPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o BucketTransitionStorageClassPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e *BucketTransitionStorageClass) *string { - if e == nil { - return nil - } - v := string(*e) - return &v - }).(pulumi.StringPtrOutput) -} - -// BucketTransitionStorageClassInput is an input type that accepts BucketTransitionStorageClassArgs and BucketTransitionStorageClassOutput values. -// You can construct a concrete instance of `BucketTransitionStorageClassInput` via: -// -// BucketTransitionStorageClassArgs{...} -type BucketTransitionStorageClassInput interface { - pulumi.Input - - ToBucketTransitionStorageClassOutput() BucketTransitionStorageClassOutput - ToBucketTransitionStorageClassOutputWithContext(context.Context) BucketTransitionStorageClassOutput -} - -var bucketTransitionStorageClassPtrType = reflect.TypeOf((**BucketTransitionStorageClass)(nil)).Elem() - -type BucketTransitionStorageClassPtrInput interface { - pulumi.Input - - ToBucketTransitionStorageClassPtrOutput() BucketTransitionStorageClassPtrOutput - ToBucketTransitionStorageClassPtrOutputWithContext(context.Context) BucketTransitionStorageClassPtrOutput -} - -type bucketTransitionStorageClassPtr string - -func BucketTransitionStorageClassPtr(v string) BucketTransitionStorageClassPtrInput { - return (*bucketTransitionStorageClassPtr)(&v) -} - -func (*bucketTransitionStorageClassPtr) ElementType() reflect.Type { - return bucketTransitionStorageClassPtrType -} - -func (in *bucketTransitionStorageClassPtr) ToBucketTransitionStorageClassPtrOutput() BucketTransitionStorageClassPtrOutput { - return pulumi.ToOutput(in).(BucketTransitionStorageClassPtrOutput) -} - -func (in *bucketTransitionStorageClassPtr) ToBucketTransitionStorageClassPtrOutputWithContext(ctx context.Context) BucketTransitionStorageClassPtrOutput { - return pulumi.ToOutputWithContext(ctx, in).(BucketTransitionStorageClassPtrOutput) -} - -func (in *bucketTransitionStorageClassPtr) ToOutput(ctx context.Context) pulumix.Output[*BucketTransitionStorageClass] { - return pulumix.Output[*BucketTransitionStorageClass]{ - OutputState: in.ToBucketTransitionStorageClassPtrOutputWithContext(ctx).OutputState, - } -} - -// The versioning state of the bucket. -type BucketVersioningConfigurationStatus string - -const ( - BucketVersioningConfigurationStatusEnabled = BucketVersioningConfigurationStatus("Enabled") - BucketVersioningConfigurationStatusSuspended = BucketVersioningConfigurationStatus("Suspended") -) - -func (BucketVersioningConfigurationStatus) ElementType() reflect.Type { - return reflect.TypeOf((*BucketVersioningConfigurationStatus)(nil)).Elem() -} - -func (e BucketVersioningConfigurationStatus) ToBucketVersioningConfigurationStatusOutput() BucketVersioningConfigurationStatusOutput { - return pulumi.ToOutput(e).(BucketVersioningConfigurationStatusOutput) -} - -func (e BucketVersioningConfigurationStatus) ToBucketVersioningConfigurationStatusOutputWithContext(ctx context.Context) BucketVersioningConfigurationStatusOutput { - return pulumi.ToOutputWithContext(ctx, e).(BucketVersioningConfigurationStatusOutput) -} - -func (e BucketVersioningConfigurationStatus) ToBucketVersioningConfigurationStatusPtrOutput() BucketVersioningConfigurationStatusPtrOutput { - return e.ToBucketVersioningConfigurationStatusPtrOutputWithContext(context.Background()) -} - -func (e BucketVersioningConfigurationStatus) ToBucketVersioningConfigurationStatusPtrOutputWithContext(ctx context.Context) BucketVersioningConfigurationStatusPtrOutput { - return BucketVersioningConfigurationStatus(e).ToBucketVersioningConfigurationStatusOutputWithContext(ctx).ToBucketVersioningConfigurationStatusPtrOutputWithContext(ctx) -} - -func (e BucketVersioningConfigurationStatus) ToStringOutput() pulumi.StringOutput { - return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) -} - -func (e BucketVersioningConfigurationStatus) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) -} - -func (e BucketVersioningConfigurationStatus) ToStringPtrOutput() pulumi.StringPtrOutput { - return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) -} - -func (e BucketVersioningConfigurationStatus) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) -} - -type BucketVersioningConfigurationStatusOutput struct{ *pulumi.OutputState } - -func (BucketVersioningConfigurationStatusOutput) ElementType() reflect.Type { - return reflect.TypeOf((*BucketVersioningConfigurationStatus)(nil)).Elem() -} - -func (o BucketVersioningConfigurationStatusOutput) ToBucketVersioningConfigurationStatusOutput() BucketVersioningConfigurationStatusOutput { - return o -} - -func (o BucketVersioningConfigurationStatusOutput) ToBucketVersioningConfigurationStatusOutputWithContext(ctx context.Context) BucketVersioningConfigurationStatusOutput { - return o -} - -func (o BucketVersioningConfigurationStatusOutput) ToBucketVersioningConfigurationStatusPtrOutput() BucketVersioningConfigurationStatusPtrOutput { - return o.ToBucketVersioningConfigurationStatusPtrOutputWithContext(context.Background()) -} - -func (o BucketVersioningConfigurationStatusOutput) ToBucketVersioningConfigurationStatusPtrOutputWithContext(ctx context.Context) BucketVersioningConfigurationStatusPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v BucketVersioningConfigurationStatus) *BucketVersioningConfigurationStatus { - return &v - }).(BucketVersioningConfigurationStatusPtrOutput) -} - -func (o BucketVersioningConfigurationStatusOutput) ToOutput(ctx context.Context) pulumix.Output[BucketVersioningConfigurationStatus] { - return pulumix.Output[BucketVersioningConfigurationStatus]{ - OutputState: o.OutputState, - } -} - -func (o BucketVersioningConfigurationStatusOutput) ToStringOutput() pulumi.StringOutput { - return o.ToStringOutputWithContext(context.Background()) -} - -func (o BucketVersioningConfigurationStatusOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e BucketVersioningConfigurationStatus) string { - return string(e) - }).(pulumi.StringOutput) -} - -func (o BucketVersioningConfigurationStatusOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o BucketVersioningConfigurationStatusOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e BucketVersioningConfigurationStatus) *string { - v := string(e) - return &v - }).(pulumi.StringPtrOutput) -} - -type BucketVersioningConfigurationStatusPtrOutput struct{ *pulumi.OutputState } - -func (BucketVersioningConfigurationStatusPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**BucketVersioningConfigurationStatus)(nil)).Elem() -} - -func (o BucketVersioningConfigurationStatusPtrOutput) ToBucketVersioningConfigurationStatusPtrOutput() BucketVersioningConfigurationStatusPtrOutput { - return o -} - -func (o BucketVersioningConfigurationStatusPtrOutput) ToBucketVersioningConfigurationStatusPtrOutputWithContext(ctx context.Context) BucketVersioningConfigurationStatusPtrOutput { - return o -} - -func (o BucketVersioningConfigurationStatusPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*BucketVersioningConfigurationStatus] { - return pulumix.Output[*BucketVersioningConfigurationStatus]{ - OutputState: o.OutputState, - } -} - -func (o BucketVersioningConfigurationStatusPtrOutput) Elem() BucketVersioningConfigurationStatusOutput { - return o.ApplyT(func(v *BucketVersioningConfigurationStatus) BucketVersioningConfigurationStatus { - if v != nil { - return *v - } - var ret BucketVersioningConfigurationStatus - return ret - }).(BucketVersioningConfigurationStatusOutput) -} - -func (o BucketVersioningConfigurationStatusPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o BucketVersioningConfigurationStatusPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e *BucketVersioningConfigurationStatus) *string { - if e == nil { - return nil - } - v := string(*e) - return &v - }).(pulumi.StringPtrOutput) -} - -// BucketVersioningConfigurationStatusInput is an input type that accepts BucketVersioningConfigurationStatusArgs and BucketVersioningConfigurationStatusOutput values. -// You can construct a concrete instance of `BucketVersioningConfigurationStatusInput` via: -// -// BucketVersioningConfigurationStatusArgs{...} -type BucketVersioningConfigurationStatusInput interface { - pulumi.Input - - ToBucketVersioningConfigurationStatusOutput() BucketVersioningConfigurationStatusOutput - ToBucketVersioningConfigurationStatusOutputWithContext(context.Context) BucketVersioningConfigurationStatusOutput -} - -var bucketVersioningConfigurationStatusPtrType = reflect.TypeOf((**BucketVersioningConfigurationStatus)(nil)).Elem() - -type BucketVersioningConfigurationStatusPtrInput interface { - pulumi.Input - - ToBucketVersioningConfigurationStatusPtrOutput() BucketVersioningConfigurationStatusPtrOutput - ToBucketVersioningConfigurationStatusPtrOutputWithContext(context.Context) BucketVersioningConfigurationStatusPtrOutput -} - -type bucketVersioningConfigurationStatusPtr string - -func BucketVersioningConfigurationStatusPtr(v string) BucketVersioningConfigurationStatusPtrInput { - return (*bucketVersioningConfigurationStatusPtr)(&v) -} - -func (*bucketVersioningConfigurationStatusPtr) ElementType() reflect.Type { - return bucketVersioningConfigurationStatusPtrType -} - -func (in *bucketVersioningConfigurationStatusPtr) ToBucketVersioningConfigurationStatusPtrOutput() BucketVersioningConfigurationStatusPtrOutput { - return pulumi.ToOutput(in).(BucketVersioningConfigurationStatusPtrOutput) -} - -func (in *bucketVersioningConfigurationStatusPtr) ToBucketVersioningConfigurationStatusPtrOutputWithContext(ctx context.Context) BucketVersioningConfigurationStatusPtrOutput { - return pulumi.ToOutputWithContext(ctx, in).(BucketVersioningConfigurationStatusPtrOutput) -} - -func (in *bucketVersioningConfigurationStatusPtr) ToOutput(ctx context.Context) pulumix.Output[*BucketVersioningConfigurationStatus] { - return pulumix.Output[*BucketVersioningConfigurationStatus]{ - OutputState: in.ToBucketVersioningConfigurationStatusPtrOutputWithContext(ctx).OutputState, - } -} - // Specifies whether the policy is public or not. type MultiRegionAccessPointPolicyPolicyStatusPropertiesIsPublic string @@ -5299,116 +583,12 @@ func (in *storageLensS3BucketDestinationOutputSchemaVersionPtr) ToOutput(ctx con } func init() { - pulumi.RegisterInputType(reflect.TypeOf((*BucketAccelerateConfigurationAccelerationStatusInput)(nil)).Elem(), BucketAccelerateConfigurationAccelerationStatus("Enabled")) - pulumi.RegisterInputType(reflect.TypeOf((*BucketAccelerateConfigurationAccelerationStatusPtrInput)(nil)).Elem(), BucketAccelerateConfigurationAccelerationStatus("Enabled")) - pulumi.RegisterInputType(reflect.TypeOf((*BucketAccessControlInput)(nil)).Elem(), BucketAccessControl("AuthenticatedRead")) - pulumi.RegisterInputType(reflect.TypeOf((*BucketAccessControlPtrInput)(nil)).Elem(), BucketAccessControl("AuthenticatedRead")) - pulumi.RegisterInputType(reflect.TypeOf((*BucketCorsRuleAllowedMethodsItemInput)(nil)).Elem(), BucketCorsRuleAllowedMethodsItem("GET")) - pulumi.RegisterInputType(reflect.TypeOf((*BucketCorsRuleAllowedMethodsItemPtrInput)(nil)).Elem(), BucketCorsRuleAllowedMethodsItem("GET")) - pulumi.RegisterInputType(reflect.TypeOf((*BucketCorsRuleAllowedMethodsItemArrayInput)(nil)).Elem(), BucketCorsRuleAllowedMethodsItemArray{}) - pulumi.RegisterInputType(reflect.TypeOf((*BucketDefaultRetentionModeInput)(nil)).Elem(), BucketDefaultRetentionMode("COMPLIANCE")) - pulumi.RegisterInputType(reflect.TypeOf((*BucketDefaultRetentionModePtrInput)(nil)).Elem(), BucketDefaultRetentionMode("COMPLIANCE")) - pulumi.RegisterInputType(reflect.TypeOf((*BucketDeleteMarkerReplicationStatusInput)(nil)).Elem(), BucketDeleteMarkerReplicationStatus("Disabled")) - pulumi.RegisterInputType(reflect.TypeOf((*BucketDeleteMarkerReplicationStatusPtrInput)(nil)).Elem(), BucketDeleteMarkerReplicationStatus("Disabled")) - pulumi.RegisterInputType(reflect.TypeOf((*BucketDestinationFormatInput)(nil)).Elem(), BucketDestinationFormat("CSV")) - pulumi.RegisterInputType(reflect.TypeOf((*BucketDestinationFormatPtrInput)(nil)).Elem(), BucketDestinationFormat("CSV")) - pulumi.RegisterInputType(reflect.TypeOf((*BucketIntelligentTieringConfigurationStatusInput)(nil)).Elem(), BucketIntelligentTieringConfigurationStatus("Disabled")) - pulumi.RegisterInputType(reflect.TypeOf((*BucketIntelligentTieringConfigurationStatusPtrInput)(nil)).Elem(), BucketIntelligentTieringConfigurationStatus("Disabled")) - pulumi.RegisterInputType(reflect.TypeOf((*BucketInventoryConfigurationIncludedObjectVersionsInput)(nil)).Elem(), BucketInventoryConfigurationIncludedObjectVersions("All")) - pulumi.RegisterInputType(reflect.TypeOf((*BucketInventoryConfigurationIncludedObjectVersionsPtrInput)(nil)).Elem(), BucketInventoryConfigurationIncludedObjectVersions("All")) - pulumi.RegisterInputType(reflect.TypeOf((*BucketInventoryConfigurationOptionalFieldsItemInput)(nil)).Elem(), BucketInventoryConfigurationOptionalFieldsItem("Size")) - pulumi.RegisterInputType(reflect.TypeOf((*BucketInventoryConfigurationOptionalFieldsItemPtrInput)(nil)).Elem(), BucketInventoryConfigurationOptionalFieldsItem("Size")) - pulumi.RegisterInputType(reflect.TypeOf((*BucketInventoryConfigurationOptionalFieldsItemArrayInput)(nil)).Elem(), BucketInventoryConfigurationOptionalFieldsItemArray{}) - pulumi.RegisterInputType(reflect.TypeOf((*BucketInventoryConfigurationScheduleFrequencyInput)(nil)).Elem(), BucketInventoryConfigurationScheduleFrequency("Daily")) - pulumi.RegisterInputType(reflect.TypeOf((*BucketInventoryConfigurationScheduleFrequencyPtrInput)(nil)).Elem(), BucketInventoryConfigurationScheduleFrequency("Daily")) - pulumi.RegisterInputType(reflect.TypeOf((*BucketMetricsStatusInput)(nil)).Elem(), BucketMetricsStatus("Disabled")) - pulumi.RegisterInputType(reflect.TypeOf((*BucketMetricsStatusPtrInput)(nil)).Elem(), BucketMetricsStatus("Disabled")) - pulumi.RegisterInputType(reflect.TypeOf((*BucketNoncurrentVersionTransitionStorageClassInput)(nil)).Elem(), BucketNoncurrentVersionTransitionStorageClass("DEEP_ARCHIVE")) - pulumi.RegisterInputType(reflect.TypeOf((*BucketNoncurrentVersionTransitionStorageClassPtrInput)(nil)).Elem(), BucketNoncurrentVersionTransitionStorageClass("DEEP_ARCHIVE")) - pulumi.RegisterInputType(reflect.TypeOf((*BucketOwnershipControlsRuleObjectOwnershipInput)(nil)).Elem(), BucketOwnershipControlsRuleObjectOwnership("ObjectWriter")) - pulumi.RegisterInputType(reflect.TypeOf((*BucketOwnershipControlsRuleObjectOwnershipPtrInput)(nil)).Elem(), BucketOwnershipControlsRuleObjectOwnership("ObjectWriter")) - pulumi.RegisterInputType(reflect.TypeOf((*BucketRedirectAllRequestsToProtocolInput)(nil)).Elem(), BucketRedirectAllRequestsToProtocol("http")) - pulumi.RegisterInputType(reflect.TypeOf((*BucketRedirectAllRequestsToProtocolPtrInput)(nil)).Elem(), BucketRedirectAllRequestsToProtocol("http")) - pulumi.RegisterInputType(reflect.TypeOf((*BucketRedirectRuleProtocolInput)(nil)).Elem(), BucketRedirectRuleProtocol("http")) - pulumi.RegisterInputType(reflect.TypeOf((*BucketRedirectRuleProtocolPtrInput)(nil)).Elem(), BucketRedirectRuleProtocol("http")) - pulumi.RegisterInputType(reflect.TypeOf((*BucketReplicaModificationsStatusInput)(nil)).Elem(), BucketReplicaModificationsStatus("Enabled")) - pulumi.RegisterInputType(reflect.TypeOf((*BucketReplicaModificationsStatusPtrInput)(nil)).Elem(), BucketReplicaModificationsStatus("Enabled")) - pulumi.RegisterInputType(reflect.TypeOf((*BucketReplicationDestinationStorageClassInput)(nil)).Elem(), BucketReplicationDestinationStorageClass("DEEP_ARCHIVE")) - pulumi.RegisterInputType(reflect.TypeOf((*BucketReplicationDestinationStorageClassPtrInput)(nil)).Elem(), BucketReplicationDestinationStorageClass("DEEP_ARCHIVE")) - pulumi.RegisterInputType(reflect.TypeOf((*BucketReplicationRuleStatusInput)(nil)).Elem(), BucketReplicationRuleStatus("Disabled")) - pulumi.RegisterInputType(reflect.TypeOf((*BucketReplicationRuleStatusPtrInput)(nil)).Elem(), BucketReplicationRuleStatus("Disabled")) - pulumi.RegisterInputType(reflect.TypeOf((*BucketReplicationTimeStatusInput)(nil)).Elem(), BucketReplicationTimeStatus("Disabled")) - pulumi.RegisterInputType(reflect.TypeOf((*BucketReplicationTimeStatusPtrInput)(nil)).Elem(), BucketReplicationTimeStatus("Disabled")) - pulumi.RegisterInputType(reflect.TypeOf((*BucketRuleStatusInput)(nil)).Elem(), BucketRuleStatus("Enabled")) - pulumi.RegisterInputType(reflect.TypeOf((*BucketRuleStatusPtrInput)(nil)).Elem(), BucketRuleStatus("Enabled")) - pulumi.RegisterInputType(reflect.TypeOf((*BucketServerSideEncryptionByDefaultSseAlgorithmInput)(nil)).Elem(), BucketServerSideEncryptionByDefaultSseAlgorithm("aws:kms")) - pulumi.RegisterInputType(reflect.TypeOf((*BucketServerSideEncryptionByDefaultSseAlgorithmPtrInput)(nil)).Elem(), BucketServerSideEncryptionByDefaultSseAlgorithm("aws:kms")) - pulumi.RegisterInputType(reflect.TypeOf((*BucketSseKmsEncryptedObjectsStatusInput)(nil)).Elem(), BucketSseKmsEncryptedObjectsStatus("Disabled")) - pulumi.RegisterInputType(reflect.TypeOf((*BucketSseKmsEncryptedObjectsStatusPtrInput)(nil)).Elem(), BucketSseKmsEncryptedObjectsStatus("Disabled")) - pulumi.RegisterInputType(reflect.TypeOf((*BucketTieringAccessTierInput)(nil)).Elem(), BucketTieringAccessTier("ARCHIVE_ACCESS")) - pulumi.RegisterInputType(reflect.TypeOf((*BucketTieringAccessTierPtrInput)(nil)).Elem(), BucketTieringAccessTier("ARCHIVE_ACCESS")) - pulumi.RegisterInputType(reflect.TypeOf((*BucketTransitionStorageClassInput)(nil)).Elem(), BucketTransitionStorageClass("DEEP_ARCHIVE")) - pulumi.RegisterInputType(reflect.TypeOf((*BucketTransitionStorageClassPtrInput)(nil)).Elem(), BucketTransitionStorageClass("DEEP_ARCHIVE")) - pulumi.RegisterInputType(reflect.TypeOf((*BucketVersioningConfigurationStatusInput)(nil)).Elem(), BucketVersioningConfigurationStatus("Enabled")) - pulumi.RegisterInputType(reflect.TypeOf((*BucketVersioningConfigurationStatusPtrInput)(nil)).Elem(), BucketVersioningConfigurationStatus("Enabled")) pulumi.RegisterInputType(reflect.TypeOf((*StorageLensS3BucketDestinationFormatInput)(nil)).Elem(), StorageLensS3BucketDestinationFormat("CSV")) pulumi.RegisterInputType(reflect.TypeOf((*StorageLensS3BucketDestinationFormatPtrInput)(nil)).Elem(), StorageLensS3BucketDestinationFormat("CSV")) pulumi.RegisterInputType(reflect.TypeOf((*StorageLensS3BucketDestinationOutputSchemaVersionInput)(nil)).Elem(), StorageLensS3BucketDestinationOutputSchemaVersion("V_1")) pulumi.RegisterInputType(reflect.TypeOf((*StorageLensS3BucketDestinationOutputSchemaVersionPtrInput)(nil)).Elem(), StorageLensS3BucketDestinationOutputSchemaVersion("V_1")) pulumi.RegisterOutputType(AccessPointNetworkOriginOutput{}) pulumi.RegisterOutputType(AccessPointNetworkOriginPtrOutput{}) - pulumi.RegisterOutputType(BucketAccelerateConfigurationAccelerationStatusOutput{}) - pulumi.RegisterOutputType(BucketAccelerateConfigurationAccelerationStatusPtrOutput{}) - pulumi.RegisterOutputType(BucketAccessControlOutput{}) - pulumi.RegisterOutputType(BucketAccessControlPtrOutput{}) - pulumi.RegisterOutputType(BucketCorsRuleAllowedMethodsItemOutput{}) - pulumi.RegisterOutputType(BucketCorsRuleAllowedMethodsItemPtrOutput{}) - pulumi.RegisterOutputType(BucketCorsRuleAllowedMethodsItemArrayOutput{}) - pulumi.RegisterOutputType(BucketDefaultRetentionModeOutput{}) - pulumi.RegisterOutputType(BucketDefaultRetentionModePtrOutput{}) - pulumi.RegisterOutputType(BucketDeleteMarkerReplicationStatusOutput{}) - pulumi.RegisterOutputType(BucketDeleteMarkerReplicationStatusPtrOutput{}) - pulumi.RegisterOutputType(BucketDestinationFormatOutput{}) - pulumi.RegisterOutputType(BucketDestinationFormatPtrOutput{}) - pulumi.RegisterOutputType(BucketIntelligentTieringConfigurationStatusOutput{}) - pulumi.RegisterOutputType(BucketIntelligentTieringConfigurationStatusPtrOutput{}) - pulumi.RegisterOutputType(BucketInventoryConfigurationIncludedObjectVersionsOutput{}) - pulumi.RegisterOutputType(BucketInventoryConfigurationIncludedObjectVersionsPtrOutput{}) - pulumi.RegisterOutputType(BucketInventoryConfigurationOptionalFieldsItemOutput{}) - pulumi.RegisterOutputType(BucketInventoryConfigurationOptionalFieldsItemPtrOutput{}) - pulumi.RegisterOutputType(BucketInventoryConfigurationOptionalFieldsItemArrayOutput{}) - pulumi.RegisterOutputType(BucketInventoryConfigurationScheduleFrequencyOutput{}) - pulumi.RegisterOutputType(BucketInventoryConfigurationScheduleFrequencyPtrOutput{}) - pulumi.RegisterOutputType(BucketMetricsStatusOutput{}) - pulumi.RegisterOutputType(BucketMetricsStatusPtrOutput{}) - pulumi.RegisterOutputType(BucketNoncurrentVersionTransitionStorageClassOutput{}) - pulumi.RegisterOutputType(BucketNoncurrentVersionTransitionStorageClassPtrOutput{}) - pulumi.RegisterOutputType(BucketOwnershipControlsRuleObjectOwnershipOutput{}) - pulumi.RegisterOutputType(BucketOwnershipControlsRuleObjectOwnershipPtrOutput{}) - pulumi.RegisterOutputType(BucketRedirectAllRequestsToProtocolOutput{}) - pulumi.RegisterOutputType(BucketRedirectAllRequestsToProtocolPtrOutput{}) - pulumi.RegisterOutputType(BucketRedirectRuleProtocolOutput{}) - pulumi.RegisterOutputType(BucketRedirectRuleProtocolPtrOutput{}) - pulumi.RegisterOutputType(BucketReplicaModificationsStatusOutput{}) - pulumi.RegisterOutputType(BucketReplicaModificationsStatusPtrOutput{}) - pulumi.RegisterOutputType(BucketReplicationDestinationStorageClassOutput{}) - pulumi.RegisterOutputType(BucketReplicationDestinationStorageClassPtrOutput{}) - pulumi.RegisterOutputType(BucketReplicationRuleStatusOutput{}) - pulumi.RegisterOutputType(BucketReplicationRuleStatusPtrOutput{}) - pulumi.RegisterOutputType(BucketReplicationTimeStatusOutput{}) - pulumi.RegisterOutputType(BucketReplicationTimeStatusPtrOutput{}) - pulumi.RegisterOutputType(BucketRuleStatusOutput{}) - pulumi.RegisterOutputType(BucketRuleStatusPtrOutput{}) - pulumi.RegisterOutputType(BucketServerSideEncryptionByDefaultSseAlgorithmOutput{}) - pulumi.RegisterOutputType(BucketServerSideEncryptionByDefaultSseAlgorithmPtrOutput{}) - pulumi.RegisterOutputType(BucketSseKmsEncryptedObjectsStatusOutput{}) - pulumi.RegisterOutputType(BucketSseKmsEncryptedObjectsStatusPtrOutput{}) - pulumi.RegisterOutputType(BucketTieringAccessTierOutput{}) - pulumi.RegisterOutputType(BucketTieringAccessTierPtrOutput{}) - pulumi.RegisterOutputType(BucketTransitionStorageClassOutput{}) - pulumi.RegisterOutputType(BucketTransitionStorageClassPtrOutput{}) - pulumi.RegisterOutputType(BucketVersioningConfigurationStatusOutput{}) - pulumi.RegisterOutputType(BucketVersioningConfigurationStatusPtrOutput{}) pulumi.RegisterOutputType(MultiRegionAccessPointPolicyPolicyStatusPropertiesIsPublicOutput{}) pulumi.RegisterOutputType(MultiRegionAccessPointPolicyPolicyStatusPropertiesIsPublicPtrOutput{}) pulumi.RegisterOutputType(StorageLensS3BucketDestinationFormatOutput{}) diff --git a/sdk/go/aws/s3/pulumiTypes.go b/sdk/go/aws/s3/pulumiTypes.go index 9199d4c75b..b47214d39f 100644 --- a/sdk/go/aws/s3/pulumiTypes.go +++ b/sdk/go/aws/s3/pulumiTypes.go @@ -416,9 +416,7 @@ func (o AccessPointVpcConfigurationPtrOutput) VpcId() pulumi.StringPtrOutput { }).(pulumi.StringPtrOutput) } -// Specifies the days since the initiation of an incomplete multipart upload that Amazon S3 will wait before permanently removing all parts of the upload. type BucketAbortIncompleteMultipartUpload struct { - // Specifies the number of days after which Amazon S3 aborts an incomplete multipart upload. DaysAfterInitiation int `pulumi:"daysAfterInitiation"` } @@ -433,9 +431,7 @@ type BucketAbortIncompleteMultipartUploadInput interface { ToBucketAbortIncompleteMultipartUploadOutputWithContext(context.Context) BucketAbortIncompleteMultipartUploadOutput } -// Specifies the days since the initiation of an incomplete multipart upload that Amazon S3 will wait before permanently removing all parts of the upload. type BucketAbortIncompleteMultipartUploadArgs struct { - // Specifies the number of days after which Amazon S3 aborts an incomplete multipart upload. DaysAfterInitiation pulumi.IntInput `pulumi:"daysAfterInitiation"` } @@ -504,7 +500,6 @@ func (i *bucketAbortIncompleteMultipartUploadPtrType) ToOutput(ctx context.Conte } } -// Specifies the days since the initiation of an incomplete multipart upload that Amazon S3 will wait before permanently removing all parts of the upload. type BucketAbortIncompleteMultipartUploadOutput struct{ *pulumi.OutputState } func (BucketAbortIncompleteMultipartUploadOutput) ElementType() reflect.Type { @@ -535,7 +530,6 @@ func (o BucketAbortIncompleteMultipartUploadOutput) ToOutput(ctx context.Context } } -// Specifies the number of days after which Amazon S3 aborts an incomplete multipart upload. func (o BucketAbortIncompleteMultipartUploadOutput) DaysAfterInitiation() pulumi.IntOutput { return o.ApplyT(func(v BucketAbortIncompleteMultipartUpload) int { return v.DaysAfterInitiation }).(pulumi.IntOutput) } @@ -570,7 +564,6 @@ func (o BucketAbortIncompleteMultipartUploadPtrOutput) Elem() BucketAbortIncompl }).(BucketAbortIncompleteMultipartUploadOutput) } -// Specifies the number of days after which Amazon S3 aborts an incomplete multipart upload. func (o BucketAbortIncompleteMultipartUploadPtrOutput) DaysAfterInitiation() pulumi.IntPtrOutput { return o.ApplyT(func(v *BucketAbortIncompleteMultipartUpload) *int { if v == nil { @@ -581,8 +574,7 @@ func (o BucketAbortIncompleteMultipartUploadPtrOutput) DaysAfterInitiation() pul } type BucketAccelerateConfiguration struct { - // Configures the transfer acceleration state for an Amazon S3 bucket. - AccelerationStatus BucketAccelerateConfigurationAccelerationStatus `pulumi:"accelerationStatus"` + AccelerationStatus string `pulumi:"accelerationStatus"` } // BucketAccelerateConfigurationInput is an input type that accepts BucketAccelerateConfigurationArgs and BucketAccelerateConfigurationOutput values. @@ -597,8 +589,7 @@ type BucketAccelerateConfigurationInput interface { } type BucketAccelerateConfigurationArgs struct { - // Configures the transfer acceleration state for an Amazon S3 bucket. - AccelerationStatus BucketAccelerateConfigurationAccelerationStatusInput `pulumi:"accelerationStatus"` + AccelerationStatus pulumi.StringInput `pulumi:"accelerationStatus"` } func (BucketAccelerateConfigurationArgs) ElementType() reflect.Type { @@ -696,11 +687,8 @@ func (o BucketAccelerateConfigurationOutput) ToOutput(ctx context.Context) pulum } } -// Configures the transfer acceleration state for an Amazon S3 bucket. -func (o BucketAccelerateConfigurationOutput) AccelerationStatus() BucketAccelerateConfigurationAccelerationStatusOutput { - return o.ApplyT(func(v BucketAccelerateConfiguration) BucketAccelerateConfigurationAccelerationStatus { - return v.AccelerationStatus - }).(BucketAccelerateConfigurationAccelerationStatusOutput) +func (o BucketAccelerateConfigurationOutput) AccelerationStatus() pulumi.StringOutput { + return o.ApplyT(func(v BucketAccelerateConfiguration) string { return v.AccelerationStatus }).(pulumi.StringOutput) } type BucketAccelerateConfigurationPtrOutput struct{ *pulumi.OutputState } @@ -733,17 +721,15 @@ func (o BucketAccelerateConfigurationPtrOutput) Elem() BucketAccelerateConfigura }).(BucketAccelerateConfigurationOutput) } -// Configures the transfer acceleration state for an Amazon S3 bucket. -func (o BucketAccelerateConfigurationPtrOutput) AccelerationStatus() BucketAccelerateConfigurationAccelerationStatusPtrOutput { - return o.ApplyT(func(v *BucketAccelerateConfiguration) *BucketAccelerateConfigurationAccelerationStatus { +func (o BucketAccelerateConfigurationPtrOutput) AccelerationStatus() pulumi.StringPtrOutput { + return o.ApplyT(func(v *BucketAccelerateConfiguration) *string { if v == nil { return nil } return &v.AccelerationStatus - }).(BucketAccelerateConfigurationAccelerationStatusPtrOutput) + }).(pulumi.StringPtrOutput) } -// Specify this only in a cross-account scenario (where source and destination bucket owners are not the same), and you want to change replica ownership to the AWS account that owns the destination bucket. If this is not specified in the replication configuration, the replicas are owned by same AWS account that owns the source object. type BucketAccessControlTranslation struct { Owner string `pulumi:"owner"` } @@ -759,7 +745,6 @@ type BucketAccessControlTranslationInput interface { ToBucketAccessControlTranslationOutputWithContext(context.Context) BucketAccessControlTranslationOutput } -// Specify this only in a cross-account scenario (where source and destination bucket owners are not the same), and you want to change replica ownership to the AWS account that owns the destination bucket. If this is not specified in the replication configuration, the replicas are owned by same AWS account that owns the source object. type BucketAccessControlTranslationArgs struct { Owner pulumi.StringInput `pulumi:"owner"` } @@ -829,7 +814,6 @@ func (i *bucketAccessControlTranslationPtrType) ToOutput(ctx context.Context) pu } } -// Specify this only in a cross-account scenario (where source and destination bucket owners are not the same), and you want to change replica ownership to the AWS account that owns the destination bucket. If this is not specified in the replication configuration, the replicas are owned by same AWS account that owns the source object. type BucketAccessControlTranslationOutput struct{ *pulumi.OutputState } func (BucketAccessControlTranslationOutput) ElementType() reflect.Type { @@ -903,11 +887,8 @@ func (o BucketAccessControlTranslationPtrOutput) Owner() pulumi.StringPtrOutput }).(pulumi.StringPtrOutput) } -// Specifies the configuration and any analyses for the analytics filter of an Amazon S3 bucket. type BucketAnalyticsConfiguration struct { - // The ID that identifies the analytics configuration. - Id string `pulumi:"id"` - // The prefix that an object must have to be included in the analytics results. + Id string `pulumi:"id"` Prefix *string `pulumi:"prefix"` StorageClassAnalysis BucketStorageClassAnalysis `pulumi:"storageClassAnalysis"` TagFilters []BucketTagFilter `pulumi:"tagFilters"` @@ -924,11 +905,8 @@ type BucketAnalyticsConfigurationInput interface { ToBucketAnalyticsConfigurationOutputWithContext(context.Context) BucketAnalyticsConfigurationOutput } -// Specifies the configuration and any analyses for the analytics filter of an Amazon S3 bucket. type BucketAnalyticsConfigurationArgs struct { - // The ID that identifies the analytics configuration. - Id pulumi.StringInput `pulumi:"id"` - // The prefix that an object must have to be included in the analytics results. + Id pulumi.StringInput `pulumi:"id"` Prefix pulumi.StringPtrInput `pulumi:"prefix"` StorageClassAnalysis BucketStorageClassAnalysisInput `pulumi:"storageClassAnalysis"` TagFilters BucketTagFilterArrayInput `pulumi:"tagFilters"` @@ -983,7 +961,6 @@ func (i BucketAnalyticsConfigurationArray) ToOutput(ctx context.Context) pulumix } } -// Specifies the configuration and any analyses for the analytics filter of an Amazon S3 bucket. type BucketAnalyticsConfigurationOutput struct{ *pulumi.OutputState } func (BucketAnalyticsConfigurationOutput) ElementType() reflect.Type { @@ -1004,12 +981,10 @@ func (o BucketAnalyticsConfigurationOutput) ToOutput(ctx context.Context) pulumi } } -// The ID that identifies the analytics configuration. func (o BucketAnalyticsConfigurationOutput) Id() pulumi.StringOutput { return o.ApplyT(func(v BucketAnalyticsConfiguration) string { return v.Id }).(pulumi.StringOutput) } -// The prefix that an object must have to be included in the analytics results. func (o BucketAnalyticsConfigurationOutput) Prefix() pulumi.StringPtrOutput { return o.ApplyT(func(v BucketAnalyticsConfiguration) *string { return v.Prefix }).(pulumi.StringPtrOutput) } @@ -1205,20 +1180,13 @@ func (o BucketCorsConfigurationPtrOutput) CorsRules() BucketCorsRuleArrayOutput }).(BucketCorsRuleArrayOutput) } -// A set of origins and methods (cross-origin access that you want to allow). You can add up to 100 rules to the configuration. type BucketCorsRule struct { - // Headers that are specified in the Access-Control-Request-Headers header. AllowedHeaders []string `pulumi:"allowedHeaders"` - // An HTTP method that you allow the origin to execute. - AllowedMethods []BucketCorsRuleAllowedMethodsItem `pulumi:"allowedMethods"` - // One or more origins you want customers to be able to access the bucket from. + AllowedMethods []string `pulumi:"allowedMethods"` AllowedOrigins []string `pulumi:"allowedOrigins"` - // One or more headers in the response that you want customers to be able to access from their applications (for example, from a JavaScript XMLHttpRequest object). ExposedHeaders []string `pulumi:"exposedHeaders"` - // A unique identifier for this rule. - Id *string `pulumi:"id"` - // The time in seconds that your browser is to cache the preflight response for the specified resource. - MaxAge *int `pulumi:"maxAge"` + Id *string `pulumi:"id"` + MaxAge *int `pulumi:"maxAge"` } // BucketCorsRuleInput is an input type that accepts BucketCorsRuleArgs and BucketCorsRuleOutput values. @@ -1232,20 +1200,13 @@ type BucketCorsRuleInput interface { ToBucketCorsRuleOutputWithContext(context.Context) BucketCorsRuleOutput } -// A set of origins and methods (cross-origin access that you want to allow). You can add up to 100 rules to the configuration. type BucketCorsRuleArgs struct { - // Headers that are specified in the Access-Control-Request-Headers header. AllowedHeaders pulumi.StringArrayInput `pulumi:"allowedHeaders"` - // An HTTP method that you allow the origin to execute. - AllowedMethods BucketCorsRuleAllowedMethodsItemArrayInput `pulumi:"allowedMethods"` - // One or more origins you want customers to be able to access the bucket from. + AllowedMethods pulumi.StringArrayInput `pulumi:"allowedMethods"` AllowedOrigins pulumi.StringArrayInput `pulumi:"allowedOrigins"` - // One or more headers in the response that you want customers to be able to access from their applications (for example, from a JavaScript XMLHttpRequest object). ExposedHeaders pulumi.StringArrayInput `pulumi:"exposedHeaders"` - // A unique identifier for this rule. - Id pulumi.StringPtrInput `pulumi:"id"` - // The time in seconds that your browser is to cache the preflight response for the specified resource. - MaxAge pulumi.IntPtrInput `pulumi:"maxAge"` + Id pulumi.StringPtrInput `pulumi:"id"` + MaxAge pulumi.IntPtrInput `pulumi:"maxAge"` } func (BucketCorsRuleArgs) ElementType() reflect.Type { @@ -1297,7 +1258,6 @@ func (i BucketCorsRuleArray) ToOutput(ctx context.Context) pulumix.Output[[]Buck } } -// A set of origins and methods (cross-origin access that you want to allow). You can add up to 100 rules to the configuration. type BucketCorsRuleOutput struct{ *pulumi.OutputState } func (BucketCorsRuleOutput) ElementType() reflect.Type { @@ -1318,32 +1278,26 @@ func (o BucketCorsRuleOutput) ToOutput(ctx context.Context) pulumix.Output[Bucke } } -// Headers that are specified in the Access-Control-Request-Headers header. func (o BucketCorsRuleOutput) AllowedHeaders() pulumi.StringArrayOutput { return o.ApplyT(func(v BucketCorsRule) []string { return v.AllowedHeaders }).(pulumi.StringArrayOutput) } -// An HTTP method that you allow the origin to execute. -func (o BucketCorsRuleOutput) AllowedMethods() BucketCorsRuleAllowedMethodsItemArrayOutput { - return o.ApplyT(func(v BucketCorsRule) []BucketCorsRuleAllowedMethodsItem { return v.AllowedMethods }).(BucketCorsRuleAllowedMethodsItemArrayOutput) +func (o BucketCorsRuleOutput) AllowedMethods() pulumi.StringArrayOutput { + return o.ApplyT(func(v BucketCorsRule) []string { return v.AllowedMethods }).(pulumi.StringArrayOutput) } -// One or more origins you want customers to be able to access the bucket from. func (o BucketCorsRuleOutput) AllowedOrigins() pulumi.StringArrayOutput { return o.ApplyT(func(v BucketCorsRule) []string { return v.AllowedOrigins }).(pulumi.StringArrayOutput) } -// One or more headers in the response that you want customers to be able to access from their applications (for example, from a JavaScript XMLHttpRequest object). func (o BucketCorsRuleOutput) ExposedHeaders() pulumi.StringArrayOutput { return o.ApplyT(func(v BucketCorsRule) []string { return v.ExposedHeaders }).(pulumi.StringArrayOutput) } -// A unique identifier for this rule. func (o BucketCorsRuleOutput) Id() pulumi.StringPtrOutput { return o.ApplyT(func(v BucketCorsRule) *string { return v.Id }).(pulumi.StringPtrOutput) } -// The time in seconds that your browser is to cache the preflight response for the specified resource. func (o BucketCorsRuleOutput) MaxAge() pulumi.IntPtrOutput { return o.ApplyT(func(v BucketCorsRule) *int { return v.MaxAge }).(pulumi.IntPtrOutput) } @@ -1374,11 +1328,9 @@ func (o BucketCorsRuleArrayOutput) Index(i pulumi.IntInput) BucketCorsRuleOutput }).(BucketCorsRuleOutput) } -// Specifies how data related to the storage class analysis for an Amazon S3 bucket should be exported. type BucketDataExport struct { - Destination BucketDestination `pulumi:"destination"` - // The version of the output schema to use when exporting data. - OutputSchemaVersion string `pulumi:"outputSchemaVersion"` + Destination BucketDestination `pulumi:"destination"` + OutputSchemaVersion string `pulumi:"outputSchemaVersion"` } // BucketDataExportInput is an input type that accepts BucketDataExportArgs and BucketDataExportOutput values. @@ -1392,11 +1344,9 @@ type BucketDataExportInput interface { ToBucketDataExportOutputWithContext(context.Context) BucketDataExportOutput } -// Specifies how data related to the storage class analysis for an Amazon S3 bucket should be exported. type BucketDataExportArgs struct { - Destination BucketDestinationInput `pulumi:"destination"` - // The version of the output schema to use when exporting data. - OutputSchemaVersion pulumi.StringInput `pulumi:"outputSchemaVersion"` + Destination BucketDestinationInput `pulumi:"destination"` + OutputSchemaVersion pulumi.StringInput `pulumi:"outputSchemaVersion"` } func (BucketDataExportArgs) ElementType() reflect.Type { @@ -1464,7 +1414,6 @@ func (i *bucketDataExportPtrType) ToOutput(ctx context.Context) pulumix.Output[* } } -// Specifies how data related to the storage class analysis for an Amazon S3 bucket should be exported. type BucketDataExportOutput struct{ *pulumi.OutputState } func (BucketDataExportOutput) ElementType() reflect.Type { @@ -1499,7 +1448,6 @@ func (o BucketDataExportOutput) Destination() BucketDestinationOutput { return o.ApplyT(func(v BucketDataExport) BucketDestination { return v.Destination }).(BucketDestinationOutput) } -// The version of the output schema to use when exporting data. func (o BucketDataExportOutput) OutputSchemaVersion() pulumi.StringOutput { return o.ApplyT(func(v BucketDataExport) string { return v.OutputSchemaVersion }).(pulumi.StringOutput) } @@ -1543,7 +1491,6 @@ func (o BucketDataExportPtrOutput) Destination() BucketDestinationPtrOutput { }).(BucketDestinationPtrOutput) } -// The version of the output schema to use when exporting data. func (o BucketDataExportPtrOutput) OutputSchemaVersion() pulumi.StringPtrOutput { return o.ApplyT(func(v *BucketDataExport) *string { if v == nil { @@ -1553,11 +1500,10 @@ func (o BucketDataExportPtrOutput) OutputSchemaVersion() pulumi.StringPtrOutput }).(pulumi.StringPtrOutput) } -// The default retention period that you want to apply to new objects placed in the specified bucket. type BucketDefaultRetention struct { - Days *int `pulumi:"days"` - Mode *BucketDefaultRetentionMode `pulumi:"mode"` - Years *int `pulumi:"years"` + Days *int `pulumi:"days"` + Mode *string `pulumi:"mode"` + Years *int `pulumi:"years"` } // BucketDefaultRetentionInput is an input type that accepts BucketDefaultRetentionArgs and BucketDefaultRetentionOutput values. @@ -1571,11 +1517,10 @@ type BucketDefaultRetentionInput interface { ToBucketDefaultRetentionOutputWithContext(context.Context) BucketDefaultRetentionOutput } -// The default retention period that you want to apply to new objects placed in the specified bucket. type BucketDefaultRetentionArgs struct { - Days pulumi.IntPtrInput `pulumi:"days"` - Mode BucketDefaultRetentionModePtrInput `pulumi:"mode"` - Years pulumi.IntPtrInput `pulumi:"years"` + Days pulumi.IntPtrInput `pulumi:"days"` + Mode pulumi.StringPtrInput `pulumi:"mode"` + Years pulumi.IntPtrInput `pulumi:"years"` } func (BucketDefaultRetentionArgs) ElementType() reflect.Type { @@ -1643,7 +1588,6 @@ func (i *bucketDefaultRetentionPtrType) ToOutput(ctx context.Context) pulumix.Ou } } -// The default retention period that you want to apply to new objects placed in the specified bucket. type BucketDefaultRetentionOutput struct{ *pulumi.OutputState } func (BucketDefaultRetentionOutput) ElementType() reflect.Type { @@ -1678,8 +1622,8 @@ func (o BucketDefaultRetentionOutput) Days() pulumi.IntPtrOutput { return o.ApplyT(func(v BucketDefaultRetention) *int { return v.Days }).(pulumi.IntPtrOutput) } -func (o BucketDefaultRetentionOutput) Mode() BucketDefaultRetentionModePtrOutput { - return o.ApplyT(func(v BucketDefaultRetention) *BucketDefaultRetentionMode { return v.Mode }).(BucketDefaultRetentionModePtrOutput) +func (o BucketDefaultRetentionOutput) Mode() pulumi.StringPtrOutput { + return o.ApplyT(func(v BucketDefaultRetention) *string { return v.Mode }).(pulumi.StringPtrOutput) } func (o BucketDefaultRetentionOutput) Years() pulumi.IntPtrOutput { @@ -1725,13 +1669,13 @@ func (o BucketDefaultRetentionPtrOutput) Days() pulumi.IntPtrOutput { }).(pulumi.IntPtrOutput) } -func (o BucketDefaultRetentionPtrOutput) Mode() BucketDefaultRetentionModePtrOutput { - return o.ApplyT(func(v *BucketDefaultRetention) *BucketDefaultRetentionMode { +func (o BucketDefaultRetentionPtrOutput) Mode() pulumi.StringPtrOutput { + return o.ApplyT(func(v *BucketDefaultRetention) *string { if v == nil { return nil } return v.Mode - }).(BucketDefaultRetentionModePtrOutput) + }).(pulumi.StringPtrOutput) } func (o BucketDefaultRetentionPtrOutput) Years() pulumi.IntPtrOutput { @@ -1744,7 +1688,7 @@ func (o BucketDefaultRetentionPtrOutput) Years() pulumi.IntPtrOutput { } type BucketDeleteMarkerReplication struct { - Status *BucketDeleteMarkerReplicationStatus `pulumi:"status"` + Status *string `pulumi:"status"` } // BucketDeleteMarkerReplicationInput is an input type that accepts BucketDeleteMarkerReplicationArgs and BucketDeleteMarkerReplicationOutput values. @@ -1759,7 +1703,7 @@ type BucketDeleteMarkerReplicationInput interface { } type BucketDeleteMarkerReplicationArgs struct { - Status BucketDeleteMarkerReplicationStatusPtrInput `pulumi:"status"` + Status pulumi.StringPtrInput `pulumi:"status"` } func (BucketDeleteMarkerReplicationArgs) ElementType() reflect.Type { @@ -1857,8 +1801,8 @@ func (o BucketDeleteMarkerReplicationOutput) ToOutput(ctx context.Context) pulum } } -func (o BucketDeleteMarkerReplicationOutput) Status() BucketDeleteMarkerReplicationStatusPtrOutput { - return o.ApplyT(func(v BucketDeleteMarkerReplication) *BucketDeleteMarkerReplicationStatus { return v.Status }).(BucketDeleteMarkerReplicationStatusPtrOutput) +func (o BucketDeleteMarkerReplicationOutput) Status() pulumi.StringPtrOutput { + return o.ApplyT(func(v BucketDeleteMarkerReplication) *string { return v.Status }).(pulumi.StringPtrOutput) } type BucketDeleteMarkerReplicationPtrOutput struct{ *pulumi.OutputState } @@ -1891,25 +1835,20 @@ func (o BucketDeleteMarkerReplicationPtrOutput) Elem() BucketDeleteMarkerReplica }).(BucketDeleteMarkerReplicationOutput) } -func (o BucketDeleteMarkerReplicationPtrOutput) Status() BucketDeleteMarkerReplicationStatusPtrOutput { - return o.ApplyT(func(v *BucketDeleteMarkerReplication) *BucketDeleteMarkerReplicationStatus { +func (o BucketDeleteMarkerReplicationPtrOutput) Status() pulumi.StringPtrOutput { + return o.ApplyT(func(v *BucketDeleteMarkerReplication) *string { if v == nil { return nil } return v.Status - }).(BucketDeleteMarkerReplicationStatusPtrOutput) + }).(pulumi.StringPtrOutput) } -// Specifies information about where to publish analysis or configuration results for an Amazon S3 bucket and S3 Replication Time Control (S3 RTC). type BucketDestination struct { - // The account ID that owns the destination S3 bucket. BucketAccountId *string `pulumi:"bucketAccountId"` - // The Amazon Resource Name (ARN) of the bucket to which data is exported. - BucketArn string `pulumi:"bucketArn"` - // Specifies the file format used when exporting data to Amazon S3. - Format BucketDestinationFormat `pulumi:"format"` - // The prefix to use when exporting data. The prefix is prepended to all results. - Prefix *string `pulumi:"prefix"` + BucketArn string `pulumi:"bucketArn"` + Format string `pulumi:"format"` + Prefix *string `pulumi:"prefix"` } // BucketDestinationInput is an input type that accepts BucketDestinationArgs and BucketDestinationOutput values. @@ -1923,16 +1862,11 @@ type BucketDestinationInput interface { ToBucketDestinationOutputWithContext(context.Context) BucketDestinationOutput } -// Specifies information about where to publish analysis or configuration results for an Amazon S3 bucket and S3 Replication Time Control (S3 RTC). type BucketDestinationArgs struct { - // The account ID that owns the destination S3 bucket. BucketAccountId pulumi.StringPtrInput `pulumi:"bucketAccountId"` - // The Amazon Resource Name (ARN) of the bucket to which data is exported. - BucketArn pulumi.StringInput `pulumi:"bucketArn"` - // Specifies the file format used when exporting data to Amazon S3. - Format BucketDestinationFormatInput `pulumi:"format"` - // The prefix to use when exporting data. The prefix is prepended to all results. - Prefix pulumi.StringPtrInput `pulumi:"prefix"` + BucketArn pulumi.StringInput `pulumi:"bucketArn"` + Format pulumi.StringInput `pulumi:"format"` + Prefix pulumi.StringPtrInput `pulumi:"prefix"` } func (BucketDestinationArgs) ElementType() reflect.Type { @@ -2000,7 +1934,6 @@ func (i *bucketDestinationPtrType) ToOutput(ctx context.Context) pulumix.Output[ } } -// Specifies information about where to publish analysis or configuration results for an Amazon S3 bucket and S3 Replication Time Control (S3 RTC). type BucketDestinationOutput struct{ *pulumi.OutputState } func (BucketDestinationOutput) ElementType() reflect.Type { @@ -2031,22 +1964,18 @@ func (o BucketDestinationOutput) ToOutput(ctx context.Context) pulumix.Output[Bu } } -// The account ID that owns the destination S3 bucket. func (o BucketDestinationOutput) BucketAccountId() pulumi.StringPtrOutput { return o.ApplyT(func(v BucketDestination) *string { return v.BucketAccountId }).(pulumi.StringPtrOutput) } -// The Amazon Resource Name (ARN) of the bucket to which data is exported. func (o BucketDestinationOutput) BucketArn() pulumi.StringOutput { return o.ApplyT(func(v BucketDestination) string { return v.BucketArn }).(pulumi.StringOutput) } -// Specifies the file format used when exporting data to Amazon S3. -func (o BucketDestinationOutput) Format() BucketDestinationFormatOutput { - return o.ApplyT(func(v BucketDestination) BucketDestinationFormat { return v.Format }).(BucketDestinationFormatOutput) +func (o BucketDestinationOutput) Format() pulumi.StringOutput { + return o.ApplyT(func(v BucketDestination) string { return v.Format }).(pulumi.StringOutput) } -// The prefix to use when exporting data. The prefix is prepended to all results. func (o BucketDestinationOutput) Prefix() pulumi.StringPtrOutput { return o.ApplyT(func(v BucketDestination) *string { return v.Prefix }).(pulumi.StringPtrOutput) } @@ -2081,7 +2010,6 @@ func (o BucketDestinationPtrOutput) Elem() BucketDestinationOutput { }).(BucketDestinationOutput) } -// The account ID that owns the destination S3 bucket. func (o BucketDestinationPtrOutput) BucketAccountId() pulumi.StringPtrOutput { return o.ApplyT(func(v *BucketDestination) *string { if v == nil { @@ -2091,7 +2019,6 @@ func (o BucketDestinationPtrOutput) BucketAccountId() pulumi.StringPtrOutput { }).(pulumi.StringPtrOutput) } -// The Amazon Resource Name (ARN) of the bucket to which data is exported. func (o BucketDestinationPtrOutput) BucketArn() pulumi.StringPtrOutput { return o.ApplyT(func(v *BucketDestination) *string { if v == nil { @@ -2101,17 +2028,15 @@ func (o BucketDestinationPtrOutput) BucketArn() pulumi.StringPtrOutput { }).(pulumi.StringPtrOutput) } -// Specifies the file format used when exporting data to Amazon S3. -func (o BucketDestinationPtrOutput) Format() BucketDestinationFormatPtrOutput { - return o.ApplyT(func(v *BucketDestination) *BucketDestinationFormat { +func (o BucketDestinationPtrOutput) Format() pulumi.StringPtrOutput { + return o.ApplyT(func(v *BucketDestination) *string { if v == nil { return nil } return &v.Format - }).(BucketDestinationFormatPtrOutput) + }).(pulumi.StringPtrOutput) } -// The prefix to use when exporting data. The prefix is prepended to all results. func (o BucketDestinationPtrOutput) Prefix() pulumi.StringPtrOutput { return o.ApplyT(func(v *BucketDestination) *string { if v == nil { @@ -2121,9 +2046,7 @@ func (o BucketDestinationPtrOutput) Prefix() pulumi.StringPtrOutput { }).(pulumi.StringPtrOutput) } -// Specifies default encryption for a bucket using server-side encryption with either Amazon S3-managed keys (SSE-S3) or AWS KMS-managed keys (SSE-KMS). type BucketEncryption struct { - // Specifies the default server-side-encryption configuration. ServerSideEncryptionConfiguration []BucketServerSideEncryptionRule `pulumi:"serverSideEncryptionConfiguration"` } @@ -2138,9 +2061,7 @@ type BucketEncryptionInput interface { ToBucketEncryptionOutputWithContext(context.Context) BucketEncryptionOutput } -// Specifies default encryption for a bucket using server-side encryption with either Amazon S3-managed keys (SSE-S3) or AWS KMS-managed keys (SSE-KMS). type BucketEncryptionArgs struct { - // Specifies the default server-side-encryption configuration. ServerSideEncryptionConfiguration BucketServerSideEncryptionRuleArrayInput `pulumi:"serverSideEncryptionConfiguration"` } @@ -2209,7 +2130,6 @@ func (i *bucketEncryptionPtrType) ToOutput(ctx context.Context) pulumix.Output[* } } -// Specifies default encryption for a bucket using server-side encryption with either Amazon S3-managed keys (SSE-S3) or AWS KMS-managed keys (SSE-KMS). type BucketEncryptionOutput struct{ *pulumi.OutputState } func (BucketEncryptionOutput) ElementType() reflect.Type { @@ -2240,7 +2160,6 @@ func (o BucketEncryptionOutput) ToOutput(ctx context.Context) pulumix.Output[Buc } } -// Specifies the default server-side-encryption configuration. func (o BucketEncryptionOutput) ServerSideEncryptionConfiguration() BucketServerSideEncryptionRuleArrayOutput { return o.ApplyT(func(v BucketEncryption) []BucketServerSideEncryptionRule { return v.ServerSideEncryptionConfiguration }).(BucketServerSideEncryptionRuleArrayOutput) } @@ -2275,7 +2194,6 @@ func (o BucketEncryptionPtrOutput) Elem() BucketEncryptionOutput { }).(BucketEncryptionOutput) } -// Specifies the default server-side-encryption configuration. func (o BucketEncryptionPtrOutput) ServerSideEncryptionConfiguration() BucketServerSideEncryptionRuleArrayOutput { return o.ApplyT(func(v *BucketEncryption) []BucketServerSideEncryptionRule { if v == nil { @@ -2285,9 +2203,7 @@ func (o BucketEncryptionPtrOutput) ServerSideEncryptionConfiguration() BucketSer }).(BucketServerSideEncryptionRuleArrayOutput) } -// Specifies encryption-related information for an Amazon S3 bucket that is a destination for replicated objects. type BucketEncryptionConfiguration struct { - // Specifies the ID (Key ARN or Alias ARN) of the customer managed customer master key (CMK) stored in AWS Key Management Service (KMS) for the destination bucket. ReplicaKmsKeyId string `pulumi:"replicaKmsKeyId"` } @@ -2302,9 +2218,7 @@ type BucketEncryptionConfigurationInput interface { ToBucketEncryptionConfigurationOutputWithContext(context.Context) BucketEncryptionConfigurationOutput } -// Specifies encryption-related information for an Amazon S3 bucket that is a destination for replicated objects. type BucketEncryptionConfigurationArgs struct { - // Specifies the ID (Key ARN or Alias ARN) of the customer managed customer master key (CMK) stored in AWS Key Management Service (KMS) for the destination bucket. ReplicaKmsKeyId pulumi.StringInput `pulumi:"replicaKmsKeyId"` } @@ -2373,7 +2287,6 @@ func (i *bucketEncryptionConfigurationPtrType) ToOutput(ctx context.Context) pul } } -// Specifies encryption-related information for an Amazon S3 bucket that is a destination for replicated objects. type BucketEncryptionConfigurationOutput struct{ *pulumi.OutputState } func (BucketEncryptionConfigurationOutput) ElementType() reflect.Type { @@ -2404,7 +2317,6 @@ func (o BucketEncryptionConfigurationOutput) ToOutput(ctx context.Context) pulum } } -// Specifies the ID (Key ARN or Alias ARN) of the customer managed customer master key (CMK) stored in AWS Key Management Service (KMS) for the destination bucket. func (o BucketEncryptionConfigurationOutput) ReplicaKmsKeyId() pulumi.StringOutput { return o.ApplyT(func(v BucketEncryptionConfiguration) string { return v.ReplicaKmsKeyId }).(pulumi.StringOutput) } @@ -2439,7 +2351,6 @@ func (o BucketEncryptionConfigurationPtrOutput) Elem() BucketEncryptionConfigura }).(BucketEncryptionConfigurationOutput) } -// Specifies the ID (Key ARN or Alias ARN) of the customer managed customer master key (CMK) stored in AWS Key Management Service (KMS) for the destination bucket. func (o BucketEncryptionConfigurationPtrOutput) ReplicaKmsKeyId() pulumi.StringPtrOutput { return o.ApplyT(func(v *BucketEncryptionConfiguration) *string { if v == nil { @@ -2449,10 +2360,8 @@ func (o BucketEncryptionConfigurationPtrOutput) ReplicaKmsKeyId() pulumi.StringP }).(pulumi.StringPtrOutput) } -// Describes the Amazon EventBridge notification configuration for an Amazon S3 bucket. type BucketEventBridgeConfiguration struct { - // Specifies whether to send notifications to Amazon EventBridge when events occur in an Amazon S3 bucket. - EventBridgeEnabled bool `pulumi:"eventBridgeEnabled"` + EventBridgeEnabled *bool `pulumi:"eventBridgeEnabled"` } // BucketEventBridgeConfigurationInput is an input type that accepts BucketEventBridgeConfigurationArgs and BucketEventBridgeConfigurationOutput values. @@ -2466,10 +2375,8 @@ type BucketEventBridgeConfigurationInput interface { ToBucketEventBridgeConfigurationOutputWithContext(context.Context) BucketEventBridgeConfigurationOutput } -// Describes the Amazon EventBridge notification configuration for an Amazon S3 bucket. type BucketEventBridgeConfigurationArgs struct { - // Specifies whether to send notifications to Amazon EventBridge when events occur in an Amazon S3 bucket. - EventBridgeEnabled pulumi.BoolInput `pulumi:"eventBridgeEnabled"` + EventBridgeEnabled pulumi.BoolPtrInput `pulumi:"eventBridgeEnabled"` } func (BucketEventBridgeConfigurationArgs) ElementType() reflect.Type { @@ -2537,7 +2444,6 @@ func (i *bucketEventBridgeConfigurationPtrType) ToOutput(ctx context.Context) pu } } -// Describes the Amazon EventBridge notification configuration for an Amazon S3 bucket. type BucketEventBridgeConfigurationOutput struct{ *pulumi.OutputState } func (BucketEventBridgeConfigurationOutput) ElementType() reflect.Type { @@ -2568,9 +2474,8 @@ func (o BucketEventBridgeConfigurationOutput) ToOutput(ctx context.Context) pulu } } -// Specifies whether to send notifications to Amazon EventBridge when events occur in an Amazon S3 bucket. -func (o BucketEventBridgeConfigurationOutput) EventBridgeEnabled() pulumi.BoolOutput { - return o.ApplyT(func(v BucketEventBridgeConfiguration) bool { return v.EventBridgeEnabled }).(pulumi.BoolOutput) +func (o BucketEventBridgeConfigurationOutput) EventBridgeEnabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v BucketEventBridgeConfiguration) *bool { return v.EventBridgeEnabled }).(pulumi.BoolPtrOutput) } type BucketEventBridgeConfigurationPtrOutput struct{ *pulumi.OutputState } @@ -2603,17 +2508,15 @@ func (o BucketEventBridgeConfigurationPtrOutput) Elem() BucketEventBridgeConfigu }).(BucketEventBridgeConfigurationOutput) } -// Specifies whether to send notifications to Amazon EventBridge when events occur in an Amazon S3 bucket. func (o BucketEventBridgeConfigurationPtrOutput) EventBridgeEnabled() pulumi.BoolPtrOutput { return o.ApplyT(func(v *BucketEventBridgeConfiguration) *bool { if v == nil { return nil } - return &v.EventBridgeEnabled + return v.EventBridgeEnabled }).(pulumi.BoolPtrOutput) } -// Specifies the Amazon S3 object key name to filter on and whether to filter on the suffix or prefix of the key name. type BucketFilterRule struct { Name string `pulumi:"name"` Value string `pulumi:"value"` @@ -2630,7 +2533,6 @@ type BucketFilterRuleInput interface { ToBucketFilterRuleOutputWithContext(context.Context) BucketFilterRuleOutput } -// Specifies the Amazon S3 object key name to filter on and whether to filter on the suffix or prefix of the key name. type BucketFilterRuleArgs struct { Name pulumi.StringInput `pulumi:"name"` Value pulumi.StringInput `pulumi:"value"` @@ -2685,7 +2587,6 @@ func (i BucketFilterRuleArray) ToOutput(ctx context.Context) pulumix.Output[[]Bu } } -// Specifies the Amazon S3 object key name to filter on and whether to filter on the suffix or prefix of the key name. type BucketFilterRuleOutput struct{ *pulumi.OutputState } func (BucketFilterRuleOutput) ElementType() reflect.Type { @@ -2741,16 +2642,11 @@ func (o BucketFilterRuleArrayOutput) Index(i pulumi.IntInput) BucketFilterRuleOu } type BucketIntelligentTieringConfiguration struct { - // The ID used to identify the S3 Intelligent-Tiering configuration. - Id string `pulumi:"id"` - // An object key name prefix that identifies the subset of objects to which the rule applies. - Prefix *string `pulumi:"prefix"` - // Specifies the status of the configuration. - Status BucketIntelligentTieringConfigurationStatus `pulumi:"status"` - // A container for a key-value pair. + Id string `pulumi:"id"` + Prefix *string `pulumi:"prefix"` + Status string `pulumi:"status"` TagFilters []BucketTagFilter `pulumi:"tagFilters"` - // Specifies a list of S3 Intelligent-Tiering storage class tiers in the configuration. At least one tier must be defined in the list. At most, you can specify two tiers in the list, one for each available AccessTier: ARCHIVE_ACCESS and DEEP_ARCHIVE_ACCESS. - Tierings []BucketTiering `pulumi:"tierings"` + Tierings []BucketTiering `pulumi:"tierings"` } // BucketIntelligentTieringConfigurationInput is an input type that accepts BucketIntelligentTieringConfigurationArgs and BucketIntelligentTieringConfigurationOutput values. @@ -2765,16 +2661,11 @@ type BucketIntelligentTieringConfigurationInput interface { } type BucketIntelligentTieringConfigurationArgs struct { - // The ID used to identify the S3 Intelligent-Tiering configuration. - Id pulumi.StringInput `pulumi:"id"` - // An object key name prefix that identifies the subset of objects to which the rule applies. - Prefix pulumi.StringPtrInput `pulumi:"prefix"` - // Specifies the status of the configuration. - Status BucketIntelligentTieringConfigurationStatusInput `pulumi:"status"` - // A container for a key-value pair. + Id pulumi.StringInput `pulumi:"id"` + Prefix pulumi.StringPtrInput `pulumi:"prefix"` + Status pulumi.StringInput `pulumi:"status"` TagFilters BucketTagFilterArrayInput `pulumi:"tagFilters"` - // Specifies a list of S3 Intelligent-Tiering storage class tiers in the configuration. At least one tier must be defined in the list. At most, you can specify two tiers in the list, one for each available AccessTier: ARCHIVE_ACCESS and DEEP_ARCHIVE_ACCESS. - Tierings BucketTieringArrayInput `pulumi:"tierings"` + Tierings BucketTieringArrayInput `pulumi:"tierings"` } func (BucketIntelligentTieringConfigurationArgs) ElementType() reflect.Type { @@ -2846,29 +2737,22 @@ func (o BucketIntelligentTieringConfigurationOutput) ToOutput(ctx context.Contex } } -// The ID used to identify the S3 Intelligent-Tiering configuration. func (o BucketIntelligentTieringConfigurationOutput) Id() pulumi.StringOutput { return o.ApplyT(func(v BucketIntelligentTieringConfiguration) string { return v.Id }).(pulumi.StringOutput) } -// An object key name prefix that identifies the subset of objects to which the rule applies. func (o BucketIntelligentTieringConfigurationOutput) Prefix() pulumi.StringPtrOutput { return o.ApplyT(func(v BucketIntelligentTieringConfiguration) *string { return v.Prefix }).(pulumi.StringPtrOutput) } -// Specifies the status of the configuration. -func (o BucketIntelligentTieringConfigurationOutput) Status() BucketIntelligentTieringConfigurationStatusOutput { - return o.ApplyT(func(v BucketIntelligentTieringConfiguration) BucketIntelligentTieringConfigurationStatus { - return v.Status - }).(BucketIntelligentTieringConfigurationStatusOutput) +func (o BucketIntelligentTieringConfigurationOutput) Status() pulumi.StringOutput { + return o.ApplyT(func(v BucketIntelligentTieringConfiguration) string { return v.Status }).(pulumi.StringOutput) } -// A container for a key-value pair. func (o BucketIntelligentTieringConfigurationOutput) TagFilters() BucketTagFilterArrayOutput { return o.ApplyT(func(v BucketIntelligentTieringConfiguration) []BucketTagFilter { return v.TagFilters }).(BucketTagFilterArrayOutput) } -// Specifies a list of S3 Intelligent-Tiering storage class tiers in the configuration. At least one tier must be defined in the list. At most, you can specify two tiers in the list, one for each available AccessTier: ARCHIVE_ACCESS and DEEP_ARCHIVE_ACCESS. func (o BucketIntelligentTieringConfigurationOutput) Tierings() BucketTieringArrayOutput { return o.ApplyT(func(v BucketIntelligentTieringConfiguration) []BucketTiering { return v.Tierings }).(BucketTieringArrayOutput) } @@ -2900,19 +2784,13 @@ func (o BucketIntelligentTieringConfigurationArrayOutput) Index(i pulumi.IntInpu } type BucketInventoryConfiguration struct { - Destination BucketDestination `pulumi:"destination"` - // Specifies whether the inventory is enabled or disabled. - Enabled bool `pulumi:"enabled"` - // The ID used to identify the inventory configuration. - Id string `pulumi:"id"` - // Object versions to include in the inventory list. - IncludedObjectVersions BucketInventoryConfigurationIncludedObjectVersions `pulumi:"includedObjectVersions"` - // Contains the optional fields that are included in the inventory results. - OptionalFields []BucketInventoryConfigurationOptionalFieldsItem `pulumi:"optionalFields"` - // The prefix that is prepended to all inventory results. - Prefix *string `pulumi:"prefix"` - // Specifies the schedule for generating inventory results. - ScheduleFrequency BucketInventoryConfigurationScheduleFrequency `pulumi:"scheduleFrequency"` + Destination BucketDestination `pulumi:"destination"` + Enabled bool `pulumi:"enabled"` + Id string `pulumi:"id"` + IncludedObjectVersions string `pulumi:"includedObjectVersions"` + OptionalFields []string `pulumi:"optionalFields"` + Prefix *string `pulumi:"prefix"` + ScheduleFrequency string `pulumi:"scheduleFrequency"` } // BucketInventoryConfigurationInput is an input type that accepts BucketInventoryConfigurationArgs and BucketInventoryConfigurationOutput values. @@ -2927,19 +2805,13 @@ type BucketInventoryConfigurationInput interface { } type BucketInventoryConfigurationArgs struct { - Destination BucketDestinationInput `pulumi:"destination"` - // Specifies whether the inventory is enabled or disabled. - Enabled pulumi.BoolInput `pulumi:"enabled"` - // The ID used to identify the inventory configuration. - Id pulumi.StringInput `pulumi:"id"` - // Object versions to include in the inventory list. - IncludedObjectVersions BucketInventoryConfigurationIncludedObjectVersionsInput `pulumi:"includedObjectVersions"` - // Contains the optional fields that are included in the inventory results. - OptionalFields BucketInventoryConfigurationOptionalFieldsItemArrayInput `pulumi:"optionalFields"` - // The prefix that is prepended to all inventory results. - Prefix pulumi.StringPtrInput `pulumi:"prefix"` - // Specifies the schedule for generating inventory results. - ScheduleFrequency BucketInventoryConfigurationScheduleFrequencyInput `pulumi:"scheduleFrequency"` + Destination BucketDestinationInput `pulumi:"destination"` + Enabled pulumi.BoolInput `pulumi:"enabled"` + Id pulumi.StringInput `pulumi:"id"` + IncludedObjectVersions pulumi.StringInput `pulumi:"includedObjectVersions"` + OptionalFields pulumi.StringArrayInput `pulumi:"optionalFields"` + Prefix pulumi.StringPtrInput `pulumi:"prefix"` + ScheduleFrequency pulumi.StringInput `pulumi:"scheduleFrequency"` } func (BucketInventoryConfigurationArgs) ElementType() reflect.Type { @@ -3015,40 +2887,28 @@ func (o BucketInventoryConfigurationOutput) Destination() BucketDestinationOutpu return o.ApplyT(func(v BucketInventoryConfiguration) BucketDestination { return v.Destination }).(BucketDestinationOutput) } -// Specifies whether the inventory is enabled or disabled. func (o BucketInventoryConfigurationOutput) Enabled() pulumi.BoolOutput { return o.ApplyT(func(v BucketInventoryConfiguration) bool { return v.Enabled }).(pulumi.BoolOutput) } -// The ID used to identify the inventory configuration. func (o BucketInventoryConfigurationOutput) Id() pulumi.StringOutput { return o.ApplyT(func(v BucketInventoryConfiguration) string { return v.Id }).(pulumi.StringOutput) } -// Object versions to include in the inventory list. -func (o BucketInventoryConfigurationOutput) IncludedObjectVersions() BucketInventoryConfigurationIncludedObjectVersionsOutput { - return o.ApplyT(func(v BucketInventoryConfiguration) BucketInventoryConfigurationIncludedObjectVersions { - return v.IncludedObjectVersions - }).(BucketInventoryConfigurationIncludedObjectVersionsOutput) +func (o BucketInventoryConfigurationOutput) IncludedObjectVersions() pulumi.StringOutput { + return o.ApplyT(func(v BucketInventoryConfiguration) string { return v.IncludedObjectVersions }).(pulumi.StringOutput) } -// Contains the optional fields that are included in the inventory results. -func (o BucketInventoryConfigurationOutput) OptionalFields() BucketInventoryConfigurationOptionalFieldsItemArrayOutput { - return o.ApplyT(func(v BucketInventoryConfiguration) []BucketInventoryConfigurationOptionalFieldsItem { - return v.OptionalFields - }).(BucketInventoryConfigurationOptionalFieldsItemArrayOutput) +func (o BucketInventoryConfigurationOutput) OptionalFields() pulumi.StringArrayOutput { + return o.ApplyT(func(v BucketInventoryConfiguration) []string { return v.OptionalFields }).(pulumi.StringArrayOutput) } -// The prefix that is prepended to all inventory results. func (o BucketInventoryConfigurationOutput) Prefix() pulumi.StringPtrOutput { return o.ApplyT(func(v BucketInventoryConfiguration) *string { return v.Prefix }).(pulumi.StringPtrOutput) } -// Specifies the schedule for generating inventory results. -func (o BucketInventoryConfigurationOutput) ScheduleFrequency() BucketInventoryConfigurationScheduleFrequencyOutput { - return o.ApplyT(func(v BucketInventoryConfiguration) BucketInventoryConfigurationScheduleFrequency { - return v.ScheduleFrequency - }).(BucketInventoryConfigurationScheduleFrequencyOutput) +func (o BucketInventoryConfigurationOutput) ScheduleFrequency() pulumi.StringOutput { + return o.ApplyT(func(v BucketInventoryConfiguration) string { return v.ScheduleFrequency }).(pulumi.StringOutput) } type BucketInventoryConfigurationArrayOutput struct{ *pulumi.OutputState } @@ -3077,14 +2937,10 @@ func (o BucketInventoryConfigurationArrayOutput) Index(i pulumi.IntInput) Bucket }).(BucketInventoryConfigurationOutput) } -// Describes the AWS Lambda functions to invoke and the events for which to invoke them. type BucketLambdaConfiguration struct { - // The Amazon S3 bucket event for which to invoke the AWS Lambda function. - Event string `pulumi:"event"` - // The filtering rules that determine which objects invoke the AWS Lambda function. - Filter *BucketNotificationFilter `pulumi:"filter"` - // The Amazon Resource Name (ARN) of the AWS Lambda function that Amazon S3 invokes when the specified event type occurs. - Function string `pulumi:"function"` + Event string `pulumi:"event"` + Filter *BucketNotificationFilter `pulumi:"filter"` + Function string `pulumi:"function"` } // BucketLambdaConfigurationInput is an input type that accepts BucketLambdaConfigurationArgs and BucketLambdaConfigurationOutput values. @@ -3098,14 +2954,10 @@ type BucketLambdaConfigurationInput interface { ToBucketLambdaConfigurationOutputWithContext(context.Context) BucketLambdaConfigurationOutput } -// Describes the AWS Lambda functions to invoke and the events for which to invoke them. type BucketLambdaConfigurationArgs struct { - // The Amazon S3 bucket event for which to invoke the AWS Lambda function. - Event pulumi.StringInput `pulumi:"event"` - // The filtering rules that determine which objects invoke the AWS Lambda function. - Filter BucketNotificationFilterPtrInput `pulumi:"filter"` - // The Amazon Resource Name (ARN) of the AWS Lambda function that Amazon S3 invokes when the specified event type occurs. - Function pulumi.StringInput `pulumi:"function"` + Event pulumi.StringInput `pulumi:"event"` + Filter BucketNotificationFilterPtrInput `pulumi:"filter"` + Function pulumi.StringInput `pulumi:"function"` } func (BucketLambdaConfigurationArgs) ElementType() reflect.Type { @@ -3157,7 +3009,6 @@ func (i BucketLambdaConfigurationArray) ToOutput(ctx context.Context) pulumix.Ou } } -// Describes the AWS Lambda functions to invoke and the events for which to invoke them. type BucketLambdaConfigurationOutput struct{ *pulumi.OutputState } func (BucketLambdaConfigurationOutput) ElementType() reflect.Type { @@ -3178,17 +3029,14 @@ func (o BucketLambdaConfigurationOutput) ToOutput(ctx context.Context) pulumix.O } } -// The Amazon S3 bucket event for which to invoke the AWS Lambda function. func (o BucketLambdaConfigurationOutput) Event() pulumi.StringOutput { return o.ApplyT(func(v BucketLambdaConfiguration) string { return v.Event }).(pulumi.StringOutput) } -// The filtering rules that determine which objects invoke the AWS Lambda function. func (o BucketLambdaConfigurationOutput) Filter() BucketNotificationFilterPtrOutput { return o.ApplyT(func(v BucketLambdaConfiguration) *BucketNotificationFilter { return v.Filter }).(BucketNotificationFilterPtrOutput) } -// The Amazon Resource Name (ARN) of the AWS Lambda function that Amazon S3 invokes when the specified event type occurs. func (o BucketLambdaConfigurationOutput) Function() pulumi.StringOutput { return o.ApplyT(func(v BucketLambdaConfiguration) string { return v.Function }).(pulumi.StringOutput) } @@ -3220,7 +3068,6 @@ func (o BucketLambdaConfigurationArrayOutput) Index(i pulumi.IntInput) BucketLam } type BucketLifecycleConfiguration struct { - // A lifecycle rule for individual objects in an Amazon S3 bucket. Rules []BucketRule `pulumi:"rules"` } @@ -3236,7 +3083,6 @@ type BucketLifecycleConfigurationInput interface { } type BucketLifecycleConfigurationArgs struct { - // A lifecycle rule for individual objects in an Amazon S3 bucket. Rules BucketRuleArrayInput `pulumi:"rules"` } @@ -3335,7 +3181,6 @@ func (o BucketLifecycleConfigurationOutput) ToOutput(ctx context.Context) pulumi } } -// A lifecycle rule for individual objects in an Amazon S3 bucket. func (o BucketLifecycleConfigurationOutput) Rules() BucketRuleArrayOutput { return o.ApplyT(func(v BucketLifecycleConfiguration) []BucketRule { return v.Rules }).(BucketRuleArrayOutput) } @@ -3370,7 +3215,6 @@ func (o BucketLifecycleConfigurationPtrOutput) Elem() BucketLifecycleConfigurati }).(BucketLifecycleConfigurationOutput) } -// A lifecycle rule for individual objects in an Amazon S3 bucket. func (o BucketLifecycleConfigurationPtrOutput) Rules() BucketRuleArrayOutput { return o.ApplyT(func(v *BucketLifecycleConfiguration) []BucketRule { if v == nil { @@ -3381,7 +3225,6 @@ func (o BucketLifecycleConfigurationPtrOutput) Rules() BucketRuleArrayOutput { } type BucketLoggingConfiguration struct { - // The name of an Amazon S3 bucket where Amazon S3 store server access log files. You can store log files in any bucket that you own. By default, logs are stored in the bucket where the LoggingConfiguration property is defined. DestinationBucketName *string `pulumi:"destinationBucketName"` LogFilePrefix *string `pulumi:"logFilePrefix"` } @@ -3398,7 +3241,6 @@ type BucketLoggingConfigurationInput interface { } type BucketLoggingConfigurationArgs struct { - // The name of an Amazon S3 bucket where Amazon S3 store server access log files. You can store log files in any bucket that you own. By default, logs are stored in the bucket where the LoggingConfiguration property is defined. DestinationBucketName pulumi.StringPtrInput `pulumi:"destinationBucketName"` LogFilePrefix pulumi.StringPtrInput `pulumi:"logFilePrefix"` } @@ -3498,7 +3340,6 @@ func (o BucketLoggingConfigurationOutput) ToOutput(ctx context.Context) pulumix. } } -// The name of an Amazon S3 bucket where Amazon S3 store server access log files. You can store log files in any bucket that you own. By default, logs are stored in the bucket where the LoggingConfiguration property is defined. func (o BucketLoggingConfigurationOutput) DestinationBucketName() pulumi.StringPtrOutput { return o.ApplyT(func(v BucketLoggingConfiguration) *string { return v.DestinationBucketName }).(pulumi.StringPtrOutput) } @@ -3537,7 +3378,6 @@ func (o BucketLoggingConfigurationPtrOutput) Elem() BucketLoggingConfigurationOu }).(BucketLoggingConfigurationOutput) } -// The name of an Amazon S3 bucket where Amazon S3 store server access log files. You can store log files in any bucket that you own. By default, logs are stored in the bucket where the LoggingConfiguration property is defined. func (o BucketLoggingConfigurationPtrOutput) DestinationBucketName() pulumi.StringPtrOutput { return o.ApplyT(func(v *BucketLoggingConfiguration) *string { if v == nil { @@ -3558,7 +3398,7 @@ func (o BucketLoggingConfigurationPtrOutput) LogFilePrefix() pulumi.StringPtrOut type BucketMetrics struct { EventThreshold *BucketReplicationTimeValue `pulumi:"eventThreshold"` - Status BucketMetricsStatus `pulumi:"status"` + Status string `pulumi:"status"` } // BucketMetricsInput is an input type that accepts BucketMetricsArgs and BucketMetricsOutput values. @@ -3574,7 +3414,7 @@ type BucketMetricsInput interface { type BucketMetricsArgs struct { EventThreshold BucketReplicationTimeValuePtrInput `pulumi:"eventThreshold"` - Status BucketMetricsStatusInput `pulumi:"status"` + Status pulumi.StringInput `pulumi:"status"` } func (BucketMetricsArgs) ElementType() reflect.Type { @@ -3676,8 +3516,8 @@ func (o BucketMetricsOutput) EventThreshold() BucketReplicationTimeValuePtrOutpu return o.ApplyT(func(v BucketMetrics) *BucketReplicationTimeValue { return v.EventThreshold }).(BucketReplicationTimeValuePtrOutput) } -func (o BucketMetricsOutput) Status() BucketMetricsStatusOutput { - return o.ApplyT(func(v BucketMetrics) BucketMetricsStatus { return v.Status }).(BucketMetricsStatusOutput) +func (o BucketMetricsOutput) Status() pulumi.StringOutput { + return o.ApplyT(func(v BucketMetrics) string { return v.Status }).(pulumi.StringOutput) } type BucketMetricsPtrOutput struct{ *pulumi.OutputState } @@ -3719,13 +3559,13 @@ func (o BucketMetricsPtrOutput) EventThreshold() BucketReplicationTimeValuePtrOu }).(BucketReplicationTimeValuePtrOutput) } -func (o BucketMetricsPtrOutput) Status() BucketMetricsStatusPtrOutput { - return o.ApplyT(func(v *BucketMetrics) *BucketMetricsStatus { +func (o BucketMetricsPtrOutput) Status() pulumi.StringPtrOutput { + return o.ApplyT(func(v *BucketMetrics) *string { if v == nil { return nil } return &v.Status - }).(BucketMetricsStatusPtrOutput) + }).(pulumi.StringPtrOutput) } type BucketMetricsConfiguration struct { @@ -3864,12 +3704,9 @@ func (o BucketMetricsConfigurationArrayOutput) Index(i pulumi.IntInput) BucketMe }).(BucketMetricsConfigurationOutput) } -// Container for the expiration rule that describes when noncurrent objects are expired. If your bucket is versioning-enabled (or versioning is suspended), you can set this action to request that Amazon S3 expire noncurrent object versions at a specific period in the object's lifetime type BucketNoncurrentVersionExpiration struct { - // Specified the number of newer noncurrent and current versions that must exists before performing the associated action NewerNoncurrentVersions *int `pulumi:"newerNoncurrentVersions"` - // Specified the number of days an object is noncurrent before Amazon S3 can perform the associated action - NoncurrentDays int `pulumi:"noncurrentDays"` + NoncurrentDays int `pulumi:"noncurrentDays"` } // BucketNoncurrentVersionExpirationInput is an input type that accepts BucketNoncurrentVersionExpirationArgs and BucketNoncurrentVersionExpirationOutput values. @@ -3883,12 +3720,9 @@ type BucketNoncurrentVersionExpirationInput interface { ToBucketNoncurrentVersionExpirationOutputWithContext(context.Context) BucketNoncurrentVersionExpirationOutput } -// Container for the expiration rule that describes when noncurrent objects are expired. If your bucket is versioning-enabled (or versioning is suspended), you can set this action to request that Amazon S3 expire noncurrent object versions at a specific period in the object's lifetime type BucketNoncurrentVersionExpirationArgs struct { - // Specified the number of newer noncurrent and current versions that must exists before performing the associated action NewerNoncurrentVersions pulumi.IntPtrInput `pulumi:"newerNoncurrentVersions"` - // Specified the number of days an object is noncurrent before Amazon S3 can perform the associated action - NoncurrentDays pulumi.IntInput `pulumi:"noncurrentDays"` + NoncurrentDays pulumi.IntInput `pulumi:"noncurrentDays"` } func (BucketNoncurrentVersionExpirationArgs) ElementType() reflect.Type { @@ -3956,7 +3790,6 @@ func (i *bucketNoncurrentVersionExpirationPtrType) ToOutput(ctx context.Context) } } -// Container for the expiration rule that describes when noncurrent objects are expired. If your bucket is versioning-enabled (or versioning is suspended), you can set this action to request that Amazon S3 expire noncurrent object versions at a specific period in the object's lifetime type BucketNoncurrentVersionExpirationOutput struct{ *pulumi.OutputState } func (BucketNoncurrentVersionExpirationOutput) ElementType() reflect.Type { @@ -3987,12 +3820,10 @@ func (o BucketNoncurrentVersionExpirationOutput) ToOutput(ctx context.Context) p } } -// Specified the number of newer noncurrent and current versions that must exists before performing the associated action func (o BucketNoncurrentVersionExpirationOutput) NewerNoncurrentVersions() pulumi.IntPtrOutput { return o.ApplyT(func(v BucketNoncurrentVersionExpiration) *int { return v.NewerNoncurrentVersions }).(pulumi.IntPtrOutput) } -// Specified the number of days an object is noncurrent before Amazon S3 can perform the associated action func (o BucketNoncurrentVersionExpirationOutput) NoncurrentDays() pulumi.IntOutput { return o.ApplyT(func(v BucketNoncurrentVersionExpiration) int { return v.NoncurrentDays }).(pulumi.IntOutput) } @@ -4027,7 +3858,6 @@ func (o BucketNoncurrentVersionExpirationPtrOutput) Elem() BucketNoncurrentVersi }).(BucketNoncurrentVersionExpirationOutput) } -// Specified the number of newer noncurrent and current versions that must exists before performing the associated action func (o BucketNoncurrentVersionExpirationPtrOutput) NewerNoncurrentVersions() pulumi.IntPtrOutput { return o.ApplyT(func(v *BucketNoncurrentVersionExpiration) *int { if v == nil { @@ -4037,7 +3867,6 @@ func (o BucketNoncurrentVersionExpirationPtrOutput) NewerNoncurrentVersions() pu }).(pulumi.IntPtrOutput) } -// Specified the number of days an object is noncurrent before Amazon S3 can perform the associated action func (o BucketNoncurrentVersionExpirationPtrOutput) NoncurrentDays() pulumi.IntPtrOutput { return o.ApplyT(func(v *BucketNoncurrentVersionExpiration) *int { if v == nil { @@ -4047,14 +3876,10 @@ func (o BucketNoncurrentVersionExpirationPtrOutput) NoncurrentDays() pulumi.IntP }).(pulumi.IntPtrOutput) } -// Container for the transition rule that describes when noncurrent objects transition to the STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER_IR, GLACIER, or DEEP_ARCHIVE storage class. If your bucket is versioning-enabled (or versioning is suspended), you can set this action to request that Amazon S3 transition noncurrent object versions to the STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER_IR, GLACIER, or DEEP_ARCHIVE storage class at a specific period in the object's lifetime. type BucketNoncurrentVersionTransition struct { - // Specified the number of newer noncurrent and current versions that must exists before performing the associated action - NewerNoncurrentVersions *int `pulumi:"newerNoncurrentVersions"` - // The class of storage used to store the object. - StorageClass BucketNoncurrentVersionTransitionStorageClass `pulumi:"storageClass"` - // Specifies the number of days an object is noncurrent before Amazon S3 can perform the associated action. - TransitionInDays int `pulumi:"transitionInDays"` + NewerNoncurrentVersions *int `pulumi:"newerNoncurrentVersions"` + StorageClass string `pulumi:"storageClass"` + TransitionInDays int `pulumi:"transitionInDays"` } // BucketNoncurrentVersionTransitionInput is an input type that accepts BucketNoncurrentVersionTransitionArgs and BucketNoncurrentVersionTransitionOutput values. @@ -4068,14 +3893,10 @@ type BucketNoncurrentVersionTransitionInput interface { ToBucketNoncurrentVersionTransitionOutputWithContext(context.Context) BucketNoncurrentVersionTransitionOutput } -// Container for the transition rule that describes when noncurrent objects transition to the STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER_IR, GLACIER, or DEEP_ARCHIVE storage class. If your bucket is versioning-enabled (or versioning is suspended), you can set this action to request that Amazon S3 transition noncurrent object versions to the STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER_IR, GLACIER, or DEEP_ARCHIVE storage class at a specific period in the object's lifetime. type BucketNoncurrentVersionTransitionArgs struct { - // Specified the number of newer noncurrent and current versions that must exists before performing the associated action NewerNoncurrentVersions pulumi.IntPtrInput `pulumi:"newerNoncurrentVersions"` - // The class of storage used to store the object. - StorageClass BucketNoncurrentVersionTransitionStorageClassInput `pulumi:"storageClass"` - // Specifies the number of days an object is noncurrent before Amazon S3 can perform the associated action. - TransitionInDays pulumi.IntInput `pulumi:"transitionInDays"` + StorageClass pulumi.StringInput `pulumi:"storageClass"` + TransitionInDays pulumi.IntInput `pulumi:"transitionInDays"` } func (BucketNoncurrentVersionTransitionArgs) ElementType() reflect.Type { @@ -4174,7 +3995,6 @@ func (i BucketNoncurrentVersionTransitionArray) ToOutput(ctx context.Context) pu } } -// Container for the transition rule that describes when noncurrent objects transition to the STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER_IR, GLACIER, or DEEP_ARCHIVE storage class. If your bucket is versioning-enabled (or versioning is suspended), you can set this action to request that Amazon S3 transition noncurrent object versions to the STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER_IR, GLACIER, or DEEP_ARCHIVE storage class at a specific period in the object's lifetime. type BucketNoncurrentVersionTransitionOutput struct{ *pulumi.OutputState } func (BucketNoncurrentVersionTransitionOutput) ElementType() reflect.Type { @@ -4205,19 +4025,14 @@ func (o BucketNoncurrentVersionTransitionOutput) ToOutput(ctx context.Context) p } } -// Specified the number of newer noncurrent and current versions that must exists before performing the associated action func (o BucketNoncurrentVersionTransitionOutput) NewerNoncurrentVersions() pulumi.IntPtrOutput { return o.ApplyT(func(v BucketNoncurrentVersionTransition) *int { return v.NewerNoncurrentVersions }).(pulumi.IntPtrOutput) } -// The class of storage used to store the object. -func (o BucketNoncurrentVersionTransitionOutput) StorageClass() BucketNoncurrentVersionTransitionStorageClassOutput { - return o.ApplyT(func(v BucketNoncurrentVersionTransition) BucketNoncurrentVersionTransitionStorageClass { - return v.StorageClass - }).(BucketNoncurrentVersionTransitionStorageClassOutput) +func (o BucketNoncurrentVersionTransitionOutput) StorageClass() pulumi.StringOutput { + return o.ApplyT(func(v BucketNoncurrentVersionTransition) string { return v.StorageClass }).(pulumi.StringOutput) } -// Specifies the number of days an object is noncurrent before Amazon S3 can perform the associated action. func (o BucketNoncurrentVersionTransitionOutput) TransitionInDays() pulumi.IntOutput { return o.ApplyT(func(v BucketNoncurrentVersionTransition) int { return v.TransitionInDays }).(pulumi.IntOutput) } @@ -4252,7 +4067,6 @@ func (o BucketNoncurrentVersionTransitionPtrOutput) Elem() BucketNoncurrentVersi }).(BucketNoncurrentVersionTransitionOutput) } -// Specified the number of newer noncurrent and current versions that must exists before performing the associated action func (o BucketNoncurrentVersionTransitionPtrOutput) NewerNoncurrentVersions() pulumi.IntPtrOutput { return o.ApplyT(func(v *BucketNoncurrentVersionTransition) *int { if v == nil { @@ -4262,17 +4076,15 @@ func (o BucketNoncurrentVersionTransitionPtrOutput) NewerNoncurrentVersions() pu }).(pulumi.IntPtrOutput) } -// The class of storage used to store the object. -func (o BucketNoncurrentVersionTransitionPtrOutput) StorageClass() BucketNoncurrentVersionTransitionStorageClassPtrOutput { - return o.ApplyT(func(v *BucketNoncurrentVersionTransition) *BucketNoncurrentVersionTransitionStorageClass { +func (o BucketNoncurrentVersionTransitionPtrOutput) StorageClass() pulumi.StringPtrOutput { + return o.ApplyT(func(v *BucketNoncurrentVersionTransition) *string { if v == nil { return nil } return &v.StorageClass - }).(BucketNoncurrentVersionTransitionStorageClassPtrOutput) + }).(pulumi.StringPtrOutput) } -// Specifies the number of days an object is noncurrent before Amazon S3 can perform the associated action. func (o BucketNoncurrentVersionTransitionPtrOutput) TransitionInDays() pulumi.IntPtrOutput { return o.ApplyT(func(v *BucketNoncurrentVersionTransition) *int { if v == nil { @@ -4308,7 +4120,6 @@ func (o BucketNoncurrentVersionTransitionArrayOutput) Index(i pulumi.IntInput) B }).(BucketNoncurrentVersionTransitionOutput) } -// Describes the notification configuration for an Amazon S3 bucket. type BucketNotificationConfiguration struct { EventBridgeConfiguration *BucketEventBridgeConfiguration `pulumi:"eventBridgeConfiguration"` LambdaConfigurations []BucketLambdaConfiguration `pulumi:"lambdaConfigurations"` @@ -4327,7 +4138,6 @@ type BucketNotificationConfigurationInput interface { ToBucketNotificationConfigurationOutputWithContext(context.Context) BucketNotificationConfigurationOutput } -// Describes the notification configuration for an Amazon S3 bucket. type BucketNotificationConfigurationArgs struct { EventBridgeConfiguration BucketEventBridgeConfigurationPtrInput `pulumi:"eventBridgeConfiguration"` LambdaConfigurations BucketLambdaConfigurationArrayInput `pulumi:"lambdaConfigurations"` @@ -4400,7 +4210,6 @@ func (i *bucketNotificationConfigurationPtrType) ToOutput(ctx context.Context) p } } -// Describes the notification configuration for an Amazon S3 bucket. type BucketNotificationConfigurationOutput struct{ *pulumi.OutputState } func (BucketNotificationConfigurationOutput) ElementType() reflect.Type { @@ -4515,7 +4324,6 @@ func (o BucketNotificationConfigurationPtrOutput) TopicConfigurations() BucketTo }).(BucketTopicConfigurationArrayOutput) } -// Specifies object key name filtering rules. type BucketNotificationFilter struct { S3Key BucketS3KeyFilter `pulumi:"s3Key"` } @@ -4531,7 +4339,6 @@ type BucketNotificationFilterInput interface { ToBucketNotificationFilterOutputWithContext(context.Context) BucketNotificationFilterOutput } -// Specifies object key name filtering rules. type BucketNotificationFilterArgs struct { S3Key BucketS3KeyFilterInput `pulumi:"s3Key"` } @@ -4601,7 +4408,6 @@ func (i *bucketNotificationFilterPtrType) ToOutput(ctx context.Context) pulumix. } } -// Specifies object key name filtering rules. type BucketNotificationFilterOutput struct{ *pulumi.OutputState } func (BucketNotificationFilterOutput) ElementType() reflect.Type { @@ -4847,7 +4653,6 @@ func (o BucketObjectLockConfigurationPtrOutput) Rule() BucketObjectLockRulePtrOu }).(BucketObjectLockRulePtrOutput) } -// The Object Lock rule in place for the specified object. type BucketObjectLockRule struct { DefaultRetention *BucketDefaultRetention `pulumi:"defaultRetention"` } @@ -4863,7 +4668,6 @@ type BucketObjectLockRuleInput interface { ToBucketObjectLockRuleOutputWithContext(context.Context) BucketObjectLockRuleOutput } -// The Object Lock rule in place for the specified object. type BucketObjectLockRuleArgs struct { DefaultRetention BucketDefaultRetentionPtrInput `pulumi:"defaultRetention"` } @@ -4933,7 +4737,6 @@ func (i *bucketObjectLockRulePtrType) ToOutput(ctx context.Context) pulumix.Outp } } -// The Object Lock rule in place for the specified object. type BucketObjectLockRuleOutput struct{ *pulumi.OutputState } func (BucketObjectLockRuleOutput) ElementType() reflect.Type { @@ -5165,8 +4968,7 @@ func (o BucketOwnershipControlsPtrOutput) Rules() BucketOwnershipControlsRuleArr } type BucketOwnershipControlsRule struct { - // Specifies an object ownership rule. - ObjectOwnership *BucketOwnershipControlsRuleObjectOwnership `pulumi:"objectOwnership"` + ObjectOwnership *string `pulumi:"objectOwnership"` } // BucketOwnershipControlsRuleInput is an input type that accepts BucketOwnershipControlsRuleArgs and BucketOwnershipControlsRuleOutput values. @@ -5181,8 +4983,7 @@ type BucketOwnershipControlsRuleInput interface { } type BucketOwnershipControlsRuleArgs struct { - // Specifies an object ownership rule. - ObjectOwnership BucketOwnershipControlsRuleObjectOwnershipPtrInput `pulumi:"objectOwnership"` + ObjectOwnership pulumi.StringPtrInput `pulumi:"objectOwnership"` } func (BucketOwnershipControlsRuleArgs) ElementType() reflect.Type { @@ -5254,11 +5055,8 @@ func (o BucketOwnershipControlsRuleOutput) ToOutput(ctx context.Context) pulumix } } -// Specifies an object ownership rule. -func (o BucketOwnershipControlsRuleOutput) ObjectOwnership() BucketOwnershipControlsRuleObjectOwnershipPtrOutput { - return o.ApplyT(func(v BucketOwnershipControlsRule) *BucketOwnershipControlsRuleObjectOwnership { - return v.ObjectOwnership - }).(BucketOwnershipControlsRuleObjectOwnershipPtrOutput) +func (o BucketOwnershipControlsRuleOutput) ObjectOwnership() pulumi.StringPtrOutput { + return o.ApplyT(func(v BucketOwnershipControlsRule) *string { return v.ObjectOwnership }).(pulumi.StringPtrOutput) } type BucketOwnershipControlsRuleArrayOutput struct{ *pulumi.OutputState } @@ -5287,21 +5085,10 @@ func (o BucketOwnershipControlsRuleArrayOutput) Index(i pulumi.IntInput) BucketO }).(BucketOwnershipControlsRuleOutput) } -// Configuration that defines how Amazon S3 handles public access. type BucketPublicAccessBlockConfiguration struct { - // Specifies whether Amazon S3 should block public access control lists (ACLs) for this bucket and objects in this bucket. Setting this element to TRUE causes the following behavior: - // - PUT Bucket acl and PUT Object acl calls fail if the specified ACL is public. - // - PUT Object calls fail if the request includes a public ACL. - // Enabling this setting doesn't affect existing policies or ACLs. - BlockPublicAcls *bool `pulumi:"blockPublicAcls"` - // Specifies whether Amazon S3 should block public bucket policies for this bucket. Setting this element to TRUE causes Amazon S3 to reject calls to PUT Bucket policy if the specified bucket policy allows public access. - // Enabling this setting doesn't affect existing bucket policies. - BlockPublicPolicy *bool `pulumi:"blockPublicPolicy"` - // Specifies whether Amazon S3 should ignore public ACLs for this bucket and objects in this bucket. Setting this element to TRUE causes Amazon S3 to ignore all public ACLs on this bucket and objects in this bucket. - // Enabling this setting doesn't affect the persistence of any existing ACLs and doesn't prevent new public ACLs from being set. - IgnorePublicAcls *bool `pulumi:"ignorePublicAcls"` - // Specifies whether Amazon S3 should restrict public bucket policies for this bucket. Setting this element to TRUE restricts access to this bucket to only AWS services and authorized users within this account if the bucket has a public policy. - // Enabling this setting doesn't affect previously stored bucket policies, except that public and cross-account access within any public bucket policy, including non-public delegation to specific accounts, is blocked. + BlockPublicAcls *bool `pulumi:"blockPublicAcls"` + BlockPublicPolicy *bool `pulumi:"blockPublicPolicy"` + IgnorePublicAcls *bool `pulumi:"ignorePublicAcls"` RestrictPublicBuckets *bool `pulumi:"restrictPublicBuckets"` } @@ -5316,21 +5103,10 @@ type BucketPublicAccessBlockConfigurationInput interface { ToBucketPublicAccessBlockConfigurationOutputWithContext(context.Context) BucketPublicAccessBlockConfigurationOutput } -// Configuration that defines how Amazon S3 handles public access. type BucketPublicAccessBlockConfigurationArgs struct { - // Specifies whether Amazon S3 should block public access control lists (ACLs) for this bucket and objects in this bucket. Setting this element to TRUE causes the following behavior: - // - PUT Bucket acl and PUT Object acl calls fail if the specified ACL is public. - // - PUT Object calls fail if the request includes a public ACL. - // Enabling this setting doesn't affect existing policies or ACLs. - BlockPublicAcls pulumi.BoolPtrInput `pulumi:"blockPublicAcls"` - // Specifies whether Amazon S3 should block public bucket policies for this bucket. Setting this element to TRUE causes Amazon S3 to reject calls to PUT Bucket policy if the specified bucket policy allows public access. - // Enabling this setting doesn't affect existing bucket policies. - BlockPublicPolicy pulumi.BoolPtrInput `pulumi:"blockPublicPolicy"` - // Specifies whether Amazon S3 should ignore public ACLs for this bucket and objects in this bucket. Setting this element to TRUE causes Amazon S3 to ignore all public ACLs on this bucket and objects in this bucket. - // Enabling this setting doesn't affect the persistence of any existing ACLs and doesn't prevent new public ACLs from being set. - IgnorePublicAcls pulumi.BoolPtrInput `pulumi:"ignorePublicAcls"` - // Specifies whether Amazon S3 should restrict public bucket policies for this bucket. Setting this element to TRUE restricts access to this bucket to only AWS services and authorized users within this account if the bucket has a public policy. - // Enabling this setting doesn't affect previously stored bucket policies, except that public and cross-account access within any public bucket policy, including non-public delegation to specific accounts, is blocked. + BlockPublicAcls pulumi.BoolPtrInput `pulumi:"blockPublicAcls"` + BlockPublicPolicy pulumi.BoolPtrInput `pulumi:"blockPublicPolicy"` + IgnorePublicAcls pulumi.BoolPtrInput `pulumi:"ignorePublicAcls"` RestrictPublicBuckets pulumi.BoolPtrInput `pulumi:"restrictPublicBuckets"` } @@ -5399,7 +5175,6 @@ func (i *bucketPublicAccessBlockConfigurationPtrType) ToOutput(ctx context.Conte } } -// Configuration that defines how Amazon S3 handles public access. type BucketPublicAccessBlockConfigurationOutput struct{ *pulumi.OutputState } func (BucketPublicAccessBlockConfigurationOutput) ElementType() reflect.Type { @@ -5430,28 +5205,18 @@ func (o BucketPublicAccessBlockConfigurationOutput) ToOutput(ctx context.Context } } -// Specifies whether Amazon S3 should block public access control lists (ACLs) for this bucket and objects in this bucket. Setting this element to TRUE causes the following behavior: -// - PUT Bucket acl and PUT Object acl calls fail if the specified ACL is public. -// - PUT Object calls fail if the request includes a public ACL. -// Enabling this setting doesn't affect existing policies or ACLs. func (o BucketPublicAccessBlockConfigurationOutput) BlockPublicAcls() pulumi.BoolPtrOutput { return o.ApplyT(func(v BucketPublicAccessBlockConfiguration) *bool { return v.BlockPublicAcls }).(pulumi.BoolPtrOutput) } -// Specifies whether Amazon S3 should block public bucket policies for this bucket. Setting this element to TRUE causes Amazon S3 to reject calls to PUT Bucket policy if the specified bucket policy allows public access. -// Enabling this setting doesn't affect existing bucket policies. func (o BucketPublicAccessBlockConfigurationOutput) BlockPublicPolicy() pulumi.BoolPtrOutput { return o.ApplyT(func(v BucketPublicAccessBlockConfiguration) *bool { return v.BlockPublicPolicy }).(pulumi.BoolPtrOutput) } -// Specifies whether Amazon S3 should ignore public ACLs for this bucket and objects in this bucket. Setting this element to TRUE causes Amazon S3 to ignore all public ACLs on this bucket and objects in this bucket. -// Enabling this setting doesn't affect the persistence of any existing ACLs and doesn't prevent new public ACLs from being set. func (o BucketPublicAccessBlockConfigurationOutput) IgnorePublicAcls() pulumi.BoolPtrOutput { return o.ApplyT(func(v BucketPublicAccessBlockConfiguration) *bool { return v.IgnorePublicAcls }).(pulumi.BoolPtrOutput) } -// Specifies whether Amazon S3 should restrict public bucket policies for this bucket. Setting this element to TRUE restricts access to this bucket to only AWS services and authorized users within this account if the bucket has a public policy. -// Enabling this setting doesn't affect previously stored bucket policies, except that public and cross-account access within any public bucket policy, including non-public delegation to specific accounts, is blocked. func (o BucketPublicAccessBlockConfigurationOutput) RestrictPublicBuckets() pulumi.BoolPtrOutput { return o.ApplyT(func(v BucketPublicAccessBlockConfiguration) *bool { return v.RestrictPublicBuckets }).(pulumi.BoolPtrOutput) } @@ -5486,10 +5251,6 @@ func (o BucketPublicAccessBlockConfigurationPtrOutput) Elem() BucketPublicAccess }).(BucketPublicAccessBlockConfigurationOutput) } -// Specifies whether Amazon S3 should block public access control lists (ACLs) for this bucket and objects in this bucket. Setting this element to TRUE causes the following behavior: -// - PUT Bucket acl and PUT Object acl calls fail if the specified ACL is public. -// - PUT Object calls fail if the request includes a public ACL. -// Enabling this setting doesn't affect existing policies or ACLs. func (o BucketPublicAccessBlockConfigurationPtrOutput) BlockPublicAcls() pulumi.BoolPtrOutput { return o.ApplyT(func(v *BucketPublicAccessBlockConfiguration) *bool { if v == nil { @@ -5499,8 +5260,6 @@ func (o BucketPublicAccessBlockConfigurationPtrOutput) BlockPublicAcls() pulumi. }).(pulumi.BoolPtrOutput) } -// Specifies whether Amazon S3 should block public bucket policies for this bucket. Setting this element to TRUE causes Amazon S3 to reject calls to PUT Bucket policy if the specified bucket policy allows public access. -// Enabling this setting doesn't affect existing bucket policies. func (o BucketPublicAccessBlockConfigurationPtrOutput) BlockPublicPolicy() pulumi.BoolPtrOutput { return o.ApplyT(func(v *BucketPublicAccessBlockConfiguration) *bool { if v == nil { @@ -5510,8 +5269,6 @@ func (o BucketPublicAccessBlockConfigurationPtrOutput) BlockPublicPolicy() pulum }).(pulumi.BoolPtrOutput) } -// Specifies whether Amazon S3 should ignore public ACLs for this bucket and objects in this bucket. Setting this element to TRUE causes Amazon S3 to ignore all public ACLs on this bucket and objects in this bucket. -// Enabling this setting doesn't affect the persistence of any existing ACLs and doesn't prevent new public ACLs from being set. func (o BucketPublicAccessBlockConfigurationPtrOutput) IgnorePublicAcls() pulumi.BoolPtrOutput { return o.ApplyT(func(v *BucketPublicAccessBlockConfiguration) *bool { if v == nil { @@ -5521,8 +5278,6 @@ func (o BucketPublicAccessBlockConfigurationPtrOutput) IgnorePublicAcls() pulumi }).(pulumi.BoolPtrOutput) } -// Specifies whether Amazon S3 should restrict public bucket policies for this bucket. Setting this element to TRUE restricts access to this bucket to only AWS services and authorized users within this account if the bucket has a public policy. -// Enabling this setting doesn't affect previously stored bucket policies, except that public and cross-account access within any public bucket policy, including non-public delegation to specific accounts, is blocked. func (o BucketPublicAccessBlockConfigurationPtrOutput) RestrictPublicBuckets() pulumi.BoolPtrOutput { return o.ApplyT(func(v *BucketPublicAccessBlockConfiguration) *bool { if v == nil { @@ -5532,14 +5287,10 @@ func (o BucketPublicAccessBlockConfigurationPtrOutput) RestrictPublicBuckets() p }).(pulumi.BoolPtrOutput) } -// The Amazon Simple Queue Service queues to publish messages to and the events for which to publish messages. type BucketQueueConfiguration struct { - // The Amazon S3 bucket event about which you want to publish messages to Amazon SQS. - Event string `pulumi:"event"` - // The filtering rules that determine which objects trigger notifications. + Event string `pulumi:"event"` Filter *BucketNotificationFilter `pulumi:"filter"` - // The Amazon Resource Name (ARN) of the Amazon SQS queue to which Amazon S3 publishes a message when it detects events of the specified type. - Queue string `pulumi:"queue"` + Queue string `pulumi:"queue"` } // BucketQueueConfigurationInput is an input type that accepts BucketQueueConfigurationArgs and BucketQueueConfigurationOutput values. @@ -5553,14 +5304,10 @@ type BucketQueueConfigurationInput interface { ToBucketQueueConfigurationOutputWithContext(context.Context) BucketQueueConfigurationOutput } -// The Amazon Simple Queue Service queues to publish messages to and the events for which to publish messages. type BucketQueueConfigurationArgs struct { - // The Amazon S3 bucket event about which you want to publish messages to Amazon SQS. - Event pulumi.StringInput `pulumi:"event"` - // The filtering rules that determine which objects trigger notifications. + Event pulumi.StringInput `pulumi:"event"` Filter BucketNotificationFilterPtrInput `pulumi:"filter"` - // The Amazon Resource Name (ARN) of the Amazon SQS queue to which Amazon S3 publishes a message when it detects events of the specified type. - Queue pulumi.StringInput `pulumi:"queue"` + Queue pulumi.StringInput `pulumi:"queue"` } func (BucketQueueConfigurationArgs) ElementType() reflect.Type { @@ -5612,7 +5359,6 @@ func (i BucketQueueConfigurationArray) ToOutput(ctx context.Context) pulumix.Out } } -// The Amazon Simple Queue Service queues to publish messages to and the events for which to publish messages. type BucketQueueConfigurationOutput struct{ *pulumi.OutputState } func (BucketQueueConfigurationOutput) ElementType() reflect.Type { @@ -5633,17 +5379,14 @@ func (o BucketQueueConfigurationOutput) ToOutput(ctx context.Context) pulumix.Ou } } -// The Amazon S3 bucket event about which you want to publish messages to Amazon SQS. func (o BucketQueueConfigurationOutput) Event() pulumi.StringOutput { return o.ApplyT(func(v BucketQueueConfiguration) string { return v.Event }).(pulumi.StringOutput) } -// The filtering rules that determine which objects trigger notifications. func (o BucketQueueConfigurationOutput) Filter() BucketNotificationFilterPtrOutput { return o.ApplyT(func(v BucketQueueConfiguration) *BucketNotificationFilter { return v.Filter }).(BucketNotificationFilterPtrOutput) } -// The Amazon Resource Name (ARN) of the Amazon SQS queue to which Amazon S3 publishes a message when it detects events of the specified type. func (o BucketQueueConfigurationOutput) Queue() pulumi.StringOutput { return o.ApplyT(func(v BucketQueueConfiguration) string { return v.Queue }).(pulumi.StringOutput) } @@ -5674,12 +5417,9 @@ func (o BucketQueueConfigurationArrayOutput) Index(i pulumi.IntInput) BucketQueu }).(BucketQueueConfigurationOutput) } -// Specifies the redirect behavior of all requests to a website endpoint of an Amazon S3 bucket. type BucketRedirectAllRequestsTo struct { - // Name of the host where requests are redirected. - HostName string `pulumi:"hostName"` - // Protocol to use when redirecting requests. The default is the protocol that is used in the original request. - Protocol *BucketRedirectAllRequestsToProtocol `pulumi:"protocol"` + HostName string `pulumi:"hostName"` + Protocol *string `pulumi:"protocol"` } // BucketRedirectAllRequestsToInput is an input type that accepts BucketRedirectAllRequestsToArgs and BucketRedirectAllRequestsToOutput values. @@ -5693,12 +5433,9 @@ type BucketRedirectAllRequestsToInput interface { ToBucketRedirectAllRequestsToOutputWithContext(context.Context) BucketRedirectAllRequestsToOutput } -// Specifies the redirect behavior of all requests to a website endpoint of an Amazon S3 bucket. type BucketRedirectAllRequestsToArgs struct { - // Name of the host where requests are redirected. - HostName pulumi.StringInput `pulumi:"hostName"` - // Protocol to use when redirecting requests. The default is the protocol that is used in the original request. - Protocol BucketRedirectAllRequestsToProtocolPtrInput `pulumi:"protocol"` + HostName pulumi.StringInput `pulumi:"hostName"` + Protocol pulumi.StringPtrInput `pulumi:"protocol"` } func (BucketRedirectAllRequestsToArgs) ElementType() reflect.Type { @@ -5766,7 +5503,6 @@ func (i *bucketRedirectAllRequestsToPtrType) ToOutput(ctx context.Context) pulum } } -// Specifies the redirect behavior of all requests to a website endpoint of an Amazon S3 bucket. type BucketRedirectAllRequestsToOutput struct{ *pulumi.OutputState } func (BucketRedirectAllRequestsToOutput) ElementType() reflect.Type { @@ -5797,14 +5533,12 @@ func (o BucketRedirectAllRequestsToOutput) ToOutput(ctx context.Context) pulumix } } -// Name of the host where requests are redirected. func (o BucketRedirectAllRequestsToOutput) HostName() pulumi.StringOutput { return o.ApplyT(func(v BucketRedirectAllRequestsTo) string { return v.HostName }).(pulumi.StringOutput) } -// Protocol to use when redirecting requests. The default is the protocol that is used in the original request. -func (o BucketRedirectAllRequestsToOutput) Protocol() BucketRedirectAllRequestsToProtocolPtrOutput { - return o.ApplyT(func(v BucketRedirectAllRequestsTo) *BucketRedirectAllRequestsToProtocol { return v.Protocol }).(BucketRedirectAllRequestsToProtocolPtrOutput) +func (o BucketRedirectAllRequestsToOutput) Protocol() pulumi.StringPtrOutput { + return o.ApplyT(func(v BucketRedirectAllRequestsTo) *string { return v.Protocol }).(pulumi.StringPtrOutput) } type BucketRedirectAllRequestsToPtrOutput struct{ *pulumi.OutputState } @@ -5837,7 +5571,6 @@ func (o BucketRedirectAllRequestsToPtrOutput) Elem() BucketRedirectAllRequestsTo }).(BucketRedirectAllRequestsToOutput) } -// Name of the host where requests are redirected. func (o BucketRedirectAllRequestsToPtrOutput) HostName() pulumi.StringPtrOutput { return o.ApplyT(func(v *BucketRedirectAllRequestsTo) *string { if v == nil { @@ -5847,28 +5580,21 @@ func (o BucketRedirectAllRequestsToPtrOutput) HostName() pulumi.StringPtrOutput }).(pulumi.StringPtrOutput) } -// Protocol to use when redirecting requests. The default is the protocol that is used in the original request. -func (o BucketRedirectAllRequestsToPtrOutput) Protocol() BucketRedirectAllRequestsToProtocolPtrOutput { - return o.ApplyT(func(v *BucketRedirectAllRequestsTo) *BucketRedirectAllRequestsToProtocol { +func (o BucketRedirectAllRequestsToPtrOutput) Protocol() pulumi.StringPtrOutput { + return o.ApplyT(func(v *BucketRedirectAllRequestsTo) *string { if v == nil { return nil } return v.Protocol - }).(BucketRedirectAllRequestsToProtocolPtrOutput) + }).(pulumi.StringPtrOutput) } -// Specifies how requests are redirected. In the event of an error, you can specify a different error code to return. type BucketRedirectRule struct { - // The host name to use in the redirect request. - HostName *string `pulumi:"hostName"` - // The HTTP redirect code to use on the response. Not required if one of the siblings is present. - HttpRedirectCode *string `pulumi:"httpRedirectCode"` - // Protocol to use when redirecting requests. The default is the protocol that is used in the original request. - Protocol *BucketRedirectRuleProtocol `pulumi:"protocol"` - // The object key prefix to use in the redirect request. + HostName *string `pulumi:"hostName"` + HttpRedirectCode *string `pulumi:"httpRedirectCode"` + Protocol *string `pulumi:"protocol"` ReplaceKeyPrefixWith *string `pulumi:"replaceKeyPrefixWith"` - // The specific object key to use in the redirect request.d - ReplaceKeyWith *string `pulumi:"replaceKeyWith"` + ReplaceKeyWith *string `pulumi:"replaceKeyWith"` } // BucketRedirectRuleInput is an input type that accepts BucketRedirectRuleArgs and BucketRedirectRuleOutput values. @@ -5882,18 +5608,12 @@ type BucketRedirectRuleInput interface { ToBucketRedirectRuleOutputWithContext(context.Context) BucketRedirectRuleOutput } -// Specifies how requests are redirected. In the event of an error, you can specify a different error code to return. type BucketRedirectRuleArgs struct { - // The host name to use in the redirect request. - HostName pulumi.StringPtrInput `pulumi:"hostName"` - // The HTTP redirect code to use on the response. Not required if one of the siblings is present. - HttpRedirectCode pulumi.StringPtrInput `pulumi:"httpRedirectCode"` - // Protocol to use when redirecting requests. The default is the protocol that is used in the original request. - Protocol BucketRedirectRuleProtocolPtrInput `pulumi:"protocol"` - // The object key prefix to use in the redirect request. + HostName pulumi.StringPtrInput `pulumi:"hostName"` + HttpRedirectCode pulumi.StringPtrInput `pulumi:"httpRedirectCode"` + Protocol pulumi.StringPtrInput `pulumi:"protocol"` ReplaceKeyPrefixWith pulumi.StringPtrInput `pulumi:"replaceKeyPrefixWith"` - // The specific object key to use in the redirect request.d - ReplaceKeyWith pulumi.StringPtrInput `pulumi:"replaceKeyWith"` + ReplaceKeyWith pulumi.StringPtrInput `pulumi:"replaceKeyWith"` } func (BucketRedirectRuleArgs) ElementType() reflect.Type { @@ -5914,7 +5634,6 @@ func (i BucketRedirectRuleArgs) ToOutput(ctx context.Context) pulumix.Output[Buc } } -// Specifies how requests are redirected. In the event of an error, you can specify a different error code to return. type BucketRedirectRuleOutput struct{ *pulumi.OutputState } func (BucketRedirectRuleOutput) ElementType() reflect.Type { @@ -5935,34 +5654,28 @@ func (o BucketRedirectRuleOutput) ToOutput(ctx context.Context) pulumix.Output[B } } -// The host name to use in the redirect request. func (o BucketRedirectRuleOutput) HostName() pulumi.StringPtrOutput { return o.ApplyT(func(v BucketRedirectRule) *string { return v.HostName }).(pulumi.StringPtrOutput) } -// The HTTP redirect code to use on the response. Not required if one of the siblings is present. func (o BucketRedirectRuleOutput) HttpRedirectCode() pulumi.StringPtrOutput { return o.ApplyT(func(v BucketRedirectRule) *string { return v.HttpRedirectCode }).(pulumi.StringPtrOutput) } -// Protocol to use when redirecting requests. The default is the protocol that is used in the original request. -func (o BucketRedirectRuleOutput) Protocol() BucketRedirectRuleProtocolPtrOutput { - return o.ApplyT(func(v BucketRedirectRule) *BucketRedirectRuleProtocol { return v.Protocol }).(BucketRedirectRuleProtocolPtrOutput) +func (o BucketRedirectRuleOutput) Protocol() pulumi.StringPtrOutput { + return o.ApplyT(func(v BucketRedirectRule) *string { return v.Protocol }).(pulumi.StringPtrOutput) } -// The object key prefix to use in the redirect request. func (o BucketRedirectRuleOutput) ReplaceKeyPrefixWith() pulumi.StringPtrOutput { return o.ApplyT(func(v BucketRedirectRule) *string { return v.ReplaceKeyPrefixWith }).(pulumi.StringPtrOutput) } -// The specific object key to use in the redirect request.d func (o BucketRedirectRuleOutput) ReplaceKeyWith() pulumi.StringPtrOutput { return o.ApplyT(func(v BucketRedirectRule) *string { return v.ReplaceKeyWith }).(pulumi.StringPtrOutput) } type BucketReplicaModifications struct { - // Specifies whether Amazon S3 replicates modifications on replicas. - Status BucketReplicaModificationsStatus `pulumi:"status"` + Status string `pulumi:"status"` } // BucketReplicaModificationsInput is an input type that accepts BucketReplicaModificationsArgs and BucketReplicaModificationsOutput values. @@ -5977,8 +5690,7 @@ type BucketReplicaModificationsInput interface { } type BucketReplicaModificationsArgs struct { - // Specifies whether Amazon S3 replicates modifications on replicas. - Status BucketReplicaModificationsStatusInput `pulumi:"status"` + Status pulumi.StringInput `pulumi:"status"` } func (BucketReplicaModificationsArgs) ElementType() reflect.Type { @@ -6076,9 +5788,8 @@ func (o BucketReplicaModificationsOutput) ToOutput(ctx context.Context) pulumix. } } -// Specifies whether Amazon S3 replicates modifications on replicas. -func (o BucketReplicaModificationsOutput) Status() BucketReplicaModificationsStatusOutput { - return o.ApplyT(func(v BucketReplicaModifications) BucketReplicaModificationsStatus { return v.Status }).(BucketReplicaModificationsStatusOutput) +func (o BucketReplicaModificationsOutput) Status() pulumi.StringOutput { + return o.ApplyT(func(v BucketReplicaModifications) string { return v.Status }).(pulumi.StringOutput) } type BucketReplicaModificationsPtrOutput struct{ *pulumi.OutputState } @@ -6111,21 +5822,17 @@ func (o BucketReplicaModificationsPtrOutput) Elem() BucketReplicaModificationsOu }).(BucketReplicaModificationsOutput) } -// Specifies whether Amazon S3 replicates modifications on replicas. -func (o BucketReplicaModificationsPtrOutput) Status() BucketReplicaModificationsStatusPtrOutput { - return o.ApplyT(func(v *BucketReplicaModifications) *BucketReplicaModificationsStatus { +func (o BucketReplicaModificationsPtrOutput) Status() pulumi.StringPtrOutput { + return o.ApplyT(func(v *BucketReplicaModifications) *string { if v == nil { return nil } return &v.Status - }).(BucketReplicaModificationsStatusPtrOutput) + }).(pulumi.StringPtrOutput) } -// A container for replication rules. You can add up to 1,000 rules. The maximum size of a replication configuration is 2 MB. type BucketReplicationConfiguration struct { - // The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that Amazon S3 assumes when replicating objects. - Role string `pulumi:"role"` - // A container for one or more replication rules. + Role string `pulumi:"role"` Rules []BucketReplicationRule `pulumi:"rules"` } @@ -6140,11 +5847,8 @@ type BucketReplicationConfigurationInput interface { ToBucketReplicationConfigurationOutputWithContext(context.Context) BucketReplicationConfigurationOutput } -// A container for replication rules. You can add up to 1,000 rules. The maximum size of a replication configuration is 2 MB. type BucketReplicationConfigurationArgs struct { - // The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that Amazon S3 assumes when replicating objects. - Role pulumi.StringInput `pulumi:"role"` - // A container for one or more replication rules. + Role pulumi.StringInput `pulumi:"role"` Rules BucketReplicationRuleArrayInput `pulumi:"rules"` } @@ -6213,7 +5917,6 @@ func (i *bucketReplicationConfigurationPtrType) ToOutput(ctx context.Context) pu } } -// A container for replication rules. You can add up to 1,000 rules. The maximum size of a replication configuration is 2 MB. type BucketReplicationConfigurationOutput struct{ *pulumi.OutputState } func (BucketReplicationConfigurationOutput) ElementType() reflect.Type { @@ -6244,12 +5947,10 @@ func (o BucketReplicationConfigurationOutput) ToOutput(ctx context.Context) pulu } } -// The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that Amazon S3 assumes when replicating objects. func (o BucketReplicationConfigurationOutput) Role() pulumi.StringOutput { return o.ApplyT(func(v BucketReplicationConfiguration) string { return v.Role }).(pulumi.StringOutput) } -// A container for one or more replication rules. func (o BucketReplicationConfigurationOutput) Rules() BucketReplicationRuleArrayOutput { return o.ApplyT(func(v BucketReplicationConfiguration) []BucketReplicationRule { return v.Rules }).(BucketReplicationRuleArrayOutput) } @@ -6284,7 +5985,6 @@ func (o BucketReplicationConfigurationPtrOutput) Elem() BucketReplicationConfigu }).(BucketReplicationConfigurationOutput) } -// The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that Amazon S3 assumes when replicating objects. func (o BucketReplicationConfigurationPtrOutput) Role() pulumi.StringPtrOutput { return o.ApplyT(func(v *BucketReplicationConfiguration) *string { if v == nil { @@ -6294,7 +5994,6 @@ func (o BucketReplicationConfigurationPtrOutput) Role() pulumi.StringPtrOutput { }).(pulumi.StringPtrOutput) } -// A container for one or more replication rules. func (o BucketReplicationConfigurationPtrOutput) Rules() BucketReplicationRuleArrayOutput { return o.ApplyT(func(v *BucketReplicationConfiguration) []BucketReplicationRule { if v == nil { @@ -6304,7 +6003,6 @@ func (o BucketReplicationConfigurationPtrOutput) Rules() BucketReplicationRuleAr }).(BucketReplicationRuleArrayOutput) } -// Specifies which Amazon S3 bucket to store replicated objects in and their storage class. type BucketReplicationDestination struct { AccessControlTranslation *BucketAccessControlTranslation `pulumi:"accessControlTranslation"` Account *string `pulumi:"account"` @@ -6312,8 +6010,7 @@ type BucketReplicationDestination struct { EncryptionConfiguration *BucketEncryptionConfiguration `pulumi:"encryptionConfiguration"` Metrics *BucketMetrics `pulumi:"metrics"` ReplicationTime *BucketReplicationTime `pulumi:"replicationTime"` - // The storage class to use when replicating objects, such as S3 Standard or reduced redundancy. - StorageClass *BucketReplicationDestinationStorageClass `pulumi:"storageClass"` + StorageClass *string `pulumi:"storageClass"` } // BucketReplicationDestinationInput is an input type that accepts BucketReplicationDestinationArgs and BucketReplicationDestinationOutput values. @@ -6327,7 +6024,6 @@ type BucketReplicationDestinationInput interface { ToBucketReplicationDestinationOutputWithContext(context.Context) BucketReplicationDestinationOutput } -// Specifies which Amazon S3 bucket to store replicated objects in and their storage class. type BucketReplicationDestinationArgs struct { AccessControlTranslation BucketAccessControlTranslationPtrInput `pulumi:"accessControlTranslation"` Account pulumi.StringPtrInput `pulumi:"account"` @@ -6335,8 +6031,7 @@ type BucketReplicationDestinationArgs struct { EncryptionConfiguration BucketEncryptionConfigurationPtrInput `pulumi:"encryptionConfiguration"` Metrics BucketMetricsPtrInput `pulumi:"metrics"` ReplicationTime BucketReplicationTimePtrInput `pulumi:"replicationTime"` - // The storage class to use when replicating objects, such as S3 Standard or reduced redundancy. - StorageClass BucketReplicationDestinationStorageClassPtrInput `pulumi:"storageClass"` + StorageClass pulumi.StringPtrInput `pulumi:"storageClass"` } func (BucketReplicationDestinationArgs) ElementType() reflect.Type { @@ -6357,7 +6052,6 @@ func (i BucketReplicationDestinationArgs) ToOutput(ctx context.Context) pulumix. } } -// Specifies which Amazon S3 bucket to store replicated objects in and their storage class. type BucketReplicationDestinationOutput struct{ *pulumi.OutputState } func (BucketReplicationDestinationOutput) ElementType() reflect.Type { @@ -6404,24 +6098,19 @@ func (o BucketReplicationDestinationOutput) ReplicationTime() BucketReplicationT return o.ApplyT(func(v BucketReplicationDestination) *BucketReplicationTime { return v.ReplicationTime }).(BucketReplicationTimePtrOutput) } -// The storage class to use when replicating objects, such as S3 Standard or reduced redundancy. -func (o BucketReplicationDestinationOutput) StorageClass() BucketReplicationDestinationStorageClassPtrOutput { - return o.ApplyT(func(v BucketReplicationDestination) *BucketReplicationDestinationStorageClass { return v.StorageClass }).(BucketReplicationDestinationStorageClassPtrOutput) +func (o BucketReplicationDestinationOutput) StorageClass() pulumi.StringPtrOutput { + return o.ApplyT(func(v BucketReplicationDestination) *string { return v.StorageClass }).(pulumi.StringPtrOutput) } -// Specifies which Amazon S3 objects to replicate and where to store the replicas. type BucketReplicationRule struct { DeleteMarkerReplication *BucketDeleteMarkerReplication `pulumi:"deleteMarkerReplication"` Destination BucketReplicationDestination `pulumi:"destination"` Filter *BucketReplicationRuleFilter `pulumi:"filter"` - // A unique identifier for the rule. - Id *string `pulumi:"id"` - // An object key name prefix that identifies the object or objects to which the rule applies. + Id *string `pulumi:"id"` Prefix *string `pulumi:"prefix"` Priority *int `pulumi:"priority"` SourceSelectionCriteria *BucketSourceSelectionCriteria `pulumi:"sourceSelectionCriteria"` - // Specifies whether the rule is enabled. - Status BucketReplicationRuleStatus `pulumi:"status"` + Status string `pulumi:"status"` } // BucketReplicationRuleInput is an input type that accepts BucketReplicationRuleArgs and BucketReplicationRuleOutput values. @@ -6435,19 +6124,15 @@ type BucketReplicationRuleInput interface { ToBucketReplicationRuleOutputWithContext(context.Context) BucketReplicationRuleOutput } -// Specifies which Amazon S3 objects to replicate and where to store the replicas. type BucketReplicationRuleArgs struct { DeleteMarkerReplication BucketDeleteMarkerReplicationPtrInput `pulumi:"deleteMarkerReplication"` Destination BucketReplicationDestinationInput `pulumi:"destination"` Filter BucketReplicationRuleFilterPtrInput `pulumi:"filter"` - // A unique identifier for the rule. - Id pulumi.StringPtrInput `pulumi:"id"` - // An object key name prefix that identifies the object or objects to which the rule applies. + Id pulumi.StringPtrInput `pulumi:"id"` Prefix pulumi.StringPtrInput `pulumi:"prefix"` Priority pulumi.IntPtrInput `pulumi:"priority"` SourceSelectionCriteria BucketSourceSelectionCriteriaPtrInput `pulumi:"sourceSelectionCriteria"` - // Specifies whether the rule is enabled. - Status BucketReplicationRuleStatusInput `pulumi:"status"` + Status pulumi.StringInput `pulumi:"status"` } func (BucketReplicationRuleArgs) ElementType() reflect.Type { @@ -6499,7 +6184,6 @@ func (i BucketReplicationRuleArray) ToOutput(ctx context.Context) pulumix.Output } } -// Specifies which Amazon S3 objects to replicate and where to store the replicas. type BucketReplicationRuleOutput struct{ *pulumi.OutputState } func (BucketReplicationRuleOutput) ElementType() reflect.Type { @@ -6532,12 +6216,10 @@ func (o BucketReplicationRuleOutput) Filter() BucketReplicationRuleFilterPtrOutp return o.ApplyT(func(v BucketReplicationRule) *BucketReplicationRuleFilter { return v.Filter }).(BucketReplicationRuleFilterPtrOutput) } -// A unique identifier for the rule. func (o BucketReplicationRuleOutput) Id() pulumi.StringPtrOutput { return o.ApplyT(func(v BucketReplicationRule) *string { return v.Id }).(pulumi.StringPtrOutput) } -// An object key name prefix that identifies the object or objects to which the rule applies. func (o BucketReplicationRuleOutput) Prefix() pulumi.StringPtrOutput { return o.ApplyT(func(v BucketReplicationRule) *string { return v.Prefix }).(pulumi.StringPtrOutput) } @@ -6550,9 +6232,8 @@ func (o BucketReplicationRuleOutput) SourceSelectionCriteria() BucketSourceSelec return o.ApplyT(func(v BucketReplicationRule) *BucketSourceSelectionCriteria { return v.SourceSelectionCriteria }).(BucketSourceSelectionCriteriaPtrOutput) } -// Specifies whether the rule is enabled. -func (o BucketReplicationRuleOutput) Status() BucketReplicationRuleStatusOutput { - return o.ApplyT(func(v BucketReplicationRule) BucketReplicationRuleStatus { return v.Status }).(BucketReplicationRuleStatusOutput) +func (o BucketReplicationRuleOutput) Status() pulumi.StringOutput { + return o.ApplyT(func(v BucketReplicationRule) string { return v.Status }).(pulumi.StringOutput) } type BucketReplicationRuleArrayOutput struct{ *pulumi.OutputState } @@ -6941,8 +6622,8 @@ func (o BucketReplicationRuleFilterPtrOutput) TagFilter() BucketTagFilterPtrOutp } type BucketReplicationTime struct { - Status BucketReplicationTimeStatus `pulumi:"status"` - Time BucketReplicationTimeValue `pulumi:"time"` + Status string `pulumi:"status"` + Time BucketReplicationTimeValue `pulumi:"time"` } // BucketReplicationTimeInput is an input type that accepts BucketReplicationTimeArgs and BucketReplicationTimeOutput values. @@ -6957,8 +6638,8 @@ type BucketReplicationTimeInput interface { } type BucketReplicationTimeArgs struct { - Status BucketReplicationTimeStatusInput `pulumi:"status"` - Time BucketReplicationTimeValueInput `pulumi:"time"` + Status pulumi.StringInput `pulumi:"status"` + Time BucketReplicationTimeValueInput `pulumi:"time"` } func (BucketReplicationTimeArgs) ElementType() reflect.Type { @@ -7056,8 +6737,8 @@ func (o BucketReplicationTimeOutput) ToOutput(ctx context.Context) pulumix.Outpu } } -func (o BucketReplicationTimeOutput) Status() BucketReplicationTimeStatusOutput { - return o.ApplyT(func(v BucketReplicationTime) BucketReplicationTimeStatus { return v.Status }).(BucketReplicationTimeStatusOutput) +func (o BucketReplicationTimeOutput) Status() pulumi.StringOutput { + return o.ApplyT(func(v BucketReplicationTime) string { return v.Status }).(pulumi.StringOutput) } func (o BucketReplicationTimeOutput) Time() BucketReplicationTimeValueOutput { @@ -7094,13 +6775,13 @@ func (o BucketReplicationTimePtrOutput) Elem() BucketReplicationTimeOutput { }).(BucketReplicationTimeOutput) } -func (o BucketReplicationTimePtrOutput) Status() BucketReplicationTimeStatusPtrOutput { - return o.ApplyT(func(v *BucketReplicationTime) *BucketReplicationTimeStatus { +func (o BucketReplicationTimePtrOutput) Status() pulumi.StringPtrOutput { + return o.ApplyT(func(v *BucketReplicationTime) *string { if v == nil { return nil } return &v.Status - }).(BucketReplicationTimeStatusPtrOutput) + }).(pulumi.StringPtrOutput) } func (o BucketReplicationTimePtrOutput) Time() BucketReplicationTimeValuePtrOutput { @@ -7269,9 +6950,7 @@ func (o BucketReplicationTimeValuePtrOutput) Minutes() pulumi.IntPtrOutput { }).(pulumi.IntPtrOutput) } -// Specifies the redirect behavior and when a redirect is applied. type BucketRoutingRule struct { - // Container for redirect information. You can redirect requests to another host, to another page, or with another protocol. In the event of an error, you can specify a different error code to return. RedirectRule BucketRedirectRule `pulumi:"redirectRule"` RoutingRuleCondition *BucketRoutingRuleCondition `pulumi:"routingRuleCondition"` } @@ -7287,9 +6966,7 @@ type BucketRoutingRuleInput interface { ToBucketRoutingRuleOutputWithContext(context.Context) BucketRoutingRuleOutput } -// Specifies the redirect behavior and when a redirect is applied. type BucketRoutingRuleArgs struct { - // Container for redirect information. You can redirect requests to another host, to another page, or with another protocol. In the event of an error, you can specify a different error code to return. RedirectRule BucketRedirectRuleInput `pulumi:"redirectRule"` RoutingRuleCondition BucketRoutingRuleConditionPtrInput `pulumi:"routingRuleCondition"` } @@ -7343,7 +7020,6 @@ func (i BucketRoutingRuleArray) ToOutput(ctx context.Context) pulumix.Output[[]B } } -// Specifies the redirect behavior and when a redirect is applied. type BucketRoutingRuleOutput struct{ *pulumi.OutputState } func (BucketRoutingRuleOutput) ElementType() reflect.Type { @@ -7364,7 +7040,6 @@ func (o BucketRoutingRuleOutput) ToOutput(ctx context.Context) pulumix.Output[Bu } } -// Container for redirect information. You can redirect requests to another host, to another page, or with another protocol. In the event of an error, you can specify a different error code to return. func (o BucketRoutingRuleOutput) RedirectRule() BucketRedirectRuleOutput { return o.ApplyT(func(v BucketRoutingRule) BucketRedirectRule { return v.RedirectRule }).(BucketRedirectRuleOutput) } @@ -7399,12 +7074,9 @@ func (o BucketRoutingRuleArrayOutput) Index(i pulumi.IntInput) BucketRoutingRule }).(BucketRoutingRuleOutput) } -// A container for describing a condition that must be met for the specified redirect to apply.You must specify at least one of HttpErrorCodeReturnedEquals and KeyPrefixEquals type BucketRoutingRuleCondition struct { - // The HTTP error code when the redirect is applied. HttpErrorCodeReturnedEquals *string `pulumi:"httpErrorCodeReturnedEquals"` - // The object key name prefix when the redirect is applied. - KeyPrefixEquals *string `pulumi:"keyPrefixEquals"` + KeyPrefixEquals *string `pulumi:"keyPrefixEquals"` } // BucketRoutingRuleConditionInput is an input type that accepts BucketRoutingRuleConditionArgs and BucketRoutingRuleConditionOutput values. @@ -7418,12 +7090,9 @@ type BucketRoutingRuleConditionInput interface { ToBucketRoutingRuleConditionOutputWithContext(context.Context) BucketRoutingRuleConditionOutput } -// A container for describing a condition that must be met for the specified redirect to apply.You must specify at least one of HttpErrorCodeReturnedEquals and KeyPrefixEquals type BucketRoutingRuleConditionArgs struct { - // The HTTP error code when the redirect is applied. HttpErrorCodeReturnedEquals pulumi.StringPtrInput `pulumi:"httpErrorCodeReturnedEquals"` - // The object key name prefix when the redirect is applied. - KeyPrefixEquals pulumi.StringPtrInput `pulumi:"keyPrefixEquals"` + KeyPrefixEquals pulumi.StringPtrInput `pulumi:"keyPrefixEquals"` } func (BucketRoutingRuleConditionArgs) ElementType() reflect.Type { @@ -7491,7 +7160,6 @@ func (i *bucketRoutingRuleConditionPtrType) ToOutput(ctx context.Context) pulumi } } -// A container for describing a condition that must be met for the specified redirect to apply.You must specify at least one of HttpErrorCodeReturnedEquals and KeyPrefixEquals type BucketRoutingRuleConditionOutput struct{ *pulumi.OutputState } func (BucketRoutingRuleConditionOutput) ElementType() reflect.Type { @@ -7522,12 +7190,10 @@ func (o BucketRoutingRuleConditionOutput) ToOutput(ctx context.Context) pulumix. } } -// The HTTP error code when the redirect is applied. func (o BucketRoutingRuleConditionOutput) HttpErrorCodeReturnedEquals() pulumi.StringPtrOutput { return o.ApplyT(func(v BucketRoutingRuleCondition) *string { return v.HttpErrorCodeReturnedEquals }).(pulumi.StringPtrOutput) } -// The object key name prefix when the redirect is applied. func (o BucketRoutingRuleConditionOutput) KeyPrefixEquals() pulumi.StringPtrOutput { return o.ApplyT(func(v BucketRoutingRuleCondition) *string { return v.KeyPrefixEquals }).(pulumi.StringPtrOutput) } @@ -7562,7 +7228,6 @@ func (o BucketRoutingRuleConditionPtrOutput) Elem() BucketRoutingRuleConditionOu }).(BucketRoutingRuleConditionOutput) } -// The HTTP error code when the redirect is applied. func (o BucketRoutingRuleConditionPtrOutput) HttpErrorCodeReturnedEquals() pulumi.StringPtrOutput { return o.ApplyT(func(v *BucketRoutingRuleCondition) *string { if v == nil { @@ -7572,7 +7237,6 @@ func (o BucketRoutingRuleConditionPtrOutput) HttpErrorCodeReturnedEquals() pulum }).(pulumi.StringPtrOutput) } -// The object key name prefix when the redirect is applied. func (o BucketRoutingRuleConditionPtrOutput) KeyPrefixEquals() pulumi.StringPtrOutput { return o.ApplyT(func(v *BucketRoutingRuleCondition) *string { if v == nil { @@ -7582,7 +7246,6 @@ func (o BucketRoutingRuleConditionPtrOutput) KeyPrefixEquals() pulumi.StringPtrO }).(pulumi.StringPtrOutput) } -// You must specify at least one of the following properties: AbortIncompleteMultipartUpload, ExpirationDate, ExpirationInDays, NoncurrentVersionExpirationInDays, NoncurrentVersionTransition, NoncurrentVersionTransitions, Transition, or Transitions. type BucketRule struct { AbortIncompleteMultipartUpload *BucketAbortIncompleteMultipartUpload `pulumi:"abortIncompleteMultipartUpload"` ExpirationDate *string `pulumi:"expirationDate"` @@ -7593,10 +7256,10 @@ type BucketRule struct { NoncurrentVersionExpirationInDays *int `pulumi:"noncurrentVersionExpirationInDays"` NoncurrentVersionTransition *BucketNoncurrentVersionTransition `pulumi:"noncurrentVersionTransition"` NoncurrentVersionTransitions []BucketNoncurrentVersionTransition `pulumi:"noncurrentVersionTransitions"` - ObjectSizeGreaterThan *string `pulumi:"objectSizeGreaterThan"` - ObjectSizeLessThan *string `pulumi:"objectSizeLessThan"` + ObjectSizeGreaterThan *int `pulumi:"objectSizeGreaterThan"` + ObjectSizeLessThan *int `pulumi:"objectSizeLessThan"` Prefix *string `pulumi:"prefix"` - Status BucketRuleStatus `pulumi:"status"` + Status string `pulumi:"status"` TagFilters []BucketTagFilter `pulumi:"tagFilters"` Transition *BucketTransition `pulumi:"transition"` Transitions []BucketTransition `pulumi:"transitions"` @@ -7613,7 +7276,6 @@ type BucketRuleInput interface { ToBucketRuleOutputWithContext(context.Context) BucketRuleOutput } -// You must specify at least one of the following properties: AbortIncompleteMultipartUpload, ExpirationDate, ExpirationInDays, NoncurrentVersionExpirationInDays, NoncurrentVersionTransition, NoncurrentVersionTransitions, Transition, or Transitions. type BucketRuleArgs struct { AbortIncompleteMultipartUpload BucketAbortIncompleteMultipartUploadPtrInput `pulumi:"abortIncompleteMultipartUpload"` ExpirationDate pulumi.StringPtrInput `pulumi:"expirationDate"` @@ -7624,10 +7286,10 @@ type BucketRuleArgs struct { NoncurrentVersionExpirationInDays pulumi.IntPtrInput `pulumi:"noncurrentVersionExpirationInDays"` NoncurrentVersionTransition BucketNoncurrentVersionTransitionPtrInput `pulumi:"noncurrentVersionTransition"` NoncurrentVersionTransitions BucketNoncurrentVersionTransitionArrayInput `pulumi:"noncurrentVersionTransitions"` - ObjectSizeGreaterThan pulumi.StringPtrInput `pulumi:"objectSizeGreaterThan"` - ObjectSizeLessThan pulumi.StringPtrInput `pulumi:"objectSizeLessThan"` + ObjectSizeGreaterThan pulumi.IntPtrInput `pulumi:"objectSizeGreaterThan"` + ObjectSizeLessThan pulumi.IntPtrInput `pulumi:"objectSizeLessThan"` Prefix pulumi.StringPtrInput `pulumi:"prefix"` - Status BucketRuleStatusInput `pulumi:"status"` + Status pulumi.StringInput `pulumi:"status"` TagFilters BucketTagFilterArrayInput `pulumi:"tagFilters"` Transition BucketTransitionPtrInput `pulumi:"transition"` Transitions BucketTransitionArrayInput `pulumi:"transitions"` @@ -7682,7 +7344,6 @@ func (i BucketRuleArray) ToOutput(ctx context.Context) pulumix.Output[[]BucketRu } } -// You must specify at least one of the following properties: AbortIncompleteMultipartUpload, ExpirationDate, ExpirationInDays, NoncurrentVersionExpirationInDays, NoncurrentVersionTransition, NoncurrentVersionTransitions, Transition, or Transitions. type BucketRuleOutput struct{ *pulumi.OutputState } func (BucketRuleOutput) ElementType() reflect.Type { @@ -7739,20 +7400,20 @@ func (o BucketRuleOutput) NoncurrentVersionTransitions() BucketNoncurrentVersion return o.ApplyT(func(v BucketRule) []BucketNoncurrentVersionTransition { return v.NoncurrentVersionTransitions }).(BucketNoncurrentVersionTransitionArrayOutput) } -func (o BucketRuleOutput) ObjectSizeGreaterThan() pulumi.StringPtrOutput { - return o.ApplyT(func(v BucketRule) *string { return v.ObjectSizeGreaterThan }).(pulumi.StringPtrOutput) +func (o BucketRuleOutput) ObjectSizeGreaterThan() pulumi.IntPtrOutput { + return o.ApplyT(func(v BucketRule) *int { return v.ObjectSizeGreaterThan }).(pulumi.IntPtrOutput) } -func (o BucketRuleOutput) ObjectSizeLessThan() pulumi.StringPtrOutput { - return o.ApplyT(func(v BucketRule) *string { return v.ObjectSizeLessThan }).(pulumi.StringPtrOutput) +func (o BucketRuleOutput) ObjectSizeLessThan() pulumi.IntPtrOutput { + return o.ApplyT(func(v BucketRule) *int { return v.ObjectSizeLessThan }).(pulumi.IntPtrOutput) } func (o BucketRuleOutput) Prefix() pulumi.StringPtrOutput { return o.ApplyT(func(v BucketRule) *string { return v.Prefix }).(pulumi.StringPtrOutput) } -func (o BucketRuleOutput) Status() BucketRuleStatusOutput { - return o.ApplyT(func(v BucketRule) BucketRuleStatus { return v.Status }).(BucketRuleStatusOutput) +func (o BucketRuleOutput) Status() pulumi.StringOutput { + return o.ApplyT(func(v BucketRule) string { return v.Status }).(pulumi.StringOutput) } func (o BucketRuleOutput) TagFilters() BucketTagFilterArrayOutput { @@ -7793,7 +7454,6 @@ func (o BucketRuleArrayOutput) Index(i pulumi.IntInput) BucketRuleOutput { }).(BucketRuleOutput) } -// A container for object key name prefix and suffix filtering rules. type BucketS3KeyFilter struct { Rules []BucketFilterRule `pulumi:"rules"` } @@ -7809,7 +7469,6 @@ type BucketS3KeyFilterInput interface { ToBucketS3KeyFilterOutputWithContext(context.Context) BucketS3KeyFilterOutput } -// A container for object key name prefix and suffix filtering rules. type BucketS3KeyFilterArgs struct { Rules BucketFilterRuleArrayInput `pulumi:"rules"` } @@ -7879,7 +7538,6 @@ func (i *bucketS3KeyFilterPtrType) ToOutput(ctx context.Context) pulumix.Output[ } } -// A container for object key name prefix and suffix filtering rules. type BucketS3KeyFilterOutput struct{ *pulumi.OutputState } func (BucketS3KeyFilterOutput) ElementType() reflect.Type { @@ -7953,11 +7611,9 @@ func (o BucketS3KeyFilterPtrOutput) Rules() BucketFilterRuleArrayOutput { }).(BucketFilterRuleArrayOutput) } -// Specifies the default server-side encryption to apply to new objects in the bucket. If a PUT Object request doesn't specify any server-side encryption, this default encryption will be applied. type BucketServerSideEncryptionByDefault struct { - // "KMSMasterKeyID" can only be used when you set the value of SSEAlgorithm as aws:kms or aws:kms:dsse. - KmsMasterKeyId *string `pulumi:"kmsMasterKeyId"` - SseAlgorithm BucketServerSideEncryptionByDefaultSseAlgorithm `pulumi:"sseAlgorithm"` + KmsMasterKeyId *string `pulumi:"kmsMasterKeyId"` + SseAlgorithm string `pulumi:"sseAlgorithm"` } // BucketServerSideEncryptionByDefaultInput is an input type that accepts BucketServerSideEncryptionByDefaultArgs and BucketServerSideEncryptionByDefaultOutput values. @@ -7971,11 +7627,9 @@ type BucketServerSideEncryptionByDefaultInput interface { ToBucketServerSideEncryptionByDefaultOutputWithContext(context.Context) BucketServerSideEncryptionByDefaultOutput } -// Specifies the default server-side encryption to apply to new objects in the bucket. If a PUT Object request doesn't specify any server-side encryption, this default encryption will be applied. type BucketServerSideEncryptionByDefaultArgs struct { - // "KMSMasterKeyID" can only be used when you set the value of SSEAlgorithm as aws:kms or aws:kms:dsse. - KmsMasterKeyId pulumi.StringPtrInput `pulumi:"kmsMasterKeyId"` - SseAlgorithm BucketServerSideEncryptionByDefaultSseAlgorithmInput `pulumi:"sseAlgorithm"` + KmsMasterKeyId pulumi.StringPtrInput `pulumi:"kmsMasterKeyId"` + SseAlgorithm pulumi.StringInput `pulumi:"sseAlgorithm"` } func (BucketServerSideEncryptionByDefaultArgs) ElementType() reflect.Type { @@ -8043,7 +7697,6 @@ func (i *bucketServerSideEncryptionByDefaultPtrType) ToOutput(ctx context.Contex } } -// Specifies the default server-side encryption to apply to new objects in the bucket. If a PUT Object request doesn't specify any server-side encryption, this default encryption will be applied. type BucketServerSideEncryptionByDefaultOutput struct{ *pulumi.OutputState } func (BucketServerSideEncryptionByDefaultOutput) ElementType() reflect.Type { @@ -8074,15 +7727,12 @@ func (o BucketServerSideEncryptionByDefaultOutput) ToOutput(ctx context.Context) } } -// "KMSMasterKeyID" can only be used when you set the value of SSEAlgorithm as aws:kms or aws:kms:dsse. func (o BucketServerSideEncryptionByDefaultOutput) KmsMasterKeyId() pulumi.StringPtrOutput { return o.ApplyT(func(v BucketServerSideEncryptionByDefault) *string { return v.KmsMasterKeyId }).(pulumi.StringPtrOutput) } -func (o BucketServerSideEncryptionByDefaultOutput) SseAlgorithm() BucketServerSideEncryptionByDefaultSseAlgorithmOutput { - return o.ApplyT(func(v BucketServerSideEncryptionByDefault) BucketServerSideEncryptionByDefaultSseAlgorithm { - return v.SseAlgorithm - }).(BucketServerSideEncryptionByDefaultSseAlgorithmOutput) +func (o BucketServerSideEncryptionByDefaultOutput) SseAlgorithm() pulumi.StringOutput { + return o.ApplyT(func(v BucketServerSideEncryptionByDefault) string { return v.SseAlgorithm }).(pulumi.StringOutput) } type BucketServerSideEncryptionByDefaultPtrOutput struct{ *pulumi.OutputState } @@ -8115,7 +7765,6 @@ func (o BucketServerSideEncryptionByDefaultPtrOutput) Elem() BucketServerSideEnc }).(BucketServerSideEncryptionByDefaultOutput) } -// "KMSMasterKeyID" can only be used when you set the value of SSEAlgorithm as aws:kms or aws:kms:dsse. func (o BucketServerSideEncryptionByDefaultPtrOutput) KmsMasterKeyId() pulumi.StringPtrOutput { return o.ApplyT(func(v *BucketServerSideEncryptionByDefault) *string { if v == nil { @@ -8125,18 +7774,16 @@ func (o BucketServerSideEncryptionByDefaultPtrOutput) KmsMasterKeyId() pulumi.St }).(pulumi.StringPtrOutput) } -func (o BucketServerSideEncryptionByDefaultPtrOutput) SseAlgorithm() BucketServerSideEncryptionByDefaultSseAlgorithmPtrOutput { - return o.ApplyT(func(v *BucketServerSideEncryptionByDefault) *BucketServerSideEncryptionByDefaultSseAlgorithm { +func (o BucketServerSideEncryptionByDefaultPtrOutput) SseAlgorithm() pulumi.StringPtrOutput { + return o.ApplyT(func(v *BucketServerSideEncryptionByDefault) *string { if v == nil { return nil } return &v.SseAlgorithm - }).(BucketServerSideEncryptionByDefaultSseAlgorithmPtrOutput) + }).(pulumi.StringPtrOutput) } -// Specifies the default server-side encryption configuration. type BucketServerSideEncryptionRule struct { - // Specifies whether Amazon S3 should use an S3 Bucket Key with server-side encryption using KMS (SSE-KMS) for new objects in the bucket. Existing objects are not affected. Setting the BucketKeyEnabled element to true causes Amazon S3 to use an S3 Bucket Key. By default, S3 Bucket Key is not enabled. BucketKeyEnabled *bool `pulumi:"bucketKeyEnabled"` ServerSideEncryptionByDefault *BucketServerSideEncryptionByDefault `pulumi:"serverSideEncryptionByDefault"` } @@ -8152,9 +7799,7 @@ type BucketServerSideEncryptionRuleInput interface { ToBucketServerSideEncryptionRuleOutputWithContext(context.Context) BucketServerSideEncryptionRuleOutput } -// Specifies the default server-side encryption configuration. type BucketServerSideEncryptionRuleArgs struct { - // Specifies whether Amazon S3 should use an S3 Bucket Key with server-side encryption using KMS (SSE-KMS) for new objects in the bucket. Existing objects are not affected. Setting the BucketKeyEnabled element to true causes Amazon S3 to use an S3 Bucket Key. By default, S3 Bucket Key is not enabled. BucketKeyEnabled pulumi.BoolPtrInput `pulumi:"bucketKeyEnabled"` ServerSideEncryptionByDefault BucketServerSideEncryptionByDefaultPtrInput `pulumi:"serverSideEncryptionByDefault"` } @@ -8208,7 +7853,6 @@ func (i BucketServerSideEncryptionRuleArray) ToOutput(ctx context.Context) pulum } } -// Specifies the default server-side encryption configuration. type BucketServerSideEncryptionRuleOutput struct{ *pulumi.OutputState } func (BucketServerSideEncryptionRuleOutput) ElementType() reflect.Type { @@ -8229,7 +7873,6 @@ func (o BucketServerSideEncryptionRuleOutput) ToOutput(ctx context.Context) pulu } } -// Specifies whether Amazon S3 should use an S3 Bucket Key with server-side encryption using KMS (SSE-KMS) for new objects in the bucket. Existing objects are not affected. Setting the BucketKeyEnabled element to true causes Amazon S3 to use an S3 Bucket Key. By default, S3 Bucket Key is not enabled. func (o BucketServerSideEncryptionRuleOutput) BucketKeyEnabled() pulumi.BoolPtrOutput { return o.ApplyT(func(v BucketServerSideEncryptionRule) *bool { return v.BucketKeyEnabled }).(pulumi.BoolPtrOutput) } @@ -8266,11 +7909,8 @@ func (o BucketServerSideEncryptionRuleArrayOutput) Index(i pulumi.IntInput) Buck }).(BucketServerSideEncryptionRuleOutput) } -// A container that describes additional filters for identifying the source objects that you want to replicate. type BucketSourceSelectionCriteria struct { - // A filter that you can specify for selection for modifications on replicas. - ReplicaModifications *BucketReplicaModifications `pulumi:"replicaModifications"` - // A container for filter information for the selection of Amazon S3 objects encrypted with AWS KMS. + ReplicaModifications *BucketReplicaModifications `pulumi:"replicaModifications"` SseKmsEncryptedObjects *BucketSseKmsEncryptedObjects `pulumi:"sseKmsEncryptedObjects"` } @@ -8285,11 +7925,8 @@ type BucketSourceSelectionCriteriaInput interface { ToBucketSourceSelectionCriteriaOutputWithContext(context.Context) BucketSourceSelectionCriteriaOutput } -// A container that describes additional filters for identifying the source objects that you want to replicate. type BucketSourceSelectionCriteriaArgs struct { - // A filter that you can specify for selection for modifications on replicas. - ReplicaModifications BucketReplicaModificationsPtrInput `pulumi:"replicaModifications"` - // A container for filter information for the selection of Amazon S3 objects encrypted with AWS KMS. + ReplicaModifications BucketReplicaModificationsPtrInput `pulumi:"replicaModifications"` SseKmsEncryptedObjects BucketSseKmsEncryptedObjectsPtrInput `pulumi:"sseKmsEncryptedObjects"` } @@ -8358,7 +7995,6 @@ func (i *bucketSourceSelectionCriteriaPtrType) ToOutput(ctx context.Context) pul } } -// A container that describes additional filters for identifying the source objects that you want to replicate. type BucketSourceSelectionCriteriaOutput struct{ *pulumi.OutputState } func (BucketSourceSelectionCriteriaOutput) ElementType() reflect.Type { @@ -8389,12 +8025,10 @@ func (o BucketSourceSelectionCriteriaOutput) ToOutput(ctx context.Context) pulum } } -// A filter that you can specify for selection for modifications on replicas. func (o BucketSourceSelectionCriteriaOutput) ReplicaModifications() BucketReplicaModificationsPtrOutput { return o.ApplyT(func(v BucketSourceSelectionCriteria) *BucketReplicaModifications { return v.ReplicaModifications }).(BucketReplicaModificationsPtrOutput) } -// A container for filter information for the selection of Amazon S3 objects encrypted with AWS KMS. func (o BucketSourceSelectionCriteriaOutput) SseKmsEncryptedObjects() BucketSseKmsEncryptedObjectsPtrOutput { return o.ApplyT(func(v BucketSourceSelectionCriteria) *BucketSseKmsEncryptedObjects { return v.SseKmsEncryptedObjects }).(BucketSseKmsEncryptedObjectsPtrOutput) } @@ -8429,7 +8063,6 @@ func (o BucketSourceSelectionCriteriaPtrOutput) Elem() BucketSourceSelectionCrit }).(BucketSourceSelectionCriteriaOutput) } -// A filter that you can specify for selection for modifications on replicas. func (o BucketSourceSelectionCriteriaPtrOutput) ReplicaModifications() BucketReplicaModificationsPtrOutput { return o.ApplyT(func(v *BucketSourceSelectionCriteria) *BucketReplicaModifications { if v == nil { @@ -8439,7 +8072,6 @@ func (o BucketSourceSelectionCriteriaPtrOutput) ReplicaModifications() BucketRep }).(BucketReplicaModificationsPtrOutput) } -// A container for filter information for the selection of Amazon S3 objects encrypted with AWS KMS. func (o BucketSourceSelectionCriteriaPtrOutput) SseKmsEncryptedObjects() BucketSseKmsEncryptedObjectsPtrOutput { return o.ApplyT(func(v *BucketSourceSelectionCriteria) *BucketSseKmsEncryptedObjects { if v == nil { @@ -8449,10 +8081,8 @@ func (o BucketSourceSelectionCriteriaPtrOutput) SseKmsEncryptedObjects() BucketS }).(BucketSseKmsEncryptedObjectsPtrOutput) } -// A container for filter information for the selection of S3 objects encrypted with AWS KMS. type BucketSseKmsEncryptedObjects struct { - // Specifies whether Amazon S3 replicates objects created with server-side encryption using a customer master key (CMK) stored in AWS Key Management Service. - Status BucketSseKmsEncryptedObjectsStatus `pulumi:"status"` + Status string `pulumi:"status"` } // BucketSseKmsEncryptedObjectsInput is an input type that accepts BucketSseKmsEncryptedObjectsArgs and BucketSseKmsEncryptedObjectsOutput values. @@ -8466,10 +8096,8 @@ type BucketSseKmsEncryptedObjectsInput interface { ToBucketSseKmsEncryptedObjectsOutputWithContext(context.Context) BucketSseKmsEncryptedObjectsOutput } -// A container for filter information for the selection of S3 objects encrypted with AWS KMS. type BucketSseKmsEncryptedObjectsArgs struct { - // Specifies whether Amazon S3 replicates objects created with server-side encryption using a customer master key (CMK) stored in AWS Key Management Service. - Status BucketSseKmsEncryptedObjectsStatusInput `pulumi:"status"` + Status pulumi.StringInput `pulumi:"status"` } func (BucketSseKmsEncryptedObjectsArgs) ElementType() reflect.Type { @@ -8537,7 +8165,6 @@ func (i *bucketSseKmsEncryptedObjectsPtrType) ToOutput(ctx context.Context) pulu } } -// A container for filter information for the selection of S3 objects encrypted with AWS KMS. type BucketSseKmsEncryptedObjectsOutput struct{ *pulumi.OutputState } func (BucketSseKmsEncryptedObjectsOutput) ElementType() reflect.Type { @@ -8568,9 +8195,8 @@ func (o BucketSseKmsEncryptedObjectsOutput) ToOutput(ctx context.Context) pulumi } } -// Specifies whether Amazon S3 replicates objects created with server-side encryption using a customer master key (CMK) stored in AWS Key Management Service. -func (o BucketSseKmsEncryptedObjectsOutput) Status() BucketSseKmsEncryptedObjectsStatusOutput { - return o.ApplyT(func(v BucketSseKmsEncryptedObjects) BucketSseKmsEncryptedObjectsStatus { return v.Status }).(BucketSseKmsEncryptedObjectsStatusOutput) +func (o BucketSseKmsEncryptedObjectsOutput) Status() pulumi.StringOutput { + return o.ApplyT(func(v BucketSseKmsEncryptedObjects) string { return v.Status }).(pulumi.StringOutput) } type BucketSseKmsEncryptedObjectsPtrOutput struct{ *pulumi.OutputState } @@ -8603,17 +8229,15 @@ func (o BucketSseKmsEncryptedObjectsPtrOutput) Elem() BucketSseKmsEncryptedObjec }).(BucketSseKmsEncryptedObjectsOutput) } -// Specifies whether Amazon S3 replicates objects created with server-side encryption using a customer master key (CMK) stored in AWS Key Management Service. -func (o BucketSseKmsEncryptedObjectsPtrOutput) Status() BucketSseKmsEncryptedObjectsStatusPtrOutput { - return o.ApplyT(func(v *BucketSseKmsEncryptedObjects) *BucketSseKmsEncryptedObjectsStatus { +func (o BucketSseKmsEncryptedObjectsPtrOutput) Status() pulumi.StringPtrOutput { + return o.ApplyT(func(v *BucketSseKmsEncryptedObjects) *string { if v == nil { return nil } return &v.Status - }).(BucketSseKmsEncryptedObjectsStatusPtrOutput) + }).(pulumi.StringPtrOutput) } -// Specifies data related to access patterns to be collected and made available to analyze the tradeoffs between different storage classes for an Amazon S3 bucket. type BucketStorageClassAnalysis struct { DataExport *BucketDataExport `pulumi:"dataExport"` } @@ -8629,7 +8253,6 @@ type BucketStorageClassAnalysisInput interface { ToBucketStorageClassAnalysisOutputWithContext(context.Context) BucketStorageClassAnalysisOutput } -// Specifies data related to access patterns to be collected and made available to analyze the tradeoffs between different storage classes for an Amazon S3 bucket. type BucketStorageClassAnalysisArgs struct { DataExport BucketDataExportPtrInput `pulumi:"dataExport"` } @@ -8652,7 +8275,6 @@ func (i BucketStorageClassAnalysisArgs) ToOutput(ctx context.Context) pulumix.Ou } } -// Specifies data related to access patterns to be collected and made available to analyze the tradeoffs between different storage classes for an Amazon S3 bucket. type BucketStorageClassAnalysisOutput struct{ *pulumi.OutputState } func (BucketStorageClassAnalysisOutput) ElementType() reflect.Type { @@ -8801,7 +8423,6 @@ func (o BucketTagArrayOutput) Index(i pulumi.IntInput) BucketTagOutput { }).(BucketTagOutput) } -// Tags to use to identify a subset of objects for an Amazon S3 bucket. type BucketTagFilter struct { Key string `pulumi:"key"` Value string `pulumi:"value"` @@ -8818,7 +8439,6 @@ type BucketTagFilterInput interface { ToBucketTagFilterOutputWithContext(context.Context) BucketTagFilterOutput } -// Tags to use to identify a subset of objects for an Amazon S3 bucket. type BucketTagFilterArgs struct { Key pulumi.StringInput `pulumi:"key"` Value pulumi.StringInput `pulumi:"value"` @@ -8920,7 +8540,6 @@ func (i BucketTagFilterArray) ToOutput(ctx context.Context) pulumix.Output[[]Buc } } -// Tags to use to identify a subset of objects for an Amazon S3 bucket. type BucketTagFilterOutput struct{ *pulumi.OutputState } func (BucketTagFilterOutput) ElementType() reflect.Type { @@ -9034,10 +8653,8 @@ func (o BucketTagFilterArrayOutput) Index(i pulumi.IntInput) BucketTagFilterOutp } type BucketTiering struct { - // S3 Intelligent-Tiering access tier. See Storage class for automatically optimizing frequently and infrequently accessed objects for a list of access tiers in the S3 Intelligent-Tiering storage class. - AccessTier BucketTieringAccessTier `pulumi:"accessTier"` - // The number of consecutive days of no access after which an object will be eligible to be transitioned to the corresponding tier. The minimum number of days specified for Archive Access tier must be at least 90 days and Deep Archive Access tier must be at least 180 days. The maximum can be up to 2 years (730 days). - Days int `pulumi:"days"` + AccessTier string `pulumi:"accessTier"` + Days int `pulumi:"days"` } // BucketTieringInput is an input type that accepts BucketTieringArgs and BucketTieringOutput values. @@ -9052,10 +8669,8 @@ type BucketTieringInput interface { } type BucketTieringArgs struct { - // S3 Intelligent-Tiering access tier. See Storage class for automatically optimizing frequently and infrequently accessed objects for a list of access tiers in the S3 Intelligent-Tiering storage class. - AccessTier BucketTieringAccessTierInput `pulumi:"accessTier"` - // The number of consecutive days of no access after which an object will be eligible to be transitioned to the corresponding tier. The minimum number of days specified for Archive Access tier must be at least 90 days and Deep Archive Access tier must be at least 180 days. The maximum can be up to 2 years (730 days). - Days pulumi.IntInput `pulumi:"days"` + AccessTier pulumi.StringInput `pulumi:"accessTier"` + Days pulumi.IntInput `pulumi:"days"` } func (BucketTieringArgs) ElementType() reflect.Type { @@ -9127,12 +8742,10 @@ func (o BucketTieringOutput) ToOutput(ctx context.Context) pulumix.Output[Bucket } } -// S3 Intelligent-Tiering access tier. See Storage class for automatically optimizing frequently and infrequently accessed objects for a list of access tiers in the S3 Intelligent-Tiering storage class. -func (o BucketTieringOutput) AccessTier() BucketTieringAccessTierOutput { - return o.ApplyT(func(v BucketTiering) BucketTieringAccessTier { return v.AccessTier }).(BucketTieringAccessTierOutput) +func (o BucketTieringOutput) AccessTier() pulumi.StringOutput { + return o.ApplyT(func(v BucketTiering) string { return v.AccessTier }).(pulumi.StringOutput) } -// The number of consecutive days of no access after which an object will be eligible to be transitioned to the corresponding tier. The minimum number of days specified for Archive Access tier must be at least 90 days and Deep Archive Access tier must be at least 180 days. The maximum can be up to 2 years (730 days). func (o BucketTieringOutput) Days() pulumi.IntOutput { return o.ApplyT(func(v BucketTiering) int { return v.Days }).(pulumi.IntOutput) } @@ -9163,14 +8776,10 @@ func (o BucketTieringArrayOutput) Index(i pulumi.IntInput) BucketTieringOutput { }).(BucketTieringOutput) } -// The topic to which notifications are sent and the events for which notifications are generated. type BucketTopicConfiguration struct { - // The Amazon S3 bucket event about which to send notifications. - Event string `pulumi:"event"` - // The filtering rules that determine for which objects to send notifications. + Event string `pulumi:"event"` Filter *BucketNotificationFilter `pulumi:"filter"` - // The Amazon Resource Name (ARN) of the Amazon SNS topic to which Amazon S3 publishes a message when it detects events of the specified type. - Topic string `pulumi:"topic"` + Topic string `pulumi:"topic"` } // BucketTopicConfigurationInput is an input type that accepts BucketTopicConfigurationArgs and BucketTopicConfigurationOutput values. @@ -9184,14 +8793,10 @@ type BucketTopicConfigurationInput interface { ToBucketTopicConfigurationOutputWithContext(context.Context) BucketTopicConfigurationOutput } -// The topic to which notifications are sent and the events for which notifications are generated. type BucketTopicConfigurationArgs struct { - // The Amazon S3 bucket event about which to send notifications. - Event pulumi.StringInput `pulumi:"event"` - // The filtering rules that determine for which objects to send notifications. + Event pulumi.StringInput `pulumi:"event"` Filter BucketNotificationFilterPtrInput `pulumi:"filter"` - // The Amazon Resource Name (ARN) of the Amazon SNS topic to which Amazon S3 publishes a message when it detects events of the specified type. - Topic pulumi.StringInput `pulumi:"topic"` + Topic pulumi.StringInput `pulumi:"topic"` } func (BucketTopicConfigurationArgs) ElementType() reflect.Type { @@ -9243,7 +8848,6 @@ func (i BucketTopicConfigurationArray) ToOutput(ctx context.Context) pulumix.Out } } -// The topic to which notifications are sent and the events for which notifications are generated. type BucketTopicConfigurationOutput struct{ *pulumi.OutputState } func (BucketTopicConfigurationOutput) ElementType() reflect.Type { @@ -9264,17 +8868,14 @@ func (o BucketTopicConfigurationOutput) ToOutput(ctx context.Context) pulumix.Ou } } -// The Amazon S3 bucket event about which to send notifications. func (o BucketTopicConfigurationOutput) Event() pulumi.StringOutput { return o.ApplyT(func(v BucketTopicConfiguration) string { return v.Event }).(pulumi.StringOutput) } -// The filtering rules that determine for which objects to send notifications. func (o BucketTopicConfigurationOutput) Filter() BucketNotificationFilterPtrOutput { return o.ApplyT(func(v BucketTopicConfiguration) *BucketNotificationFilter { return v.Filter }).(BucketNotificationFilterPtrOutput) } -// The Amazon Resource Name (ARN) of the Amazon SNS topic to which Amazon S3 publishes a message when it detects events of the specified type. func (o BucketTopicConfigurationOutput) Topic() pulumi.StringOutput { return o.ApplyT(func(v BucketTopicConfiguration) string { return v.Topic }).(pulumi.StringOutput) } @@ -9305,11 +8906,10 @@ func (o BucketTopicConfigurationArrayOutput) Index(i pulumi.IntInput) BucketTopi }).(BucketTopicConfigurationOutput) } -// You must specify at least one of "TransitionDate" and "TransitionInDays" type BucketTransition struct { - StorageClass BucketTransitionStorageClass `pulumi:"storageClass"` - TransitionDate *string `pulumi:"transitionDate"` - TransitionInDays *int `pulumi:"transitionInDays"` + StorageClass string `pulumi:"storageClass"` + TransitionDate *string `pulumi:"transitionDate"` + TransitionInDays *int `pulumi:"transitionInDays"` } // BucketTransitionInput is an input type that accepts BucketTransitionArgs and BucketTransitionOutput values. @@ -9323,11 +8923,10 @@ type BucketTransitionInput interface { ToBucketTransitionOutputWithContext(context.Context) BucketTransitionOutput } -// You must specify at least one of "TransitionDate" and "TransitionInDays" type BucketTransitionArgs struct { - StorageClass BucketTransitionStorageClassInput `pulumi:"storageClass"` - TransitionDate pulumi.StringPtrInput `pulumi:"transitionDate"` - TransitionInDays pulumi.IntPtrInput `pulumi:"transitionInDays"` + StorageClass pulumi.StringInput `pulumi:"storageClass"` + TransitionDate pulumi.StringPtrInput `pulumi:"transitionDate"` + TransitionInDays pulumi.IntPtrInput `pulumi:"transitionInDays"` } func (BucketTransitionArgs) ElementType() reflect.Type { @@ -9426,7 +9025,6 @@ func (i BucketTransitionArray) ToOutput(ctx context.Context) pulumix.Output[[]Bu } } -// You must specify at least one of "TransitionDate" and "TransitionInDays" type BucketTransitionOutput struct{ *pulumi.OutputState } func (BucketTransitionOutput) ElementType() reflect.Type { @@ -9457,8 +9055,8 @@ func (o BucketTransitionOutput) ToOutput(ctx context.Context) pulumix.Output[Buc } } -func (o BucketTransitionOutput) StorageClass() BucketTransitionStorageClassOutput { - return o.ApplyT(func(v BucketTransition) BucketTransitionStorageClass { return v.StorageClass }).(BucketTransitionStorageClassOutput) +func (o BucketTransitionOutput) StorageClass() pulumi.StringOutput { + return o.ApplyT(func(v BucketTransition) string { return v.StorageClass }).(pulumi.StringOutput) } func (o BucketTransitionOutput) TransitionDate() pulumi.StringPtrOutput { @@ -9499,13 +9097,13 @@ func (o BucketTransitionPtrOutput) Elem() BucketTransitionOutput { }).(BucketTransitionOutput) } -func (o BucketTransitionPtrOutput) StorageClass() BucketTransitionStorageClassPtrOutput { - return o.ApplyT(func(v *BucketTransition) *BucketTransitionStorageClass { +func (o BucketTransitionPtrOutput) StorageClass() pulumi.StringPtrOutput { + return o.ApplyT(func(v *BucketTransition) *string { if v == nil { return nil } return &v.StorageClass - }).(BucketTransitionStorageClassPtrOutput) + }).(pulumi.StringPtrOutput) } func (o BucketTransitionPtrOutput) TransitionDate() pulumi.StringPtrOutput { @@ -9552,10 +9150,8 @@ func (o BucketTransitionArrayOutput) Index(i pulumi.IntInput) BucketTransitionOu }).(BucketTransitionOutput) } -// Describes the versioning state of an Amazon S3 bucket. type BucketVersioningConfiguration struct { - // The versioning state of the bucket. - Status BucketVersioningConfigurationStatus `pulumi:"status"` + Status string `pulumi:"status"` } // BucketVersioningConfigurationInput is an input type that accepts BucketVersioningConfigurationArgs and BucketVersioningConfigurationOutput values. @@ -9569,10 +9165,8 @@ type BucketVersioningConfigurationInput interface { ToBucketVersioningConfigurationOutputWithContext(context.Context) BucketVersioningConfigurationOutput } -// Describes the versioning state of an Amazon S3 bucket. type BucketVersioningConfigurationArgs struct { - // The versioning state of the bucket. - Status BucketVersioningConfigurationStatusInput `pulumi:"status"` + Status pulumi.StringInput `pulumi:"status"` } func (BucketVersioningConfigurationArgs) ElementType() reflect.Type { @@ -9640,7 +9234,6 @@ func (i *bucketVersioningConfigurationPtrType) ToOutput(ctx context.Context) pul } } -// Describes the versioning state of an Amazon S3 bucket. type BucketVersioningConfigurationOutput struct{ *pulumi.OutputState } func (BucketVersioningConfigurationOutput) ElementType() reflect.Type { @@ -9671,9 +9264,8 @@ func (o BucketVersioningConfigurationOutput) ToOutput(ctx context.Context) pulum } } -// The versioning state of the bucket. -func (o BucketVersioningConfigurationOutput) Status() BucketVersioningConfigurationStatusOutput { - return o.ApplyT(func(v BucketVersioningConfiguration) BucketVersioningConfigurationStatus { return v.Status }).(BucketVersioningConfigurationStatusOutput) +func (o BucketVersioningConfigurationOutput) Status() pulumi.StringOutput { + return o.ApplyT(func(v BucketVersioningConfiguration) string { return v.Status }).(pulumi.StringOutput) } type BucketVersioningConfigurationPtrOutput struct{ *pulumi.OutputState } @@ -9706,21 +9298,17 @@ func (o BucketVersioningConfigurationPtrOutput) Elem() BucketVersioningConfigura }).(BucketVersioningConfigurationOutput) } -// The versioning state of the bucket. -func (o BucketVersioningConfigurationPtrOutput) Status() BucketVersioningConfigurationStatusPtrOutput { - return o.ApplyT(func(v *BucketVersioningConfiguration) *BucketVersioningConfigurationStatus { +func (o BucketVersioningConfigurationPtrOutput) Status() pulumi.StringPtrOutput { + return o.ApplyT(func(v *BucketVersioningConfiguration) *string { if v == nil { return nil } return &v.Status - }).(BucketVersioningConfigurationStatusPtrOutput) + }).(pulumi.StringPtrOutput) } -// Specifies website configuration parameters for an Amazon S3 bucket. type BucketWebsiteConfiguration struct { - // The name of the error document for the website. - ErrorDocument *string `pulumi:"errorDocument"` - // The name of the index document for the website. + ErrorDocument *string `pulumi:"errorDocument"` IndexDocument *string `pulumi:"indexDocument"` RedirectAllRequestsTo *BucketRedirectAllRequestsTo `pulumi:"redirectAllRequestsTo"` RoutingRules []BucketRoutingRule `pulumi:"routingRules"` @@ -9737,11 +9325,8 @@ type BucketWebsiteConfigurationInput interface { ToBucketWebsiteConfigurationOutputWithContext(context.Context) BucketWebsiteConfigurationOutput } -// Specifies website configuration parameters for an Amazon S3 bucket. type BucketWebsiteConfigurationArgs struct { - // The name of the error document for the website. - ErrorDocument pulumi.StringPtrInput `pulumi:"errorDocument"` - // The name of the index document for the website. + ErrorDocument pulumi.StringPtrInput `pulumi:"errorDocument"` IndexDocument pulumi.StringPtrInput `pulumi:"indexDocument"` RedirectAllRequestsTo BucketRedirectAllRequestsToPtrInput `pulumi:"redirectAllRequestsTo"` RoutingRules BucketRoutingRuleArrayInput `pulumi:"routingRules"` @@ -9812,7 +9397,6 @@ func (i *bucketWebsiteConfigurationPtrType) ToOutput(ctx context.Context) pulumi } } -// Specifies website configuration parameters for an Amazon S3 bucket. type BucketWebsiteConfigurationOutput struct{ *pulumi.OutputState } func (BucketWebsiteConfigurationOutput) ElementType() reflect.Type { @@ -9843,12 +9427,10 @@ func (o BucketWebsiteConfigurationOutput) ToOutput(ctx context.Context) pulumix. } } -// The name of the error document for the website. func (o BucketWebsiteConfigurationOutput) ErrorDocument() pulumi.StringPtrOutput { return o.ApplyT(func(v BucketWebsiteConfiguration) *string { return v.ErrorDocument }).(pulumi.StringPtrOutput) } -// The name of the index document for the website. func (o BucketWebsiteConfigurationOutput) IndexDocument() pulumi.StringPtrOutput { return o.ApplyT(func(v BucketWebsiteConfiguration) *string { return v.IndexDocument }).(pulumi.StringPtrOutput) } @@ -9891,7 +9473,6 @@ func (o BucketWebsiteConfigurationPtrOutput) Elem() BucketWebsiteConfigurationOu }).(BucketWebsiteConfigurationOutput) } -// The name of the error document for the website. func (o BucketWebsiteConfigurationPtrOutput) ErrorDocument() pulumi.StringPtrOutput { return o.ApplyT(func(v *BucketWebsiteConfiguration) *string { if v == nil { @@ -9901,7 +9482,6 @@ func (o BucketWebsiteConfigurationPtrOutput) ErrorDocument() pulumi.StringPtrOut }).(pulumi.StringPtrOutput) } -// The name of the index document for the website. func (o BucketWebsiteConfigurationPtrOutput) IndexDocument() pulumi.StringPtrOutput { return o.ApplyT(func(v *BucketWebsiteConfiguration) *string { if v == nil { diff --git a/sdk/go/aws/sagemaker/pulumiTypes.go b/sdk/go/aws/sagemaker/pulumiTypes.go index a039508365..e8d4eef4b8 100644 --- a/sdk/go/aws/sagemaker/pulumiTypes.go +++ b/sdk/go/aws/sagemaker/pulumiTypes.go @@ -1237,6 +1237,8 @@ type DataQualityJobDefinitionBatchTransformInput struct { // A URI that identifies the Amazon S3 storage location where Batch Transform Job captures data. DataCapturedDestinationS3Uri string `pulumi:"dataCapturedDestinationS3Uri"` DatasetFormat DataQualityJobDefinitionDatasetFormat `pulumi:"datasetFormat"` + // Indexes or names of the features to be excluded from analysis + ExcludeFeaturesAttribute *string `pulumi:"excludeFeaturesAttribute"` // Path to the filesystem where the endpoint data is available to the container. LocalPath string `pulumi:"localPath"` // Whether input data distributed in Amazon S3 is fully replicated or sharded by an S3 key. Defauts to FullyReplicated @@ -1261,6 +1263,8 @@ type DataQualityJobDefinitionBatchTransformInputArgs struct { // A URI that identifies the Amazon S3 storage location where Batch Transform Job captures data. DataCapturedDestinationS3Uri pulumi.StringInput `pulumi:"dataCapturedDestinationS3Uri"` DatasetFormat DataQualityJobDefinitionDatasetFormatInput `pulumi:"datasetFormat"` + // Indexes or names of the features to be excluded from analysis + ExcludeFeaturesAttribute pulumi.StringPtrInput `pulumi:"excludeFeaturesAttribute"` // Path to the filesystem where the endpoint data is available to the container. LocalPath pulumi.StringInput `pulumi:"localPath"` // Whether input data distributed in Amazon S3 is fully replicated or sharded by an S3 key. Defauts to FullyReplicated @@ -1376,6 +1380,11 @@ func (o DataQualityJobDefinitionBatchTransformInputOutput) DatasetFormat() DataQ }).(DataQualityJobDefinitionDatasetFormatOutput) } +// Indexes or names of the features to be excluded from analysis +func (o DataQualityJobDefinitionBatchTransformInputOutput) ExcludeFeaturesAttribute() pulumi.StringPtrOutput { + return o.ApplyT(func(v DataQualityJobDefinitionBatchTransformInput) *string { return v.ExcludeFeaturesAttribute }).(pulumi.StringPtrOutput) +} + // Path to the filesystem where the endpoint data is available to the container. func (o DataQualityJobDefinitionBatchTransformInputOutput) LocalPath() pulumi.StringOutput { return o.ApplyT(func(v DataQualityJobDefinitionBatchTransformInput) string { return v.LocalPath }).(pulumi.StringOutput) @@ -1444,6 +1453,16 @@ func (o DataQualityJobDefinitionBatchTransformInputPtrOutput) DatasetFormat() Da }).(DataQualityJobDefinitionDatasetFormatPtrOutput) } +// Indexes or names of the features to be excluded from analysis +func (o DataQualityJobDefinitionBatchTransformInputPtrOutput) ExcludeFeaturesAttribute() pulumi.StringPtrOutput { + return o.ApplyT(func(v *DataQualityJobDefinitionBatchTransformInput) *string { + if v == nil { + return nil + } + return v.ExcludeFeaturesAttribute + }).(pulumi.StringPtrOutput) +} + // Path to the filesystem where the endpoint data is available to the container. func (o DataQualityJobDefinitionBatchTransformInputPtrOutput) LocalPath() pulumi.StringPtrOutput { return o.ApplyT(func(v *DataQualityJobDefinitionBatchTransformInput) *string { @@ -2473,6 +2492,8 @@ func (o DataQualityJobDefinitionDatasetFormatPtrOutput) Parquet() pulumi.BoolPtr // The endpoint for a monitoring job. type DataQualityJobDefinitionEndpointInput struct { EndpointName string `pulumi:"endpointName"` + // Indexes or names of the features to be excluded from analysis + ExcludeFeaturesAttribute *string `pulumi:"excludeFeaturesAttribute"` // Path to the filesystem where the endpoint data is available to the container. LocalPath string `pulumi:"localPath"` // Whether input data distributed in Amazon S3 is fully replicated or sharded by an S3 key. Defauts to FullyReplicated @@ -2495,6 +2516,8 @@ type DataQualityJobDefinitionEndpointInputInput interface { // The endpoint for a monitoring job. type DataQualityJobDefinitionEndpointInputArgs struct { EndpointName pulumi.StringInput `pulumi:"endpointName"` + // Indexes or names of the features to be excluded from analysis + ExcludeFeaturesAttribute pulumi.StringPtrInput `pulumi:"excludeFeaturesAttribute"` // Path to the filesystem where the endpoint data is available to the container. LocalPath pulumi.StringInput `pulumi:"localPath"` // Whether input data distributed in Amazon S3 is fully replicated or sharded by an S3 key. Defauts to FullyReplicated @@ -2603,6 +2626,11 @@ func (o DataQualityJobDefinitionEndpointInputOutput) EndpointName() pulumi.Strin return o.ApplyT(func(v DataQualityJobDefinitionEndpointInput) string { return v.EndpointName }).(pulumi.StringOutput) } +// Indexes or names of the features to be excluded from analysis +func (o DataQualityJobDefinitionEndpointInputOutput) ExcludeFeaturesAttribute() pulumi.StringPtrOutput { + return o.ApplyT(func(v DataQualityJobDefinitionEndpointInput) *string { return v.ExcludeFeaturesAttribute }).(pulumi.StringPtrOutput) +} + // Path to the filesystem where the endpoint data is available to the container. func (o DataQualityJobDefinitionEndpointInputOutput) LocalPath() pulumi.StringOutput { return o.ApplyT(func(v DataQualityJobDefinitionEndpointInput) string { return v.LocalPath }).(pulumi.StringOutput) @@ -2661,6 +2689,16 @@ func (o DataQualityJobDefinitionEndpointInputPtrOutput) EndpointName() pulumi.St }).(pulumi.StringPtrOutput) } +// Indexes or names of the features to be excluded from analysis +func (o DataQualityJobDefinitionEndpointInputPtrOutput) ExcludeFeaturesAttribute() pulumi.StringPtrOutput { + return o.ApplyT(func(v *DataQualityJobDefinitionEndpointInput) *string { + if v == nil { + return nil + } + return v.ExcludeFeaturesAttribute + }).(pulumi.StringPtrOutput) +} + // Path to the filesystem where the endpoint data is available to the container. func (o DataQualityJobDefinitionEndpointInputPtrOutput) LocalPath() pulumi.StringPtrOutput { return o.ApplyT(func(v *DataQualityJobDefinitionEndpointInput) *string { @@ -33441,6 +33479,8 @@ type MonitoringScheduleBatchTransformInput struct { // A URI that identifies the Amazon S3 storage location where Batch Transform Job captures data. DataCapturedDestinationS3Uri string `pulumi:"dataCapturedDestinationS3Uri"` DatasetFormat MonitoringScheduleDatasetFormat `pulumi:"datasetFormat"` + // Indexes or names of the features to be excluded from analysis + ExcludeFeaturesAttribute *string `pulumi:"excludeFeaturesAttribute"` // Path to the filesystem where the endpoint data is available to the container. LocalPath string `pulumi:"localPath"` // Whether input data distributed in Amazon S3 is fully replicated or sharded by an S3 key. Defauts to FullyReplicated @@ -33465,6 +33505,8 @@ type MonitoringScheduleBatchTransformInputArgs struct { // A URI that identifies the Amazon S3 storage location where Batch Transform Job captures data. DataCapturedDestinationS3Uri pulumi.StringInput `pulumi:"dataCapturedDestinationS3Uri"` DatasetFormat MonitoringScheduleDatasetFormatInput `pulumi:"datasetFormat"` + // Indexes or names of the features to be excluded from analysis + ExcludeFeaturesAttribute pulumi.StringPtrInput `pulumi:"excludeFeaturesAttribute"` // Path to the filesystem where the endpoint data is available to the container. LocalPath pulumi.StringInput `pulumi:"localPath"` // Whether input data distributed in Amazon S3 is fully replicated or sharded by an S3 key. Defauts to FullyReplicated @@ -33578,6 +33620,11 @@ func (o MonitoringScheduleBatchTransformInputOutput) DatasetFormat() MonitoringS return o.ApplyT(func(v MonitoringScheduleBatchTransformInput) MonitoringScheduleDatasetFormat { return v.DatasetFormat }).(MonitoringScheduleDatasetFormatOutput) } +// Indexes or names of the features to be excluded from analysis +func (o MonitoringScheduleBatchTransformInputOutput) ExcludeFeaturesAttribute() pulumi.StringPtrOutput { + return o.ApplyT(func(v MonitoringScheduleBatchTransformInput) *string { return v.ExcludeFeaturesAttribute }).(pulumi.StringPtrOutput) +} + // Path to the filesystem where the endpoint data is available to the container. func (o MonitoringScheduleBatchTransformInputOutput) LocalPath() pulumi.StringOutput { return o.ApplyT(func(v MonitoringScheduleBatchTransformInput) string { return v.LocalPath }).(pulumi.StringOutput) @@ -33646,6 +33693,16 @@ func (o MonitoringScheduleBatchTransformInputPtrOutput) DatasetFormat() Monitori }).(MonitoringScheduleDatasetFormatPtrOutput) } +// Indexes or names of the features to be excluded from analysis +func (o MonitoringScheduleBatchTransformInputPtrOutput) ExcludeFeaturesAttribute() pulumi.StringPtrOutput { + return o.ApplyT(func(v *MonitoringScheduleBatchTransformInput) *string { + if v == nil { + return nil + } + return v.ExcludeFeaturesAttribute + }).(pulumi.StringPtrOutput) +} + // Path to the filesystem where the endpoint data is available to the container. func (o MonitoringScheduleBatchTransformInputPtrOutput) LocalPath() pulumi.StringPtrOutput { return o.ApplyT(func(v *MonitoringScheduleBatchTransformInput) *string { @@ -34572,6 +34629,8 @@ func (o MonitoringScheduleDatasetFormatPtrOutput) Parquet() pulumi.BoolPtrOutput // The endpoint for a monitoring job. type MonitoringScheduleEndpointInput struct { EndpointName string `pulumi:"endpointName"` + // Indexes or names of the features to be excluded from analysis + ExcludeFeaturesAttribute *string `pulumi:"excludeFeaturesAttribute"` // Path to the filesystem where the endpoint data is available to the container. LocalPath string `pulumi:"localPath"` // Whether input data distributed in Amazon S3 is fully replicated or sharded by an S3 key. Defauts to FullyReplicated @@ -34594,6 +34653,8 @@ type MonitoringScheduleEndpointInputInput interface { // The endpoint for a monitoring job. type MonitoringScheduleEndpointInputArgs struct { EndpointName pulumi.StringInput `pulumi:"endpointName"` + // Indexes or names of the features to be excluded from analysis + ExcludeFeaturesAttribute pulumi.StringPtrInput `pulumi:"excludeFeaturesAttribute"` // Path to the filesystem where the endpoint data is available to the container. LocalPath pulumi.StringInput `pulumi:"localPath"` // Whether input data distributed in Amazon S3 is fully replicated or sharded by an S3 key. Defauts to FullyReplicated @@ -34702,6 +34763,11 @@ func (o MonitoringScheduleEndpointInputOutput) EndpointName() pulumi.StringOutpu return o.ApplyT(func(v MonitoringScheduleEndpointInput) string { return v.EndpointName }).(pulumi.StringOutput) } +// Indexes or names of the features to be excluded from analysis +func (o MonitoringScheduleEndpointInputOutput) ExcludeFeaturesAttribute() pulumi.StringPtrOutput { + return o.ApplyT(func(v MonitoringScheduleEndpointInput) *string { return v.ExcludeFeaturesAttribute }).(pulumi.StringPtrOutput) +} + // Path to the filesystem where the endpoint data is available to the container. func (o MonitoringScheduleEndpointInputOutput) LocalPath() pulumi.StringOutput { return o.ApplyT(func(v MonitoringScheduleEndpointInput) string { return v.LocalPath }).(pulumi.StringOutput) @@ -34760,6 +34826,16 @@ func (o MonitoringScheduleEndpointInputPtrOutput) EndpointName() pulumi.StringPt }).(pulumi.StringPtrOutput) } +// Indexes or names of the features to be excluded from analysis +func (o MonitoringScheduleEndpointInputPtrOutput) ExcludeFeaturesAttribute() pulumi.StringPtrOutput { + return o.ApplyT(func(v *MonitoringScheduleEndpointInput) *string { + if v == nil { + return nil + } + return v.ExcludeFeaturesAttribute + }).(pulumi.StringPtrOutput) +} + // Path to the filesystem where the endpoint data is available to the container. func (o MonitoringScheduleEndpointInputPtrOutput) LocalPath() pulumi.StringPtrOutput { return o.ApplyT(func(v *MonitoringScheduleEndpointInput) *string { @@ -36667,7 +36743,11 @@ func (o MonitoringScheduleS3OutputOutput) S3Uri() pulumi.StringOutput { // Configuration details about the monitoring schedule. type MonitoringScheduleScheduleConfig struct { - // A cron expression that describes details about the monitoring schedule. + // Data Analysis end time, e.g. PT0H + DataAnalysisEndTime *string `pulumi:"dataAnalysisEndTime"` + // Data Analysis start time, e.g. -PT1H + DataAnalysisStartTime *string `pulumi:"dataAnalysisStartTime"` + // A cron expression or 'NOW' that describes details about the monitoring schedule. ScheduleExpression string `pulumi:"scheduleExpression"` } @@ -36684,7 +36764,11 @@ type MonitoringScheduleScheduleConfigInput interface { // Configuration details about the monitoring schedule. type MonitoringScheduleScheduleConfigArgs struct { - // A cron expression that describes details about the monitoring schedule. + // Data Analysis end time, e.g. PT0H + DataAnalysisEndTime pulumi.StringPtrInput `pulumi:"dataAnalysisEndTime"` + // Data Analysis start time, e.g. -PT1H + DataAnalysisStartTime pulumi.StringPtrInput `pulumi:"dataAnalysisStartTime"` + // A cron expression or 'NOW' that describes details about the monitoring schedule. ScheduleExpression pulumi.StringInput `pulumi:"scheduleExpression"` } @@ -36784,7 +36868,17 @@ func (o MonitoringScheduleScheduleConfigOutput) ToOutput(ctx context.Context) pu } } -// A cron expression that describes details about the monitoring schedule. +// Data Analysis end time, e.g. PT0H +func (o MonitoringScheduleScheduleConfigOutput) DataAnalysisEndTime() pulumi.StringPtrOutput { + return o.ApplyT(func(v MonitoringScheduleScheduleConfig) *string { return v.DataAnalysisEndTime }).(pulumi.StringPtrOutput) +} + +// Data Analysis start time, e.g. -PT1H +func (o MonitoringScheduleScheduleConfigOutput) DataAnalysisStartTime() pulumi.StringPtrOutput { + return o.ApplyT(func(v MonitoringScheduleScheduleConfig) *string { return v.DataAnalysisStartTime }).(pulumi.StringPtrOutput) +} + +// A cron expression or 'NOW' that describes details about the monitoring schedule. func (o MonitoringScheduleScheduleConfigOutput) ScheduleExpression() pulumi.StringOutput { return o.ApplyT(func(v MonitoringScheduleScheduleConfig) string { return v.ScheduleExpression }).(pulumi.StringOutput) } @@ -36819,7 +36913,27 @@ func (o MonitoringScheduleScheduleConfigPtrOutput) Elem() MonitoringScheduleSche }).(MonitoringScheduleScheduleConfigOutput) } -// A cron expression that describes details about the monitoring schedule. +// Data Analysis end time, e.g. PT0H +func (o MonitoringScheduleScheduleConfigPtrOutput) DataAnalysisEndTime() pulumi.StringPtrOutput { + return o.ApplyT(func(v *MonitoringScheduleScheduleConfig) *string { + if v == nil { + return nil + } + return v.DataAnalysisEndTime + }).(pulumi.StringPtrOutput) +} + +// Data Analysis start time, e.g. -PT1H +func (o MonitoringScheduleScheduleConfigPtrOutput) DataAnalysisStartTime() pulumi.StringPtrOutput { + return o.ApplyT(func(v *MonitoringScheduleScheduleConfig) *string { + if v == nil { + return nil + } + return v.DataAnalysisStartTime + }).(pulumi.StringPtrOutput) +} + +// A cron expression or 'NOW' that describes details about the monitoring schedule. func (o MonitoringScheduleScheduleConfigPtrOutput) ScheduleExpression() pulumi.StringPtrOutput { return o.ApplyT(func(v *MonitoringScheduleScheduleConfig) *string { if v == nil { diff --git a/sdk/go/aws/servicecatalogappregistry/getAttributeGroupAssociation.go b/sdk/go/aws/servicecatalogappregistry/getAttributeGroupAssociation.go index d07c3601c1..8f2895cc07 100644 --- a/sdk/go/aws/servicecatalogappregistry/getAttributeGroupAssociation.go +++ b/sdk/go/aws/servicecatalogappregistry/getAttributeGroupAssociation.go @@ -24,13 +24,13 @@ func LookupAttributeGroupAssociation(ctx *pulumi.Context, args *LookupAttributeG } type LookupAttributeGroupAssociationArgs struct { - Id string `pulumi:"id"` + ApplicationArn string `pulumi:"applicationArn"` + AttributeGroupArn string `pulumi:"attributeGroupArn"` } type LookupAttributeGroupAssociationResult struct { ApplicationArn *string `pulumi:"applicationArn"` AttributeGroupArn *string `pulumi:"attributeGroupArn"` - Id *string `pulumi:"id"` } func LookupAttributeGroupAssociationOutput(ctx *pulumi.Context, args LookupAttributeGroupAssociationOutputArgs, opts ...pulumi.InvokeOption) LookupAttributeGroupAssociationResultOutput { @@ -47,7 +47,8 @@ func LookupAttributeGroupAssociationOutput(ctx *pulumi.Context, args LookupAttri } type LookupAttributeGroupAssociationOutputArgs struct { - Id pulumi.StringInput `pulumi:"id"` + ApplicationArn pulumi.StringInput `pulumi:"applicationArn"` + AttributeGroupArn pulumi.StringInput `pulumi:"attributeGroupArn"` } func (LookupAttributeGroupAssociationOutputArgs) ElementType() reflect.Type { @@ -82,10 +83,6 @@ func (o LookupAttributeGroupAssociationResultOutput) AttributeGroupArn() pulumi. return o.ApplyT(func(v LookupAttributeGroupAssociationResult) *string { return v.AttributeGroupArn }).(pulumi.StringPtrOutput) } -func (o LookupAttributeGroupAssociationResultOutput) Id() pulumi.StringPtrOutput { - return o.ApplyT(func(v LookupAttributeGroupAssociationResult) *string { return v.Id }).(pulumi.StringPtrOutput) -} - func init() { pulumi.RegisterOutputType(LookupAttributeGroupAssociationResultOutput{}) } diff --git a/sdk/go/aws/servicecatalogappregistry/getResourceAssociation.go b/sdk/go/aws/servicecatalogappregistry/getResourceAssociation.go index c80f8671db..f0b19ce90a 100644 --- a/sdk/go/aws/servicecatalogappregistry/getResourceAssociation.go +++ b/sdk/go/aws/servicecatalogappregistry/getResourceAssociation.go @@ -24,12 +24,14 @@ func LookupResourceAssociation(ctx *pulumi.Context, args *LookupResourceAssociat } type LookupResourceAssociationArgs struct { - Id string `pulumi:"id"` + ApplicationArn string `pulumi:"applicationArn"` + ResourceArn string `pulumi:"resourceArn"` + // The type of the CFN Resource for now it's enum CFN_STACK. + ResourceType ResourceAssociationResourceType `pulumi:"resourceType"` } type LookupResourceAssociationResult struct { ApplicationArn *string `pulumi:"applicationArn"` - Id *string `pulumi:"id"` ResourceArn *string `pulumi:"resourceArn"` } @@ -47,7 +49,10 @@ func LookupResourceAssociationOutput(ctx *pulumi.Context, args LookupResourceAss } type LookupResourceAssociationOutputArgs struct { - Id pulumi.StringInput `pulumi:"id"` + ApplicationArn pulumi.StringInput `pulumi:"applicationArn"` + ResourceArn pulumi.StringInput `pulumi:"resourceArn"` + // The type of the CFN Resource for now it's enum CFN_STACK. + ResourceType ResourceAssociationResourceTypeInput `pulumi:"resourceType"` } func (LookupResourceAssociationOutputArgs) ElementType() reflect.Type { @@ -78,10 +83,6 @@ func (o LookupResourceAssociationResultOutput) ApplicationArn() pulumi.StringPtr return o.ApplyT(func(v LookupResourceAssociationResult) *string { return v.ApplicationArn }).(pulumi.StringPtrOutput) } -func (o LookupResourceAssociationResultOutput) Id() pulumi.StringPtrOutput { - return o.ApplyT(func(v LookupResourceAssociationResult) *string { return v.Id }).(pulumi.StringPtrOutput) -} - func (o LookupResourceAssociationResultOutput) ResourceArn() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupResourceAssociationResult) *string { return v.ResourceArn }).(pulumi.StringPtrOutput) } diff --git a/sdk/go/aws/sns/getTopic.go b/sdk/go/aws/sns/getTopic.go index 37a6dac8e9..831584da35 100644 --- a/sdk/go/aws/sns/getTopic.go +++ b/sdk/go/aws/sns/getTopic.go @@ -28,6 +28,8 @@ type LookupTopicArgs struct { } type LookupTopicResult struct { + // The archive policy determines the number of days Amazon SNS retains messages. You can set a retention period from 1 to 365 days. + ArchivePolicy interface{} `pulumi:"archivePolicy"` // Enables content-based deduplication for FIFO topics. By default, ContentBasedDeduplication is set to false. If you create a FIFO topic and this attribute is false, you must specify a value for the MessageDeduplicationId parameter for the Publish action. // // When you set ContentBasedDeduplication to true, Amazon SNS uses a SHA-256 hash to generate the MessageDeduplicationId using the body of the message (but not the attributes of the message). @@ -99,6 +101,11 @@ func (o LookupTopicResultOutput) ToOutput(ctx context.Context) pulumix.Output[Lo } } +// The archive policy determines the number of days Amazon SNS retains messages. You can set a retention period from 1 to 365 days. +func (o LookupTopicResultOutput) ArchivePolicy() pulumi.AnyOutput { + return o.ApplyT(func(v LookupTopicResult) interface{} { return v.ArchivePolicy }).(pulumi.AnyOutput) +} + // Enables content-based deduplication for FIFO topics. By default, ContentBasedDeduplication is set to false. If you create a FIFO topic and this attribute is false, you must specify a value for the MessageDeduplicationId parameter for the Publish action. // // When you set ContentBasedDeduplication to true, Amazon SNS uses a SHA-256 hash to generate the MessageDeduplicationId using the body of the message (but not the attributes of the message). diff --git a/sdk/go/aws/sns/topic.go b/sdk/go/aws/sns/topic.go index 5700692b5c..4066a17a46 100644 --- a/sdk/go/aws/sns/topic.go +++ b/sdk/go/aws/sns/topic.go @@ -16,6 +16,8 @@ import ( type Topic struct { pulumi.CustomResourceState + // The archive policy determines the number of days Amazon SNS retains messages. You can set a retention period from 1 to 365 days. + ArchivePolicy pulumi.AnyOutput `pulumi:"archivePolicy"` // Enables content-based deduplication for FIFO topics. By default, ContentBasedDeduplication is set to false. If you create a FIFO topic and this attribute is false, you must specify a value for the MessageDeduplicationId parameter for the Publish action. // // When you set ContentBasedDeduplication to true, Amazon SNS uses a SHA-256 hash to generate the MessageDeduplicationId using the body of the message (but not the attributes of the message). @@ -97,6 +99,8 @@ func (TopicState) ElementType() reflect.Type { } type topicArgs struct { + // The archive policy determines the number of days Amazon SNS retains messages. You can set a retention period from 1 to 365 days. + ArchivePolicy interface{} `pulumi:"archivePolicy"` // Enables content-based deduplication for FIFO topics. By default, ContentBasedDeduplication is set to false. If you create a FIFO topic and this attribute is false, you must specify a value for the MessageDeduplicationId parameter for the Publish action. // // When you set ContentBasedDeduplication to true, Amazon SNS uses a SHA-256 hash to generate the MessageDeduplicationId using the body of the message (but not the attributes of the message). @@ -134,6 +138,8 @@ type topicArgs struct { // The set of arguments for constructing a Topic resource. type TopicArgs struct { + // The archive policy determines the number of days Amazon SNS retains messages. You can set a retention period from 1 to 365 days. + ArchivePolicy pulumi.Input // Enables content-based deduplication for FIFO topics. By default, ContentBasedDeduplication is set to false. If you create a FIFO topic and this attribute is false, you must specify a value for the MessageDeduplicationId parameter for the Publish action. // // When you set ContentBasedDeduplication to true, Amazon SNS uses a SHA-256 hash to generate the MessageDeduplicationId using the body of the message (but not the attributes of the message). @@ -218,6 +224,11 @@ func (o TopicOutput) ToOutput(ctx context.Context) pulumix.Output[*Topic] { } } +// The archive policy determines the number of days Amazon SNS retains messages. You can set a retention period from 1 to 365 days. +func (o TopicOutput) ArchivePolicy() pulumi.AnyOutput { + return o.ApplyT(func(v *Topic) pulumi.AnyOutput { return v.ArchivePolicy }).(pulumi.AnyOutput) +} + // Enables content-based deduplication for FIFO topics. By default, ContentBasedDeduplication is set to false. If you create a FIFO topic and this attribute is false, you must specify a value for the MessageDeduplicationId parameter for the Publish action. // // When you set ContentBasedDeduplication to true, Amazon SNS uses a SHA-256 hash to generate the MessageDeduplicationId using the body of the message (but not the attributes of the message). diff --git a/sdk/go/aws/sqs/getQueuePolicy.go b/sdk/go/aws/sqs/getQueuePolicy.go index c2e3ac8886..fe3be23f2a 100644 --- a/sdk/go/aws/sqs/getQueuePolicy.go +++ b/sdk/go/aws/sqs/getQueuePolicy.go @@ -12,7 +12,7 @@ import ( "github.com/pulumi/pulumi/sdk/v3/go/pulumix" ) -// Resource Type definition for AWS::SQS::QueuePolicy +// The “AWS::SQS::QueuePolicy“ type applies a policy to SQS queues. For an example snippet, see [Declaring an policy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-iam.html#scenario-sqs-policy) in the *User Guide*. func LookupQueuePolicy(ctx *pulumi.Context, args *LookupQueuePolicyArgs, opts ...pulumi.InvokeOption) (*LookupQueuePolicyResult, error) { opts = internal.PkgInvokeDefaultOpts(opts) var rv LookupQueuePolicyResult @@ -31,9 +31,9 @@ type LookupQueuePolicyArgs struct { type LookupQueuePolicyResult struct { // The provider-assigned unique ID for this managed resource. Id *string `pulumi:"id"` - // A policy document that contains the permissions for the specified Amazon SQS queues. For more information about Amazon SQS policies, see Creating Custom Policies Using the Access Policy Language in the Amazon Simple Queue Service Developer Guide. + // A policy document that contains the permissions for the specified SQS queues. For more information about SQS policies, see [Using custom policies with the access policy language](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-creating-custom-policies.html) in the *Developer Guide*. PolicyDocument interface{} `pulumi:"policyDocument"` - // The URLs of the queues to which you want to add the policy. You can use the Ref function to specify an AWS::SQS::Queue resource. + // The URLs of the queues to which you want to add the policy. You can use the ``Ref`` function to specify an ``AWS::SQS::Queue`` resource. Queues []string `pulumi:"queues"` } @@ -84,12 +84,12 @@ func (o LookupQueuePolicyResultOutput) Id() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupQueuePolicyResult) *string { return v.Id }).(pulumi.StringPtrOutput) } -// A policy document that contains the permissions for the specified Amazon SQS queues. For more information about Amazon SQS policies, see Creating Custom Policies Using the Access Policy Language in the Amazon Simple Queue Service Developer Guide. +// A policy document that contains the permissions for the specified SQS queues. For more information about SQS policies, see [Using custom policies with the access policy language](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-creating-custom-policies.html) in the *Developer Guide*. func (o LookupQueuePolicyResultOutput) PolicyDocument() pulumi.AnyOutput { return o.ApplyT(func(v LookupQueuePolicyResult) interface{} { return v.PolicyDocument }).(pulumi.AnyOutput) } -// The URLs of the queues to which you want to add the policy. You can use the Ref function to specify an AWS::SQS::Queue resource. +// The URLs of the queues to which you want to add the policy. You can use the “Ref“ function to specify an “AWS::SQS::Queue“ resource. func (o LookupQueuePolicyResultOutput) Queues() pulumi.StringArrayOutput { return o.ApplyT(func(v LookupQueuePolicyResult) []string { return v.Queues }).(pulumi.StringArrayOutput) } diff --git a/sdk/go/aws/sqs/queuePolicy.go b/sdk/go/aws/sqs/queuePolicy.go index 56005ba700..7f162521d1 100644 --- a/sdk/go/aws/sqs/queuePolicy.go +++ b/sdk/go/aws/sqs/queuePolicy.go @@ -13,15 +13,15 @@ import ( "github.com/pulumi/pulumi/sdk/v3/go/pulumix" ) -// Resource Type definition for AWS::SQS::QueuePolicy +// The “AWS::SQS::QueuePolicy“ type applies a policy to SQS queues. For an example snippet, see [Declaring an policy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-iam.html#scenario-sqs-policy) in the *User Guide*. // // Deprecated: QueuePolicy is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible. type QueuePolicy struct { pulumi.CustomResourceState - // A policy document that contains the permissions for the specified Amazon SQS queues. For more information about Amazon SQS policies, see Creating Custom Policies Using the Access Policy Language in the Amazon Simple Queue Service Developer Guide. + // A policy document that contains the permissions for the specified SQS queues. For more information about SQS policies, see [Using custom policies with the access policy language](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-creating-custom-policies.html) in the *Developer Guide*. PolicyDocument pulumi.AnyOutput `pulumi:"policyDocument"` - // The URLs of the queues to which you want to add the policy. You can use the Ref function to specify an AWS::SQS::Queue resource. + // The URLs of the queues to which you want to add the policy. You can use the ``Ref`` function to specify an ``AWS::SQS::Queue`` resource. Queues pulumi.StringArrayOutput `pulumi:"queues"` } @@ -71,17 +71,17 @@ func (QueuePolicyState) ElementType() reflect.Type { } type queuePolicyArgs struct { - // A policy document that contains the permissions for the specified Amazon SQS queues. For more information about Amazon SQS policies, see Creating Custom Policies Using the Access Policy Language in the Amazon Simple Queue Service Developer Guide. + // A policy document that contains the permissions for the specified SQS queues. For more information about SQS policies, see [Using custom policies with the access policy language](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-creating-custom-policies.html) in the *Developer Guide*. PolicyDocument interface{} `pulumi:"policyDocument"` - // The URLs of the queues to which you want to add the policy. You can use the Ref function to specify an AWS::SQS::Queue resource. + // The URLs of the queues to which you want to add the policy. You can use the ``Ref`` function to specify an ``AWS::SQS::Queue`` resource. Queues []string `pulumi:"queues"` } // The set of arguments for constructing a QueuePolicy resource. type QueuePolicyArgs struct { - // A policy document that contains the permissions for the specified Amazon SQS queues. For more information about Amazon SQS policies, see Creating Custom Policies Using the Access Policy Language in the Amazon Simple Queue Service Developer Guide. + // A policy document that contains the permissions for the specified SQS queues. For more information about SQS policies, see [Using custom policies with the access policy language](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-creating-custom-policies.html) in the *Developer Guide*. PolicyDocument pulumi.Input - // The URLs of the queues to which you want to add the policy. You can use the Ref function to specify an AWS::SQS::Queue resource. + // The URLs of the queues to which you want to add the policy. You can use the ``Ref`` function to specify an ``AWS::SQS::Queue`` resource. Queues pulumi.StringArrayInput } @@ -134,12 +134,12 @@ func (o QueuePolicyOutput) ToOutput(ctx context.Context) pulumix.Output[*QueuePo } } -// A policy document that contains the permissions for the specified Amazon SQS queues. For more information about Amazon SQS policies, see Creating Custom Policies Using the Access Policy Language in the Amazon Simple Queue Service Developer Guide. +// A policy document that contains the permissions for the specified SQS queues. For more information about SQS policies, see [Using custom policies with the access policy language](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-creating-custom-policies.html) in the *Developer Guide*. func (o QueuePolicyOutput) PolicyDocument() pulumi.AnyOutput { return o.ApplyT(func(v *QueuePolicy) pulumi.AnyOutput { return v.PolicyDocument }).(pulumi.AnyOutput) } -// The URLs of the queues to which you want to add the policy. You can use the Ref function to specify an AWS::SQS::Queue resource. +// The URLs of the queues to which you want to add the policy. You can use the “Ref“ function to specify an “AWS::SQS::Queue“ resource. func (o QueuePolicyOutput) Queues() pulumi.StringArrayOutput { return o.ApplyT(func(v *QueuePolicy) pulumi.StringArrayOutput { return v.Queues }).(pulumi.StringArrayOutput) } diff --git a/sdk/nodejs/apigateway/account.ts b/sdk/nodejs/apigateway/account.ts index 6262402d53..cee94aea4b 100644 --- a/sdk/nodejs/apigateway/account.ts +++ b/sdk/nodejs/apigateway/account.ts @@ -5,7 +5,7 @@ import * as pulumi from "@pulumi/pulumi"; import * as utilities from "../utilities"; /** - * Resource Type definition for AWS::ApiGateway::Account + * The ``AWS::ApiGateway::Account`` resource specifies the IAM role that Amazon API Gateway uses to write API logs to Amazon CloudWatch Logs. To avoid overwriting other roles, you should only have one ``AWS::ApiGateway::Account`` resource per region per account. */ export class Account extends pulumi.CustomResource { /** @@ -35,7 +35,7 @@ export class Account extends pulumi.CustomResource { } /** - * The Amazon Resource Name (ARN) of an IAM role that has write access to CloudWatch Logs in your account. + * The ARN of an Amazon CloudWatch role for the current Account. */ public readonly cloudWatchRoleArn!: pulumi.Output; @@ -64,7 +64,7 @@ export class Account extends pulumi.CustomResource { */ export interface AccountArgs { /** - * The Amazon Resource Name (ARN) of an IAM role that has write access to CloudWatch Logs in your account. + * The ARN of an Amazon CloudWatch role for the current Account. */ cloudWatchRoleArn?: pulumi.Input; } diff --git a/sdk/nodejs/apigateway/authorizer.ts b/sdk/nodejs/apigateway/authorizer.ts index 461c4ea201..53a36849c7 100644 --- a/sdk/nodejs/apigateway/authorizer.ts +++ b/sdk/nodejs/apigateway/authorizer.ts @@ -5,7 +5,7 @@ import * as pulumi from "@pulumi/pulumi"; import * as utilities from "../utilities"; /** - * Represents an authorization layer for methods. If enabled on a method, API Gateway will activate the authorizer when a client calls the method. + * The ``AWS::ApiGateway::Authorizer`` resource creates an authorization layer that API Gateway activates for methods that have authorization enabled. API Gateway activates the authorizer when a client calls those methods. */ export class Authorizer extends pulumi.CustomResource { /** @@ -39,24 +39,24 @@ export class Authorizer extends pulumi.CustomResource { */ public readonly authType!: pulumi.Output; /** - * Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. + * Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. To specify an IAM role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To use resource-based permissions on the Lambda function, specify null. */ public readonly authorizerCredentials!: pulumi.Output; public /*out*/ readonly authorizerId!: pulumi.Output; /** - * The TTL in seconds of cached authorizer results. + * The TTL in seconds of cached authorizer results. If it equals 0, authorization caching is disabled. If it is greater than 0, API Gateway will cache authorizer responses. If this field is not set, the default value is 300. The maximum value is 3600, or 1 hour. */ public readonly authorizerResultTtlInSeconds!: pulumi.Output; /** - * Specifies the authorizer's Uniform Resource Identifier (URI). + * Specifies the authorizer's Uniform Resource Identifier (URI). For ``TOKEN`` or ``REQUEST`` authorizers, this must be a well-formed Lambda function URI, for example, ``arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:{account_id}:function:{lambda_function_name}/invocations``. In general, the URI has this form ``arn:aws:apigateway:{region}:lambda:path/{service_api}``, where ``{region}`` is the same as the region hosting the Lambda function, ``path`` indicates that the remaining substring in the URI should be treated as the path to the resource, including the initial ``/``. For Lambda functions, this is usually of the form ``/2015-03-31/functions/[FunctionARN]/invocations``. */ public readonly authorizerUri!: pulumi.Output; /** - * The identity source for which authorization is requested. + * The identity source for which authorization is requested. For a ``TOKEN`` or ``COGNITO_USER_POOLS`` authorizer, this is required and specifies the request header mapping expression for the custom header holding the authorization token submitted by the client. For example, if the token header name is ``Auth``, the header mapping expression is ``method.request.header.Auth``. For the ``REQUEST`` authorizer, this is required when authorization caching is enabled. The value is a comma-separated string of one or more mapping expressions of the specified request parameters. For example, if an ``Auth`` header, a ``Name`` query string parameter are defined as identity sources, this value is ``method.request.header.Auth, method.request.querystring.Name``. These parameters will be used to derive the authorization caching key and to perform runtime validation of the ``REQUEST`` authorizer by verifying all of the identity-related request parameters are present, not null and non-empty. Only when this is true does the authorizer invoke the authorizer Lambda function, otherwise, it returns a 401 Unauthorized response without calling the Lambda function. The valid value is a string of comma-separated mapping expressions of the specified request parameters. When the authorization caching is not enabled, this property is optional. */ public readonly identitySource!: pulumi.Output; /** - * A validation expression for the incoming identity token. + * A validation expression for the incoming identity token. For ``TOKEN`` authorizers, this value is a regular expression. For ``COGNITO_USER_POOLS`` authorizers, API Gateway will match the ``aud`` field of the incoming token from the client against the specified regular expression. It will invoke the authorizer's Lambda function when there is a match. Otherwise, it will return a 401 Unauthorized response without calling the Lambda function. The validation expression does not apply to the ``REQUEST`` authorizer. */ public readonly identityValidationExpression!: pulumi.Output; /** @@ -64,15 +64,15 @@ export class Authorizer extends pulumi.CustomResource { */ public readonly name!: pulumi.Output; /** - * A list of the Amazon Cognito user pool ARNs for the COGNITO_USER_POOLS authorizer. + * A list of the Amazon Cognito user pool ARNs for the ``COGNITO_USER_POOLS`` authorizer. Each element is of this format: ``arn:aws:cognito-idp:{region}:{account_id}:userpool/{user_pool_id}``. For a ``TOKEN`` or ``REQUEST`` authorizer, this is not defined. */ public readonly providerArns!: pulumi.Output; /** - * The identifier of the API. + * The string identifier of the associated RestApi. */ public readonly restApiId!: pulumi.Output; /** - * The authorizer type. + * The authorizer type. Valid values are ``TOKEN`` for a Lambda function using a single authorization token submitted in a custom header, ``REQUEST`` for a Lambda function using incoming request parameters, and ``COGNITO_USER_POOLS`` for using an Amazon Cognito user pool. */ public readonly type!: pulumi.Output; @@ -133,23 +133,23 @@ export interface AuthorizerArgs { */ authType?: pulumi.Input; /** - * Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. + * Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. To specify an IAM role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To use resource-based permissions on the Lambda function, specify null. */ authorizerCredentials?: pulumi.Input; /** - * The TTL in seconds of cached authorizer results. + * The TTL in seconds of cached authorizer results. If it equals 0, authorization caching is disabled. If it is greater than 0, API Gateway will cache authorizer responses. If this field is not set, the default value is 300. The maximum value is 3600, or 1 hour. */ authorizerResultTtlInSeconds?: pulumi.Input; /** - * Specifies the authorizer's Uniform Resource Identifier (URI). + * Specifies the authorizer's Uniform Resource Identifier (URI). For ``TOKEN`` or ``REQUEST`` authorizers, this must be a well-formed Lambda function URI, for example, ``arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:{account_id}:function:{lambda_function_name}/invocations``. In general, the URI has this form ``arn:aws:apigateway:{region}:lambda:path/{service_api}``, where ``{region}`` is the same as the region hosting the Lambda function, ``path`` indicates that the remaining substring in the URI should be treated as the path to the resource, including the initial ``/``. For Lambda functions, this is usually of the form ``/2015-03-31/functions/[FunctionARN]/invocations``. */ authorizerUri?: pulumi.Input; /** - * The identity source for which authorization is requested. + * The identity source for which authorization is requested. For a ``TOKEN`` or ``COGNITO_USER_POOLS`` authorizer, this is required and specifies the request header mapping expression for the custom header holding the authorization token submitted by the client. For example, if the token header name is ``Auth``, the header mapping expression is ``method.request.header.Auth``. For the ``REQUEST`` authorizer, this is required when authorization caching is enabled. The value is a comma-separated string of one or more mapping expressions of the specified request parameters. For example, if an ``Auth`` header, a ``Name`` query string parameter are defined as identity sources, this value is ``method.request.header.Auth, method.request.querystring.Name``. These parameters will be used to derive the authorization caching key and to perform runtime validation of the ``REQUEST`` authorizer by verifying all of the identity-related request parameters are present, not null and non-empty. Only when this is true does the authorizer invoke the authorizer Lambda function, otherwise, it returns a 401 Unauthorized response without calling the Lambda function. The valid value is a string of comma-separated mapping expressions of the specified request parameters. When the authorization caching is not enabled, this property is optional. */ identitySource?: pulumi.Input; /** - * A validation expression for the incoming identity token. + * A validation expression for the incoming identity token. For ``TOKEN`` authorizers, this value is a regular expression. For ``COGNITO_USER_POOLS`` authorizers, API Gateway will match the ``aud`` field of the incoming token from the client against the specified regular expression. It will invoke the authorizer's Lambda function when there is a match. Otherwise, it will return a 401 Unauthorized response without calling the Lambda function. The validation expression does not apply to the ``REQUEST`` authorizer. */ identityValidationExpression?: pulumi.Input; /** @@ -157,15 +157,15 @@ export interface AuthorizerArgs { */ name?: pulumi.Input; /** - * A list of the Amazon Cognito user pool ARNs for the COGNITO_USER_POOLS authorizer. + * A list of the Amazon Cognito user pool ARNs for the ``COGNITO_USER_POOLS`` authorizer. Each element is of this format: ``arn:aws:cognito-idp:{region}:{account_id}:userpool/{user_pool_id}``. For a ``TOKEN`` or ``REQUEST`` authorizer, this is not defined. */ providerArns?: pulumi.Input[]>; /** - * The identifier of the API. + * The string identifier of the associated RestApi. */ restApiId: pulumi.Input; /** - * The authorizer type. + * The authorizer type. Valid values are ``TOKEN`` for a Lambda function using a single authorization token submitted in a custom header, ``REQUEST`` for a Lambda function using incoming request parameters, and ``COGNITO_USER_POOLS`` for using an Amazon Cognito user pool. */ type: pulumi.Input; } diff --git a/sdk/nodejs/apigateway/deployment.ts b/sdk/nodejs/apigateway/deployment.ts index 4b1756acfc..b268a9100f 100644 --- a/sdk/nodejs/apigateway/deployment.ts +++ b/sdk/nodejs/apigateway/deployment.ts @@ -8,7 +8,7 @@ import * as enums from "../types/enums"; import * as utilities from "../utilities"; /** - * Resource Type definition for AWS::ApiGateway::Deployment + * The ``AWS::ApiGateway::Deployment`` resource deploys an API Gateway ``RestApi`` resource to a stage so that clients can call the API over the internet. The stage acts as an environment. */ export class Deployment extends pulumi.CustomResource { /** @@ -38,7 +38,7 @@ export class Deployment extends pulumi.CustomResource { } /** - * Specifies settings for the canary deployment. + * The input configuration for a canary deployment. */ public readonly deploymentCanarySettings!: pulumi.Output; /** @@ -46,19 +46,19 @@ export class Deployment extends pulumi.CustomResource { */ public /*out*/ readonly deploymentId!: pulumi.Output; /** - * A description of the purpose of the API Gateway deployment. + * The description for the Deployment resource to create. */ public readonly description!: pulumi.Output; /** - * The ID of the RestApi resource to deploy. + * The string identifier of the associated RestApi. */ public readonly restApiId!: pulumi.Output; /** - * Configures the stage that API Gateway creates with this deployment. + * The description of the Stage resource for the Deployment resource to create. To specify a stage description, you must also provide a stage name. */ public readonly stageDescription!: pulumi.Output; /** - * A name for the stage that API Gateway creates with this deployment. Use only alphanumeric characters. + * The name of the Stage resource for the Deployment resource to create. */ public readonly stageName!: pulumi.Output; @@ -102,23 +102,23 @@ export class Deployment extends pulumi.CustomResource { */ export interface DeploymentArgs { /** - * Specifies settings for the canary deployment. + * The input configuration for a canary deployment. */ deploymentCanarySettings?: pulumi.Input; /** - * A description of the purpose of the API Gateway deployment. + * The description for the Deployment resource to create. */ description?: pulumi.Input; /** - * The ID of the RestApi resource to deploy. + * The string identifier of the associated RestApi. */ restApiId: pulumi.Input; /** - * Configures the stage that API Gateway creates with this deployment. + * The description of the Stage resource for the Deployment resource to create. To specify a stage description, you must also provide a stage name. */ stageDescription?: pulumi.Input; /** - * A name for the stage that API Gateway creates with this deployment. Use only alphanumeric characters. + * The name of the Stage resource for the Deployment resource to create. */ stageName?: pulumi.Input; } diff --git a/sdk/nodejs/apigateway/documentationPart.ts b/sdk/nodejs/apigateway/documentationPart.ts index 353cbd0d92..e68517d79e 100644 --- a/sdk/nodejs/apigateway/documentationPart.ts +++ b/sdk/nodejs/apigateway/documentationPart.ts @@ -8,7 +8,7 @@ import * as enums from "../types/enums"; import * as utilities from "../utilities"; /** - * Resource Type definition for AWS::ApiGateway::DocumentationPart + * The ``AWS::ApiGateway::DocumentationPart`` resource creates a documentation part for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*. */ export class DocumentationPart extends pulumi.CustomResource { /** @@ -42,15 +42,15 @@ export class DocumentationPart extends pulumi.CustomResource { */ public /*out*/ readonly documentationPartId!: pulumi.Output; /** - * The location of the API entity that the documentation applies to. + * The location of the targeted API entity of the to-be-created documentation part. */ public readonly location!: pulumi.Output; /** - * The documentation content map of the targeted API entity. + * The new documentation content map of the targeted API entity. Enclosed key-value pairs are API-specific, but only OpenAPI-compliant key-value pairs can be exported and, hence, published. */ public readonly properties!: pulumi.Output; /** - * Identifier of the targeted API entity + * The string identifier of the associated RestApi. */ public readonly restApiId!: pulumi.Output; @@ -96,15 +96,15 @@ export class DocumentationPart extends pulumi.CustomResource { */ export interface DocumentationPartArgs { /** - * The location of the API entity that the documentation applies to. + * The location of the targeted API entity of the to-be-created documentation part. */ location: pulumi.Input; /** - * The documentation content map of the targeted API entity. + * The new documentation content map of the targeted API entity. Enclosed key-value pairs are API-specific, but only OpenAPI-compliant key-value pairs can be exported and, hence, published. */ properties: pulumi.Input; /** - * Identifier of the targeted API entity + * The string identifier of the associated RestApi. */ restApiId: pulumi.Input; } diff --git a/sdk/nodejs/apigateway/documentationVersion.ts b/sdk/nodejs/apigateway/documentationVersion.ts index fa46de65fb..cdb65a3e36 100644 --- a/sdk/nodejs/apigateway/documentationVersion.ts +++ b/sdk/nodejs/apigateway/documentationVersion.ts @@ -5,7 +5,7 @@ import * as pulumi from "@pulumi/pulumi"; import * as utilities from "../utilities"; /** - * A snapshot of the documentation of an API. + * The ``AWS::ApiGateway::DocumentationVersion`` resource creates a snapshot of the documentation for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*. */ export class DocumentationVersion extends pulumi.CustomResource { /** @@ -35,15 +35,15 @@ export class DocumentationVersion extends pulumi.CustomResource { } /** - * The description of the API documentation snapshot. + * A description about the new documentation snapshot. */ public readonly description!: pulumi.Output; /** - * The version identifier of the API documentation snapshot. + * The version identifier of the to-be-updated documentation version. */ public readonly documentationVersion!: pulumi.Output; /** - * The identifier of the API. + * The string identifier of the associated RestApi. */ public readonly restApiId!: pulumi.Output; @@ -84,15 +84,15 @@ export class DocumentationVersion extends pulumi.CustomResource { */ export interface DocumentationVersionArgs { /** - * The description of the API documentation snapshot. + * A description about the new documentation snapshot. */ description?: pulumi.Input; /** - * The version identifier of the API documentation snapshot. + * The version identifier of the to-be-updated documentation version. */ documentationVersion: pulumi.Input; /** - * The identifier of the API. + * The string identifier of the associated RestApi. */ restApiId: pulumi.Input; } diff --git a/sdk/nodejs/apigateway/getAccount.ts b/sdk/nodejs/apigateway/getAccount.ts index eb4a145902..7403cf521a 100644 --- a/sdk/nodejs/apigateway/getAccount.ts +++ b/sdk/nodejs/apigateway/getAccount.ts @@ -5,7 +5,7 @@ import * as pulumi from "@pulumi/pulumi"; import * as utilities from "../utilities"; /** - * Resource Type definition for AWS::ApiGateway::Account + * The ``AWS::ApiGateway::Account`` resource specifies the IAM role that Amazon API Gateway uses to write API logs to Amazon CloudWatch Logs. To avoid overwriting other roles, you should only have one ``AWS::ApiGateway::Account`` resource per region per account. */ export function getAccount(args: GetAccountArgs, opts?: pulumi.InvokeOptions): Promise { @@ -24,7 +24,7 @@ export interface GetAccountArgs { export interface GetAccountResult { /** - * The Amazon Resource Name (ARN) of an IAM role that has write access to CloudWatch Logs in your account. + * The ARN of an Amazon CloudWatch role for the current Account. */ readonly cloudWatchRoleArn?: string; /** @@ -33,7 +33,7 @@ export interface GetAccountResult { readonly id?: string; } /** - * Resource Type definition for AWS::ApiGateway::Account + * The ``AWS::ApiGateway::Account`` resource specifies the IAM role that Amazon API Gateway uses to write API logs to Amazon CloudWatch Logs. To avoid overwriting other roles, you should only have one ``AWS::ApiGateway::Account`` resource per region per account. */ export function getAccountOutput(args: GetAccountOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { return pulumi.output(args).apply((a: any) => getAccount(a, opts)) diff --git a/sdk/nodejs/apigateway/getAuthorizer.ts b/sdk/nodejs/apigateway/getAuthorizer.ts index 9a726d3510..1f988e72ba 100644 --- a/sdk/nodejs/apigateway/getAuthorizer.ts +++ b/sdk/nodejs/apigateway/getAuthorizer.ts @@ -5,7 +5,7 @@ import * as pulumi from "@pulumi/pulumi"; import * as utilities from "../utilities"; /** - * Represents an authorization layer for methods. If enabled on a method, API Gateway will activate the authorizer when a client calls the method. + * The ``AWS::ApiGateway::Authorizer`` resource creates an authorization layer that API Gateway activates for methods that have authorization enabled. API Gateway activates the authorizer when a client calls those methods. */ export function getAuthorizer(args: GetAuthorizerArgs, opts?: pulumi.InvokeOptions): Promise { @@ -19,7 +19,7 @@ export function getAuthorizer(args: GetAuthorizerArgs, opts?: pulumi.InvokeOptio export interface GetAuthorizerArgs { authorizerId: string; /** - * The identifier of the API. + * The string identifier of the associated RestApi. */ restApiId: string; } @@ -30,24 +30,24 @@ export interface GetAuthorizerResult { */ readonly authType?: string; /** - * Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. + * Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. To specify an IAM role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To use resource-based permissions on the Lambda function, specify null. */ readonly authorizerCredentials?: string; readonly authorizerId?: string; /** - * The TTL in seconds of cached authorizer results. + * The TTL in seconds of cached authorizer results. If it equals 0, authorization caching is disabled. If it is greater than 0, API Gateway will cache authorizer responses. If this field is not set, the default value is 300. The maximum value is 3600, or 1 hour. */ readonly authorizerResultTtlInSeconds?: number; /** - * Specifies the authorizer's Uniform Resource Identifier (URI). + * Specifies the authorizer's Uniform Resource Identifier (URI). For ``TOKEN`` or ``REQUEST`` authorizers, this must be a well-formed Lambda function URI, for example, ``arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:{account_id}:function:{lambda_function_name}/invocations``. In general, the URI has this form ``arn:aws:apigateway:{region}:lambda:path/{service_api}``, where ``{region}`` is the same as the region hosting the Lambda function, ``path`` indicates that the remaining substring in the URI should be treated as the path to the resource, including the initial ``/``. For Lambda functions, this is usually of the form ``/2015-03-31/functions/[FunctionARN]/invocations``. */ readonly authorizerUri?: string; /** - * The identity source for which authorization is requested. + * The identity source for which authorization is requested. For a ``TOKEN`` or ``COGNITO_USER_POOLS`` authorizer, this is required and specifies the request header mapping expression for the custom header holding the authorization token submitted by the client. For example, if the token header name is ``Auth``, the header mapping expression is ``method.request.header.Auth``. For the ``REQUEST`` authorizer, this is required when authorization caching is enabled. The value is a comma-separated string of one or more mapping expressions of the specified request parameters. For example, if an ``Auth`` header, a ``Name`` query string parameter are defined as identity sources, this value is ``method.request.header.Auth, method.request.querystring.Name``. These parameters will be used to derive the authorization caching key and to perform runtime validation of the ``REQUEST`` authorizer by verifying all of the identity-related request parameters are present, not null and non-empty. Only when this is true does the authorizer invoke the authorizer Lambda function, otherwise, it returns a 401 Unauthorized response without calling the Lambda function. The valid value is a string of comma-separated mapping expressions of the specified request parameters. When the authorization caching is not enabled, this property is optional. */ readonly identitySource?: string; /** - * A validation expression for the incoming identity token. + * A validation expression for the incoming identity token. For ``TOKEN`` authorizers, this value is a regular expression. For ``COGNITO_USER_POOLS`` authorizers, API Gateway will match the ``aud`` field of the incoming token from the client against the specified regular expression. It will invoke the authorizer's Lambda function when there is a match. Otherwise, it will return a 401 Unauthorized response without calling the Lambda function. The validation expression does not apply to the ``REQUEST`` authorizer. */ readonly identityValidationExpression?: string; /** @@ -55,16 +55,16 @@ export interface GetAuthorizerResult { */ readonly name?: string; /** - * A list of the Amazon Cognito user pool ARNs for the COGNITO_USER_POOLS authorizer. + * A list of the Amazon Cognito user pool ARNs for the ``COGNITO_USER_POOLS`` authorizer. Each element is of this format: ``arn:aws:cognito-idp:{region}:{account_id}:userpool/{user_pool_id}``. For a ``TOKEN`` or ``REQUEST`` authorizer, this is not defined. */ readonly providerArns?: string[]; /** - * The authorizer type. + * The authorizer type. Valid values are ``TOKEN`` for a Lambda function using a single authorization token submitted in a custom header, ``REQUEST`` for a Lambda function using incoming request parameters, and ``COGNITO_USER_POOLS`` for using an Amazon Cognito user pool. */ readonly type?: string; } /** - * Represents an authorization layer for methods. If enabled on a method, API Gateway will activate the authorizer when a client calls the method. + * The ``AWS::ApiGateway::Authorizer`` resource creates an authorization layer that API Gateway activates for methods that have authorization enabled. API Gateway activates the authorizer when a client calls those methods. */ export function getAuthorizerOutput(args: GetAuthorizerOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { return pulumi.output(args).apply((a: any) => getAuthorizer(a, opts)) @@ -73,7 +73,7 @@ export function getAuthorizerOutput(args: GetAuthorizerOutputArgs, opts?: pulumi export interface GetAuthorizerOutputArgs { authorizerId: pulumi.Input; /** - * The identifier of the API. + * The string identifier of the associated RestApi. */ restApiId: pulumi.Input; } diff --git a/sdk/nodejs/apigateway/getDeployment.ts b/sdk/nodejs/apigateway/getDeployment.ts index 081d496f5d..521672b310 100644 --- a/sdk/nodejs/apigateway/getDeployment.ts +++ b/sdk/nodejs/apigateway/getDeployment.ts @@ -5,7 +5,7 @@ import * as pulumi from "@pulumi/pulumi"; import * as utilities from "../utilities"; /** - * Resource Type definition for AWS::ApiGateway::Deployment + * The ``AWS::ApiGateway::Deployment`` resource deploys an API Gateway ``RestApi`` resource to a stage so that clients can call the API over the internet. The stage acts as an environment. */ export function getDeployment(args: GetDeploymentArgs, opts?: pulumi.InvokeOptions): Promise { @@ -22,7 +22,7 @@ export interface GetDeploymentArgs { */ deploymentId: string; /** - * The ID of the RestApi resource to deploy. + * The string identifier of the associated RestApi. */ restApiId: string; } @@ -33,12 +33,12 @@ export interface GetDeploymentResult { */ readonly deploymentId?: string; /** - * A description of the purpose of the API Gateway deployment. + * The description for the Deployment resource to create. */ readonly description?: string; } /** - * Resource Type definition for AWS::ApiGateway::Deployment + * The ``AWS::ApiGateway::Deployment`` resource deploys an API Gateway ``RestApi`` resource to a stage so that clients can call the API over the internet. The stage acts as an environment. */ export function getDeploymentOutput(args: GetDeploymentOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { return pulumi.output(args).apply((a: any) => getDeployment(a, opts)) @@ -50,7 +50,7 @@ export interface GetDeploymentOutputArgs { */ deploymentId: pulumi.Input; /** - * The ID of the RestApi resource to deploy. + * The string identifier of the associated RestApi. */ restApiId: pulumi.Input; } diff --git a/sdk/nodejs/apigateway/getDocumentationPart.ts b/sdk/nodejs/apigateway/getDocumentationPart.ts index dd9d5c88ee..23d479e3d1 100644 --- a/sdk/nodejs/apigateway/getDocumentationPart.ts +++ b/sdk/nodejs/apigateway/getDocumentationPart.ts @@ -5,7 +5,7 @@ import * as pulumi from "@pulumi/pulumi"; import * as utilities from "../utilities"; /** - * Resource Type definition for AWS::ApiGateway::DocumentationPart + * The ``AWS::ApiGateway::DocumentationPart`` resource creates a documentation part for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*. */ export function getDocumentationPart(args: GetDocumentationPartArgs, opts?: pulumi.InvokeOptions): Promise { @@ -22,7 +22,7 @@ export interface GetDocumentationPartArgs { */ documentationPartId: string; /** - * Identifier of the targeted API entity + * The string identifier of the associated RestApi. */ restApiId: string; } @@ -33,12 +33,12 @@ export interface GetDocumentationPartResult { */ readonly documentationPartId?: string; /** - * The documentation content map of the targeted API entity. + * The new documentation content map of the targeted API entity. Enclosed key-value pairs are API-specific, but only OpenAPI-compliant key-value pairs can be exported and, hence, published. */ readonly properties?: string; } /** - * Resource Type definition for AWS::ApiGateway::DocumentationPart + * The ``AWS::ApiGateway::DocumentationPart`` resource creates a documentation part for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*. */ export function getDocumentationPartOutput(args: GetDocumentationPartOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { return pulumi.output(args).apply((a: any) => getDocumentationPart(a, opts)) @@ -50,7 +50,7 @@ export interface GetDocumentationPartOutputArgs { */ documentationPartId: pulumi.Input; /** - * Identifier of the targeted API entity + * The string identifier of the associated RestApi. */ restApiId: pulumi.Input; } diff --git a/sdk/nodejs/apigateway/getDocumentationVersion.ts b/sdk/nodejs/apigateway/getDocumentationVersion.ts index 0b16bc6cc3..1758bd6af0 100644 --- a/sdk/nodejs/apigateway/getDocumentationVersion.ts +++ b/sdk/nodejs/apigateway/getDocumentationVersion.ts @@ -5,7 +5,7 @@ import * as pulumi from "@pulumi/pulumi"; import * as utilities from "../utilities"; /** - * A snapshot of the documentation of an API. + * The ``AWS::ApiGateway::DocumentationVersion`` resource creates a snapshot of the documentation for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*. */ export function getDocumentationVersion(args: GetDocumentationVersionArgs, opts?: pulumi.InvokeOptions): Promise { @@ -18,23 +18,23 @@ export function getDocumentationVersion(args: GetDocumentationVersionArgs, opts? export interface GetDocumentationVersionArgs { /** - * The version identifier of the API documentation snapshot. + * The version identifier of the to-be-updated documentation version. */ documentationVersion: string; /** - * The identifier of the API. + * The string identifier of the associated RestApi. */ restApiId: string; } export interface GetDocumentationVersionResult { /** - * The description of the API documentation snapshot. + * A description about the new documentation snapshot. */ readonly description?: string; } /** - * A snapshot of the documentation of an API. + * The ``AWS::ApiGateway::DocumentationVersion`` resource creates a snapshot of the documentation for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*. */ export function getDocumentationVersionOutput(args: GetDocumentationVersionOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { return pulumi.output(args).apply((a: any) => getDocumentationVersion(a, opts)) @@ -42,11 +42,11 @@ export function getDocumentationVersionOutput(args: GetDocumentationVersionOutpu export interface GetDocumentationVersionOutputArgs { /** - * The version identifier of the API documentation snapshot. + * The version identifier of the to-be-updated documentation version. */ documentationVersion: pulumi.Input; /** - * The identifier of the API. + * The string identifier of the associated RestApi. */ restApiId: pulumi.Input; } diff --git a/sdk/nodejs/apigateway/getMethod.ts b/sdk/nodejs/apigateway/getMethod.ts index 1502f24037..217bdfe079 100644 --- a/sdk/nodejs/apigateway/getMethod.ts +++ b/sdk/nodejs/apigateway/getMethod.ts @@ -8,7 +8,7 @@ import * as enums from "../types/enums"; import * as utilities from "../utilities"; /** - * Resource Type definition for AWS::ApiGateway::Method + * The ``AWS::ApiGateway::Method`` resource creates API Gateway methods that define the parameters and body that clients must send in their requests. */ export function getMethod(args: GetMethodArgs, opts?: pulumi.InvokeOptions): Promise { @@ -22,63 +22,64 @@ export function getMethod(args: GetMethodArgs, opts?: pulumi.InvokeOptions): Pro export interface GetMethodArgs { /** - * The backend system that the method calls when it receives a request. + * The method's HTTP verb. */ httpMethod: string; /** - * The ID of an API Gateway resource. + * The Resource identifier for the MethodResponse resource. */ resourceId: string; /** - * The ID of the RestApi resource in which API Gateway creates the method. + * The string identifier of the associated RestApi. */ restApiId: string; } export interface GetMethodResult { /** - * Indicates whether the method requires clients to submit a valid API key. + * A boolean flag specifying whether a valid ApiKey is required to invoke this method. */ readonly apiKeyRequired?: boolean; /** - * A list of authorization scopes configured on the method. + * A list of authorization scopes configured on the method. The scopes are used with a ``COGNITO_USER_POOLS`` authorizer to authorize the method invocation. The authorization works by matching the method scopes against the scopes parsed from the access token in the incoming request. The method invocation is authorized if any method scopes matches a claimed scope in the access token. Otherwise, the invocation is not authorized. When the method scope is configured, the client must provide an access token instead of an identity token for authorization purposes. */ readonly authorizationScopes?: string[]; /** - * The method's authorization type. + * The method's authorization type. This parameter is required. For valid values, see [Method](https://docs.aws.amazon.com/apigateway/latest/api/API_Method.html) in the *API Gateway API Reference*. + * If you specify the ``AuthorizerId`` property, specify ``CUSTOM`` or ``COGNITO_USER_POOLS`` for this property. */ readonly authorizationType?: enums.apigateway.MethodAuthorizationType; /** - * The identifier of the authorizer to use on this method. + * The identifier of an authorizer to use on this method. The method's authorization type must be ``CUSTOM`` or ``COGNITO_USER_POOLS``. */ readonly authorizerId?: string; /** - * The backend system that the method calls when it receives a request. + * Represents an ``HTTP``, ``HTTP_PROXY``, ``AWS``, ``AWS_PROXY``, or Mock integration. */ readonly integration?: outputs.apigateway.MethodIntegration; /** - * The responses that can be sent to the client who calls the method. + * Gets a method response associated with a given HTTP status code. */ readonly methodResponses?: outputs.apigateway.MethodResponse[]; /** - * A friendly operation name for the method. + * A human-friendly operation identifier for the method. For example, you can assign the ``operationName`` of ``ListPets`` for the ``GET /pets`` method in the ``PetStore`` example. */ readonly operationName?: string; /** - * The resources that are used for the request's content type. Specify request models as key-value pairs (string-to-string mapping), with a content type as the key and a Model resource name as the value. + * A key-value map specifying data schemas, represented by Model resources, (as the mapped value) of the request payloads of given content types (as the mapping key). */ readonly requestModels?: any; /** - * The request parameters that API Gateway accepts. Specify request parameters as key-value pairs (string-to-Boolean mapping), with a source as the key and a Boolean as the value. + * A key-value map defining required or optional method request parameters that can be accepted by API Gateway. A key is a method request parameter name matching the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and ``name`` is a valid and unique parameter name. The value associated with the key is a Boolean flag indicating whether the parameter is required (``true``) or optional (``false``). The method request parameter names defined here are available in Integration to be mapped to integration request parameters or templates. */ readonly requestParameters?: any; /** - * The ID of the associated request validator. + * The identifier of a RequestValidator for request validation. */ readonly requestValidatorId?: string; } /** - * Resource Type definition for AWS::ApiGateway::Method + * The ``AWS::ApiGateway::Method`` resource creates API Gateway methods that define the parameters and body that clients must send in their requests. */ export function getMethodOutput(args: GetMethodOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { return pulumi.output(args).apply((a: any) => getMethod(a, opts)) @@ -86,15 +87,15 @@ export function getMethodOutput(args: GetMethodOutputArgs, opts?: pulumi.InvokeO export interface GetMethodOutputArgs { /** - * The backend system that the method calls when it receives a request. + * The method's HTTP verb. */ httpMethod: pulumi.Input; /** - * The ID of an API Gateway resource. + * The Resource identifier for the MethodResponse resource. */ resourceId: pulumi.Input; /** - * The ID of the RestApi resource in which API Gateway creates the method. + * The string identifier of the associated RestApi. */ restApiId: pulumi.Input; } diff --git a/sdk/nodejs/apigateway/getModel.ts b/sdk/nodejs/apigateway/getModel.ts index 6f37b6d520..d42aaccd41 100644 --- a/sdk/nodejs/apigateway/getModel.ts +++ b/sdk/nodejs/apigateway/getModel.ts @@ -5,7 +5,7 @@ import * as pulumi from "@pulumi/pulumi"; import * as utilities from "../utilities"; /** - * Resource Type definition for AWS::ApiGateway::Model + * The ``AWS::ApiGateway::Model`` resource defines the structure of a request or response payload for an API method. */ export function getModel(args: GetModelArgs, opts?: pulumi.InvokeOptions): Promise { @@ -18,27 +18,28 @@ export function getModel(args: GetModelArgs, opts?: pulumi.InvokeOptions): Promi export interface GetModelArgs { /** - * A name for the model. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the model name. + * A name for the model. If you don't specify a name, CFN generates a unique physical ID and uses that ID for the model name. For more information, see [Name Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html). + * 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. */ name: string; /** - * The ID of a REST API with which to associate this model. + * The string identifier of the associated RestApi. */ restApiId: string; } export interface GetModelResult { /** - * A description that identifies this model. + * The description of the model. */ readonly description?: string; /** - * The schema to use to transform data to one or more output formats. Specify null ({}) if you don't want to specify a schema. + * The schema for the model. For ``application/json`` models, this should be JSON schema draft 4 model. Do not include "\*/" characters in the description of any properties because such "\*/" characters may be interpreted as the closing marker for comments in some languages, such as Java or JavaScript, causing the installation of your API's SDK generated by API Gateway to fail. */ readonly schema?: any; } /** - * Resource Type definition for AWS::ApiGateway::Model + * The ``AWS::ApiGateway::Model`` resource defines the structure of a request or response payload for an API method. */ export function getModelOutput(args: GetModelOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { return pulumi.output(args).apply((a: any) => getModel(a, opts)) @@ -46,11 +47,12 @@ export function getModelOutput(args: GetModelOutputArgs, opts?: pulumi.InvokeOpt export interface GetModelOutputArgs { /** - * A name for the model. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the model name. + * A name for the model. If you don't specify a name, CFN generates a unique physical ID and uses that ID for the model name. For more information, see [Name Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html). + * 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. */ name: pulumi.Input; /** - * The ID of a REST API with which to associate this model. + * The string identifier of the associated RestApi. */ restApiId: pulumi.Input; } diff --git a/sdk/nodejs/apigateway/getResource.ts b/sdk/nodejs/apigateway/getResource.ts index fda1ab194d..5a720ebf91 100644 --- a/sdk/nodejs/apigateway/getResource.ts +++ b/sdk/nodejs/apigateway/getResource.ts @@ -5,7 +5,7 @@ import * as pulumi from "@pulumi/pulumi"; import * as utilities from "../utilities"; /** - * Resource Type definition for AWS::ApiGateway::Resource + * The ``AWS::ApiGateway::Resource`` resource creates a resource in an API. */ export function getResource(args: GetResourceArgs, opts?: pulumi.InvokeOptions): Promise { @@ -22,7 +22,7 @@ export interface GetResourceArgs { */ resourceId: string; /** - * The ID of the RestApi resource in which you want to create this resource.. + * The string identifier of the associated RestApi. */ restApiId: string; } @@ -34,7 +34,7 @@ export interface GetResourceResult { readonly resourceId?: string; } /** - * Resource Type definition for AWS::ApiGateway::Resource + * The ``AWS::ApiGateway::Resource`` resource creates a resource in an API. */ export function getResourceOutput(args: GetResourceOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { return pulumi.output(args).apply((a: any) => getResource(a, opts)) @@ -46,7 +46,7 @@ export interface GetResourceOutputArgs { */ resourceId: pulumi.Input; /** - * The ID of the RestApi resource in which you want to create this resource.. + * The string identifier of the associated RestApi. */ restApiId: pulumi.Input; } diff --git a/sdk/nodejs/apigateway/getRestApi.ts b/sdk/nodejs/apigateway/getRestApi.ts index 6b945e3aff..84df086714 100644 --- a/sdk/nodejs/apigateway/getRestApi.ts +++ b/sdk/nodejs/apigateway/getRestApi.ts @@ -8,7 +8,8 @@ import * as enums from "../types/enums"; import * as utilities from "../utilities"; /** - * Resource Type definition for AWS::ApiGateway::RestApi. + * The ``AWS::ApiGateway::RestApi`` resource creates a REST API. For more information, see [restapi:create](https://docs.aws.amazon.com/apigateway/latest/api/API_CreateRestApi.html) in the *Amazon API Gateway REST API Reference*. + * On January 1, 2016, the Swagger Specification was donated to the [OpenAPI initiative](https://docs.aws.amazon.com/https://www.openapis.org/), becoming the foundation of the OpenAPI Specification. */ export function getRestApi(args: GetRestApiArgs, opts?: pulumi.InvokeOptions): Promise { @@ -23,20 +24,48 @@ export interface GetRestApiArgs { } export interface GetRestApiResult { + /** + * The source of the API key for metering requests according to a usage plan. Valid values are: ``HEADER`` to read the API key from the ``X-API-Key`` header of a request. ``AUTHORIZER`` to read the API key from the ``UsageIdentifierKey`` from a custom authorizer. + */ readonly apiKeySourceType?: string; + /** + * The list of binary media types supported by the RestApi. By default, the RestApi supports only UTF-8-encoded text payloads. + */ readonly binaryMediaTypes?: string[]; + /** + * The description of the RestApi. + */ readonly description?: string; + /** + * Specifies whether clients can invoke your API by using the default ``execute-api`` endpoint. By default, clients can invoke your API with the default ``https://{api_id}.execute-api.{region}.amazonaws.com`` endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint + */ readonly disableExecuteApiEndpoint?: boolean; + /** + * A list of the endpoint types of the API. Use this property when creating an API. When importing an existing API, specify the endpoint configuration types using the ``Parameters`` property. + */ readonly endpointConfiguration?: outputs.apigateway.RestApiEndpointConfiguration; + /** + * A nullable integer that is used to enable compression (with non-negative between 0 and 10485760 (10M) bytes, inclusive) or disable compression (with a null value) on an API. When compression is enabled, compression or decompression is not applied on the payload if the payload size is smaller than this value. Setting it to zero allows compression for any payload size. + */ readonly minimumCompressionSize?: number; + /** + * The name of the RestApi. A name is required if the REST API is not based on an OpenAPI specification. + */ readonly name?: string; + /** + * A policy document that contains the permissions for the ``RestApi`` resource. To set the ARN for the policy, use the ``!Join`` intrinsic function with ``""`` as delimiter and values of ``"execute-api:/"`` and ``"*"``. + */ readonly policy?: any; readonly restApiId?: string; readonly rootResourceId?: string; + /** + * The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with ``aws:``. The tag value can be up to 256 characters. + */ readonly tags?: outputs.apigateway.RestApiTag[]; } /** - * Resource Type definition for AWS::ApiGateway::RestApi. + * The ``AWS::ApiGateway::RestApi`` resource creates a REST API. For more information, see [restapi:create](https://docs.aws.amazon.com/apigateway/latest/api/API_CreateRestApi.html) in the *Amazon API Gateway REST API Reference*. + * On January 1, 2016, the Swagger Specification was donated to the [OpenAPI initiative](https://docs.aws.amazon.com/https://www.openapis.org/), becoming the foundation of the OpenAPI Specification. */ export function getRestApiOutput(args: GetRestApiOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { return pulumi.output(args).apply((a: any) => getRestApi(a, opts)) diff --git a/sdk/nodejs/apigateway/getStage.ts b/sdk/nodejs/apigateway/getStage.ts index 198b8d3d4e..fc0e1faf41 100644 --- a/sdk/nodejs/apigateway/getStage.ts +++ b/sdk/nodejs/apigateway/getStage.ts @@ -8,7 +8,7 @@ import * as enums from "../types/enums"; import * as utilities from "../utilities"; /** - * Resource Type definition for AWS::ApiGateway::Stage + * The ``AWS::ApiGateway::Stage`` resource creates a stage for a deployment. */ export function getStage(args: GetStageArgs, opts?: pulumi.InvokeOptions): Promise { @@ -21,67 +21,67 @@ export function getStage(args: GetStageArgs, opts?: pulumi.InvokeOptions): Promi export interface GetStageArgs { /** - * The ID of the RestApi resource that you're deploying with this stage. + * The string identifier of the associated RestApi. */ restApiId: string; /** - * The name of the stage, which API Gateway uses as the first path segment in the invoked Uniform Resource Identifier (URI). + * The name of the stage is the first path segment in the Uniform Resource Identifier (URI) of a call to API Gateway. Stage names can only contain alphanumeric characters, hyphens, and underscores. Maximum length is 128 characters. */ stageName: string; } export interface GetStageResult { /** - * Specifies settings for logging access in this stage. + * Access log settings, including the access log format and access log destination ARN. */ readonly accessLogSetting?: outputs.apigateway.StageAccessLogSetting; /** - * Indicates whether cache clustering is enabled for the stage. + * Specifies whether a cache cluster is enabled for the stage. */ readonly cacheClusterEnabled?: boolean; /** - * The stage's cache cluster size. + * The stage's cache capacity in GB. For more information about choosing a cache size, see [Enabling API caching to enhance responsiveness](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html). */ readonly cacheClusterSize?: string; /** - * Specifies settings for the canary deployment in this stage. + * Settings for the canary deployment in this stage. */ readonly canarySetting?: outputs.apigateway.StageCanarySetting; /** - * The ID of the client certificate that API Gateway uses to call your integration endpoints in the stage. + * The identifier of a client certificate for an API stage. */ readonly clientCertificateId?: string; /** - * The ID of the deployment that the stage is associated with. This parameter is required to create a stage. + * The identifier of the Deployment that the stage points to. */ readonly deploymentId?: string; /** - * A description of the stage. + * The stage's description. */ readonly description?: string; /** - * The version ID of the API documentation snapshot. + * The version of the associated API documentation. */ readonly documentationVersion?: string; /** - * Settings for all methods in the stage. + * A map that defines the method settings for a Stage resource. Keys (designated as ``/{method_setting_key`` below) are method paths defined as ``{resource_path}/{http_method}`` for an individual method override, or ``/\*/\*`` for overriding all methods in the stage. */ readonly methodSettings?: outputs.apigateway.StageMethodSetting[]; /** - * An array of arbitrary tags (key-value pairs) to associate with the stage. + * The collection of tags. Each tag element is associated with a given resource. */ readonly tags?: outputs.apigateway.StageTag[]; /** - * Specifies whether active X-Ray tracing is enabled for this stage. + * Specifies whether active tracing with X-ray is enabled for the Stage. */ readonly tracingEnabled?: boolean; /** - * A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value. + * A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value. Variable names are limited to alphanumeric characters. Values must match the following regular expression: ``[A-Za-z0-9-._~:/?#&=,]+``. */ readonly variables?: any; } /** - * Resource Type definition for AWS::ApiGateway::Stage + * The ``AWS::ApiGateway::Stage`` resource creates a stage for a deployment. */ export function getStageOutput(args: GetStageOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { return pulumi.output(args).apply((a: any) => getStage(a, opts)) @@ -89,11 +89,11 @@ export function getStageOutput(args: GetStageOutputArgs, opts?: pulumi.InvokeOpt export interface GetStageOutputArgs { /** - * The ID of the RestApi resource that you're deploying with this stage. + * The string identifier of the associated RestApi. */ restApiId: pulumi.Input; /** - * The name of the stage, which API Gateway uses as the first path segment in the invoked Uniform Resource Identifier (URI). + * The name of the stage is the first path segment in the Uniform Resource Identifier (URI) of a call to API Gateway. Stage names can only contain alphanumeric characters, hyphens, and underscores. Maximum length is 128 characters. */ stageName: pulumi.Input; } diff --git a/sdk/nodejs/apigateway/getUsagePlanKey.ts b/sdk/nodejs/apigateway/getUsagePlanKey.ts index 207d6ac6f9..b93fbb6a83 100644 --- a/sdk/nodejs/apigateway/getUsagePlanKey.ts +++ b/sdk/nodejs/apigateway/getUsagePlanKey.ts @@ -5,7 +5,7 @@ import * as pulumi from "@pulumi/pulumi"; import * as utilities from "../utilities"; /** - * Resource Type definition for AWS::ApiGateway::UsagePlanKey + * The ``AWS::ApiGateway::UsagePlanKey`` resource associates an API key with a usage plan. This association determines which users the usage plan is applied to. */ export function getUsagePlanKey(args: GetUsagePlanKeyArgs, opts?: pulumi.InvokeOptions): Promise { @@ -29,7 +29,7 @@ export interface GetUsagePlanKeyResult { readonly id?: string; } /** - * Resource Type definition for AWS::ApiGateway::UsagePlanKey + * The ``AWS::ApiGateway::UsagePlanKey`` resource associates an API key with a usage plan. This association determines which users the usage plan is applied to. */ export function getUsagePlanKeyOutput(args: GetUsagePlanKeyOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { return pulumi.output(args).apply((a: any) => getUsagePlanKey(a, opts)) diff --git a/sdk/nodejs/apigateway/method.ts b/sdk/nodejs/apigateway/method.ts index 147e0440e1..a22f43f492 100644 --- a/sdk/nodejs/apigateway/method.ts +++ b/sdk/nodejs/apigateway/method.ts @@ -8,7 +8,7 @@ import * as enums from "../types/enums"; import * as utilities from "../utilities"; /** - * Resource Type definition for AWS::ApiGateway::Method + * The ``AWS::ApiGateway::Method`` resource creates API Gateway methods that define the parameters and body that clients must send in their requests. */ export class Method extends pulumi.CustomResource { /** @@ -38,55 +38,56 @@ export class Method extends pulumi.CustomResource { } /** - * Indicates whether the method requires clients to submit a valid API key. + * A boolean flag specifying whether a valid ApiKey is required to invoke this method. */ public readonly apiKeyRequired!: pulumi.Output; /** - * A list of authorization scopes configured on the method. + * A list of authorization scopes configured on the method. The scopes are used with a ``COGNITO_USER_POOLS`` authorizer to authorize the method invocation. The authorization works by matching the method scopes against the scopes parsed from the access token in the incoming request. The method invocation is authorized if any method scopes matches a claimed scope in the access token. Otherwise, the invocation is not authorized. When the method scope is configured, the client must provide an access token instead of an identity token for authorization purposes. */ public readonly authorizationScopes!: pulumi.Output; /** - * The method's authorization type. + * The method's authorization type. This parameter is required. For valid values, see [Method](https://docs.aws.amazon.com/apigateway/latest/api/API_Method.html) in the *API Gateway API Reference*. + * If you specify the ``AuthorizerId`` property, specify ``CUSTOM`` or ``COGNITO_USER_POOLS`` for this property. */ public readonly authorizationType!: pulumi.Output; /** - * The identifier of the authorizer to use on this method. + * The identifier of an authorizer to use on this method. The method's authorization type must be ``CUSTOM`` or ``COGNITO_USER_POOLS``. */ public readonly authorizerId!: pulumi.Output; /** - * The backend system that the method calls when it receives a request. + * The method's HTTP verb. */ public readonly httpMethod!: pulumi.Output; /** - * The backend system that the method calls when it receives a request. + * Represents an ``HTTP``, ``HTTP_PROXY``, ``AWS``, ``AWS_PROXY``, or Mock integration. */ public readonly integration!: pulumi.Output; /** - * The responses that can be sent to the client who calls the method. + * Gets a method response associated with a given HTTP status code. */ public readonly methodResponses!: pulumi.Output; /** - * A friendly operation name for the method. + * A human-friendly operation identifier for the method. For example, you can assign the ``operationName`` of ``ListPets`` for the ``GET /pets`` method in the ``PetStore`` example. */ public readonly operationName!: pulumi.Output; /** - * The resources that are used for the request's content type. Specify request models as key-value pairs (string-to-string mapping), with a content type as the key and a Model resource name as the value. + * A key-value map specifying data schemas, represented by Model resources, (as the mapped value) of the request payloads of given content types (as the mapping key). */ public readonly requestModels!: pulumi.Output; /** - * The request parameters that API Gateway accepts. Specify request parameters as key-value pairs (string-to-Boolean mapping), with a source as the key and a Boolean as the value. + * A key-value map defining required or optional method request parameters that can be accepted by API Gateway. A key is a method request parameter name matching the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and ``name`` is a valid and unique parameter name. The value associated with the key is a Boolean flag indicating whether the parameter is required (``true``) or optional (``false``). The method request parameter names defined here are available in Integration to be mapped to integration request parameters or templates. */ public readonly requestParameters!: pulumi.Output; /** - * The ID of the associated request validator. + * The identifier of a RequestValidator for request validation. */ public readonly requestValidatorId!: pulumi.Output; /** - * The ID of an API Gateway resource. + * The Resource identifier for the MethodResponse resource. */ public readonly resourceId!: pulumi.Output; /** - * The ID of the RestApi resource in which API Gateway creates the method. + * The string identifier of the associated RestApi. */ public readonly restApiId!: pulumi.Output; @@ -150,55 +151,56 @@ export class Method extends pulumi.CustomResource { */ export interface MethodArgs { /** - * Indicates whether the method requires clients to submit a valid API key. + * A boolean flag specifying whether a valid ApiKey is required to invoke this method. */ apiKeyRequired?: pulumi.Input; /** - * A list of authorization scopes configured on the method. + * A list of authorization scopes configured on the method. The scopes are used with a ``COGNITO_USER_POOLS`` authorizer to authorize the method invocation. The authorization works by matching the method scopes against the scopes parsed from the access token in the incoming request. The method invocation is authorized if any method scopes matches a claimed scope in the access token. Otherwise, the invocation is not authorized. When the method scope is configured, the client must provide an access token instead of an identity token for authorization purposes. */ authorizationScopes?: pulumi.Input[]>; /** - * The method's authorization type. + * The method's authorization type. This parameter is required. For valid values, see [Method](https://docs.aws.amazon.com/apigateway/latest/api/API_Method.html) in the *API Gateway API Reference*. + * If you specify the ``AuthorizerId`` property, specify ``CUSTOM`` or ``COGNITO_USER_POOLS`` for this property. */ authorizationType?: pulumi.Input; /** - * The identifier of the authorizer to use on this method. + * The identifier of an authorizer to use on this method. The method's authorization type must be ``CUSTOM`` or ``COGNITO_USER_POOLS``. */ authorizerId?: pulumi.Input; /** - * The backend system that the method calls when it receives a request. + * The method's HTTP verb. */ httpMethod: pulumi.Input; /** - * The backend system that the method calls when it receives a request. + * Represents an ``HTTP``, ``HTTP_PROXY``, ``AWS``, ``AWS_PROXY``, or Mock integration. */ integration?: pulumi.Input; /** - * The responses that can be sent to the client who calls the method. + * Gets a method response associated with a given HTTP status code. */ methodResponses?: pulumi.Input[]>; /** - * A friendly operation name for the method. + * A human-friendly operation identifier for the method. For example, you can assign the ``operationName`` of ``ListPets`` for the ``GET /pets`` method in the ``PetStore`` example. */ operationName?: pulumi.Input; /** - * The resources that are used for the request's content type. Specify request models as key-value pairs (string-to-string mapping), with a content type as the key and a Model resource name as the value. + * A key-value map specifying data schemas, represented by Model resources, (as the mapped value) of the request payloads of given content types (as the mapping key). */ requestModels?: any; /** - * The request parameters that API Gateway accepts. Specify request parameters as key-value pairs (string-to-Boolean mapping), with a source as the key and a Boolean as the value. + * A key-value map defining required or optional method request parameters that can be accepted by API Gateway. A key is a method request parameter name matching the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and ``name`` is a valid and unique parameter name. The value associated with the key is a Boolean flag indicating whether the parameter is required (``true``) or optional (``false``). The method request parameter names defined here are available in Integration to be mapped to integration request parameters or templates. */ requestParameters?: any; /** - * The ID of the associated request validator. + * The identifier of a RequestValidator for request validation. */ requestValidatorId?: pulumi.Input; /** - * The ID of an API Gateway resource. + * The Resource identifier for the MethodResponse resource. */ resourceId: pulumi.Input; /** - * The ID of the RestApi resource in which API Gateway creates the method. + * The string identifier of the associated RestApi. */ restApiId: pulumi.Input; } diff --git a/sdk/nodejs/apigateway/model.ts b/sdk/nodejs/apigateway/model.ts index c9abb25f22..5f6919c4fb 100644 --- a/sdk/nodejs/apigateway/model.ts +++ b/sdk/nodejs/apigateway/model.ts @@ -5,7 +5,7 @@ import * as pulumi from "@pulumi/pulumi"; import * as utilities from "../utilities"; /** - * Resource Type definition for AWS::ApiGateway::Model + * The ``AWS::ApiGateway::Model`` resource defines the structure of a request or response payload for an API method. */ export class Model extends pulumi.CustomResource { /** @@ -35,23 +35,24 @@ export class Model extends pulumi.CustomResource { } /** - * The content type for the model. + * The content-type for the model. */ public readonly contentType!: pulumi.Output; /** - * A description that identifies this model. + * The description of the model. */ public readonly description!: pulumi.Output; /** - * A name for the model. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the model name. + * A name for the model. If you don't specify a name, CFN generates a unique physical ID and uses that ID for the model name. For more information, see [Name Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html). + * 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. */ public readonly name!: pulumi.Output; /** - * The ID of a REST API with which to associate this model. + * The string identifier of the associated RestApi. */ public readonly restApiId!: pulumi.Output; /** - * The schema to use to transform data to one or more output formats. Specify null ({}) if you don't want to specify a schema. + * The schema for the model. For ``application/json`` models, this should be JSON schema draft 4 model. Do not include "\*/" characters in the description of any properties because such "\*/" characters may be interpreted as the closing marker for comments in some languages, such as Java or JavaScript, causing the installation of your API's SDK generated by API Gateway to fail. */ public readonly schema!: pulumi.Output; @@ -93,23 +94,24 @@ export class Model extends pulumi.CustomResource { */ export interface ModelArgs { /** - * The content type for the model. + * The content-type for the model. */ contentType?: pulumi.Input; /** - * A description that identifies this model. + * The description of the model. */ description?: pulumi.Input; /** - * A name for the model. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the model name. + * A name for the model. If you don't specify a name, CFN generates a unique physical ID and uses that ID for the model name. For more information, see [Name Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html). + * 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. */ name?: pulumi.Input; /** - * The ID of a REST API with which to associate this model. + * The string identifier of the associated RestApi. */ restApiId: pulumi.Input; /** - * The schema to use to transform data to one or more output formats. Specify null ({}) if you don't want to specify a schema. + * The schema for the model. For ``application/json`` models, this should be JSON schema draft 4 model. Do not include "\*/" characters in the description of any properties because such "\*/" characters may be interpreted as the closing marker for comments in some languages, such as Java or JavaScript, causing the installation of your API's SDK generated by API Gateway to fail. */ schema?: any; } diff --git a/sdk/nodejs/apigateway/resource.ts b/sdk/nodejs/apigateway/resource.ts index 600e8d4b35..a75eda28e2 100644 --- a/sdk/nodejs/apigateway/resource.ts +++ b/sdk/nodejs/apigateway/resource.ts @@ -5,7 +5,7 @@ import * as pulumi from "@pulumi/pulumi"; import * as utilities from "../utilities"; /** - * Resource Type definition for AWS::ApiGateway::Resource + * The ``AWS::ApiGateway::Resource`` resource creates a resource in an API. */ export class Resource extends pulumi.CustomResource { /** @@ -47,7 +47,7 @@ export class Resource extends pulumi.CustomResource { */ public /*out*/ readonly resourceId!: pulumi.Output; /** - * The ID of the RestApi resource in which you want to create this resource.. + * The string identifier of the associated RestApi. */ public readonly restApiId!: pulumi.Output; @@ -101,7 +101,7 @@ export interface ResourceArgs { */ pathPart: pulumi.Input; /** - * The ID of the RestApi resource in which you want to create this resource.. + * The string identifier of the associated RestApi. */ restApiId: pulumi.Input; } diff --git a/sdk/nodejs/apigateway/restApi.ts b/sdk/nodejs/apigateway/restApi.ts index 472648b878..0df3cd7c55 100644 --- a/sdk/nodejs/apigateway/restApi.ts +++ b/sdk/nodejs/apigateway/restApi.ts @@ -8,7 +8,8 @@ import * as enums from "../types/enums"; import * as utilities from "../utilities"; /** - * Resource Type definition for AWS::ApiGateway::RestApi. + * The ``AWS::ApiGateway::RestApi`` resource creates a REST API. For more information, see [restapi:create](https://docs.aws.amazon.com/apigateway/latest/api/API_CreateRestApi.html) in the *Amazon API Gateway REST API Reference*. + * On January 1, 2016, the Swagger Specification was donated to the [OpenAPI initiative](https://docs.aws.amazon.com/https://www.openapis.org/), becoming the foundation of the OpenAPI Specification. */ export class RestApi extends pulumi.CustomResource { /** @@ -37,22 +38,72 @@ export class RestApi extends pulumi.CustomResource { return obj['__pulumiType'] === RestApi.__pulumiType; } + /** + * The source of the API key for metering requests according to a usage plan. Valid values are: ``HEADER`` to read the API key from the ``X-API-Key`` header of a request. ``AUTHORIZER`` to read the API key from the ``UsageIdentifierKey`` from a custom authorizer. + */ public readonly apiKeySourceType!: pulumi.Output; + /** + * The list of binary media types supported by the RestApi. By default, the RestApi supports only UTF-8-encoded text payloads. + */ public readonly binaryMediaTypes!: pulumi.Output; + /** + * An OpenAPI specification that defines a set of RESTful APIs in JSON format. For YAML templates, you can also provide the specification in YAML format. + */ public readonly body!: pulumi.Output; + /** + * The Amazon Simple Storage Service (Amazon S3) location that points to an OpenAPI file, which defines a set of RESTful APIs in JSON or YAML format. + */ public readonly bodyS3Location!: pulumi.Output; + /** + * The ID of the RestApi that you want to clone from. + */ public readonly cloneFrom!: pulumi.Output; + /** + * The description of the RestApi. + */ public readonly description!: pulumi.Output; + /** + * Specifies whether clients can invoke your API by using the default ``execute-api`` endpoint. By default, clients can invoke your API with the default ``https://{api_id}.execute-api.{region}.amazonaws.com`` endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint + */ public readonly disableExecuteApiEndpoint!: pulumi.Output; + /** + * A list of the endpoint types of the API. Use this property when creating an API. When importing an existing API, specify the endpoint configuration types using the ``Parameters`` property. + */ public readonly endpointConfiguration!: pulumi.Output; + /** + * A query parameter to indicate whether to rollback the API update (``true``) or not (``false``) when a warning is encountered. The default value is ``false``. + */ public readonly failOnWarnings!: pulumi.Output; + /** + * A nullable integer that is used to enable compression (with non-negative between 0 and 10485760 (10M) bytes, inclusive) or disable compression (with a null value) on an API. When compression is enabled, compression or decompression is not applied on the payload if the payload size is smaller than this value. Setting it to zero allows compression for any payload size. + */ public readonly minimumCompressionSize!: pulumi.Output; + /** + * This property applies only when you use OpenAPI to define your REST API. The ``Mode`` determines how API Gateway handles resource updates. + * Valid values are ``overwrite`` or ``merge``. + * For ``overwrite``, the new API definition replaces the existing one. The existing API identifier remains unchanged. + * For ``merge``, the new API definition is merged with the existing API. + * If you don't specify this property, a default value is chosen. For REST APIs created before March 29, 2021, the default is ``overwrite``. For REST APIs created after March 29, 2021, the new API definition takes precedence, but any container types such as endpoint configurations and binary media types are merged with the existing API. + * Use the default mode to define top-level ``RestApi`` properties in addition to using OpenAPI. Generally, it's preferred to use API Gateway's OpenAPI extensions to model these properties. + */ public readonly mode!: pulumi.Output; + /** + * The name of the RestApi. A name is required if the REST API is not based on an OpenAPI specification. + */ public readonly name!: pulumi.Output; + /** + * Custom header parameters as part of the request. For example, to exclude DocumentationParts from an imported API, set ``ignore=documentation`` as a ``parameters`` value, as in the AWS CLI command of ``aws apigateway import-rest-api --parameters ignore=documentation --body 'file:///path/to/imported-api-body.json'``. + */ public readonly parameters!: pulumi.Output; + /** + * A policy document that contains the permissions for the ``RestApi`` resource. To set the ARN for the policy, use the ``!Join`` intrinsic function with ``""`` as delimiter and values of ``"execute-api:/"`` and ``"*"``. + */ public readonly policy!: pulumi.Output; public /*out*/ readonly restApiId!: pulumi.Output; public /*out*/ readonly rootResourceId!: pulumi.Output; + /** + * The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with ``aws:``. The tag value can be up to 256 characters. + */ public readonly tags!: pulumi.Output; /** @@ -111,19 +162,69 @@ export class RestApi extends pulumi.CustomResource { * The set of arguments for constructing a RestApi resource. */ export interface RestApiArgs { + /** + * The source of the API key for metering requests according to a usage plan. Valid values are: ``HEADER`` to read the API key from the ``X-API-Key`` header of a request. ``AUTHORIZER`` to read the API key from the ``UsageIdentifierKey`` from a custom authorizer. + */ apiKeySourceType?: pulumi.Input; + /** + * The list of binary media types supported by the RestApi. By default, the RestApi supports only UTF-8-encoded text payloads. + */ binaryMediaTypes?: pulumi.Input[]>; + /** + * An OpenAPI specification that defines a set of RESTful APIs in JSON format. For YAML templates, you can also provide the specification in YAML format. + */ body?: any; + /** + * The Amazon Simple Storage Service (Amazon S3) location that points to an OpenAPI file, which defines a set of RESTful APIs in JSON or YAML format. + */ bodyS3Location?: pulumi.Input; + /** + * The ID of the RestApi that you want to clone from. + */ cloneFrom?: pulumi.Input; + /** + * The description of the RestApi. + */ description?: pulumi.Input; + /** + * Specifies whether clients can invoke your API by using the default ``execute-api`` endpoint. By default, clients can invoke your API with the default ``https://{api_id}.execute-api.{region}.amazonaws.com`` endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint + */ disableExecuteApiEndpoint?: pulumi.Input; + /** + * A list of the endpoint types of the API. Use this property when creating an API. When importing an existing API, specify the endpoint configuration types using the ``Parameters`` property. + */ endpointConfiguration?: pulumi.Input; + /** + * A query parameter to indicate whether to rollback the API update (``true``) or not (``false``) when a warning is encountered. The default value is ``false``. + */ failOnWarnings?: pulumi.Input; + /** + * A nullable integer that is used to enable compression (with non-negative between 0 and 10485760 (10M) bytes, inclusive) or disable compression (with a null value) on an API. When compression is enabled, compression or decompression is not applied on the payload if the payload size is smaller than this value. Setting it to zero allows compression for any payload size. + */ minimumCompressionSize?: pulumi.Input; + /** + * This property applies only when you use OpenAPI to define your REST API. The ``Mode`` determines how API Gateway handles resource updates. + * Valid values are ``overwrite`` or ``merge``. + * For ``overwrite``, the new API definition replaces the existing one. The existing API identifier remains unchanged. + * For ``merge``, the new API definition is merged with the existing API. + * If you don't specify this property, a default value is chosen. For REST APIs created before March 29, 2021, the default is ``overwrite``. For REST APIs created after March 29, 2021, the new API definition takes precedence, but any container types such as endpoint configurations and binary media types are merged with the existing API. + * Use the default mode to define top-level ``RestApi`` properties in addition to using OpenAPI. Generally, it's preferred to use API Gateway's OpenAPI extensions to model these properties. + */ mode?: pulumi.Input; + /** + * The name of the RestApi. A name is required if the REST API is not based on an OpenAPI specification. + */ name?: pulumi.Input; + /** + * Custom header parameters as part of the request. For example, to exclude DocumentationParts from an imported API, set ``ignore=documentation`` as a ``parameters`` value, as in the AWS CLI command of ``aws apigateway import-rest-api --parameters ignore=documentation --body 'file:///path/to/imported-api-body.json'``. + */ parameters?: any; + /** + * A policy document that contains the permissions for the ``RestApi`` resource. To set the ARN for the policy, use the ``!Join`` intrinsic function with ``""`` as delimiter and values of ``"execute-api:/"`` and ``"*"``. + */ policy?: any; + /** + * The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with ``aws:``. The tag value can be up to 256 characters. + */ tags?: pulumi.Input[]>; } diff --git a/sdk/nodejs/apigateway/stage.ts b/sdk/nodejs/apigateway/stage.ts index 21fb622815..36b6ae6d90 100644 --- a/sdk/nodejs/apigateway/stage.ts +++ b/sdk/nodejs/apigateway/stage.ts @@ -8,7 +8,7 @@ import * as enums from "../types/enums"; import * as utilities from "../utilities"; /** - * Resource Type definition for AWS::ApiGateway::Stage + * The ``AWS::ApiGateway::Stage`` resource creates a stage for a deployment. */ export class Stage extends pulumi.CustomResource { /** @@ -38,59 +38,59 @@ export class Stage extends pulumi.CustomResource { } /** - * Specifies settings for logging access in this stage. + * Access log settings, including the access log format and access log destination ARN. */ public readonly accessLogSetting!: pulumi.Output; /** - * Indicates whether cache clustering is enabled for the stage. + * Specifies whether a cache cluster is enabled for the stage. */ public readonly cacheClusterEnabled!: pulumi.Output; /** - * The stage's cache cluster size. + * The stage's cache capacity in GB. For more information about choosing a cache size, see [Enabling API caching to enhance responsiveness](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html). */ public readonly cacheClusterSize!: pulumi.Output; /** - * Specifies settings for the canary deployment in this stage. + * Settings for the canary deployment in this stage. */ public readonly canarySetting!: pulumi.Output; /** - * The ID of the client certificate that API Gateway uses to call your integration endpoints in the stage. + * The identifier of a client certificate for an API stage. */ public readonly clientCertificateId!: pulumi.Output; /** - * The ID of the deployment that the stage is associated with. This parameter is required to create a stage. + * The identifier of the Deployment that the stage points to. */ public readonly deploymentId!: pulumi.Output; /** - * A description of the stage. + * The stage's description. */ public readonly description!: pulumi.Output; /** - * The version ID of the API documentation snapshot. + * The version of the associated API documentation. */ public readonly documentationVersion!: pulumi.Output; /** - * Settings for all methods in the stage. + * A map that defines the method settings for a Stage resource. Keys (designated as ``/{method_setting_key`` below) are method paths defined as ``{resource_path}/{http_method}`` for an individual method override, or ``/\*/\*`` for overriding all methods in the stage. */ public readonly methodSettings!: pulumi.Output; /** - * The ID of the RestApi resource that you're deploying with this stage. + * The string identifier of the associated RestApi. */ public readonly restApiId!: pulumi.Output; /** - * The name of the stage, which API Gateway uses as the first path segment in the invoked Uniform Resource Identifier (URI). + * The name of the stage is the first path segment in the Uniform Resource Identifier (URI) of a call to API Gateway. Stage names can only contain alphanumeric characters, hyphens, and underscores. Maximum length is 128 characters. */ public readonly stageName!: pulumi.Output; /** - * An array of arbitrary tags (key-value pairs) to associate with the stage. + * The collection of tags. Each tag element is associated with a given resource. */ public readonly tags!: pulumi.Output; /** - * Specifies whether active X-Ray tracing is enabled for this stage. + * Specifies whether active tracing with X-ray is enabled for the Stage. */ public readonly tracingEnabled!: pulumi.Output; /** - * A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value. + * A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value. Variable names are limited to alphanumeric characters. Values must match the following regular expression: ``[A-Za-z0-9-._~:/?#&=,]+``. */ public readonly variables!: pulumi.Output; @@ -150,59 +150,59 @@ export class Stage extends pulumi.CustomResource { */ export interface StageArgs { /** - * Specifies settings for logging access in this stage. + * Access log settings, including the access log format and access log destination ARN. */ accessLogSetting?: pulumi.Input; /** - * Indicates whether cache clustering is enabled for the stage. + * Specifies whether a cache cluster is enabled for the stage. */ cacheClusterEnabled?: pulumi.Input; /** - * The stage's cache cluster size. + * The stage's cache capacity in GB. For more information about choosing a cache size, see [Enabling API caching to enhance responsiveness](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html). */ cacheClusterSize?: pulumi.Input; /** - * Specifies settings for the canary deployment in this stage. + * Settings for the canary deployment in this stage. */ canarySetting?: pulumi.Input; /** - * The ID of the client certificate that API Gateway uses to call your integration endpoints in the stage. + * The identifier of a client certificate for an API stage. */ clientCertificateId?: pulumi.Input; /** - * The ID of the deployment that the stage is associated with. This parameter is required to create a stage. + * The identifier of the Deployment that the stage points to. */ deploymentId?: pulumi.Input; /** - * A description of the stage. + * The stage's description. */ description?: pulumi.Input; /** - * The version ID of the API documentation snapshot. + * The version of the associated API documentation. */ documentationVersion?: pulumi.Input; /** - * Settings for all methods in the stage. + * A map that defines the method settings for a Stage resource. Keys (designated as ``/{method_setting_key`` below) are method paths defined as ``{resource_path}/{http_method}`` for an individual method override, or ``/\*/\*`` for overriding all methods in the stage. */ methodSettings?: pulumi.Input[]>; /** - * The ID of the RestApi resource that you're deploying with this stage. + * The string identifier of the associated RestApi. */ restApiId: pulumi.Input; /** - * The name of the stage, which API Gateway uses as the first path segment in the invoked Uniform Resource Identifier (URI). + * The name of the stage is the first path segment in the Uniform Resource Identifier (URI) of a call to API Gateway. Stage names can only contain alphanumeric characters, hyphens, and underscores. Maximum length is 128 characters. */ stageName?: pulumi.Input; /** - * An array of arbitrary tags (key-value pairs) to associate with the stage. + * The collection of tags. Each tag element is associated with a given resource. */ tags?: pulumi.Input[]>; /** - * Specifies whether active X-Ray tracing is enabled for this stage. + * Specifies whether active tracing with X-ray is enabled for the Stage. */ tracingEnabled?: pulumi.Input; /** - * A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value. + * A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value. Variable names are limited to alphanumeric characters. Values must match the following regular expression: ``[A-Za-z0-9-._~:/?#&=,]+``. */ variables?: any; } diff --git a/sdk/nodejs/apigateway/usagePlanKey.ts b/sdk/nodejs/apigateway/usagePlanKey.ts index b5ea73a72a..9e23581979 100644 --- a/sdk/nodejs/apigateway/usagePlanKey.ts +++ b/sdk/nodejs/apigateway/usagePlanKey.ts @@ -8,7 +8,7 @@ import * as enums from "../types/enums"; import * as utilities from "../utilities"; /** - * Resource Type definition for AWS::ApiGateway::UsagePlanKey + * The ``AWS::ApiGateway::UsagePlanKey`` resource associates an API key with a usage plan. This association determines which users the usage plan is applied to. */ export class UsagePlanKey extends pulumi.CustomResource { /** @@ -38,15 +38,15 @@ export class UsagePlanKey extends pulumi.CustomResource { } /** - * The ID of the usage plan key. + * The Id of the UsagePlanKey resource. */ public readonly keyId!: pulumi.Output; /** - * The type of usage plan key. Currently, the only valid key type is API_KEY. + * The type of a UsagePlanKey resource for a plan customer. */ public readonly keyType!: pulumi.Output; /** - * The ID of the usage plan. + * The Id of the UsagePlan resource representing the usage plan containing the UsagePlanKey resource representing a plan customer. */ public readonly usagePlanId!: pulumi.Output; @@ -90,15 +90,15 @@ export class UsagePlanKey extends pulumi.CustomResource { */ export interface UsagePlanKeyArgs { /** - * The ID of the usage plan key. + * The Id of the UsagePlanKey resource. */ keyId: pulumi.Input; /** - * The type of usage plan key. Currently, the only valid key type is API_KEY. + * The type of a UsagePlanKey resource for a plan customer. */ keyType: pulumi.Input; /** - * The ID of the usage plan. + * The Id of the UsagePlan resource representing the usage plan containing the UsagePlanKey resource representing a plan customer. */ usagePlanId: pulumi.Input; } diff --git a/sdk/nodejs/appconfig/application.ts b/sdk/nodejs/appconfig/application.ts index a5a07d1949..49f3254a78 100644 --- a/sdk/nodejs/appconfig/application.ts +++ b/sdk/nodejs/appconfig/application.ts @@ -9,8 +9,6 @@ import * as utilities from "../utilities"; /** * Resource Type definition for AWS::AppConfig::Application - * - * @deprecated Application is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible. */ export class Application extends pulumi.CustomResource { /** @@ -22,7 +20,6 @@ export class Application extends pulumi.CustomResource { * @param opts Optional settings to control the behavior of the CustomResource. */ public static get(name: string, id: pulumi.Input, opts?: pulumi.CustomResourceOptions): Application { - pulumi.log.warn("Application is deprecated: Application is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.") return new Application(name, undefined as any, { ...opts, id: id }); } @@ -40,8 +37,21 @@ export class Application extends pulumi.CustomResource { return obj['__pulumiType'] === Application.__pulumiType; } + /** + * The application Id + */ + public /*out*/ readonly applicationId!: pulumi.Output; + /** + * A description of the application. + */ public readonly description!: pulumi.Output; + /** + * A name for the application. + */ public readonly name!: pulumi.Output; + /** + * Metadata to assign to the application. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define. + */ public readonly tags!: pulumi.Output; /** @@ -51,16 +61,16 @@ export class Application extends pulumi.CustomResource { * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ - /** @deprecated Application is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible. */ constructor(name: string, args?: ApplicationArgs, opts?: pulumi.CustomResourceOptions) { - pulumi.log.warn("Application is deprecated: Application is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.") let resourceInputs: pulumi.Inputs = {}; opts = opts || {}; if (!opts.id) { resourceInputs["description"] = args ? args.description : undefined; resourceInputs["name"] = args ? args.name : undefined; resourceInputs["tags"] = args ? args.tags : undefined; + resourceInputs["applicationId"] = undefined /*out*/; } else { + resourceInputs["applicationId"] = undefined /*out*/; resourceInputs["description"] = undefined /*out*/; resourceInputs["name"] = undefined /*out*/; resourceInputs["tags"] = undefined /*out*/; @@ -74,7 +84,16 @@ export class Application extends pulumi.CustomResource { * The set of arguments for constructing a Application resource. */ export interface ApplicationArgs { + /** + * A description of the application. + */ description?: pulumi.Input; + /** + * A name for the application. + */ name?: pulumi.Input; + /** + * Metadata to assign to the application. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define. + */ tags?: pulumi.Input[]>; } diff --git a/sdk/nodejs/appconfig/configurationProfile.ts b/sdk/nodejs/appconfig/configurationProfile.ts index c902fda141..220b996c5d 100644 --- a/sdk/nodejs/appconfig/configurationProfile.ts +++ b/sdk/nodejs/appconfig/configurationProfile.ts @@ -42,6 +42,7 @@ export class ConfigurationProfile extends pulumi.CustomResource { public readonly applicationId!: pulumi.Output; public readonly description!: pulumi.Output; + public readonly kmsKeyIdentifier!: pulumi.Output; public readonly locationUri!: pulumi.Output; public readonly name!: pulumi.Output; public readonly retrievalRoleArn!: pulumi.Output; @@ -70,6 +71,7 @@ export class ConfigurationProfile extends pulumi.CustomResource { } resourceInputs["applicationId"] = args ? args.applicationId : undefined; resourceInputs["description"] = args ? args.description : undefined; + resourceInputs["kmsKeyIdentifier"] = args ? args.kmsKeyIdentifier : undefined; resourceInputs["locationUri"] = args ? args.locationUri : undefined; resourceInputs["name"] = args ? args.name : undefined; resourceInputs["retrievalRoleArn"] = args ? args.retrievalRoleArn : undefined; @@ -79,6 +81,7 @@ export class ConfigurationProfile extends pulumi.CustomResource { } else { resourceInputs["applicationId"] = undefined /*out*/; resourceInputs["description"] = undefined /*out*/; + resourceInputs["kmsKeyIdentifier"] = undefined /*out*/; resourceInputs["locationUri"] = undefined /*out*/; resourceInputs["name"] = undefined /*out*/; resourceInputs["retrievalRoleArn"] = undefined /*out*/; @@ -99,6 +102,7 @@ export class ConfigurationProfile extends pulumi.CustomResource { export interface ConfigurationProfileArgs { applicationId: pulumi.Input; description?: pulumi.Input; + kmsKeyIdentifier?: pulumi.Input; locationUri: pulumi.Input; name?: pulumi.Input; retrievalRoleArn?: pulumi.Input; diff --git a/sdk/nodejs/appconfig/getApplication.ts b/sdk/nodejs/appconfig/getApplication.ts index 92181f7ac6..4f68f8b2e1 100644 --- a/sdk/nodejs/appconfig/getApplication.ts +++ b/sdk/nodejs/appconfig/getApplication.ts @@ -14,18 +14,33 @@ export function getApplication(args: GetApplicationArgs, opts?: pulumi.InvokeOpt opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("aws-native:appconfig:getApplication", { - "id": args.id, + "applicationId": args.applicationId, }, opts); } export interface GetApplicationArgs { - id: string; + /** + * The application Id + */ + applicationId: string; } export interface GetApplicationResult { + /** + * The application Id + */ + readonly applicationId?: string; + /** + * A description of the application. + */ readonly description?: string; - readonly id?: string; + /** + * A name for the application. + */ readonly name?: string; + /** + * Metadata to assign to the application. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define. + */ readonly tags?: outputs.appconfig.ApplicationTags[]; } /** @@ -36,5 +51,8 @@ export function getApplicationOutput(args: GetApplicationOutputArgs, opts?: pulu } export interface GetApplicationOutputArgs { - id: pulumi.Input; + /** + * The application Id + */ + applicationId: pulumi.Input; } diff --git a/sdk/nodejs/appconfig/getConfigurationProfile.ts b/sdk/nodejs/appconfig/getConfigurationProfile.ts index 4ebe849b3a..94aadb5410 100644 --- a/sdk/nodejs/appconfig/getConfigurationProfile.ts +++ b/sdk/nodejs/appconfig/getConfigurationProfile.ts @@ -25,6 +25,7 @@ export interface GetConfigurationProfileArgs { export interface GetConfigurationProfileResult { readonly description?: string; readonly id?: string; + readonly kmsKeyIdentifier?: string; readonly name?: string; readonly retrievalRoleArn?: string; readonly tags?: outputs.appconfig.ConfigurationProfileTags[]; diff --git a/sdk/nodejs/appsync/functionConfiguration.ts b/sdk/nodejs/appsync/functionConfiguration.ts index eaf1bfca7f..a411d9664a 100644 --- a/sdk/nodejs/appsync/functionConfiguration.ts +++ b/sdk/nodejs/appsync/functionConfiguration.ts @@ -8,9 +8,7 @@ import * as enums from "../types/enums"; import * as utilities from "../utilities"; /** - * Resource Type definition for AWS::AppSync::FunctionConfiguration - * - * @deprecated FunctionConfiguration is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible. + * An example resource schema demonstrating some basic constructs and validation rules. */ export class FunctionConfiguration extends pulumi.CustomResource { /** @@ -22,7 +20,6 @@ export class FunctionConfiguration extends pulumi.CustomResource { * @param opts Optional settings to control the behavior of the CustomResource. */ public static get(name: string, id: pulumi.Input, opts?: pulumi.CustomResourceOptions): FunctionConfiguration { - pulumi.log.warn("FunctionConfiguration is deprecated: FunctionConfiguration is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.") return new FunctionConfiguration(name, undefined as any, { ...opts, id: id }); } @@ -40,21 +37,69 @@ export class FunctionConfiguration extends pulumi.CustomResource { return obj['__pulumiType'] === FunctionConfiguration.__pulumiType; } + /** + * The AWS AppSync GraphQL API that you want to attach using this function. + */ public readonly apiId!: pulumi.Output; + /** + * The resolver code that contains the request and response functions. When code is used, the runtime is required. The runtime value must be APPSYNC_JS. + */ public readonly code!: pulumi.Output; + /** + * The Amazon S3 endpoint (where the code is located??). + */ public readonly codeS3Location!: pulumi.Output; + /** + * The name of data source this function will attach. + */ public readonly dataSourceName!: pulumi.Output; + /** + * The function description. + */ public readonly description!: pulumi.Output; + /** + * The ARN for the function generated by the service + */ public /*out*/ readonly functionArn!: pulumi.Output; + /** + * The unique identifier for the function generated by the service + */ public /*out*/ readonly functionId!: pulumi.Output; + /** + * The version of the request mapping template. Currently, only the 2018-05-29 version of the template is supported. + */ public readonly functionVersion!: pulumi.Output; + /** + * The maximum number of resolver request inputs that will be sent to a single AWS Lambda function in a BatchInvoke operation. + */ public readonly maxBatchSize!: pulumi.Output; + /** + * The name of the function. + */ public readonly name!: pulumi.Output; + /** + * The Function request mapping template. Functions support only the 2018-05-29 version of the request mapping template. + */ public readonly requestMappingTemplate!: pulumi.Output; + /** + * Describes a Sync configuration for a resolver. Contains information on which Conflict Detection, as well as Resolution strategy, should be performed when the resolver is invoked. + */ public readonly requestMappingTemplateS3Location!: pulumi.Output; + /** + * The Function response mapping template. + */ public readonly responseMappingTemplate!: pulumi.Output; + /** + * The location of a response mapping template in an Amazon S3 bucket. Use this if you want to provision with a template file in Amazon S3 rather than embedding it in your CloudFormation template. + */ public readonly responseMappingTemplateS3Location!: pulumi.Output; + /** + * Describes a runtime used by an AWS AppSync pipeline resolver or AWS AppSync function. Specifies the name and version of the runtime to use. Note that if a runtime is specified, code must also be specified. + */ public readonly runtime!: pulumi.Output; + /** + * Describes a Sync configuration for a resolver. Specifies which Conflict Detection strategy and Resolution strategy to use when the resolver is invoked. + */ public readonly syncConfig!: pulumi.Output; /** @@ -64,9 +109,7 @@ export class FunctionConfiguration extends pulumi.CustomResource { * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ - /** @deprecated FunctionConfiguration is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible. */ constructor(name: string, args: FunctionConfigurationArgs, opts?: pulumi.CustomResourceOptions) { - pulumi.log.warn("FunctionConfiguration is deprecated: FunctionConfiguration is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.") let resourceInputs: pulumi.Inputs = {}; opts = opts || {}; if (!opts.id) { @@ -121,18 +164,60 @@ export class FunctionConfiguration extends pulumi.CustomResource { * The set of arguments for constructing a FunctionConfiguration resource. */ export interface FunctionConfigurationArgs { + /** + * The AWS AppSync GraphQL API that you want to attach using this function. + */ apiId: pulumi.Input; + /** + * The resolver code that contains the request and response functions. When code is used, the runtime is required. The runtime value must be APPSYNC_JS. + */ code?: pulumi.Input; + /** + * The Amazon S3 endpoint (where the code is located??). + */ codeS3Location?: pulumi.Input; + /** + * The name of data source this function will attach. + */ dataSourceName: pulumi.Input; + /** + * The function description. + */ description?: pulumi.Input; + /** + * The version of the request mapping template. Currently, only the 2018-05-29 version of the template is supported. + */ functionVersion?: pulumi.Input; + /** + * The maximum number of resolver request inputs that will be sent to a single AWS Lambda function in a BatchInvoke operation. + */ maxBatchSize?: pulumi.Input; + /** + * The name of the function. + */ name?: pulumi.Input; + /** + * The Function request mapping template. Functions support only the 2018-05-29 version of the request mapping template. + */ requestMappingTemplate?: pulumi.Input; + /** + * Describes a Sync configuration for a resolver. Contains information on which Conflict Detection, as well as Resolution strategy, should be performed when the resolver is invoked. + */ requestMappingTemplateS3Location?: pulumi.Input; + /** + * The Function response mapping template. + */ responseMappingTemplate?: pulumi.Input; + /** + * The location of a response mapping template in an Amazon S3 bucket. Use this if you want to provision with a template file in Amazon S3 rather than embedding it in your CloudFormation template. + */ responseMappingTemplateS3Location?: pulumi.Input; + /** + * Describes a runtime used by an AWS AppSync pipeline resolver or AWS AppSync function. Specifies the name and version of the runtime to use. Note that if a runtime is specified, code must also be specified. + */ runtime?: pulumi.Input; + /** + * Describes a Sync configuration for a resolver. Specifies which Conflict Detection strategy and Resolution strategy to use when the resolver is invoked. + */ syncConfig?: pulumi.Input; } diff --git a/sdk/nodejs/appsync/getFunctionConfiguration.ts b/sdk/nodejs/appsync/getFunctionConfiguration.ts index f495890ef6..1d12032a09 100644 --- a/sdk/nodejs/appsync/getFunctionConfiguration.ts +++ b/sdk/nodejs/appsync/getFunctionConfiguration.ts @@ -8,45 +8,83 @@ import * as enums from "../types/enums"; import * as utilities from "../utilities"; /** - * Resource Type definition for AWS::AppSync::FunctionConfiguration + * An example resource schema demonstrating some basic constructs and validation rules. */ export function getFunctionConfiguration(args: GetFunctionConfigurationArgs, opts?: pulumi.InvokeOptions): Promise { opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("aws-native:appsync:getFunctionConfiguration", { - "id": args.id, + "functionArn": args.functionArn, }, opts); } export interface GetFunctionConfigurationArgs { - id: string; + /** + * The ARN for the function generated by the service + */ + functionArn: string; } export interface GetFunctionConfigurationResult { + /** + * The resolver code that contains the request and response functions. When code is used, the runtime is required. The runtime value must be APPSYNC_JS. + */ readonly code?: string; - readonly codeS3Location?: string; + /** + * The name of data source this function will attach. + */ readonly dataSourceName?: string; + /** + * The function description. + */ readonly description?: string; + /** + * The ARN for the function generated by the service + */ readonly functionArn?: string; + /** + * The unique identifier for the function generated by the service + */ readonly functionId?: string; + /** + * The version of the request mapping template. Currently, only the 2018-05-29 version of the template is supported. + */ readonly functionVersion?: string; - readonly id?: string; + /** + * The maximum number of resolver request inputs that will be sent to a single AWS Lambda function in a BatchInvoke operation. + */ readonly maxBatchSize?: number; + /** + * The name of the function. + */ readonly name?: string; + /** + * The Function request mapping template. Functions support only the 2018-05-29 version of the request mapping template. + */ readonly requestMappingTemplate?: string; - readonly requestMappingTemplateS3Location?: string; + /** + * The Function response mapping template. + */ readonly responseMappingTemplate?: string; - readonly responseMappingTemplateS3Location?: string; + /** + * Describes a runtime used by an AWS AppSync pipeline resolver or AWS AppSync function. Specifies the name and version of the runtime to use. Note that if a runtime is specified, code must also be specified. + */ readonly runtime?: outputs.appsync.FunctionConfigurationAppSyncRuntime; + /** + * Describes a Sync configuration for a resolver. Specifies which Conflict Detection strategy and Resolution strategy to use when the resolver is invoked. + */ readonly syncConfig?: outputs.appsync.FunctionConfigurationSyncConfig; } /** - * Resource Type definition for AWS::AppSync::FunctionConfiguration + * An example resource schema demonstrating some basic constructs and validation rules. */ export function getFunctionConfigurationOutput(args: GetFunctionConfigurationOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { return pulumi.output(args).apply((a: any) => getFunctionConfiguration(a, opts)) } export interface GetFunctionConfigurationOutputArgs { - id: pulumi.Input; + /** + * The ARN for the function generated by the service + */ + functionArn: pulumi.Input; } diff --git a/sdk/nodejs/cognito/getIdentityPool.ts b/sdk/nodejs/cognito/getIdentityPool.ts index 939d25079b..1a9ca8e3d4 100644 --- a/sdk/nodejs/cognito/getIdentityPool.ts +++ b/sdk/nodejs/cognito/getIdentityPool.ts @@ -25,16 +25,15 @@ export interface GetIdentityPoolArgs { export interface GetIdentityPoolResult { readonly allowClassicFlow?: boolean; readonly allowUnauthenticatedIdentities?: boolean; + readonly cognitoEvents?: any; readonly cognitoIdentityProviders?: outputs.cognito.IdentityPoolCognitoIdentityProvider[]; + readonly cognitoStreams?: outputs.cognito.IdentityPoolCognitoStreams; readonly developerProviderName?: string; readonly id?: string; readonly identityPoolName?: string; - /** - * An array of key-value pairs to apply to this resource. - */ - readonly identityPoolTags?: outputs.cognito.IdentityPoolTag[]; readonly name?: string; readonly openIdConnectProviderArns?: string[]; + readonly pushSync?: outputs.cognito.IdentityPoolPushSync; readonly samlProviderArns?: string[]; readonly supportedLoginProviders?: any; } diff --git a/sdk/nodejs/cognito/getUserPool.ts b/sdk/nodejs/cognito/getUserPool.ts index 41f5d5f4b0..efcd191c6e 100644 --- a/sdk/nodejs/cognito/getUserPool.ts +++ b/sdk/nodejs/cognito/getUserPool.ts @@ -14,12 +14,12 @@ export function getUserPool(args: GetUserPoolArgs, opts?: pulumi.InvokeOptions): opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("aws-native:cognito:getUserPool", { - "id": args.id, + "userPoolId": args.userPoolId, }, opts); } export interface GetUserPoolArgs { - id: string; + userPoolId: string; } export interface GetUserPoolResult { @@ -33,8 +33,6 @@ export interface GetUserPoolResult { readonly emailConfiguration?: outputs.cognito.UserPoolEmailConfiguration; readonly emailVerificationMessage?: string; readonly emailVerificationSubject?: string; - readonly enabledMfas?: string[]; - readonly id?: string; readonly lambdaConfig?: outputs.cognito.UserPoolLambdaConfig; readonly mfaConfiguration?: string; readonly policies?: outputs.cognito.UserPoolPolicies; @@ -46,6 +44,7 @@ export interface GetUserPoolResult { readonly smsVerificationMessage?: string; readonly userAttributeUpdateSettings?: outputs.cognito.UserPoolUserAttributeUpdateSettings; readonly userPoolAddOns?: outputs.cognito.UserPoolAddOns; + readonly userPoolId?: string; readonly userPoolName?: string; readonly userPoolTags?: any; readonly usernameAttributes?: string[]; @@ -60,5 +59,5 @@ export function getUserPoolOutput(args: GetUserPoolOutputArgs, opts?: pulumi.Inv } export interface GetUserPoolOutputArgs { - id: pulumi.Input; + userPoolId: pulumi.Input; } diff --git a/sdk/nodejs/cognito/getUserPoolGroup.ts b/sdk/nodejs/cognito/getUserPoolGroup.ts index 524e23f184..641bb1a72f 100644 --- a/sdk/nodejs/cognito/getUserPoolGroup.ts +++ b/sdk/nodejs/cognito/getUserPoolGroup.ts @@ -11,17 +11,18 @@ export function getUserPoolGroup(args: GetUserPoolGroupArgs, opts?: pulumi.Invok opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("aws-native:cognito:getUserPoolGroup", { - "id": args.id, + "groupName": args.groupName, + "userPoolId": args.userPoolId, }, opts); } export interface GetUserPoolGroupArgs { - id: string; + groupName: string; + userPoolId: string; } export interface GetUserPoolGroupResult { readonly description?: string; - readonly id?: string; readonly precedence?: number; readonly roleArn?: string; } @@ -33,5 +34,6 @@ export function getUserPoolGroupOutput(args: GetUserPoolGroupOutputArgs, opts?: } export interface GetUserPoolGroupOutputArgs { - id: pulumi.Input; + groupName: pulumi.Input; + userPoolId: pulumi.Input; } diff --git a/sdk/nodejs/cognito/identityPool.ts b/sdk/nodejs/cognito/identityPool.ts index 2e8a3a00a1..5df4d1d2a9 100644 --- a/sdk/nodejs/cognito/identityPool.ts +++ b/sdk/nodejs/cognito/identityPool.ts @@ -44,10 +44,6 @@ export class IdentityPool extends pulumi.CustomResource { public readonly cognitoStreams!: pulumi.Output; public readonly developerProviderName!: pulumi.Output; public readonly identityPoolName!: pulumi.Output; - /** - * An array of key-value pairs to apply to this resource. - */ - public readonly identityPoolTags!: pulumi.Output; public /*out*/ readonly name!: pulumi.Output; public readonly openIdConnectProviderArns!: pulumi.Output; public readonly pushSync!: pulumi.Output; @@ -75,7 +71,6 @@ export class IdentityPool extends pulumi.CustomResource { resourceInputs["cognitoStreams"] = args ? args.cognitoStreams : undefined; resourceInputs["developerProviderName"] = args ? args.developerProviderName : undefined; resourceInputs["identityPoolName"] = args ? args.identityPoolName : undefined; - resourceInputs["identityPoolTags"] = args ? args.identityPoolTags : undefined; resourceInputs["openIdConnectProviderArns"] = args ? args.openIdConnectProviderArns : undefined; resourceInputs["pushSync"] = args ? args.pushSync : undefined; resourceInputs["samlProviderArns"] = args ? args.samlProviderArns : undefined; @@ -89,7 +84,6 @@ export class IdentityPool extends pulumi.CustomResource { resourceInputs["cognitoStreams"] = undefined /*out*/; resourceInputs["developerProviderName"] = undefined /*out*/; resourceInputs["identityPoolName"] = undefined /*out*/; - resourceInputs["identityPoolTags"] = undefined /*out*/; resourceInputs["name"] = undefined /*out*/; resourceInputs["openIdConnectProviderArns"] = undefined /*out*/; resourceInputs["pushSync"] = undefined /*out*/; @@ -112,10 +106,6 @@ export interface IdentityPoolArgs { cognitoStreams?: pulumi.Input; developerProviderName?: pulumi.Input; identityPoolName?: pulumi.Input; - /** - * An array of key-value pairs to apply to this resource. - */ - identityPoolTags?: pulumi.Input[]>; openIdConnectProviderArns?: pulumi.Input[]>; pushSync?: pulumi.Input; samlProviderArns?: pulumi.Input[]>; diff --git a/sdk/nodejs/cognito/userPool.ts b/sdk/nodejs/cognito/userPool.ts index 84fe7d4fe1..c24cfa675a 100644 --- a/sdk/nodejs/cognito/userPool.ts +++ b/sdk/nodejs/cognito/userPool.ts @@ -9,8 +9,6 @@ import * as utilities from "../utilities"; /** * Resource Type definition for AWS::Cognito::UserPool - * - * @deprecated UserPool is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible. */ export class UserPool extends pulumi.CustomResource { /** @@ -22,7 +20,6 @@ export class UserPool extends pulumi.CustomResource { * @param opts Optional settings to control the behavior of the CustomResource. */ public static get(name: string, id: pulumi.Input, opts?: pulumi.CustomResourceOptions): UserPool { - pulumi.log.warn("UserPool is deprecated: UserPool is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.") return new UserPool(name, undefined as any, { ...opts, id: id }); } @@ -62,6 +59,7 @@ export class UserPool extends pulumi.CustomResource { public readonly smsVerificationMessage!: pulumi.Output; public readonly userAttributeUpdateSettings!: pulumi.Output; public readonly userPoolAddOns!: pulumi.Output; + public /*out*/ readonly userPoolId!: pulumi.Output; public readonly userPoolName!: pulumi.Output; public readonly userPoolTags!: pulumi.Output; public readonly usernameAttributes!: pulumi.Output; @@ -75,9 +73,7 @@ export class UserPool extends pulumi.CustomResource { * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ - /** @deprecated UserPool is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible. */ constructor(name: string, args?: UserPoolArgs, opts?: pulumi.CustomResourceOptions) { - pulumi.log.warn("UserPool is deprecated: UserPool is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.") let resourceInputs: pulumi.Inputs = {}; opts = opts || {}; if (!opts.id) { @@ -108,6 +104,7 @@ export class UserPool extends pulumi.CustomResource { resourceInputs["arn"] = undefined /*out*/; resourceInputs["providerName"] = undefined /*out*/; resourceInputs["providerUrl"] = undefined /*out*/; + resourceInputs["userPoolId"] = undefined /*out*/; } else { resourceInputs["accountRecoverySetting"] = undefined /*out*/; resourceInputs["adminCreateUserConfig"] = undefined /*out*/; @@ -131,6 +128,7 @@ export class UserPool extends pulumi.CustomResource { resourceInputs["smsVerificationMessage"] = undefined /*out*/; resourceInputs["userAttributeUpdateSettings"] = undefined /*out*/; resourceInputs["userPoolAddOns"] = undefined /*out*/; + resourceInputs["userPoolId"] = undefined /*out*/; resourceInputs["userPoolName"] = undefined /*out*/; resourceInputs["userPoolTags"] = undefined /*out*/; resourceInputs["usernameAttributes"] = undefined /*out*/; diff --git a/sdk/nodejs/cognito/userPoolGroup.ts b/sdk/nodejs/cognito/userPoolGroup.ts index 80cfa5d0f0..ff50357d98 100644 --- a/sdk/nodejs/cognito/userPoolGroup.ts +++ b/sdk/nodejs/cognito/userPoolGroup.ts @@ -6,8 +6,6 @@ import * as utilities from "../utilities"; /** * Resource Type definition for AWS::Cognito::UserPoolGroup - * - * @deprecated UserPoolGroup is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible. */ export class UserPoolGroup extends pulumi.CustomResource { /** @@ -19,7 +17,6 @@ export class UserPoolGroup extends pulumi.CustomResource { * @param opts Optional settings to control the behavior of the CustomResource. */ public static get(name: string, id: pulumi.Input, opts?: pulumi.CustomResourceOptions): UserPoolGroup { - pulumi.log.warn("UserPoolGroup is deprecated: UserPoolGroup is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.") return new UserPoolGroup(name, undefined as any, { ...opts, id: id }); } @@ -50,9 +47,7 @@ export class UserPoolGroup extends pulumi.CustomResource { * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ - /** @deprecated UserPoolGroup is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible. */ constructor(name: string, args: UserPoolGroupArgs, opts?: pulumi.CustomResourceOptions) { - pulumi.log.warn("UserPoolGroup is deprecated: UserPoolGroup is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.") let resourceInputs: pulumi.Inputs = {}; opts = opts || {}; if (!opts.id) { diff --git a/sdk/nodejs/connect/contactFlowModule.ts b/sdk/nodejs/connect/contactFlowModule.ts index 719a92cb9e..a53a8fe6f3 100644 --- a/sdk/nodejs/connect/contactFlowModule.ts +++ b/sdk/nodejs/connect/contactFlowModule.ts @@ -60,11 +60,11 @@ export class ContactFlowModule extends pulumi.CustomResource { /** * The state of the contact flow module. */ - public readonly state!: pulumi.Output; + public readonly state!: pulumi.Output; /** * The status of the contact flow module. */ - public /*out*/ readonly status!: pulumi.Output; + public /*out*/ readonly status!: pulumi.Output; /** * One or more tags. */ @@ -133,7 +133,7 @@ export interface ContactFlowModuleArgs { /** * The state of the contact flow module. */ - state?: pulumi.Input; + state?: pulumi.Input; /** * One or more tags. */ diff --git a/sdk/nodejs/connect/getContactFlowModule.ts b/sdk/nodejs/connect/getContactFlowModule.ts index aa39b622e3..6c26bb4460 100644 --- a/sdk/nodejs/connect/getContactFlowModule.ts +++ b/sdk/nodejs/connect/getContactFlowModule.ts @@ -49,11 +49,11 @@ export interface GetContactFlowModuleResult { /** * The state of the contact flow module. */ - readonly state?: enums.connect.ContactFlowModuleState; + readonly state?: string; /** * The status of the contact flow module. */ - readonly status?: enums.connect.ContactFlowModuleStatus; + readonly status?: string; /** * One or more tags. */ diff --git a/sdk/nodejs/customerprofiles/domain.ts b/sdk/nodejs/customerprofiles/domain.ts index b7fa8c75b0..175b2891e6 100644 --- a/sdk/nodejs/customerprofiles/domain.ts +++ b/sdk/nodejs/customerprofiles/domain.ts @@ -61,6 +61,9 @@ export class Domain extends pulumi.CustomResource { * The time of this integration got last updated at */ public /*out*/ readonly lastUpdatedAt!: pulumi.Output; + public readonly matching!: pulumi.Output; + public readonly ruleBasedMatching!: pulumi.Output; + public /*out*/ readonly stats!: pulumi.Output; /** * The tags (keys and values) associated with the domain */ @@ -81,9 +84,12 @@ export class Domain extends pulumi.CustomResource { resourceInputs["defaultEncryptionKey"] = args ? args.defaultEncryptionKey : undefined; resourceInputs["defaultExpirationDays"] = args ? args.defaultExpirationDays : undefined; resourceInputs["domainName"] = args ? args.domainName : undefined; + resourceInputs["matching"] = args ? args.matching : undefined; + resourceInputs["ruleBasedMatching"] = args ? args.ruleBasedMatching : undefined; resourceInputs["tags"] = args ? args.tags : undefined; resourceInputs["createdAt"] = undefined /*out*/; resourceInputs["lastUpdatedAt"] = undefined /*out*/; + resourceInputs["stats"] = undefined /*out*/; } else { resourceInputs["createdAt"] = undefined /*out*/; resourceInputs["deadLetterQueueUrl"] = undefined /*out*/; @@ -91,6 +97,9 @@ export class Domain extends pulumi.CustomResource { resourceInputs["defaultExpirationDays"] = undefined /*out*/; resourceInputs["domainName"] = undefined /*out*/; resourceInputs["lastUpdatedAt"] = undefined /*out*/; + resourceInputs["matching"] = undefined /*out*/; + resourceInputs["ruleBasedMatching"] = undefined /*out*/; + resourceInputs["stats"] = undefined /*out*/; resourceInputs["tags"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); @@ -120,6 +129,8 @@ export interface DomainArgs { * The unique name of the domain. */ domainName?: pulumi.Input; + matching?: pulumi.Input; + ruleBasedMatching?: pulumi.Input; /** * The tags (keys and values) associated with the domain */ diff --git a/sdk/nodejs/customerprofiles/getDomain.ts b/sdk/nodejs/customerprofiles/getDomain.ts index 0f8298d79c..e1fad48db4 100644 --- a/sdk/nodejs/customerprofiles/getDomain.ts +++ b/sdk/nodejs/customerprofiles/getDomain.ts @@ -46,6 +46,9 @@ export interface GetDomainResult { * The time of this integration got last updated at */ readonly lastUpdatedAt?: string; + readonly matching?: outputs.customerprofiles.DomainMatching; + readonly ruleBasedMatching?: outputs.customerprofiles.DomainRuleBasedMatching; + readonly stats?: outputs.customerprofiles.DomainStats; /** * The tags (keys and values) associated with the domain */ diff --git a/sdk/nodejs/ec2/getSubnet.ts b/sdk/nodejs/ec2/getSubnet.ts index e08e0057e5..ad6c601a9a 100644 --- a/sdk/nodejs/ec2/getSubnet.ts +++ b/sdk/nodejs/ec2/getSubnet.ts @@ -25,8 +25,16 @@ export interface GetSubnetArgs { export interface GetSubnetResult { readonly assignIpv6AddressOnCreation?: boolean; readonly enableDns64?: boolean; + /** + * The netmask length of the IPv4 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool + */ + readonly ipv4NetmaskLength?: number; readonly ipv6CidrBlock?: string; readonly ipv6CidrBlocks?: string[]; + /** + * The netmask length of the IPv6 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool + */ + readonly ipv6NetmaskLength?: number; readonly mapPublicIpOnLaunch?: boolean; readonly networkAclAssociationId?: string; readonly privateDnsNameOptionsOnLaunch?: outputs.ec2.PrivateDnsNameOptionsOnLaunchProperties; diff --git a/sdk/nodejs/ec2/subnet.ts b/sdk/nodejs/ec2/subnet.ts index d2739edcbe..344b592d56 100644 --- a/sdk/nodejs/ec2/subnet.ts +++ b/sdk/nodejs/ec2/subnet.ts @@ -42,9 +42,17 @@ export class Subnet extends pulumi.CustomResource { public readonly availabilityZoneId!: pulumi.Output; public readonly cidrBlock!: pulumi.Output; public readonly enableDns64!: pulumi.Output; + /** + * The netmask length of the IPv4 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool + */ + public readonly ipv4NetmaskLength!: pulumi.Output; public readonly ipv6CidrBlock!: pulumi.Output; public /*out*/ readonly ipv6CidrBlocks!: pulumi.Output; public readonly ipv6Native!: pulumi.Output; + /** + * The netmask length of the IPv6 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool + */ + public readonly ipv6NetmaskLength!: pulumi.Output; public readonly mapPublicIpOnLaunch!: pulumi.Output; public /*out*/ readonly networkAclAssociationId!: pulumi.Output; public readonly outpostArn!: pulumi.Output; @@ -72,8 +80,10 @@ export class Subnet extends pulumi.CustomResource { resourceInputs["availabilityZoneId"] = args ? args.availabilityZoneId : undefined; resourceInputs["cidrBlock"] = args ? args.cidrBlock : undefined; resourceInputs["enableDns64"] = args ? args.enableDns64 : undefined; + resourceInputs["ipv4NetmaskLength"] = args ? args.ipv4NetmaskLength : undefined; resourceInputs["ipv6CidrBlock"] = args ? args.ipv6CidrBlock : undefined; resourceInputs["ipv6Native"] = args ? args.ipv6Native : undefined; + resourceInputs["ipv6NetmaskLength"] = args ? args.ipv6NetmaskLength : undefined; resourceInputs["mapPublicIpOnLaunch"] = args ? args.mapPublicIpOnLaunch : undefined; resourceInputs["outpostArn"] = args ? args.outpostArn : undefined; resourceInputs["privateDnsNameOptionsOnLaunch"] = args ? args.privateDnsNameOptionsOnLaunch : undefined; @@ -88,9 +98,11 @@ export class Subnet extends pulumi.CustomResource { resourceInputs["availabilityZoneId"] = undefined /*out*/; resourceInputs["cidrBlock"] = undefined /*out*/; resourceInputs["enableDns64"] = undefined /*out*/; + resourceInputs["ipv4NetmaskLength"] = undefined /*out*/; resourceInputs["ipv6CidrBlock"] = undefined /*out*/; resourceInputs["ipv6CidrBlocks"] = undefined /*out*/; resourceInputs["ipv6Native"] = undefined /*out*/; + resourceInputs["ipv6NetmaskLength"] = undefined /*out*/; resourceInputs["mapPublicIpOnLaunch"] = undefined /*out*/; resourceInputs["networkAclAssociationId"] = undefined /*out*/; resourceInputs["outpostArn"] = undefined /*out*/; @@ -115,8 +127,16 @@ export interface SubnetArgs { availabilityZoneId?: pulumi.Input; cidrBlock?: pulumi.Input; enableDns64?: pulumi.Input; + /** + * The netmask length of the IPv4 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool + */ + ipv4NetmaskLength?: pulumi.Input; ipv6CidrBlock?: pulumi.Input; ipv6Native?: pulumi.Input; + /** + * The netmask length of the IPv6 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool + */ + ipv6NetmaskLength?: pulumi.Input; mapPublicIpOnLaunch?: pulumi.Input; outpostArn?: pulumi.Input; privateDnsNameOptionsOnLaunch?: pulumi.Input; diff --git a/sdk/nodejs/entityresolution/getIdMappingWorkflow.ts b/sdk/nodejs/entityresolution/getIdMappingWorkflow.ts new file mode 100644 index 0000000000..1f89bcaee4 --- /dev/null +++ b/sdk/nodejs/entityresolution/getIdMappingWorkflow.ts @@ -0,0 +1,54 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as inputs from "../types/input"; +import * as outputs from "../types/output"; +import * as enums from "../types/enums"; +import * as utilities from "../utilities"; + +/** + * IdMappingWorkflow defined in AWS Entity Resolution service + */ +export function getIdMappingWorkflow(args: GetIdMappingWorkflowArgs, opts?: pulumi.InvokeOptions): Promise { + + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invoke("aws-native:entityresolution:getIdMappingWorkflow", { + "workflowName": args.workflowName, + }, opts); +} + +export interface GetIdMappingWorkflowArgs { + /** + * The name of the IdMappingWorkflow + */ + workflowName: string; +} + +export interface GetIdMappingWorkflowResult { + readonly createdAt?: string; + /** + * The description of the IdMappingWorkflow + */ + readonly description?: string; + readonly idMappingTechniques?: outputs.entityresolution.IdMappingWorkflowIdMappingTechniques; + readonly inputSourceConfig?: outputs.entityresolution.IdMappingWorkflowInputSource[]; + readonly outputSourceConfig?: outputs.entityresolution.IdMappingWorkflowOutputSource[]; + readonly roleArn?: string; + readonly tags?: outputs.entityresolution.IdMappingWorkflowTag[]; + readonly updatedAt?: string; + readonly workflowArn?: string; +} +/** + * IdMappingWorkflow defined in AWS Entity Resolution service + */ +export function getIdMappingWorkflowOutput(args: GetIdMappingWorkflowOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { + return pulumi.output(args).apply((a: any) => getIdMappingWorkflow(a, opts)) +} + +export interface GetIdMappingWorkflowOutputArgs { + /** + * The name of the IdMappingWorkflow + */ + workflowName: pulumi.Input; +} diff --git a/sdk/nodejs/entityresolution/idMappingWorkflow.ts b/sdk/nodejs/entityresolution/idMappingWorkflow.ts new file mode 100644 index 0000000000..c8bceda834 --- /dev/null +++ b/sdk/nodejs/entityresolution/idMappingWorkflow.ts @@ -0,0 +1,129 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as inputs from "../types/input"; +import * as outputs from "../types/output"; +import * as enums from "../types/enums"; +import * as utilities from "../utilities"; + +/** + * IdMappingWorkflow defined in AWS Entity Resolution service + */ +export class IdMappingWorkflow extends pulumi.CustomResource { + /** + * Get an existing IdMappingWorkflow resource's state with the given name, ID, and optional extra + * properties used to qualify the lookup. + * + * @param name The _unique_ name of the resulting resource. + * @param id The _unique_ provider ID of the resource to lookup. + * @param opts Optional settings to control the behavior of the CustomResource. + */ + public static get(name: string, id: pulumi.Input, opts?: pulumi.CustomResourceOptions): IdMappingWorkflow { + return new IdMappingWorkflow(name, undefined as any, { ...opts, id: id }); + } + + /** @internal */ + public static readonly __pulumiType = 'aws-native:entityresolution:IdMappingWorkflow'; + + /** + * Returns true if the given object is an instance of IdMappingWorkflow. This is designed to work even + * when multiple copies of the Pulumi SDK have been loaded into the same process. + */ + public static isInstance(obj: any): obj is IdMappingWorkflow { + if (obj === undefined || obj === null) { + return false; + } + return obj['__pulumiType'] === IdMappingWorkflow.__pulumiType; + } + + public /*out*/ readonly createdAt!: pulumi.Output; + /** + * The description of the IdMappingWorkflow + */ + public readonly description!: pulumi.Output; + public readonly idMappingTechniques!: pulumi.Output; + public readonly inputSourceConfig!: pulumi.Output; + public readonly outputSourceConfig!: pulumi.Output; + public readonly roleArn!: pulumi.Output; + public readonly tags!: pulumi.Output; + public /*out*/ readonly updatedAt!: pulumi.Output; + public /*out*/ readonly workflowArn!: pulumi.Output; + /** + * The name of the IdMappingWorkflow + */ + public readonly workflowName!: pulumi.Output; + + /** + * Create a IdMappingWorkflow resource with the given unique name, arguments, and options. + * + * @param name The _unique_ name of the resource. + * @param args The arguments to use to populate this resource's properties. + * @param opts A bag of options that control this resource's behavior. + */ + constructor(name: string, args: IdMappingWorkflowArgs, opts?: pulumi.CustomResourceOptions) { + let resourceInputs: pulumi.Inputs = {}; + opts = opts || {}; + if (!opts.id) { + if ((!args || args.idMappingTechniques === undefined) && !opts.urn) { + throw new Error("Missing required property 'idMappingTechniques'"); + } + if ((!args || args.inputSourceConfig === undefined) && !opts.urn) { + throw new Error("Missing required property 'inputSourceConfig'"); + } + if ((!args || args.outputSourceConfig === undefined) && !opts.urn) { + throw new Error("Missing required property 'outputSourceConfig'"); + } + if ((!args || args.roleArn === undefined) && !opts.urn) { + throw new Error("Missing required property 'roleArn'"); + } + if ((!args || args.workflowName === undefined) && !opts.urn) { + throw new Error("Missing required property 'workflowName'"); + } + resourceInputs["description"] = args ? args.description : undefined; + resourceInputs["idMappingTechniques"] = args ? args.idMappingTechniques : undefined; + resourceInputs["inputSourceConfig"] = args ? args.inputSourceConfig : undefined; + resourceInputs["outputSourceConfig"] = args ? args.outputSourceConfig : undefined; + resourceInputs["roleArn"] = args ? args.roleArn : undefined; + resourceInputs["tags"] = args ? args.tags : undefined; + resourceInputs["workflowName"] = args ? args.workflowName : undefined; + resourceInputs["createdAt"] = undefined /*out*/; + resourceInputs["updatedAt"] = undefined /*out*/; + resourceInputs["workflowArn"] = undefined /*out*/; + } else { + resourceInputs["createdAt"] = undefined /*out*/; + resourceInputs["description"] = undefined /*out*/; + resourceInputs["idMappingTechniques"] = undefined /*out*/; + resourceInputs["inputSourceConfig"] = undefined /*out*/; + resourceInputs["outputSourceConfig"] = undefined /*out*/; + resourceInputs["roleArn"] = undefined /*out*/; + resourceInputs["tags"] = undefined /*out*/; + resourceInputs["updatedAt"] = undefined /*out*/; + resourceInputs["workflowArn"] = undefined /*out*/; + resourceInputs["workflowName"] = undefined /*out*/; + } + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + const replaceOnChanges = { replaceOnChanges: ["workflowName"] }; + opts = pulumi.mergeOptions(opts, replaceOnChanges); + super(IdMappingWorkflow.__pulumiType, name, resourceInputs, opts); + } +} + +/** + * The set of arguments for constructing a IdMappingWorkflow resource. + */ +export interface IdMappingWorkflowArgs { + /** + * The description of the IdMappingWorkflow + */ + description?: pulumi.Input; + idMappingTechniques: pulumi.Input; + inputSourceConfig: pulumi.Input[]>; + outputSourceConfig: pulumi.Input[]>; + roleArn: pulumi.Input; + tags?: pulumi.Input[]>; + /** + * The name of the IdMappingWorkflow + */ + workflowName: pulumi.Input; +} diff --git a/sdk/nodejs/entityresolution/index.ts b/sdk/nodejs/entityresolution/index.ts index 79d69e03de..55b58719e9 100644 --- a/sdk/nodejs/entityresolution/index.ts +++ b/sdk/nodejs/entityresolution/index.ts @@ -5,6 +5,11 @@ import * as pulumi from "@pulumi/pulumi"; import * as utilities from "../utilities"; // Export members: +export { GetIdMappingWorkflowArgs, GetIdMappingWorkflowResult, GetIdMappingWorkflowOutputArgs } from "./getIdMappingWorkflow"; +export const getIdMappingWorkflow: typeof import("./getIdMappingWorkflow").getIdMappingWorkflow = null as any; +export const getIdMappingWorkflowOutput: typeof import("./getIdMappingWorkflow").getIdMappingWorkflowOutput = null as any; +utilities.lazyLoad(exports, ["getIdMappingWorkflow","getIdMappingWorkflowOutput"], () => require("./getIdMappingWorkflow")); + export { GetMatchingWorkflowArgs, GetMatchingWorkflowResult, GetMatchingWorkflowOutputArgs } from "./getMatchingWorkflow"; export const getMatchingWorkflow: typeof import("./getMatchingWorkflow").getMatchingWorkflow = null as any; export const getMatchingWorkflowOutput: typeof import("./getMatchingWorkflow").getMatchingWorkflowOutput = null as any; @@ -15,6 +20,11 @@ export const getSchemaMapping: typeof import("./getSchemaMapping").getSchemaMapp export const getSchemaMappingOutput: typeof import("./getSchemaMapping").getSchemaMappingOutput = null as any; utilities.lazyLoad(exports, ["getSchemaMapping","getSchemaMappingOutput"], () => require("./getSchemaMapping")); +export { IdMappingWorkflowArgs } from "./idMappingWorkflow"; +export type IdMappingWorkflow = import("./idMappingWorkflow").IdMappingWorkflow; +export const IdMappingWorkflow: typeof import("./idMappingWorkflow").IdMappingWorkflow = null as any; +utilities.lazyLoad(exports, ["IdMappingWorkflow"], () => require("./idMappingWorkflow")); + export { MatchingWorkflowArgs } from "./matchingWorkflow"; export type MatchingWorkflow = import("./matchingWorkflow").MatchingWorkflow; export const MatchingWorkflow: typeof import("./matchingWorkflow").MatchingWorkflow = null as any; @@ -33,6 +43,8 @@ const _module = { version: utilities.getVersion(), construct: (name: string, type: string, urn: string): pulumi.Resource => { switch (type) { + case "aws-native:entityresolution:IdMappingWorkflow": + return new IdMappingWorkflow(name, undefined, { urn }) case "aws-native:entityresolution:MatchingWorkflow": return new MatchingWorkflow(name, undefined, { urn }) case "aws-native:entityresolution:SchemaMapping": diff --git a/sdk/nodejs/events/getRule.ts b/sdk/nodejs/events/getRule.ts index cbc948021c..bad7b339b6 100644 --- a/sdk/nodejs/events/getRule.ts +++ b/sdk/nodejs/events/getRule.ts @@ -14,50 +14,22 @@ export function getRule(args: GetRuleArgs, opts?: pulumi.InvokeOptions): Promise opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("aws-native:events:getRule", { - "arn": args.arn, + "id": args.id, }, opts); } export interface GetRuleArgs { - /** - * The ARN of the rule, such as arn:aws:events:us-east-2:123456789012:rule/example. - */ - arn: string; + id: string; } export interface GetRuleResult { - /** - * The ARN of the rule, such as arn:aws:events:us-east-2:123456789012:rule/example. - */ readonly arn?: string; - /** - * The description of the rule. - */ readonly description?: string; - /** - * The name or ARN of the event bus associated with the rule. If you omit this, the default event bus is used. - */ - readonly eventBusName?: string; - /** - * The event pattern of the rule. For more information, see Events and Event Patterns in the Amazon EventBridge User Guide. - */ - readonly eventPattern?: string; - /** - * The Amazon Resource Name (ARN) of the role that is used for target invocation. - */ + readonly eventPattern?: any; + readonly id?: string; readonly roleArn?: string; - /** - * The scheduling expression. For example, "cron(0 20 * * ? *)", "rate(5 minutes)". For more information, see Creating an Amazon EventBridge rule that runs on a schedule. - */ readonly scheduleExpression?: string; - /** - * The state of the rule. - */ - readonly state?: enums.events.RuleState; - /** - * Adds the specified targets to the specified rule, or updates the targets if they are already associated with the rule. - * Targets are the resources that are invoked when a rule is triggered. - */ + readonly state?: string; readonly targets?: outputs.events.RuleTarget[]; } /** @@ -68,8 +40,5 @@ export function getRuleOutput(args: GetRuleOutputArgs, opts?: pulumi.InvokeOptio } export interface GetRuleOutputArgs { - /** - * The ARN of the rule, such as arn:aws:events:us-east-2:123456789012:rule/example. - */ - arn: pulumi.Input; + id: pulumi.Input; } diff --git a/sdk/nodejs/events/rule.ts b/sdk/nodejs/events/rule.ts index f7b75b048f..09b6b0dd4e 100644 --- a/sdk/nodejs/events/rule.ts +++ b/sdk/nodejs/events/rule.ts @@ -37,42 +37,14 @@ export class Rule extends pulumi.CustomResource { return obj['__pulumiType'] === Rule.__pulumiType; } - /** - * The ARN of the rule, such as arn:aws:events:us-east-2:123456789012:rule/example. - */ public /*out*/ readonly arn!: pulumi.Output; - /** - * The description of the rule. - */ public readonly description!: pulumi.Output; - /** - * The name or ARN of the event bus associated with the rule. If you omit this, the default event bus is used. - */ public readonly eventBusName!: pulumi.Output; - /** - * The event pattern of the rule. For more information, see Events and Event Patterns in the Amazon EventBridge User Guide. - */ - public readonly eventPattern!: pulumi.Output; - /** - * The name of the rule. - */ + public readonly eventPattern!: pulumi.Output; public readonly name!: pulumi.Output; - /** - * The Amazon Resource Name (ARN) of the role that is used for target invocation. - */ public readonly roleArn!: pulumi.Output; - /** - * The scheduling expression. For example, "cron(0 20 * * ? *)", "rate(5 minutes)". For more information, see Creating an Amazon EventBridge rule that runs on a schedule. - */ public readonly scheduleExpression!: pulumi.Output; - /** - * The state of the rule. - */ - public readonly state!: pulumi.Output; - /** - * Adds the specified targets to the specified rule, or updates the targets if they are already associated with the rule. - * Targets are the resources that are invoked when a rule is triggered. - */ + public readonly state!: pulumi.Output; public readonly targets!: pulumi.Output; /** @@ -107,7 +79,7 @@ export class Rule extends pulumi.CustomResource { resourceInputs["targets"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); - const replaceOnChanges = { replaceOnChanges: ["name"] }; + const replaceOnChanges = { replaceOnChanges: ["eventBusName", "name"] }; opts = pulumi.mergeOptions(opts, replaceOnChanges); super(Rule.__pulumiType, name, resourceInputs, opts); } @@ -117,37 +89,12 @@ export class Rule extends pulumi.CustomResource { * The set of arguments for constructing a Rule resource. */ export interface RuleArgs { - /** - * The description of the rule. - */ description?: pulumi.Input; - /** - * The name or ARN of the event bus associated with the rule. If you omit this, the default event bus is used. - */ eventBusName?: pulumi.Input; - /** - * The event pattern of the rule. For more information, see Events and Event Patterns in the Amazon EventBridge User Guide. - */ - eventPattern?: pulumi.Input; - /** - * The name of the rule. - */ + eventPattern?: any; name?: pulumi.Input; - /** - * The Amazon Resource Name (ARN) of the role that is used for target invocation. - */ roleArn?: pulumi.Input; - /** - * The scheduling expression. For example, "cron(0 20 * * ? *)", "rate(5 minutes)". For more information, see Creating an Amazon EventBridge rule that runs on a schedule. - */ scheduleExpression?: pulumi.Input; - /** - * The state of the rule. - */ - state?: pulumi.Input; - /** - * Adds the specified targets to the specified rule, or updates the targets if they are already associated with the rule. - * Targets are the resources that are invoked when a rule is triggered. - */ + state?: pulumi.Input; targets?: pulumi.Input[]>; } diff --git a/sdk/nodejs/gamelift/fleet.ts b/sdk/nodejs/gamelift/fleet.ts index 9905897d84..78e51ff1b0 100644 --- a/sdk/nodejs/gamelift/fleet.ts +++ b/sdk/nodejs/gamelift/fleet.ts @@ -81,6 +81,10 @@ export class Fleet extends pulumi.CustomResource { * A unique identifier for an AWS IAM role that manages access to your AWS services. With an instance role ARN set, any application that runs on an instance in this fleet can assume the role, including install scripts, server processes, and daemons (background processes). Create a role or look up a role's ARN from the IAM dashboard in the AWS Management Console. */ public readonly instanceRoleArn!: pulumi.Output; + /** + * Credentials provider implementation that loads credentials from the Amazon EC2 Instance Metadata Service. + */ + public readonly instanceRoleCredentialsProvider!: pulumi.Output; public readonly locations!: pulumi.Output; /** * This parameter is no longer used. When hosting a custom game build, specify where Amazon GameLift should store log files using the Amazon GameLift server API call ProcessReady() @@ -160,6 +164,7 @@ export class Fleet extends pulumi.CustomResource { resourceInputs["ec2InstanceType"] = args ? args.ec2InstanceType : undefined; resourceInputs["fleetType"] = args ? args.fleetType : undefined; resourceInputs["instanceRoleArn"] = args ? args.instanceRoleArn : undefined; + resourceInputs["instanceRoleCredentialsProvider"] = args ? args.instanceRoleCredentialsProvider : undefined; resourceInputs["locations"] = args ? args.locations : undefined; resourceInputs["logPaths"] = args ? args.logPaths : undefined; resourceInputs["maxSize"] = args ? args.maxSize : undefined; @@ -187,6 +192,7 @@ export class Fleet extends pulumi.CustomResource { resourceInputs["fleetId"] = undefined /*out*/; resourceInputs["fleetType"] = undefined /*out*/; resourceInputs["instanceRoleArn"] = undefined /*out*/; + resourceInputs["instanceRoleCredentialsProvider"] = undefined /*out*/; resourceInputs["locations"] = undefined /*out*/; resourceInputs["logPaths"] = undefined /*out*/; resourceInputs["maxSize"] = undefined /*out*/; @@ -203,7 +209,7 @@ export class Fleet extends pulumi.CustomResource { resourceInputs["serverLaunchPath"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); - const replaceOnChanges = { replaceOnChanges: ["buildId", "certificateConfiguration", "computeType", "ec2InstanceType", "fleetType", "instanceRoleArn", "logPaths[*]", "peerVpcAwsAccountId", "peerVpcId", "scriptId", "serverLaunchParameters", "serverLaunchPath"] }; + const replaceOnChanges = { replaceOnChanges: ["buildId", "certificateConfiguration", "computeType", "ec2InstanceType", "fleetType", "instanceRoleArn", "instanceRoleCredentialsProvider", "logPaths[*]", "peerVpcAwsAccountId", "peerVpcId", "scriptId", "serverLaunchParameters", "serverLaunchPath"] }; opts = pulumi.mergeOptions(opts, replaceOnChanges); super(Fleet.__pulumiType, name, resourceInputs, opts); } @@ -253,6 +259,10 @@ export interface FleetArgs { * A unique identifier for an AWS IAM role that manages access to your AWS services. With an instance role ARN set, any application that runs on an instance in this fleet can assume the role, including install scripts, server processes, and daemons (background processes). Create a role or look up a role's ARN from the IAM dashboard in the AWS Management Console. */ instanceRoleArn?: pulumi.Input; + /** + * Credentials provider implementation that loads credentials from the Amazon EC2 Instance Metadata Service. + */ + instanceRoleCredentialsProvider?: pulumi.Input; locations?: pulumi.Input[]>; /** * This parameter is no longer used. When hosting a custom game build, specify where Amazon GameLift should store log files using the Amazon GameLift server API call ProcessReady() diff --git a/sdk/nodejs/iam/getGroup.ts b/sdk/nodejs/iam/getGroup.ts index 42fe60f978..f61ef7e742 100644 --- a/sdk/nodejs/iam/getGroup.ts +++ b/sdk/nodejs/iam/getGroup.ts @@ -14,19 +14,33 @@ export function getGroup(args: GetGroupArgs, opts?: pulumi.InvokeOptions): Promi opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("aws-native:iam:getGroup", { - "id": args.id, + "groupName": args.groupName, }, opts); } export interface GetGroupArgs { - id: string; + /** + * The name of the group to create + */ + groupName: string; } export interface GetGroupResult { + /** + * The Arn of the group to create + */ readonly arn?: string; - readonly id?: string; + /** + * A list of Amazon Resource Names (ARNs) of the IAM managed policies that you want to attach to the role. + */ readonly managedPolicyArns?: string[]; + /** + * The path to the group + */ readonly path?: string; + /** + * Adds or updates an inline policy document that is embedded in the specified IAM group + */ readonly policies?: outputs.iam.GroupPolicy[]; } /** @@ -37,5 +51,8 @@ export function getGroupOutput(args: GetGroupOutputArgs, opts?: pulumi.InvokeOpt } export interface GetGroupOutputArgs { - id: pulumi.Input; + /** + * The name of the group to create + */ + groupName: pulumi.Input; } diff --git a/sdk/nodejs/iam/group.ts b/sdk/nodejs/iam/group.ts index 355c434286..25800dc5b7 100644 --- a/sdk/nodejs/iam/group.ts +++ b/sdk/nodejs/iam/group.ts @@ -9,8 +9,6 @@ import * as utilities from "../utilities"; /** * Resource Type definition for AWS::IAM::Group - * - * @deprecated Group is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible. */ export class Group extends pulumi.CustomResource { /** @@ -22,7 +20,6 @@ export class Group extends pulumi.CustomResource { * @param opts Optional settings to control the behavior of the CustomResource. */ public static get(name: string, id: pulumi.Input, opts?: pulumi.CustomResourceOptions): Group { - pulumi.log.warn("Group is deprecated: Group is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.") return new Group(name, undefined as any, { ...opts, id: id }); } @@ -40,10 +37,25 @@ export class Group extends pulumi.CustomResource { return obj['__pulumiType'] === Group.__pulumiType; } + /** + * The Arn of the group to create + */ public /*out*/ readonly arn!: pulumi.Output; + /** + * The name of the group to create + */ public readonly groupName!: pulumi.Output; + /** + * A list of Amazon Resource Names (ARNs) of the IAM managed policies that you want to attach to the role. + */ public readonly managedPolicyArns!: pulumi.Output; + /** + * The path to the group + */ public readonly path!: pulumi.Output; + /** + * Adds or updates an inline policy document that is embedded in the specified IAM group + */ public readonly policies!: pulumi.Output; /** @@ -53,9 +65,7 @@ export class Group extends pulumi.CustomResource { * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ - /** @deprecated Group is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible. */ constructor(name: string, args?: GroupArgs, opts?: pulumi.CustomResourceOptions) { - pulumi.log.warn("Group is deprecated: Group is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.") let resourceInputs: pulumi.Inputs = {}; opts = opts || {}; if (!opts.id) { @@ -82,8 +92,20 @@ export class Group extends pulumi.CustomResource { * The set of arguments for constructing a Group resource. */ export interface GroupArgs { + /** + * The name of the group to create + */ groupName?: pulumi.Input; + /** + * A list of Amazon Resource Names (ARNs) of the IAM managed policies that you want to attach to the role. + */ managedPolicyArns?: pulumi.Input[]>; + /** + * The path to the group + */ path?: pulumi.Input; + /** + * Adds or updates an inline policy document that is embedded in the specified IAM group + */ policies?: pulumi.Input[]>; } diff --git a/sdk/nodejs/iot/getJobTemplate.ts b/sdk/nodejs/iot/getJobTemplate.ts index dac9d5be20..66b75a5fa4 100644 --- a/sdk/nodejs/iot/getJobTemplate.ts +++ b/sdk/nodejs/iot/getJobTemplate.ts @@ -2,9 +2,6 @@ // *** Do not edit by hand unless you're certain you know what you are doing! *** import * as pulumi from "@pulumi/pulumi"; -import * as inputs from "../types/input"; -import * as outputs from "../types/output"; -import * as enums from "../types/enums"; import * as utilities from "../utilities"; /** @@ -24,9 +21,6 @@ export interface GetJobTemplateArgs { export interface GetJobTemplateResult { readonly arn?: string; - readonly destinationPackageVersions?: string[]; - readonly jobExecutionsRetryConfig?: outputs.iot.JobExecutionsRetryConfigProperties; - readonly maintenanceWindows?: outputs.iot.JobTemplateMaintenanceWindow[]; } /** * Job templates enable you to preconfigure jobs so that you can deploy them to multiple sets of target devices. diff --git a/sdk/nodejs/iot/getPolicy.ts b/sdk/nodejs/iot/getPolicy.ts index 9a8bc248f3..174f5def44 100644 --- a/sdk/nodejs/iot/getPolicy.ts +++ b/sdk/nodejs/iot/getPolicy.ts @@ -2,6 +2,9 @@ // *** Do not edit by hand unless you're certain you know what you are doing! *** import * as pulumi from "@pulumi/pulumi"; +import * as inputs from "../types/input"; +import * as outputs from "../types/output"; +import * as enums from "../types/enums"; import * as utilities from "../utilities"; /** @@ -23,6 +26,7 @@ export interface GetPolicyResult { readonly arn?: string; readonly id?: string; readonly policyDocument?: any; + readonly tags?: outputs.iot.PolicyTag[]; } /** * Resource Type definition for AWS::IoT::Policy diff --git a/sdk/nodejs/iot/jobTemplate.ts b/sdk/nodejs/iot/jobTemplate.ts index 15c5e3ec69..bac78461ec 100644 --- a/sdk/nodejs/iot/jobTemplate.ts +++ b/sdk/nodejs/iot/jobTemplate.ts @@ -127,7 +127,7 @@ export class JobTemplate extends pulumi.CustomResource { resourceInputs["timeoutConfig"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); - const replaceOnChanges = { replaceOnChanges: ["abortConfig", "description", "document", "documentSource", "jobArn", "jobExecutionsRolloutConfig", "jobTemplateId", "presignedUrlConfig", "tags[*]", "timeoutConfig"] }; + const replaceOnChanges = { replaceOnChanges: ["abortConfig", "description", "destinationPackageVersions[*]", "document", "documentSource", "jobArn", "jobExecutionsRetryConfig", "jobExecutionsRolloutConfig", "jobTemplateId", "maintenanceWindows[*]", "presignedUrlConfig", "tags[*]", "timeoutConfig"] }; opts = pulumi.mergeOptions(opts, replaceOnChanges); super(JobTemplate.__pulumiType, name, resourceInputs, opts); } diff --git a/sdk/nodejs/iot/policy.ts b/sdk/nodejs/iot/policy.ts index 06244777a2..3b19c1244c 100644 --- a/sdk/nodejs/iot/policy.ts +++ b/sdk/nodejs/iot/policy.ts @@ -2,6 +2,9 @@ // *** Do not edit by hand unless you're certain you know what you are doing! *** import * as pulumi from "@pulumi/pulumi"; +import * as inputs from "../types/input"; +import * as outputs from "../types/output"; +import * as enums from "../types/enums"; import * as utilities from "../utilities"; /** @@ -37,6 +40,7 @@ export class Policy extends pulumi.CustomResource { public /*out*/ readonly arn!: pulumi.Output; public readonly policyDocument!: pulumi.Output; public readonly policyName!: pulumi.Output; + public readonly tags!: pulumi.Output; /** * Create a Policy resource with the given unique name, arguments, and options. @@ -54,11 +58,13 @@ export class Policy extends pulumi.CustomResource { } resourceInputs["policyDocument"] = args ? args.policyDocument : undefined; resourceInputs["policyName"] = args ? args.policyName : undefined; + resourceInputs["tags"] = args ? args.tags : undefined; resourceInputs["arn"] = undefined /*out*/; } else { resourceInputs["arn"] = undefined /*out*/; resourceInputs["policyDocument"] = undefined /*out*/; resourceInputs["policyName"] = undefined /*out*/; + resourceInputs["tags"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); const replaceOnChanges = { replaceOnChanges: ["policyName"] }; @@ -73,4 +79,5 @@ export class Policy extends pulumi.CustomResource { export interface PolicyArgs { policyDocument: any; policyName?: pulumi.Input; + tags?: pulumi.Input[]>; } diff --git a/sdk/nodejs/lambda/function.ts b/sdk/nodejs/lambda/function.ts index b94b2a74f1..a9bd7ba963 100644 --- a/sdk/nodejs/lambda/function.ts +++ b/sdk/nodejs/lambda/function.ts @@ -98,6 +98,10 @@ export class Function extends pulumi.CustomResource { * PackageType. */ public readonly packageType!: pulumi.Output; + /** + * The resource policy of your function + */ + public readonly policy!: pulumi.Output; /** * The number of simultaneous executions to reserve for the function. */ @@ -171,6 +175,7 @@ export class Function extends pulumi.CustomResource { resourceInputs["layers"] = args ? args.layers : undefined; resourceInputs["memorySize"] = args ? args.memorySize : undefined; resourceInputs["packageType"] = args ? args.packageType : undefined; + resourceInputs["policy"] = args ? args.policy : undefined; resourceInputs["reservedConcurrentExecutions"] = args ? args.reservedConcurrentExecutions : undefined; resourceInputs["role"] = args ? args.role : undefined; resourceInputs["runtime"] = args ? args.runtime : undefined; @@ -199,6 +204,7 @@ export class Function extends pulumi.CustomResource { resourceInputs["layers"] = undefined /*out*/; resourceInputs["memorySize"] = undefined /*out*/; resourceInputs["packageType"] = undefined /*out*/; + resourceInputs["policy"] = undefined /*out*/; resourceInputs["reservedConcurrentExecutions"] = undefined /*out*/; resourceInputs["role"] = undefined /*out*/; resourceInputs["runtime"] = undefined /*out*/; @@ -278,6 +284,10 @@ export interface FunctionArgs { * PackageType. */ packageType?: pulumi.Input; + /** + * The resource policy of your function + */ + policy?: any; /** * The number of simultaneous executions to reserve for the function. */ diff --git a/sdk/nodejs/msk/getReplicator.ts b/sdk/nodejs/msk/getReplicator.ts new file mode 100644 index 0000000000..0bf99feb1c --- /dev/null +++ b/sdk/nodejs/msk/getReplicator.ts @@ -0,0 +1,58 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as inputs from "../types/input"; +import * as outputs from "../types/output"; +import * as enums from "../types/enums"; +import * as utilities from "../utilities"; + +/** + * Resource Type definition for AWS::MSK::Replicator + */ +export function getReplicator(args: GetReplicatorArgs, opts?: pulumi.InvokeOptions): Promise { + + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invoke("aws-native:msk:getReplicator", { + "replicatorArn": args.replicatorArn, + }, opts); +} + +export interface GetReplicatorArgs { + /** + * Amazon Resource Name for the created replicator. + */ + replicatorArn: string; +} + +export interface GetReplicatorResult { + /** + * The current version of the MSK replicator. + */ + readonly currentVersion?: string; + /** + * A list of replication configurations, where each configuration targets a given source cluster to target cluster replication flow. + */ + readonly replicationInfoList?: outputs.msk.ReplicatorReplicationInfo[]; + /** + * Amazon Resource Name for the created replicator. + */ + readonly replicatorArn?: string; + /** + * A collection of tags associated with a resource + */ + readonly tags?: outputs.msk.ReplicatorTag[]; +} +/** + * Resource Type definition for AWS::MSK::Replicator + */ +export function getReplicatorOutput(args: GetReplicatorOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { + return pulumi.output(args).apply((a: any) => getReplicator(a, opts)) +} + +export interface GetReplicatorOutputArgs { + /** + * Amazon Resource Name for the created replicator. + */ + replicatorArn: pulumi.Input; +} diff --git a/sdk/nodejs/msk/index.ts b/sdk/nodejs/msk/index.ts index d110c773e2..eeaa2107a7 100644 --- a/sdk/nodejs/msk/index.ts +++ b/sdk/nodejs/msk/index.ts @@ -45,6 +45,11 @@ export const getConfiguration: typeof import("./getConfiguration").getConfigurat export const getConfigurationOutput: typeof import("./getConfiguration").getConfigurationOutput = null as any; utilities.lazyLoad(exports, ["getConfiguration","getConfigurationOutput"], () => require("./getConfiguration")); +export { GetReplicatorArgs, GetReplicatorResult, GetReplicatorOutputArgs } from "./getReplicator"; +export const getReplicator: typeof import("./getReplicator").getReplicator = null as any; +export const getReplicatorOutput: typeof import("./getReplicator").getReplicatorOutput = null as any; +utilities.lazyLoad(exports, ["getReplicator","getReplicatorOutput"], () => require("./getReplicator")); + export { GetServerlessClusterArgs, GetServerlessClusterResult, GetServerlessClusterOutputArgs } from "./getServerlessCluster"; export const getServerlessCluster: typeof import("./getServerlessCluster").getServerlessCluster = null as any; export const getServerlessClusterOutput: typeof import("./getServerlessCluster").getServerlessClusterOutput = null as any; @@ -55,6 +60,11 @@ export const getVpcConnection: typeof import("./getVpcConnection").getVpcConnect export const getVpcConnectionOutput: typeof import("./getVpcConnection").getVpcConnectionOutput = null as any; utilities.lazyLoad(exports, ["getVpcConnection","getVpcConnectionOutput"], () => require("./getVpcConnection")); +export { ReplicatorArgs } from "./replicator"; +export type Replicator = import("./replicator").Replicator; +export const Replicator: typeof import("./replicator").Replicator = null as any; +utilities.lazyLoad(exports, ["Replicator"], () => require("./replicator")); + export { ServerlessClusterArgs } from "./serverlessCluster"; export type ServerlessCluster = import("./serverlessCluster").ServerlessCluster; export const ServerlessCluster: typeof import("./serverlessCluster").ServerlessCluster = null as any; @@ -81,6 +91,8 @@ const _module = { return new ClusterPolicy(name, undefined, { urn }) case "aws-native:msk:Configuration": return new Configuration(name, undefined, { urn }) + case "aws-native:msk:Replicator": + return new Replicator(name, undefined, { urn }) case "aws-native:msk:ServerlessCluster": return new ServerlessCluster(name, undefined, { urn }) case "aws-native:msk:VpcConnection": diff --git a/sdk/nodejs/msk/replicator.ts b/sdk/nodejs/msk/replicator.ts new file mode 100644 index 0000000000..15e5e8479d --- /dev/null +++ b/sdk/nodejs/msk/replicator.ts @@ -0,0 +1,150 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as inputs from "../types/input"; +import * as outputs from "../types/output"; +import * as enums from "../types/enums"; +import * as utilities from "../utilities"; + +/** + * Resource Type definition for AWS::MSK::Replicator + */ +export class Replicator extends pulumi.CustomResource { + /** + * Get an existing Replicator resource's state with the given name, ID, and optional extra + * properties used to qualify the lookup. + * + * @param name The _unique_ name of the resulting resource. + * @param id The _unique_ provider ID of the resource to lookup. + * @param opts Optional settings to control the behavior of the CustomResource. + */ + public static get(name: string, id: pulumi.Input, opts?: pulumi.CustomResourceOptions): Replicator { + return new Replicator(name, undefined as any, { ...opts, id: id }); + } + + /** @internal */ + public static readonly __pulumiType = 'aws-native:msk:Replicator'; + + /** + * Returns true if the given object is an instance of Replicator. This is designed to work even + * when multiple copies of the Pulumi SDK have been loaded into the same process. + */ + public static isInstance(obj: any): obj is Replicator { + if (obj === undefined || obj === null) { + return false; + } + return obj['__pulumiType'] === Replicator.__pulumiType; + } + + /** + * The current version of the MSK replicator. + */ + public readonly currentVersion!: pulumi.Output; + /** + * A summary description of the replicator. + */ + public readonly description!: pulumi.Output; + /** + * Specifies a list of Kafka clusters which are targets of the replicator. + */ + public readonly kafkaClusters!: pulumi.Output; + /** + * A list of replication configurations, where each configuration targets a given source cluster to target cluster replication flow. + */ + public readonly replicationInfoList!: pulumi.Output; + /** + * Amazon Resource Name for the created replicator. + */ + public /*out*/ readonly replicatorArn!: pulumi.Output; + /** + * The name of the replicator. + */ + public readonly replicatorName!: pulumi.Output; + /** + * The Amazon Resource Name (ARN) of the IAM role used by the replicator to access external resources. + */ + public readonly serviceExecutionRoleArn!: pulumi.Output; + /** + * A collection of tags associated with a resource + */ + public readonly tags!: pulumi.Output; + + /** + * Create a Replicator resource with the given unique name, arguments, and options. + * + * @param name The _unique_ name of the resource. + * @param args The arguments to use to populate this resource's properties. + * @param opts A bag of options that control this resource's behavior. + */ + constructor(name: string, args: ReplicatorArgs, opts?: pulumi.CustomResourceOptions) { + let resourceInputs: pulumi.Inputs = {}; + opts = opts || {}; + if (!opts.id) { + if ((!args || args.kafkaClusters === undefined) && !opts.urn) { + throw new Error("Missing required property 'kafkaClusters'"); + } + if ((!args || args.replicationInfoList === undefined) && !opts.urn) { + throw new Error("Missing required property 'replicationInfoList'"); + } + if ((!args || args.serviceExecutionRoleArn === undefined) && !opts.urn) { + throw new Error("Missing required property 'serviceExecutionRoleArn'"); + } + resourceInputs["currentVersion"] = args ? args.currentVersion : undefined; + resourceInputs["description"] = args ? args.description : undefined; + resourceInputs["kafkaClusters"] = args ? args.kafkaClusters : undefined; + resourceInputs["replicationInfoList"] = args ? args.replicationInfoList : undefined; + resourceInputs["replicatorName"] = args ? args.replicatorName : undefined; + resourceInputs["serviceExecutionRoleArn"] = args ? args.serviceExecutionRoleArn : undefined; + resourceInputs["tags"] = args ? args.tags : undefined; + resourceInputs["replicatorArn"] = undefined /*out*/; + } else { + resourceInputs["currentVersion"] = undefined /*out*/; + resourceInputs["description"] = undefined /*out*/; + resourceInputs["kafkaClusters"] = undefined /*out*/; + resourceInputs["replicationInfoList"] = undefined /*out*/; + resourceInputs["replicatorArn"] = undefined /*out*/; + resourceInputs["replicatorName"] = undefined /*out*/; + resourceInputs["serviceExecutionRoleArn"] = undefined /*out*/; + resourceInputs["tags"] = undefined /*out*/; + } + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + const replaceOnChanges = { replaceOnChanges: ["description", "kafkaClusters[*]", "replicatorName", "serviceExecutionRoleArn"] }; + opts = pulumi.mergeOptions(opts, replaceOnChanges); + super(Replicator.__pulumiType, name, resourceInputs, opts); + } +} + +/** + * The set of arguments for constructing a Replicator resource. + */ +export interface ReplicatorArgs { + /** + * The current version of the MSK replicator. + */ + currentVersion?: pulumi.Input; + /** + * A summary description of the replicator. + */ + description?: pulumi.Input; + /** + * Specifies a list of Kafka clusters which are targets of the replicator. + */ + kafkaClusters: pulumi.Input[]>; + /** + * A list of replication configurations, where each configuration targets a given source cluster to target cluster replication flow. + */ + replicationInfoList: pulumi.Input[]>; + /** + * The name of the replicator. + */ + replicatorName?: pulumi.Input; + /** + * The Amazon Resource Name (ARN) of the IAM role used by the replicator to access external resources. + */ + serviceExecutionRoleArn: pulumi.Input; + /** + * A collection of tags associated with a resource + */ + tags?: pulumi.Input[]>; +} diff --git a/sdk/nodejs/quicksight/analysis.ts b/sdk/nodejs/quicksight/analysis.ts index e2f7d6a1de..8b76f26d8c 100644 --- a/sdk/nodejs/quicksight/analysis.ts +++ b/sdk/nodejs/quicksight/analysis.ts @@ -53,6 +53,7 @@ export class Analysis extends pulumi.CustomResource { public readonly status!: pulumi.Output; public readonly tags!: pulumi.Output; public readonly themeArn!: pulumi.Output; + public readonly validationStrategy!: pulumi.Output; /** * Create a Analysis resource with the given unique name, arguments, and options. @@ -81,6 +82,7 @@ export class Analysis extends pulumi.CustomResource { resourceInputs["status"] = args ? args.status : undefined; resourceInputs["tags"] = args ? args.tags : undefined; resourceInputs["themeArn"] = args ? args.themeArn : undefined; + resourceInputs["validationStrategy"] = args ? args.validationStrategy : undefined; resourceInputs["arn"] = undefined /*out*/; resourceInputs["createdTime"] = undefined /*out*/; resourceInputs["dataSetArns"] = undefined /*out*/; @@ -104,6 +106,7 @@ export class Analysis extends pulumi.CustomResource { resourceInputs["status"] = undefined /*out*/; resourceInputs["tags"] = undefined /*out*/; resourceInputs["themeArn"] = undefined /*out*/; + resourceInputs["validationStrategy"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); const replaceOnChanges = { replaceOnChanges: ["analysisId", "awsAccountId"] }; @@ -126,4 +129,5 @@ export interface AnalysisArgs { status?: pulumi.Input; tags?: pulumi.Input[]>; themeArn?: pulumi.Input; + validationStrategy?: pulumi.Input; } diff --git a/sdk/nodejs/quicksight/dashboard.ts b/sdk/nodejs/quicksight/dashboard.ts index 1a261cde1e..d87bc55825 100644 --- a/sdk/nodejs/quicksight/dashboard.ts +++ b/sdk/nodejs/quicksight/dashboard.ts @@ -51,6 +51,7 @@ export class Dashboard extends pulumi.CustomResource { public readonly sourceEntity!: pulumi.Output; public readonly tags!: pulumi.Output; public readonly themeArn!: pulumi.Output; + public readonly validationStrategy!: pulumi.Output; public /*out*/ readonly version!: pulumi.Output; public readonly versionDescription!: pulumi.Output; @@ -81,6 +82,7 @@ export class Dashboard extends pulumi.CustomResource { resourceInputs["sourceEntity"] = args ? args.sourceEntity : undefined; resourceInputs["tags"] = args ? args.tags : undefined; resourceInputs["themeArn"] = args ? args.themeArn : undefined; + resourceInputs["validationStrategy"] = args ? args.validationStrategy : undefined; resourceInputs["versionDescription"] = args ? args.versionDescription : undefined; resourceInputs["arn"] = undefined /*out*/; resourceInputs["createdTime"] = undefined /*out*/; @@ -102,6 +104,7 @@ export class Dashboard extends pulumi.CustomResource { resourceInputs["sourceEntity"] = undefined /*out*/; resourceInputs["tags"] = undefined /*out*/; resourceInputs["themeArn"] = undefined /*out*/; + resourceInputs["validationStrategy"] = undefined /*out*/; resourceInputs["version"] = undefined /*out*/; resourceInputs["versionDescription"] = undefined /*out*/; } @@ -126,5 +129,6 @@ export interface DashboardArgs { sourceEntity?: pulumi.Input; tags?: pulumi.Input[]>; themeArn?: pulumi.Input; + validationStrategy?: pulumi.Input; versionDescription?: pulumi.Input; } diff --git a/sdk/nodejs/quicksight/template.ts b/sdk/nodejs/quicksight/template.ts index c90534f203..848f31b7c7 100644 --- a/sdk/nodejs/quicksight/template.ts +++ b/sdk/nodejs/quicksight/template.ts @@ -47,6 +47,7 @@ export class Template extends pulumi.CustomResource { public readonly sourceEntity!: pulumi.Output; public readonly tags!: pulumi.Output; public readonly templateId!: pulumi.Output; + public readonly validationStrategy!: pulumi.Output; public /*out*/ readonly version!: pulumi.Output; public readonly versionDescription!: pulumi.Output; @@ -74,6 +75,7 @@ export class Template extends pulumi.CustomResource { resourceInputs["sourceEntity"] = args ? args.sourceEntity : undefined; resourceInputs["tags"] = args ? args.tags : undefined; resourceInputs["templateId"] = args ? args.templateId : undefined; + resourceInputs["validationStrategy"] = args ? args.validationStrategy : undefined; resourceInputs["versionDescription"] = args ? args.versionDescription : undefined; resourceInputs["arn"] = undefined /*out*/; resourceInputs["createdTime"] = undefined /*out*/; @@ -90,6 +92,7 @@ export class Template extends pulumi.CustomResource { resourceInputs["sourceEntity"] = undefined /*out*/; resourceInputs["tags"] = undefined /*out*/; resourceInputs["templateId"] = undefined /*out*/; + resourceInputs["validationStrategy"] = undefined /*out*/; resourceInputs["version"] = undefined /*out*/; resourceInputs["versionDescription"] = undefined /*out*/; } @@ -111,5 +114,6 @@ export interface TemplateArgs { sourceEntity?: pulumi.Input; tags?: pulumi.Input[]>; templateId: pulumi.Input; + validationStrategy?: pulumi.Input; versionDescription?: pulumi.Input; } diff --git a/sdk/nodejs/s3/bucket.ts b/sdk/nodejs/s3/bucket.ts index 78a9fa9d8a..c5e959a2ff 100644 --- a/sdk/nodejs/s3/bucket.ts +++ b/sdk/nodejs/s3/bucket.ts @@ -37,93 +37,30 @@ export class Bucket extends pulumi.CustomResource { return obj['__pulumiType'] === Bucket.__pulumiType; } - /** - * Configuration for the transfer acceleration state. - */ public readonly accelerateConfiguration!: pulumi.Output; - /** - * A canned access control list (ACL) that grants predefined permissions to the bucket. - */ - public readonly accessControl!: pulumi.Output; - /** - * The configuration and any analyses for the analytics filter of an Amazon S3 bucket. - */ + public readonly accessControl!: pulumi.Output; public readonly analyticsConfigurations!: pulumi.Output; - /** - * The Amazon Resource Name (ARN) of the specified bucket. - */ public /*out*/ readonly arn!: pulumi.Output; public readonly bucketEncryption!: pulumi.Output; - /** - * A name for the bucket. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. - */ public readonly bucketName!: pulumi.Output; - /** - * Rules that define cross-origin resource sharing of objects in this bucket. - */ public readonly corsConfiguration!: pulumi.Output; - /** - * The IPv4 DNS name of the specified bucket. - */ public /*out*/ readonly domainName!: pulumi.Output; - /** - * The IPv6 DNS name of the specified bucket. For more information about dual-stack endpoints, see [Using Amazon S3 Dual-Stack Endpoints](https://docs.aws.amazon.com/AmazonS3/latest/dev/dual-stack-endpoints.html). - */ public /*out*/ readonly dualStackDomainName!: pulumi.Output; - /** - * Specifies the S3 Intelligent-Tiering configuration for an Amazon S3 bucket. - */ public readonly intelligentTieringConfigurations!: pulumi.Output; - /** - * The inventory configuration for an Amazon S3 bucket. - */ public readonly inventoryConfigurations!: pulumi.Output; - /** - * Rules that define how Amazon S3 manages objects during their lifetime. - */ public readonly lifecycleConfiguration!: pulumi.Output; - /** - * Settings that define where logs are stored. - */ public readonly loggingConfiguration!: pulumi.Output; - /** - * Settings that define a metrics configuration for the CloudWatch request metrics from the bucket. - */ public readonly metricsConfigurations!: pulumi.Output; - /** - * Configuration that defines how Amazon S3 handles bucket notifications. - */ public readonly notificationConfiguration!: pulumi.Output; - /** - * Places an Object Lock configuration on the specified bucket. - */ public readonly objectLockConfiguration!: pulumi.Output; - /** - * Indicates whether this bucket has an Object Lock configuration enabled. - */ public readonly objectLockEnabled!: pulumi.Output; - /** - * Specifies the container element for object ownership rules. - */ public readonly ownershipControls!: pulumi.Output; public readonly publicAccessBlockConfiguration!: pulumi.Output; - /** - * Returns the regional domain name of the specified bucket. - */ public /*out*/ readonly regionalDomainName!: pulumi.Output; - /** - * Configuration for replicating objects in an S3 bucket. - */ public readonly replicationConfiguration!: pulumi.Output; - /** - * An arbitrary set of tags (key-value pairs) for this S3 bucket. - */ public readonly tags!: pulumi.Output; public readonly versioningConfiguration!: pulumi.Output; public readonly websiteConfiguration!: pulumi.Output; - /** - * The Amazon S3 website endpoint for the specified bucket. - */ public /*out*/ readonly websiteUrl!: pulumi.Output; /** @@ -200,71 +137,23 @@ export class Bucket extends pulumi.CustomResource { * The set of arguments for constructing a Bucket resource. */ export interface BucketArgs { - /** - * Configuration for the transfer acceleration state. - */ accelerateConfiguration?: pulumi.Input; - /** - * A canned access control list (ACL) that grants predefined permissions to the bucket. - */ - accessControl?: pulumi.Input; - /** - * The configuration and any analyses for the analytics filter of an Amazon S3 bucket. - */ + accessControl?: pulumi.Input; analyticsConfigurations?: pulumi.Input[]>; bucketEncryption?: pulumi.Input; - /** - * A name for the bucket. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. - */ bucketName?: pulumi.Input; - /** - * Rules that define cross-origin resource sharing of objects in this bucket. - */ corsConfiguration?: pulumi.Input; - /** - * Specifies the S3 Intelligent-Tiering configuration for an Amazon S3 bucket. - */ intelligentTieringConfigurations?: pulumi.Input[]>; - /** - * The inventory configuration for an Amazon S3 bucket. - */ inventoryConfigurations?: pulumi.Input[]>; - /** - * Rules that define how Amazon S3 manages objects during their lifetime. - */ lifecycleConfiguration?: pulumi.Input; - /** - * Settings that define where logs are stored. - */ loggingConfiguration?: pulumi.Input; - /** - * Settings that define a metrics configuration for the CloudWatch request metrics from the bucket. - */ metricsConfigurations?: pulumi.Input[]>; - /** - * Configuration that defines how Amazon S3 handles bucket notifications. - */ notificationConfiguration?: pulumi.Input; - /** - * Places an Object Lock configuration on the specified bucket. - */ objectLockConfiguration?: pulumi.Input; - /** - * Indicates whether this bucket has an Object Lock configuration enabled. - */ objectLockEnabled?: pulumi.Input; - /** - * Specifies the container element for object ownership rules. - */ ownershipControls?: pulumi.Input; publicAccessBlockConfiguration?: pulumi.Input; - /** - * Configuration for replicating objects in an S3 bucket. - */ replicationConfiguration?: pulumi.Input; - /** - * An arbitrary set of tags (key-value pairs) for this S3 bucket. - */ tags?: pulumi.Input[]>; versioningConfiguration?: pulumi.Input; websiteConfiguration?: pulumi.Input; diff --git a/sdk/nodejs/s3/getBucket.ts b/sdk/nodejs/s3/getBucket.ts index 5b58d603c0..4e1232e193 100644 --- a/sdk/nodejs/s3/getBucket.ts +++ b/sdk/nodejs/s3/getBucket.ts @@ -14,93 +14,38 @@ export function getBucket(args: GetBucketArgs, opts?: pulumi.InvokeOptions): Pro opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("aws-native:s3:getBucket", { - "bucketName": args.bucketName, + "id": args.id, }, opts); } export interface GetBucketArgs { - /** - * A name for the bucket. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. - */ - bucketName: string; + id: string; } export interface GetBucketResult { - /** - * Configuration for the transfer acceleration state. - */ readonly accelerateConfiguration?: outputs.s3.BucketAccelerateConfiguration; - /** - * The configuration and any analyses for the analytics filter of an Amazon S3 bucket. - */ + readonly accessControl?: string; readonly analyticsConfigurations?: outputs.s3.BucketAnalyticsConfiguration[]; - /** - * The Amazon Resource Name (ARN) of the specified bucket. - */ readonly arn?: string; readonly bucketEncryption?: outputs.s3.BucketEncryption; - /** - * Rules that define cross-origin resource sharing of objects in this bucket. - */ readonly corsConfiguration?: outputs.s3.BucketCorsConfiguration; - /** - * The IPv4 DNS name of the specified bucket. - */ readonly domainName?: string; - /** - * The IPv6 DNS name of the specified bucket. For more information about dual-stack endpoints, see [Using Amazon S3 Dual-Stack Endpoints](https://docs.aws.amazon.com/AmazonS3/latest/dev/dual-stack-endpoints.html). - */ readonly dualStackDomainName?: string; - /** - * Specifies the S3 Intelligent-Tiering configuration for an Amazon S3 bucket. - */ + readonly id?: string; readonly intelligentTieringConfigurations?: outputs.s3.BucketIntelligentTieringConfiguration[]; - /** - * The inventory configuration for an Amazon S3 bucket. - */ readonly inventoryConfigurations?: outputs.s3.BucketInventoryConfiguration[]; - /** - * Rules that define how Amazon S3 manages objects during their lifetime. - */ readonly lifecycleConfiguration?: outputs.s3.BucketLifecycleConfiguration; - /** - * Settings that define where logs are stored. - */ readonly loggingConfiguration?: outputs.s3.BucketLoggingConfiguration; - /** - * Settings that define a metrics configuration for the CloudWatch request metrics from the bucket. - */ readonly metricsConfigurations?: outputs.s3.BucketMetricsConfiguration[]; - /** - * Configuration that defines how Amazon S3 handles bucket notifications. - */ readonly notificationConfiguration?: outputs.s3.BucketNotificationConfiguration; - /** - * Places an Object Lock configuration on the specified bucket. - */ readonly objectLockConfiguration?: outputs.s3.BucketObjectLockConfiguration; - /** - * Specifies the container element for object ownership rules. - */ readonly ownershipControls?: outputs.s3.BucketOwnershipControls; readonly publicAccessBlockConfiguration?: outputs.s3.BucketPublicAccessBlockConfiguration; - /** - * Returns the regional domain name of the specified bucket. - */ readonly regionalDomainName?: string; - /** - * Configuration for replicating objects in an S3 bucket. - */ readonly replicationConfiguration?: outputs.s3.BucketReplicationConfiguration; - /** - * An arbitrary set of tags (key-value pairs) for this S3 bucket. - */ readonly tags?: outputs.s3.BucketTag[]; readonly versioningConfiguration?: outputs.s3.BucketVersioningConfiguration; readonly websiteConfiguration?: outputs.s3.BucketWebsiteConfiguration; - /** - * The Amazon S3 website endpoint for the specified bucket. - */ readonly websiteUrl?: string; } /** @@ -111,8 +56,5 @@ export function getBucketOutput(args: GetBucketOutputArgs, opts?: pulumi.InvokeO } export interface GetBucketOutputArgs { - /** - * A name for the bucket. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. - */ - bucketName: pulumi.Input; + id: pulumi.Input; } diff --git a/sdk/nodejs/servicecatalogappregistry/getAttributeGroupAssociation.ts b/sdk/nodejs/servicecatalogappregistry/getAttributeGroupAssociation.ts index c7cd7aae19..5d9191be96 100644 --- a/sdk/nodejs/servicecatalogappregistry/getAttributeGroupAssociation.ts +++ b/sdk/nodejs/servicecatalogappregistry/getAttributeGroupAssociation.ts @@ -11,18 +11,19 @@ export function getAttributeGroupAssociation(args: GetAttributeGroupAssociationA opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("aws-native:servicecatalogappregistry:getAttributeGroupAssociation", { - "id": args.id, + "applicationArn": args.applicationArn, + "attributeGroupArn": args.attributeGroupArn, }, opts); } export interface GetAttributeGroupAssociationArgs { - id: string; + applicationArn: string; + attributeGroupArn: string; } export interface GetAttributeGroupAssociationResult { readonly applicationArn?: string; readonly attributeGroupArn?: string; - readonly id?: string; } /** * Resource Schema for AWS::ServiceCatalogAppRegistry::AttributeGroupAssociation. @@ -32,5 +33,6 @@ export function getAttributeGroupAssociationOutput(args: GetAttributeGroupAssoci } export interface GetAttributeGroupAssociationOutputArgs { - id: pulumi.Input; + applicationArn: pulumi.Input; + attributeGroupArn: pulumi.Input; } diff --git a/sdk/nodejs/servicecatalogappregistry/getResourceAssociation.ts b/sdk/nodejs/servicecatalogappregistry/getResourceAssociation.ts index 0bab35b992..2206c596ec 100644 --- a/sdk/nodejs/servicecatalogappregistry/getResourceAssociation.ts +++ b/sdk/nodejs/servicecatalogappregistry/getResourceAssociation.ts @@ -2,6 +2,9 @@ // *** Do not edit by hand unless you're certain you know what you are doing! *** import * as pulumi from "@pulumi/pulumi"; +import * as inputs from "../types/input"; +import * as outputs from "../types/output"; +import * as enums from "../types/enums"; import * as utilities from "../utilities"; /** @@ -11,17 +14,23 @@ export function getResourceAssociation(args: GetResourceAssociationArgs, opts?: opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("aws-native:servicecatalogappregistry:getResourceAssociation", { - "id": args.id, + "applicationArn": args.applicationArn, + "resourceArn": args.resourceArn, + "resourceType": args.resourceType, }, opts); } export interface GetResourceAssociationArgs { - id: string; + applicationArn: string; + resourceArn: string; + /** + * The type of the CFN Resource for now it's enum CFN_STACK. + */ + resourceType: enums.servicecatalogappregistry.ResourceAssociationResourceType; } export interface GetResourceAssociationResult { readonly applicationArn?: string; - readonly id?: string; readonly resourceArn?: string; } /** @@ -32,5 +41,10 @@ export function getResourceAssociationOutput(args: GetResourceAssociationOutputA } export interface GetResourceAssociationOutputArgs { - id: pulumi.Input; + applicationArn: pulumi.Input; + resourceArn: pulumi.Input; + /** + * The type of the CFN Resource for now it's enum CFN_STACK. + */ + resourceType: pulumi.Input; } diff --git a/sdk/nodejs/sns/getTopic.ts b/sdk/nodejs/sns/getTopic.ts index 99150f9c27..377bec34e0 100644 --- a/sdk/nodejs/sns/getTopic.ts +++ b/sdk/nodejs/sns/getTopic.ts @@ -23,6 +23,10 @@ export interface GetTopicArgs { } export interface GetTopicResult { + /** + * The archive policy determines the number of days Amazon SNS retains messages. You can set a retention period from 1 to 365 days. + */ + readonly archivePolicy?: any; /** * Enables content-based deduplication for FIFO topics. By default, ContentBasedDeduplication is set to false. If you create a FIFO topic and this attribute is false, you must specify a value for the MessageDeduplicationId parameter for the Publish action. * diff --git a/sdk/nodejs/sns/topic.ts b/sdk/nodejs/sns/topic.ts index 7dea36d6fb..48ebeb4d74 100644 --- a/sdk/nodejs/sns/topic.ts +++ b/sdk/nodejs/sns/topic.ts @@ -37,6 +37,10 @@ export class Topic extends pulumi.CustomResource { return obj['__pulumiType'] === Topic.__pulumiType; } + /** + * The archive policy determines the number of days Amazon SNS retains messages. You can set a retention period from 1 to 365 days. + */ + public readonly archivePolicy!: pulumi.Output; /** * Enables content-based deduplication for FIFO topics. By default, ContentBasedDeduplication is set to false. If you create a FIFO topic and this attribute is false, you must specify a value for the MessageDeduplicationId parameter for the Publish action. * @@ -101,6 +105,7 @@ export class Topic extends pulumi.CustomResource { let resourceInputs: pulumi.Inputs = {}; opts = opts || {}; if (!opts.id) { + resourceInputs["archivePolicy"] = args ? args.archivePolicy : undefined; resourceInputs["contentBasedDeduplication"] = args ? args.contentBasedDeduplication : undefined; resourceInputs["dataProtectionPolicy"] = args ? args.dataProtectionPolicy : undefined; resourceInputs["displayName"] = args ? args.displayName : undefined; @@ -113,6 +118,7 @@ export class Topic extends pulumi.CustomResource { resourceInputs["tracingConfig"] = args ? args.tracingConfig : undefined; resourceInputs["topicArn"] = undefined /*out*/; } else { + resourceInputs["archivePolicy"] = undefined /*out*/; resourceInputs["contentBasedDeduplication"] = undefined /*out*/; resourceInputs["dataProtectionPolicy"] = undefined /*out*/; resourceInputs["displayName"] = undefined /*out*/; @@ -136,6 +142,10 @@ export class Topic extends pulumi.CustomResource { * The set of arguments for constructing a Topic resource. */ export interface TopicArgs { + /** + * The archive policy determines the number of days Amazon SNS retains messages. You can set a retention period from 1 to 365 days. + */ + archivePolicy?: any; /** * Enables content-based deduplication for FIFO topics. By default, ContentBasedDeduplication is set to false. If you create a FIFO topic and this attribute is false, you must specify a value for the MessageDeduplicationId parameter for the Publish action. * diff --git a/sdk/nodejs/sqs/getQueuePolicy.ts b/sdk/nodejs/sqs/getQueuePolicy.ts index b6393a0f1c..293281693e 100644 --- a/sdk/nodejs/sqs/getQueuePolicy.ts +++ b/sdk/nodejs/sqs/getQueuePolicy.ts @@ -5,7 +5,7 @@ import * as pulumi from "@pulumi/pulumi"; import * as utilities from "../utilities"; /** - * Resource Type definition for AWS::SQS::QueuePolicy + * The ``AWS::SQS::QueuePolicy`` type applies a policy to SQS queues. For an example snippet, see [Declaring an policy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-iam.html#scenario-sqs-policy) in the *User Guide*. */ export function getQueuePolicy(args: GetQueuePolicyArgs, opts?: pulumi.InvokeOptions): Promise { @@ -28,16 +28,16 @@ export interface GetQueuePolicyResult { */ readonly id?: string; /** - * A policy document that contains the permissions for the specified Amazon SQS queues. For more information about Amazon SQS policies, see Creating Custom Policies Using the Access Policy Language in the Amazon Simple Queue Service Developer Guide. + * A policy document that contains the permissions for the specified SQS queues. For more information about SQS policies, see [Using custom policies with the access policy language](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-creating-custom-policies.html) in the *Developer Guide*. */ readonly policyDocument?: any; /** - * The URLs of the queues to which you want to add the policy. You can use the Ref function to specify an AWS::SQS::Queue resource. + * The URLs of the queues to which you want to add the policy. You can use the ``Ref`` function to specify an ``AWS::SQS::Queue`` resource. */ readonly queues?: string[]; } /** - * Resource Type definition for AWS::SQS::QueuePolicy + * The ``AWS::SQS::QueuePolicy`` type applies a policy to SQS queues. For an example snippet, see [Declaring an policy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-iam.html#scenario-sqs-policy) in the *User Guide*. */ export function getQueuePolicyOutput(args: GetQueuePolicyOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { return pulumi.output(args).apply((a: any) => getQueuePolicy(a, opts)) diff --git a/sdk/nodejs/sqs/queuePolicy.ts b/sdk/nodejs/sqs/queuePolicy.ts index 7482f7b278..29854c32e6 100644 --- a/sdk/nodejs/sqs/queuePolicy.ts +++ b/sdk/nodejs/sqs/queuePolicy.ts @@ -5,7 +5,7 @@ import * as pulumi from "@pulumi/pulumi"; import * as utilities from "../utilities"; /** - * Resource Type definition for AWS::SQS::QueuePolicy + * The ``AWS::SQS::QueuePolicy`` type applies a policy to SQS queues. For an example snippet, see [Declaring an policy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-iam.html#scenario-sqs-policy) in the *User Guide*. * * @deprecated QueuePolicy is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible. */ @@ -38,11 +38,11 @@ export class QueuePolicy extends pulumi.CustomResource { } /** - * A policy document that contains the permissions for the specified Amazon SQS queues. For more information about Amazon SQS policies, see Creating Custom Policies Using the Access Policy Language in the Amazon Simple Queue Service Developer Guide. + * A policy document that contains the permissions for the specified SQS queues. For more information about SQS policies, see [Using custom policies with the access policy language](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-creating-custom-policies.html) in the *Developer Guide*. */ public readonly policyDocument!: pulumi.Output; /** - * The URLs of the queues to which you want to add the policy. You can use the Ref function to specify an AWS::SQS::Queue resource. + * The URLs of the queues to which you want to add the policy. You can use the ``Ref`` function to specify an ``AWS::SQS::Queue`` resource. */ public readonly queues!: pulumi.Output; @@ -81,11 +81,11 @@ export class QueuePolicy extends pulumi.CustomResource { */ export interface QueuePolicyArgs { /** - * A policy document that contains the permissions for the specified Amazon SQS queues. For more information about Amazon SQS policies, see Creating Custom Policies Using the Access Policy Language in the Amazon Simple Queue Service Developer Guide. + * A policy document that contains the permissions for the specified SQS queues. For more information about SQS policies, see [Using custom policies with the access policy language](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-creating-custom-policies.html) in the *Developer Guide*. */ policyDocument: any; /** - * The URLs of the queues to which you want to add the policy. You can use the Ref function to specify an AWS::SQS::Queue resource. + * The URLs of the queues to which you want to add the policy. You can use the ``Ref`` function to specify an ``AWS::SQS::Queue`` resource. */ queues: pulumi.Input[]>; } diff --git a/sdk/nodejs/tsconfig.json b/sdk/nodejs/tsconfig.json index 320e622d0d..371201cda5 100644 --- a/sdk/nodejs/tsconfig.json +++ b/sdk/nodejs/tsconfig.json @@ -984,8 +984,10 @@ "emrserverless/application.ts", "emrserverless/getApplication.ts", "emrserverless/index.ts", + "entityresolution/getIdMappingWorkflow.ts", "entityresolution/getMatchingWorkflow.ts", "entityresolution/getSchemaMapping.ts", + "entityresolution/idMappingWorkflow.ts", "entityresolution/index.ts", "entityresolution/matchingWorkflow.ts", "entityresolution/schemaMapping.ts", @@ -1705,9 +1707,11 @@ "msk/getCluster.ts", "msk/getClusterPolicy.ts", "msk/getConfiguration.ts", + "msk/getReplicator.ts", "msk/getServerlessCluster.ts", "msk/getVpcConnection.ts", "msk/index.ts", + "msk/replicator.ts", "msk/serverlessCluster.ts", "msk/vpcConnection.ts", "mwaa/environment.ts", diff --git a/sdk/nodejs/types/enums/apigateway/index.ts b/sdk/nodejs/types/enums/apigateway/index.ts index 1a34353933..44a8fe7fe6 100644 --- a/sdk/nodejs/types/enums/apigateway/index.ts +++ b/sdk/nodejs/types/enums/apigateway/index.ts @@ -18,7 +18,7 @@ export const DocumentationPartLocationType = { } as const; /** - * The type of API entity that the documentation content applies to. + * The type of API entity to which the documentation content applies. Valid values are ``API``, ``AUTHORIZER``, ``MODEL``, ``RESOURCE``, ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. Content inheritance does not apply to any entity of the ``API``, ``AUTHORIZER``, ``METHOD``, ``MODEL``, ``REQUEST_BODY``, or ``RESOURCE`` type. */ export type DocumentationPartLocationType = (typeof DocumentationPartLocationType)[keyof typeof DocumentationPartLocationType]; @@ -30,7 +30,8 @@ export const MethodAuthorizationType = { } as const; /** - * The method's authorization type. + * The method's authorization type. This parameter is required. For valid values, see [Method](https://docs.aws.amazon.com/apigateway/latest/api/API_Method.html) in the *API Gateway API Reference*. + * If you specify the ``AuthorizerId`` property, specify ``CUSTOM`` or ``COGNITO_USER_POOLS`` for this property. */ export type MethodAuthorizationType = (typeof MethodAuthorizationType)[keyof typeof MethodAuthorizationType]; @@ -40,7 +41,7 @@ export const MethodIntegrationConnectionType = { } as const; /** - * The type of the network connection to the integration endpoint. + * The type of the network connection to the integration endpoint. The valid value is ``INTERNET`` for connections through the public routable internet or ``VPC_LINK`` for private connections between API Gateway and a network load balancer in a VPC. The default value is ``INTERNET``. */ export type MethodIntegrationConnectionType = (typeof MethodIntegrationConnectionType)[keyof typeof MethodIntegrationConnectionType]; @@ -50,7 +51,8 @@ export const MethodIntegrationContentHandling = { } as const; /** - * Specifies how to handle request payload content type conversions. + * Specifies how to handle request payload content type conversions. Supported values are ``CONVERT_TO_BINARY`` and ``CONVERT_TO_TEXT``, with the following behaviors: + * If this property is not defined, the request payload will be passed through from the method request to integration request without modification, provided that the ``passthroughBehavior`` is configured to support payload pass-through. */ export type MethodIntegrationContentHandling = (typeof MethodIntegrationContentHandling)[keyof typeof MethodIntegrationContentHandling]; @@ -61,7 +63,7 @@ export const MethodIntegrationPassthroughBehavior = { } as const; /** - * Indicates when API Gateway passes requests to the targeted backend. + * Specifies how the method request body of an unmapped content type will be passed through the integration request to the back end without transformation. A content type is unmapped if no mapping template is defined in the integration or the content type does not match any of the mapped content types, as specified in ``requestTemplates``. The valid value is one of the following: ``WHEN_NO_MATCH``: passes the method request body through the integration request to the back end without transformation when the method request content type does not match any content type associated with the mapping templates defined in the integration request. ``WHEN_NO_TEMPLATES``: passes the method request body through the integration request to the back end without transformation when no mapping template is defined in the integration request. If a template is defined when this option is selected, the method request of an unmapped content-type will be rejected with an HTTP 415 Unsupported Media Type response. ``NEVER``: rejects the method request with an HTTP 415 Unsupported Media Type response when either the method request content type does not match any content type associated with the mapping templates defined in the integration request or no mapping template is defined in the integration request. */ export type MethodIntegrationPassthroughBehavior = (typeof MethodIntegrationPassthroughBehavior)[keyof typeof MethodIntegrationPassthroughBehavior]; @@ -71,7 +73,8 @@ export const MethodIntegrationResponseContentHandling = { } as const; /** - * Specifies how to handle request payload content type conversions. + * Specifies how to handle response payload content type conversions. Supported values are ``CONVERT_TO_BINARY`` and ``CONVERT_TO_TEXT``, with the following behaviors: + * If this property is not defined, the response payload will be passed through from the integration response to the method response without modification. */ export type MethodIntegrationResponseContentHandling = (typeof MethodIntegrationResponseContentHandling)[keyof typeof MethodIntegrationResponseContentHandling]; @@ -84,7 +87,8 @@ export const MethodIntegrationType = { } as const; /** - * The type of backend that your method is running. + * Specifies an API method integration type. The valid value is one of the following: + * For the HTTP and HTTP proxy integrations, each integration can specify a protocol (``http/https``), port and path. Standard 80 and 443 ports are supported as well as custom ports above 1024. An HTTP or HTTP proxy integration with a ``connectionType`` of ``VPC_LINK`` is referred to as a private integration and uses a VpcLink to connect API Gateway to a network load balancer of a VPC. */ export type MethodIntegrationType = (typeof MethodIntegrationType)[keyof typeof MethodIntegrationType]; @@ -93,6 +97,6 @@ export const UsagePlanKeyKeyType = { } as const; /** - * The type of usage plan key. Currently, the only valid key type is API_KEY. + * The type of a UsagePlanKey resource for a plan customer. */ export type UsagePlanKeyKeyType = (typeof UsagePlanKeyKeyType)[keyof typeof UsagePlanKeyKeyType]; diff --git a/sdk/nodejs/types/enums/connect/index.ts b/sdk/nodejs/types/enums/connect/index.ts index 1543c97ef4..6a6a6e15c3 100644 --- a/sdk/nodejs/types/enums/connect/index.ts +++ b/sdk/nodejs/types/enums/connect/index.ts @@ -2,26 +2,6 @@ // *** Do not edit by hand unless you're certain you know what you are doing! *** -export const ContactFlowModuleState = { - Active: "ACTIVE", - Archived: "ARCHIVED", -} as const; - -/** - * The state of the contact flow module. - */ -export type ContactFlowModuleState = (typeof ContactFlowModuleState)[keyof typeof ContactFlowModuleState]; - -export const ContactFlowModuleStatus = { - Published: "PUBLISHED", - Saved: "SAVED", -} as const; - -/** - * The status of the contact flow module. - */ -export type ContactFlowModuleStatus = (typeof ContactFlowModuleStatus)[keyof typeof ContactFlowModuleStatus]; - export const ContactFlowState = { Active: "ACTIVE", Archived: "ARCHIVED", diff --git a/sdk/nodejs/types/enums/customerprofiles/index.ts b/sdk/nodejs/types/enums/customerprofiles/index.ts index 65657a51a8..8cce2c71ec 100644 --- a/sdk/nodejs/types/enums/customerprofiles/index.ts +++ b/sdk/nodejs/types/enums/customerprofiles/index.ts @@ -39,6 +39,49 @@ export const CalculatedAttributeDefinitionThresholdOperator = { */ export type CalculatedAttributeDefinitionThresholdOperator = (typeof CalculatedAttributeDefinitionThresholdOperator)[keyof typeof CalculatedAttributeDefinitionThresholdOperator]; +export const DomainAttributeTypesSelectorAttributeMatchingModel = { + OneToOne: "ONE_TO_ONE", + ManyToMany: "MANY_TO_MANY", +} as const; + +/** + * Configures the AttributeMatchingModel, you can either choose ONE_TO_ONE or MANY_TO_MANY. + */ +export type DomainAttributeTypesSelectorAttributeMatchingModel = (typeof DomainAttributeTypesSelectorAttributeMatchingModel)[keyof typeof DomainAttributeTypesSelectorAttributeMatchingModel]; + +export const DomainConflictResolutionConflictResolvingModel = { + Recency: "RECENCY", + Source: "SOURCE", +} as const; + +/** + * How the auto-merging process should resolve conflicts between different profiles. + */ +export type DomainConflictResolutionConflictResolvingModel = (typeof DomainConflictResolutionConflictResolvingModel)[keyof typeof DomainConflictResolutionConflictResolvingModel]; + +export const DomainJobScheduleDayOfTheWeek = { + Sunday: "SUNDAY", + Monday: "MONDAY", + Tuesday: "TUESDAY", + Wednesday: "WEDNESDAY", + Thursday: "THURSDAY", + Friday: "FRIDAY", + Saturday: "SATURDAY", +} as const; + +/** + * The day when the Identity Resolution Job should run every week. + */ +export type DomainJobScheduleDayOfTheWeek = (typeof DomainJobScheduleDayOfTheWeek)[keyof typeof DomainJobScheduleDayOfTheWeek]; + +export const DomainRuleBasedMatchingStatus = { + Pending: "PENDING", + InProgress: "IN_PROGRESS", + Active: "ACTIVE", +} as const; + +export type DomainRuleBasedMatchingStatus = (typeof DomainRuleBasedMatchingStatus)[keyof typeof DomainRuleBasedMatchingStatus]; + export const EventStreamState = { Running: "RUNNING", Stopped: "STOPPED", diff --git a/sdk/nodejs/types/enums/entityresolution/index.ts b/sdk/nodejs/types/enums/entityresolution/index.ts index 3289d2ceaf..64bcd41751 100644 --- a/sdk/nodejs/types/enums/entityresolution/index.ts +++ b/sdk/nodejs/types/enums/entityresolution/index.ts @@ -2,6 +2,12 @@ // *** Do not edit by hand unless you're certain you know what you are doing! *** +export const IdMappingWorkflowIdMappingTechniquesIdMappingType = { + Provider: "PROVIDER", +} as const; + +export type IdMappingWorkflowIdMappingTechniquesIdMappingType = (typeof IdMappingWorkflowIdMappingTechniquesIdMappingType)[keyof typeof IdMappingWorkflowIdMappingTechniquesIdMappingType]; + export const MatchingWorkflowResolutionTechniquesResolutionType = { RuleMatching: "RULE_MATCHING", MlMatching: "ML_MATCHING", diff --git a/sdk/nodejs/types/enums/events/index.ts b/sdk/nodejs/types/enums/events/index.ts index c0c4c96369..6c7eb9406b 100644 --- a/sdk/nodejs/types/enums/events/index.ts +++ b/sdk/nodejs/types/enums/events/index.ts @@ -47,13 +47,3 @@ export const EndpointState = { } as const; export type EndpointState = (typeof EndpointState)[keyof typeof EndpointState]; - -export const RuleState = { - Disabled: "DISABLED", - Enabled: "ENABLED", -} as const; - -/** - * The state of the rule. - */ -export type RuleState = (typeof RuleState)[keyof typeof RuleState]; diff --git a/sdk/nodejs/types/enums/gamelift/index.ts b/sdk/nodejs/types/enums/gamelift/index.ts index d769224b26..4bb3c2a07d 100644 --- a/sdk/nodejs/types/enums/gamelift/index.ts +++ b/sdk/nodejs/types/enums/gamelift/index.ts @@ -42,6 +42,15 @@ export const FleetComputeType = { */ export type FleetComputeType = (typeof FleetComputeType)[keyof typeof FleetComputeType]; +export const FleetInstanceRoleCredentialsProvider = { + SharedCredentialFile: "SHARED_CREDENTIAL_FILE", +} as const; + +/** + * Credentials provider implementation that loads credentials from the Amazon EC2 Instance Metadata Service. + */ +export type FleetInstanceRoleCredentialsProvider = (typeof FleetInstanceRoleCredentialsProvider)[keyof typeof FleetInstanceRoleCredentialsProvider]; + export const FleetIpPermissionProtocol = { Tcp: "TCP", Udp: "UDP", diff --git a/sdk/nodejs/types/enums/msk/index.ts b/sdk/nodejs/types/enums/msk/index.ts index a5e48a8df7..a7dfa8371f 100644 --- a/sdk/nodejs/types/enums/msk/index.ts +++ b/sdk/nodejs/types/enums/msk/index.ts @@ -26,6 +26,19 @@ export const ClusterStorageMode = { export type ClusterStorageMode = (typeof ClusterStorageMode)[keyof typeof ClusterStorageMode]; +export const ReplicatorReplicationInfoTargetCompressionType = { + None: "NONE", + Gzip: "GZIP", + Snappy: "SNAPPY", + Lz4: "LZ4", + Zstd: "ZSTD", +} as const; + +/** + * The type of compression to use writing records to target Kafka cluster. + */ +export type ReplicatorReplicationInfoTargetCompressionType = (typeof ReplicatorReplicationInfoTargetCompressionType)[keyof typeof ReplicatorReplicationInfoTargetCompressionType]; + export const VpcConnectionAuthentication = { SaslIam: "SASL_IAM", SaslScram: "SASL_SCRAM", diff --git a/sdk/nodejs/types/enums/quicksight/index.ts b/sdk/nodejs/types/enums/quicksight/index.ts index 780dce4ae1..e00c62baba 100644 --- a/sdk/nodejs/types/enums/quicksight/index.ts +++ b/sdk/nodejs/types/enums/quicksight/index.ts @@ -825,6 +825,13 @@ export const AnalysisUrlTargetConfiguration = { export type AnalysisUrlTargetConfiguration = (typeof AnalysisUrlTargetConfiguration)[keyof typeof AnalysisUrlTargetConfiguration]; +export const AnalysisValidationStrategyMode = { + Strict: "STRICT", + Lenient: "LENIENT", +} as const; + +export type AnalysisValidationStrategyMode = (typeof AnalysisValidationStrategyMode)[keyof typeof AnalysisValidationStrategyMode]; + export const AnalysisValueWhenUnsetOption = { RecommendedValue: "RECOMMENDED_VALUE", Null: "NULL", @@ -1736,6 +1743,13 @@ export const DashboardUrlTargetConfiguration = { export type DashboardUrlTargetConfiguration = (typeof DashboardUrlTargetConfiguration)[keyof typeof DashboardUrlTargetConfiguration]; +export const DashboardValidationStrategyMode = { + Strict: "STRICT", + Lenient: "LENIENT", +} as const; + +export type DashboardValidationStrategyMode = (typeof DashboardValidationStrategyMode)[keyof typeof DashboardValidationStrategyMode]; + export const DashboardValueWhenUnsetOption = { RecommendedValue: "RECOMMENDED_VALUE", Null: "NULL", @@ -2787,6 +2801,13 @@ export const TemplateUrlTargetConfiguration = { export type TemplateUrlTargetConfiguration = (typeof TemplateUrlTargetConfiguration)[keyof typeof TemplateUrlTargetConfiguration]; +export const TemplateValidationStrategyMode = { + Strict: "STRICT", + Lenient: "LENIENT", +} as const; + +export type TemplateValidationStrategyMode = (typeof TemplateValidationStrategyMode)[keyof typeof TemplateValidationStrategyMode]; + export const TemplateValueWhenUnsetOption = { RecommendedValue: "RECOMMENDED_VALUE", Null: "NULL", diff --git a/sdk/nodejs/types/enums/s3/index.ts b/sdk/nodejs/types/enums/s3/index.ts index 1ca4d7f4d7..53551b8ac8 100644 --- a/sdk/nodejs/types/enums/s3/index.ts +++ b/sdk/nodejs/types/enums/s3/index.ts @@ -12,265 +12,6 @@ export const AccessPointNetworkOrigin = { */ export type AccessPointNetworkOrigin = (typeof AccessPointNetworkOrigin)[keyof typeof AccessPointNetworkOrigin]; -export const BucketAccelerateConfigurationAccelerationStatus = { - Enabled: "Enabled", - Suspended: "Suspended", -} as const; - -/** - * Configures the transfer acceleration state for an Amazon S3 bucket. - */ -export type BucketAccelerateConfigurationAccelerationStatus = (typeof BucketAccelerateConfigurationAccelerationStatus)[keyof typeof BucketAccelerateConfigurationAccelerationStatus]; - -export const BucketAccessControl = { - AuthenticatedRead: "AuthenticatedRead", - AwsExecRead: "AwsExecRead", - BucketOwnerFullControl: "BucketOwnerFullControl", - BucketOwnerRead: "BucketOwnerRead", - LogDeliveryWrite: "LogDeliveryWrite", - Private: "Private", - PublicRead: "PublicRead", - PublicReadWrite: "PublicReadWrite", -} as const; - -/** - * A canned access control list (ACL) that grants predefined permissions to the bucket. - */ -export type BucketAccessControl = (typeof BucketAccessControl)[keyof typeof BucketAccessControl]; - -export const BucketCorsRuleAllowedMethodsItem = { - Get: "GET", - Put: "PUT", - Head: "HEAD", - Post: "POST", - Delete: "DELETE", -} as const; - -export type BucketCorsRuleAllowedMethodsItem = (typeof BucketCorsRuleAllowedMethodsItem)[keyof typeof BucketCorsRuleAllowedMethodsItem]; - -export const BucketDefaultRetentionMode = { - Compliance: "COMPLIANCE", - Governance: "GOVERNANCE", -} as const; - -export type BucketDefaultRetentionMode = (typeof BucketDefaultRetentionMode)[keyof typeof BucketDefaultRetentionMode]; - -export const BucketDeleteMarkerReplicationStatus = { - Disabled: "Disabled", - Enabled: "Enabled", -} as const; - -export type BucketDeleteMarkerReplicationStatus = (typeof BucketDeleteMarkerReplicationStatus)[keyof typeof BucketDeleteMarkerReplicationStatus]; - -export const BucketDestinationFormat = { - Csv: "CSV", - Orc: "ORC", - Parquet: "Parquet", -} as const; - -/** - * Specifies the file format used when exporting data to Amazon S3. - */ -export type BucketDestinationFormat = (typeof BucketDestinationFormat)[keyof typeof BucketDestinationFormat]; - -export const BucketIntelligentTieringConfigurationStatus = { - Disabled: "Disabled", - Enabled: "Enabled", -} as const; - -/** - * Specifies the status of the configuration. - */ -export type BucketIntelligentTieringConfigurationStatus = (typeof BucketIntelligentTieringConfigurationStatus)[keyof typeof BucketIntelligentTieringConfigurationStatus]; - -export const BucketInventoryConfigurationIncludedObjectVersions = { - All: "All", - Current: "Current", -} as const; - -/** - * Object versions to include in the inventory list. - */ -export type BucketInventoryConfigurationIncludedObjectVersions = (typeof BucketInventoryConfigurationIncludedObjectVersions)[keyof typeof BucketInventoryConfigurationIncludedObjectVersions]; - -export const BucketInventoryConfigurationOptionalFieldsItem = { - Size: "Size", - LastModifiedDate: "LastModifiedDate", - StorageClass: "StorageClass", - ETag: "ETag", - IsMultipartUploaded: "IsMultipartUploaded", - ReplicationStatus: "ReplicationStatus", - EncryptionStatus: "EncryptionStatus", - ObjectLockRetainUntilDate: "ObjectLockRetainUntilDate", - ObjectLockMode: "ObjectLockMode", - ObjectLockLegalHoldStatus: "ObjectLockLegalHoldStatus", - IntelligentTieringAccessTier: "IntelligentTieringAccessTier", - BucketKeyStatus: "BucketKeyStatus", -} as const; - -export type BucketInventoryConfigurationOptionalFieldsItem = (typeof BucketInventoryConfigurationOptionalFieldsItem)[keyof typeof BucketInventoryConfigurationOptionalFieldsItem]; - -export const BucketInventoryConfigurationScheduleFrequency = { - Daily: "Daily", - Weekly: "Weekly", -} as const; - -/** - * Specifies the schedule for generating inventory results. - */ -export type BucketInventoryConfigurationScheduleFrequency = (typeof BucketInventoryConfigurationScheduleFrequency)[keyof typeof BucketInventoryConfigurationScheduleFrequency]; - -export const BucketMetricsStatus = { - Disabled: "Disabled", - Enabled: "Enabled", -} as const; - -export type BucketMetricsStatus = (typeof BucketMetricsStatus)[keyof typeof BucketMetricsStatus]; - -export const BucketNoncurrentVersionTransitionStorageClass = { - DeepArchive: "DEEP_ARCHIVE", - Glacier: "GLACIER", - GlacierIr: "GLACIER_IR", - IntelligentTiering: "INTELLIGENT_TIERING", - OnezoneIa: "ONEZONE_IA", - StandardIa: "STANDARD_IA", -} as const; - -/** - * The class of storage used to store the object. - */ -export type BucketNoncurrentVersionTransitionStorageClass = (typeof BucketNoncurrentVersionTransitionStorageClass)[keyof typeof BucketNoncurrentVersionTransitionStorageClass]; - -export const BucketOwnershipControlsRuleObjectOwnership = { - ObjectWriter: "ObjectWriter", - BucketOwnerPreferred: "BucketOwnerPreferred", - BucketOwnerEnforced: "BucketOwnerEnforced", -} as const; - -/** - * Specifies an object ownership rule. - */ -export type BucketOwnershipControlsRuleObjectOwnership = (typeof BucketOwnershipControlsRuleObjectOwnership)[keyof typeof BucketOwnershipControlsRuleObjectOwnership]; - -export const BucketRedirectAllRequestsToProtocol = { - Http: "http", - Https: "https", -} as const; - -/** - * Protocol to use when redirecting requests. The default is the protocol that is used in the original request. - */ -export type BucketRedirectAllRequestsToProtocol = (typeof BucketRedirectAllRequestsToProtocol)[keyof typeof BucketRedirectAllRequestsToProtocol]; - -export const BucketRedirectRuleProtocol = { - Http: "http", - Https: "https", -} as const; - -/** - * Protocol to use when redirecting requests. The default is the protocol that is used in the original request. - */ -export type BucketRedirectRuleProtocol = (typeof BucketRedirectRuleProtocol)[keyof typeof BucketRedirectRuleProtocol]; - -export const BucketReplicaModificationsStatus = { - Enabled: "Enabled", - Disabled: "Disabled", -} as const; - -/** - * Specifies whether Amazon S3 replicates modifications on replicas. - */ -export type BucketReplicaModificationsStatus = (typeof BucketReplicaModificationsStatus)[keyof typeof BucketReplicaModificationsStatus]; - -export const BucketReplicationDestinationStorageClass = { - DeepArchive: "DEEP_ARCHIVE", - Glacier: "GLACIER", - GlacierIr: "GLACIER_IR", - IntelligentTiering: "INTELLIGENT_TIERING", - OnezoneIa: "ONEZONE_IA", - ReducedRedundancy: "REDUCED_REDUNDANCY", - Standard: "STANDARD", - StandardIa: "STANDARD_IA", -} as const; - -/** - * The storage class to use when replicating objects, such as S3 Standard or reduced redundancy. - */ -export type BucketReplicationDestinationStorageClass = (typeof BucketReplicationDestinationStorageClass)[keyof typeof BucketReplicationDestinationStorageClass]; - -export const BucketReplicationRuleStatus = { - Disabled: "Disabled", - Enabled: "Enabled", -} as const; - -/** - * Specifies whether the rule is enabled. - */ -export type BucketReplicationRuleStatus = (typeof BucketReplicationRuleStatus)[keyof typeof BucketReplicationRuleStatus]; - -export const BucketReplicationTimeStatus = { - Disabled: "Disabled", - Enabled: "Enabled", -} as const; - -export type BucketReplicationTimeStatus = (typeof BucketReplicationTimeStatus)[keyof typeof BucketReplicationTimeStatus]; - -export const BucketRuleStatus = { - Enabled: "Enabled", - Disabled: "Disabled", -} as const; - -export type BucketRuleStatus = (typeof BucketRuleStatus)[keyof typeof BucketRuleStatus]; - -export const BucketServerSideEncryptionByDefaultSseAlgorithm = { - Awskms: "aws:kms", - Aes256: "AES256", - Awskmsdsse: "aws:kms:dsse", -} as const; - -export type BucketServerSideEncryptionByDefaultSseAlgorithm = (typeof BucketServerSideEncryptionByDefaultSseAlgorithm)[keyof typeof BucketServerSideEncryptionByDefaultSseAlgorithm]; - -export const BucketSseKmsEncryptedObjectsStatus = { - Disabled: "Disabled", - Enabled: "Enabled", -} as const; - -/** - * Specifies whether Amazon S3 replicates objects created with server-side encryption using a customer master key (CMK) stored in AWS Key Management Service. - */ -export type BucketSseKmsEncryptedObjectsStatus = (typeof BucketSseKmsEncryptedObjectsStatus)[keyof typeof BucketSseKmsEncryptedObjectsStatus]; - -export const BucketTieringAccessTier = { - ArchiveAccess: "ARCHIVE_ACCESS", - DeepArchiveAccess: "DEEP_ARCHIVE_ACCESS", -} as const; - -/** - * S3 Intelligent-Tiering access tier. See Storage class for automatically optimizing frequently and infrequently accessed objects for a list of access tiers in the S3 Intelligent-Tiering storage class. - */ -export type BucketTieringAccessTier = (typeof BucketTieringAccessTier)[keyof typeof BucketTieringAccessTier]; - -export const BucketTransitionStorageClass = { - DeepArchive: "DEEP_ARCHIVE", - Glacier: "GLACIER", - GlacierIr: "GLACIER_IR", - IntelligentTiering: "INTELLIGENT_TIERING", - OnezoneIa: "ONEZONE_IA", - StandardIa: "STANDARD_IA", -} as const; - -export type BucketTransitionStorageClass = (typeof BucketTransitionStorageClass)[keyof typeof BucketTransitionStorageClass]; - -export const BucketVersioningConfigurationStatus = { - Enabled: "Enabled", - Suspended: "Suspended", -} as const; - -/** - * The versioning state of the bucket. - */ -export type BucketVersioningConfigurationStatus = (typeof BucketVersioningConfigurationStatus)[keyof typeof BucketVersioningConfigurationStatus]; - export const MultiRegionAccessPointPolicyPolicyStatusPropertiesIsPublic = { True: "true", False: "false", diff --git a/sdk/nodejs/types/input.ts b/sdk/nodejs/types/input.ts index 37685e2de6..8817213e13 100644 --- a/sdk/nodejs/types/input.ts +++ b/sdk/nodejs/types/input.ts @@ -1266,62 +1266,77 @@ export namespace apigateway { value: pulumi.Input; } + /** + * The ``AccessLogSetting`` property type specifies settings for logging access in this stage. + * ``AccessLogSetting`` is a property of the [StageDescription](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html) property type. + */ export interface DeploymentAccessLogSettingArgs { /** - * The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with amazon-apigateway-. + * The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with ``amazon-apigateway-``. */ destinationArn?: pulumi.Input; /** - * A single line format of the access logs of data, as specified by selected $context variables. The format must include at least $context.requestId. + * A single line format of the access logs of data, as specified by selected $context variables. The format must include at least ``$context.requestId``. */ format?: pulumi.Input; } + /** + * The ``CanarySetting`` property type specifies settings for the canary deployment in this stage. + * ``CanarySetting`` is a property of the [StageDescription](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html) property type. + */ export interface DeploymentCanarySettingArgs { /** * The percent (0-100) of traffic diverted to a canary deployment. */ percentTraffic?: pulumi.Input; /** - * Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values. + * Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values. */ stageVariableOverrides?: any; /** - * Whether the canary deployment uses the stage cache or not. + * A Boolean flag to indicate whether the canary deployment uses the stage cache or not. */ useStageCache?: pulumi.Input; } + /** + * The ``DeploymentCanarySettings`` property type specifies settings for the canary deployment. + */ export interface DeploymentCanarySettingsArgs { /** - * The percentage (0-100) of traffic diverted to a canary deployment. + * The percentage (0.0-100.0) of traffic routed to the canary deployment. */ percentTraffic?: pulumi.Input; /** - * Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values. Duplicates are not allowed. + * A stage variable overrides used for the canary release deployment. They can override existing stage variables or add new stage variables for the canary release deployment. These stage variables are represented as a string-to-string map between stage variable names and their values. */ stageVariableOverrides?: any; /** - * Whether the canary deployment uses the stage cache. + * A Boolean flag to indicate whether the canary release deployment uses the stage cache or not. */ useStageCache?: pulumi.Input; } + /** + * The ``MethodSetting`` property type configures settings for all methods in a stage. + * The ``MethodSettings`` property of the [Amazon API Gateway Deployment StageDescription](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html) property type contains a list of ``MethodSetting`` property types. + */ export interface DeploymentMethodSettingArgs { /** - * Indicates whether the cached responses are encrypted + * Specifies whether the cached responses are encrypted. */ cacheDataEncrypted?: pulumi.Input; /** - * The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. + * Specifies the time to live (TTL), in seconds, for cached responses. The higher the TTL, the longer the response will be cached. */ cacheTtlInSeconds?: pulumi.Input; /** - * Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses. + * Specifies whether responses should be cached and returned for requests. A cache cluster must be enabled on the stage for responses to be cached. */ cachingEnabled?: pulumi.Input; /** - * Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs. + * Specifies whether data trace logging is enabled for this method, which affects the log entries pushed to Amazon CloudWatch Logs. This can be useful to troubleshoot APIs, but can result in logging sensitive data. We recommend that you don't enable this option for production APIs. */ dataTraceEnabled?: pulumi.Input; /** @@ -1329,50 +1344,53 @@ export namespace apigateway { */ httpMethod?: pulumi.Input; /** - * The logging level for this method. For valid values, see the loggingLevel property of the Stage resource in the Amazon API Gateway API Reference. + * Specifies the logging level for this method, which affects the log entries pushed to Amazon CloudWatch Logs. Valid values are ``OFF``, ``ERROR``, and ``INFO``. Choose ``ERROR`` to write only error-level entries to CloudWatch Logs, or choose ``INFO`` to include all ``ERROR`` events as well as extra informational events. */ loggingLevel?: pulumi.Input; /** - * Indicates whether Amazon CloudWatch metrics are enabled for methods in the stage. + * Specifies whether Amazon CloudWatch metrics are enabled for this method. */ metricsEnabled?: pulumi.Input; /** - * The resource path for this method. Forward slashes (/) are encoded as ~1 and the initial slash must include a forward slash. + * The resource path for this method. Forward slashes (``/``) are encoded as ``~1`` and the initial slash must include a forward slash. For example, the path value ``/resource/subresource`` must be encoded as ``/~1resource~1subresource``. To specify the root path, use only a slash (``/``). */ resourcePath?: pulumi.Input; /** - * The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. + * Specifies the throttling burst limit. */ throttlingBurstLimit?: pulumi.Input; /** - * The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. + * Specifies the throttling rate limit. */ throttlingRateLimit?: pulumi.Input; } + /** + * ``StageDescription`` is a property of the [AWS::ApiGateway::Deployment](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-deployment.html) resource that configures a deployment stage. + */ export interface DeploymentStageDescriptionArgs { /** * Specifies settings for logging access in this stage. */ accessLogSetting?: pulumi.Input; /** - * Indicates whether cache clustering is enabled for the stage. + * Specifies whether a cache cluster is enabled for the stage. */ cacheClusterEnabled?: pulumi.Input; /** - * The size of the stage's cache cluster. + * The size of the stage's cache cluster. For more information, see [cacheClusterSize](https://docs.aws.amazon.com/apigateway/latest/api/API_CreateStage.html#apigw-CreateStage-request-cacheClusterSize) in the *API Gateway API Reference*. */ cacheClusterSize?: pulumi.Input; /** - * The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. + * Indicates whether the cached responses are encrypted. */ cacheDataEncrypted?: pulumi.Input; /** - * The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. + * The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. */ cacheTtlInSeconds?: pulumi.Input; /** - * Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses. + * Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses. For more information, see [Enable API Gateway Caching in a Stage to Enhance API Performance](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html) in the *API Gateway Developer Guide*. */ cachingEnabled?: pulumi.Input; /** @@ -1380,11 +1398,11 @@ export namespace apigateway { */ canarySetting?: pulumi.Input; /** - * The identifier of the client certificate that API Gateway uses to call your integration endpoints in the stage. + * The identifier of the client certificate that API Gateway uses to call your integration endpoints in the stage. */ clientCertificateId?: pulumi.Input; /** - * Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs. + * Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs. */ dataTraceEnabled?: pulumi.Input; /** @@ -1396,7 +1414,7 @@ export namespace apigateway { */ documentationVersion?: pulumi.Input; /** - * The logging level for this method. For valid values, see the loggingLevel property of the Stage resource in the Amazon API Gateway API Reference. + * The logging level for this method. For valid values, see the ``loggingLevel`` property of the [MethodSetting](https://docs.aws.amazon.com/apigateway/latest/api/API_MethodSetting.html) resource in the *Amazon API Gateway API Reference*. */ loggingLevel?: pulumi.Input; /** @@ -1412,19 +1430,20 @@ export namespace apigateway { */ tags?: pulumi.Input[]>; /** - * The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. + * The target request burst rate limit. This allows more requests through for a period of time than the target rate limit. For more information, see [Manage API Request Throttling](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-request-throttling.html) in the *API Gateway Developer Guide*. */ throttlingBurstLimit?: pulumi.Input; /** - * The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. + * The target request steady-state rate limit. For more information, see [Manage API Request Throttling](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-request-throttling.html) in the *API Gateway Developer Guide*. */ throttlingRateLimit?: pulumi.Input; /** * Specifies whether active tracing with X-ray is enabled for this stage. + * For more information, see [Trace API Gateway API Execution with X-Ray](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-xray.html) in the *API Gateway Developer Guide*. */ tracingEnabled?: pulumi.Input; /** - * A map that defines the stage variables. Variable names must consist of alphanumeric characters, and the values must match the following regular expression: [A-Za-z0-9-._~:/?#&=,]+. + * A map that defines the stage variables. Variable names must consist of alphanumeric characters, and the values must match the following regular expression: ``[A-Za-z0-9-._~:/?#&=,]+``. */ variables?: any; } @@ -1440,25 +1459,29 @@ export namespace apigateway { value: pulumi.Input; } + /** + * The ``Location`` property specifies the location of the Amazon API Gateway API entity that the documentation applies to. ``Location`` is a property of the [AWS::ApiGateway::DocumentationPart](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationpart.html) resource. + * For more information about each property, including constraints and valid values, see [DocumentationPart](https://docs.aws.amazon.com/apigateway/latest/api/API_DocumentationPartLocation.html) in the *Amazon API Gateway REST API Reference*. + */ export interface DocumentationPartLocationArgs { /** - * The HTTP verb of a method. + * The HTTP verb of a method. It is a valid field for the API entity types of ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``*`` for any method. When an applicable child entity inherits the content of an entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``method`` attribute must match that of the parent entity exactly. */ method?: pulumi.Input; /** - * The name of the targeted API entity. + * The name of the targeted API entity. It is a valid and required field for the API entity types of ``AUTHORIZER``, ``MODEL``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY`` and ``RESPONSE_HEADER``. It is an invalid field for any other entity type. */ name?: pulumi.Input; /** - * The URL path of the target. + * The URL path of the target. It is a valid field for the API entity types of ``RESOURCE``, ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``/`` for the root resource. When an applicable child entity inherits the content of another entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``path`` attribute must match that of the parent entity as a prefix. */ path?: pulumi.Input; /** - * The HTTP status code of a response. + * The HTTP status code of a response. It is a valid field for the API entity types of ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``*`` for any status code. When an applicable child entity inherits the content of an entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``statusCode`` attribute must match that of the parent entity exactly. */ statusCode?: pulumi.Input; /** - * The type of API entity that the documentation content applies to. + * The type of API entity to which the documentation content applies. Valid values are ``API``, ``AUTHORIZER``, ``MODEL``, ``RESOURCE``, ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. Content inheritance does not apply to any entity of the ``API``, ``AUTHORIZER``, ``METHOD``, ``MODEL``, ``REQUEST_BODY``, or ``RESOURCE`` type. */ type?: pulumi.Input; } @@ -1477,112 +1500,151 @@ export namespace apigateway { value?: pulumi.Input; } + /** + * ``Integration`` is a property of the [AWS::ApiGateway::Method](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html) resource that specifies information about the target backend that a method calls. + */ export interface MethodIntegrationArgs { /** - * A list of request parameters whose values API Gateway caches. + * A list of request parameters whose values API Gateway caches. To be valid values for ``cacheKeyParameters``, these parameters must also be specified for Method ``requestParameters``. */ cacheKeyParameters?: pulumi.Input[]>; /** - * An API-specific tag group of related cached parameters. + * Specifies a group of related cached parameters. By default, API Gateway uses the resource ID as the ``cacheNamespace``. You can specify the same ``cacheNamespace`` across resources to return the same cached data for requests to different resources. */ cacheNamespace?: pulumi.Input; /** - * The ID of the VpcLink used for the integration when connectionType=VPC_LINK, otherwise undefined. + * The ID of the VpcLink used for the integration when ``connectionType=VPC_LINK`` and undefined, otherwise. */ connectionId?: pulumi.Input; /** - * The type of the network connection to the integration endpoint. + * The type of the network connection to the integration endpoint. The valid value is ``INTERNET`` for connections through the public routable internet or ``VPC_LINK`` for private connections between API Gateway and a network load balancer in a VPC. The default value is ``INTERNET``. */ connectionType?: pulumi.Input; /** - * Specifies how to handle request payload content type conversions. + * Specifies how to handle request payload content type conversions. Supported values are ``CONVERT_TO_BINARY`` and ``CONVERT_TO_TEXT``, with the following behaviors: + * If this property is not defined, the request payload will be passed through from the method request to integration request without modification, provided that the ``passthroughBehavior`` is configured to support payload pass-through. */ contentHandling?: pulumi.Input; /** - * The credentials that are required for the integration. + * Specifies the credentials required for the integration, if any. For AWS integrations, three options are available. To specify an IAM Role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To require that the caller's identity be passed through from the request, specify the string ``arn:aws:iam::\*:user/\*``. To use resource-based permissions on supported AWS services, specify null. */ credentials?: pulumi.Input; /** - * The integration's HTTP method type. + * Specifies the integration's HTTP method type. For the Type property, if you specify ``MOCK``, this property is optional. For Lambda integrations, you must set the integration method to ``POST``. For all other types, you must specify this property. */ integrationHttpMethod?: pulumi.Input; /** - * The response that API Gateway provides after a method's backend completes processing a request. + * Specifies the integration's responses. */ integrationResponses?: pulumi.Input[]>; /** - * Indicates when API Gateway passes requests to the targeted backend. + * Specifies how the method request body of an unmapped content type will be passed through the integration request to the back end without transformation. A content type is unmapped if no mapping template is defined in the integration or the content type does not match any of the mapped content types, as specified in ``requestTemplates``. The valid value is one of the following: ``WHEN_NO_MATCH``: passes the method request body through the integration request to the back end without transformation when the method request content type does not match any content type associated with the mapping templates defined in the integration request. ``WHEN_NO_TEMPLATES``: passes the method request body through the integration request to the back end without transformation when no mapping template is defined in the integration request. If a template is defined when this option is selected, the method request of an unmapped content-type will be rejected with an HTTP 415 Unsupported Media Type response. ``NEVER``: rejects the method request with an HTTP 415 Unsupported Media Type response when either the method request content type does not match any content type associated with the mapping templates defined in the integration request or no mapping template is defined in the integration request. */ passthroughBehavior?: pulumi.Input; /** - * The request parameters that API Gateway sends with the backend request. + * A key-value map specifying request parameters that are passed from the method request to the back end. The key is an integration request parameter name and the associated value is a method request parameter value or static value that must be enclosed within single quotes and pre-encoded as required by the back end. The method request parameter value must match the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and ``name`` must be a valid and unique method request parameter name. */ requestParameters?: any; /** - * A map of Apache Velocity templates that are applied on the request payload. + * Represents a map of Velocity templates that are applied on the request payload based on the value of the Content-Type header sent by the client. The content type value is the key in this map, and the template (as a String) is the value. */ requestTemplates?: any; /** - * Custom timeout between 50 and 29,000 milliseconds. + * Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds or 29 seconds. */ timeoutInMillis?: pulumi.Input; /** - * The type of backend that your method is running. + * Specifies an API method integration type. The valid value is one of the following: + * For the HTTP and HTTP proxy integrations, each integration can specify a protocol (``http/https``), port and path. Standard 80 and 443 ports are supported as well as custom ports above 1024. An HTTP or HTTP proxy integration with a ``connectionType`` of ``VPC_LINK`` is referred to as a private integration and uses a VpcLink to connect API Gateway to a network load balancer of a VPC. */ type: pulumi.Input; /** - * The Uniform Resource Identifier (URI) for the integration. + * Specifies Uniform Resource Identifier (URI) of the integration endpoint. + * For ``HTTP`` or ``HTTP_PROXY`` integrations, the URI must be a fully formed, encoded HTTP(S) URL according to the RFC-3986 specification for standard integrations. If ``connectionType`` is ``VPC_LINK`` specify the Network Load Balancer DNS name. For ``AWS`` or ``AWS_PROXY`` integrations, the URI is of the form ``arn:aws:apigateway:{region}:{subdomain.service|service}:path|action/{service_api}``. Here, {Region} is the API Gateway region (e.g., us-east-1); {service} is the name of the integrated AWS service (e.g., s3); and {subdomain} is a designated subdomain supported by certain AWS service for fast host-name lookup. action can be used for an AWS service action-based API, using an Action={name}&{p1}={v1}&p2={v2}... query string. The ensuing {service_api} refers to a supported action {name} plus any required input parameters. Alternatively, path can be used for an AWS service path-based API. The ensuing service_api refers to the path to an AWS service resource, including the region of the integrated AWS service, if applicable. For example, for integration with the S3 API of GetObject, the uri can be either ``arn:aws:apigateway:us-west-2:s3:action/GetObject&Bucket={bucket}&Key={key}`` or ``arn:aws:apigateway:us-west-2:s3:path/{bucket}/{key}`` */ uri?: pulumi.Input; } + /** + * ``IntegrationResponse`` is a property of the [Amazon API Gateway Method Integration](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html) property type that specifies the response that API Gateway sends after a method's backend finishes processing a request. + */ export interface MethodIntegrationResponseArgs { /** - * Specifies how to handle request payload content type conversions. + * Specifies how to handle response payload content type conversions. Supported values are ``CONVERT_TO_BINARY`` and ``CONVERT_TO_TEXT``, with the following behaviors: + * If this property is not defined, the response payload will be passed through from the integration response to the method response without modification. */ contentHandling?: pulumi.Input; /** - * The response parameters from the backend response that API Gateway sends to the method response. + * A key-value map specifying response parameters that are passed to the method response from the back end. The key is a method response header parameter name and the mapped value is an integration response header value, a static value enclosed within a pair of single quotes, or a JSON expression from the integration response body. The mapping key must match the pattern of ``method.response.header.{name}``, where ``name`` is a valid and unique header name. The mapped non-static value must match the pattern of ``integration.response.header.{name}`` or ``integration.response.body.{JSON-expression}``, where ``name`` is a valid and unique response header name and ``JSON-expression`` is a valid JSON expression without the ``$`` prefix. */ responseParameters?: any; /** - * The templates that are used to transform the integration response body. Specify templates as key-value pairs (string-to-string mappings), with a content type as the key and a template as the value. + * Specifies the templates used to transform the integration response body. Response templates are represented as a key/value map, with a content-type as the key and a template as the value. */ responseTemplates?: any; /** - * A regular expression that specifies which error strings or status codes from the backend map to the integration response. + * Specifies the regular expression (regex) pattern used to choose an integration response based on the response from the back end. For example, if the success response returns nothing and the error response returns some string, you could use the ``.+`` regex to match error response. However, make sure that the error response does not contain any newline (``\n``) character in such cases. If the back end is an LAMlong function, the LAMlong function error header is matched. For all other HTTP and AWS back ends, the HTTP status code is matched. */ selectionPattern?: pulumi.Input; /** - * The status code that API Gateway uses to map the integration response to a MethodResponse status code. + * Specifies the status code that is used to map the integration response to an existing MethodResponse. */ statusCode: pulumi.Input; } + /** + * Represents a method response of a given HTTP status code returned to the client. The method response is passed from the back end through the associated integration response that can be transformed using a mapping template. + */ export interface MethodResponseArgs { /** - * The resources used for the response's content type. Specify response models as key-value pairs (string-to-string maps), with a content type as the key and a Model resource name as the value. + * Specifies the Model resources used for the response's content-type. Response models are represented as a key/value map, with a content-type as the key and a Model name as the value. */ responseModels?: any; /** - * Response parameters that API Gateway sends to the client that called a method. Specify response parameters as key-value pairs (string-to-Boolean maps), with a destination as the key and a Boolean as the value. + * A key-value map specifying required or optional response parameters that API Gateway can send back to the caller. A key defines a method response header and the value specifies whether the associated method response header is required or not. The expression of the key must match the pattern ``method.response.header.{name}``, where ``name`` is a valid and unique header name. API Gateway passes certain integration response data to the method response headers specified here according to the mapping you prescribe in the API's IntegrationResponse. The integration response data that can be mapped include an integration response header expressed in ``integration.response.header.{name}``, a static value enclosed within a pair of single quotes (e.g., ``'application/json'``), or a JSON expression from the back-end response payload in the form of ``integration.response.body.{JSON-expression}``, where ``JSON-expression`` is a valid JSON expression without the ``$`` prefix.) */ responseParameters?: any; /** - * The method response's status code, which you map to an IntegrationResponse. + * The method response's status code. */ statusCode: pulumi.Input; } + /** + * The ``EndpointConfiguration`` property type specifies the endpoint types of a REST API. + * ``EndpointConfiguration`` is a property of the [AWS::ApiGateway::RestApi](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html) resource. + */ export interface RestApiEndpointConfigurationArgs { + /** + * A list of endpoint types of an API (RestApi) or its custom domain name (DomainName). For an edge-optimized API and its custom domain name, the endpoint type is ``"EDGE"``. For a regional API and its custom domain name, the endpoint type is ``REGIONAL``. For a private API, the endpoint type is ``PRIVATE``. + */ types?: pulumi.Input[]>; + /** + * A list of VpcEndpointIds of an API (RestApi) against which to create Route53 ALIASes. It is only supported for ``PRIVATE`` endpoint type. + */ vpcEndpointIds?: pulumi.Input[]>; } + /** + * ``S3Location`` is a property of the [AWS::ApiGateway::RestApi](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html) resource that specifies the Amazon S3 location of a OpenAPI (formerly Swagger) file that defines a set of RESTful APIs in JSON or YAML. + * On January 1, 2016, the Swagger Specification was donated to the [OpenAPI initiative](https://docs.aws.amazon.com/https://www.openapis.org/), becoming the foundation of the OpenAPI Specification. + */ export interface RestApiS3LocationArgs { + /** + * The name of the S3 bucket where the OpenAPI file is stored. + */ bucket?: pulumi.Input; + /** + * The Amazon S3 ETag (a file checksum) of the OpenAPI file. If you don't specify a value, API Gateway skips ETag validation of your OpenAPI file. + */ eTag?: pulumi.Input; + /** + * The file name of the OpenAPI file (Amazon S3 object name). + */ key?: pulumi.Input; + /** + * For versioning-enabled buckets, a specific version of the OpenAPI file. + */ version?: pulumi.Input; } @@ -1592,29 +1654,30 @@ export namespace apigateway { } /** - * Specifies settings for logging access in this stage. + * The ``AccessLogSetting`` property type specifies settings for logging access in this stage. + * ``AccessLogSetting`` is a property of the [AWS::ApiGateway::Stage](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html) resource. */ export interface StageAccessLogSettingArgs { /** - * The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with amazon-apigateway-. This parameter is required to enable access logging. + * The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with ``amazon-apigateway-``. This parameter is required to enable access logging. */ destinationArn?: pulumi.Input; /** - * A single line format of the access logs of data, as specified by selected $context variables (https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html#context-variable-reference). The format must include at least $context.requestId. This parameter is required to enable access logging. + * A single line format of the access logs of data, as specified by selected [$context variables](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html#context-variable-reference). The format must include at least ``$context.requestId``. This parameter is required to enable access logging. */ format?: pulumi.Input; } /** - * Specifies settings for the canary deployment in this stage. + * Configuration settings of a canary deployment. */ export interface StageCanarySettingArgs { /** - * The identifier of the deployment that the stage points to. + * The ID of the canary deployment. */ deploymentId?: pulumi.Input; /** - * The percentage (0-100) of traffic diverted to a canary deployment. + * The percent (0-100) of traffic diverted to a canary deployment. */ percentTraffic?: pulumi.Input; /** @@ -1622,53 +1685,54 @@ export namespace apigateway { */ stageVariableOverrides?: any; /** - * Whether the canary deployment uses the stage cache or not. + * A Boolean flag to indicate whether the canary deployment uses the stage cache or not. */ useStageCache?: pulumi.Input; } /** - * Configures settings for all methods in a stage. + * The ``MethodSetting`` property type configures settings for all methods in a stage. + * The ``MethodSettings`` property of the ``AWS::ApiGateway::Stage`` resource contains a list of ``MethodSetting`` property types. */ export interface StageMethodSettingArgs { /** - * Indicates whether the cached responses are encrypted. + * Specifies whether the cached responses are encrypted. */ cacheDataEncrypted?: pulumi.Input; /** - * The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. + * Specifies the time to live (TTL), in seconds, for cached responses. The higher the TTL, the longer the response will be cached. */ cacheTtlInSeconds?: pulumi.Input; /** - * Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses. + * Specifies whether responses should be cached and returned for requests. A cache cluster must be enabled on the stage for responses to be cached. */ cachingEnabled?: pulumi.Input; /** - * Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs. + * Specifies whether data trace logging is enabled for this method, which affects the log entries pushed to Amazon CloudWatch Logs. This can be useful to troubleshoot APIs, but can result in logging sensitive data. We recommend that you don't enable this option for production APIs. */ dataTraceEnabled?: pulumi.Input; /** - * The HTTP method. You can use an asterisk (*) as a wildcard to apply method settings to multiple methods. + * The HTTP method. To apply settings to multiple resources and methods, specify an asterisk (``*``) for the ``HttpMethod`` and ``/*`` for the ``ResourcePath``. This parameter is required when you specify a ``MethodSetting``. */ httpMethod?: pulumi.Input; /** - * The logging level for this method. For valid values, see the loggingLevel property of the Stage (https://docs.aws.amazon.com/apigateway/api-reference/resource/stage/#loggingLevel) resource in the Amazon API Gateway API Reference. + * Specifies the logging level for this method, which affects the log entries pushed to Amazon CloudWatch Logs. Valid values are ``OFF``, ``ERROR``, and ``INFO``. Choose ``ERROR`` to write only error-level entries to CloudWatch Logs, or choose ``INFO`` to include all ``ERROR`` events as well as extra informational events. */ loggingLevel?: pulumi.Input; /** - * Indicates whether Amazon CloudWatch metrics are enabled for methods in the stage. + * Specifies whether Amazon CloudWatch metrics are enabled for this method. */ metricsEnabled?: pulumi.Input; /** - * The resource path for this method. Forward slashes (/) are encoded as ~1 and the initial slash must include a forward slash. For example, the path value /resource/subresource must be encoded as /~1resource~1subresource. To specify the root path, use only a slash (/). You can use an asterisk (*) as a wildcard to apply method settings to multiple methods. + * The resource path for this method. Forward slashes (``/``) are encoded as ``~1`` and the initial slash must include a forward slash. For example, the path value ``/resource/subresource`` must be encoded as ``/~1resource~1subresource``. To specify the root path, use only a slash (``/``). To apply settings to multiple resources and methods, specify an asterisk (``*``) for the ``HttpMethod`` and ``/*`` for the ``ResourcePath``. This parameter is required when you specify a ``MethodSetting``. */ resourcePath?: pulumi.Input; /** - * The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. + * Specifies the throttling burst limit. */ throttlingBurstLimit?: pulumi.Input; /** - * The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. + * Specifies the throttling rate limit. */ throttlingRateLimit?: pulumi.Input; } @@ -1903,9 +1967,18 @@ export namespace apigatewayv2 { } export namespace appconfig { + /** + * Metadata to assign to the application. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define. + */ export interface ApplicationTagsArgs { - key?: pulumi.Input; - value?: pulumi.Input; + /** + * The key-value string map. The valid character set is [a-zA-Z1-9+-=._:/]. The tag key can be up to 128 characters and must not start with aws:. + */ + key: pulumi.Input; + /** + * The tag value can be up to 256 characters. + */ + value: pulumi.Input; } export interface ConfigurationProfileTagsArgs { @@ -4661,17 +4734,41 @@ export namespace appsync { relationalDatabaseSourceType: pulumi.Input; } + /** + * Describes a runtime used by an AWS AppSync pipeline resolver or AWS AppSync function. Specifies the name and version of the runtime to use. Note that if a runtime is specified, code must also be specified. + */ export interface FunctionConfigurationAppSyncRuntimeArgs { + /** + * The name of the runtime to use. Currently, the only allowed value is APPSYNC_JS. + */ name: pulumi.Input; + /** + * The version of the runtime to use. Currently, the only allowed version is 1.0.0. + */ runtimeVersion: pulumi.Input; } + /** + * The LambdaConflictHandlerConfig when configuring LAMBDA as the Conflict Handler. + */ export interface FunctionConfigurationLambdaConflictHandlerConfigArgs { + /** + * The Amazon Resource Name (ARN) for the Lambda function to use as the Conflict Handler. + */ lambdaConflictHandlerArn?: pulumi.Input; } + /** + * Describes a Sync configuration for a resolver. Specifies which Conflict Detection strategy and Resolution strategy to use when the resolver is invoked. + */ export interface FunctionConfigurationSyncConfigArgs { + /** + * The Conflict Detection strategy to use. + */ conflictDetection: pulumi.Input; + /** + * The Conflict Resolution strategy to perform in the event of a conflict. + */ conflictHandler?: pulumi.Input; lambdaConflictHandlerConfig?: pulumi.Input; } @@ -7893,8 +7990,8 @@ export namespace codestarnotifications { export namespace cognito { export interface IdentityPoolCognitoIdentityProviderArgs { - clientId: pulumi.Input; - providerName: pulumi.Input; + clientId?: pulumi.Input; + providerName?: pulumi.Input; serverSideTokenCheck?: pulumi.Input; } @@ -7909,20 +8006,6 @@ export namespace cognito { roleArn?: pulumi.Input; } - /** - * A key-value pair to associate with a resource. - */ - export interface IdentityPoolTagArgs { - /** - * The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. - */ - key: pulumi.Input; - /** - * The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. - */ - value: pulumi.Input; - } - export interface LogDeliveryConfigurationCloudWatchLogsConfigurationArgs { logGroupArn?: pulumi.Input; } @@ -9408,6 +9491,149 @@ export namespace customerprofiles { value: pulumi.Input; } + /** + * Configures information about the AttributeTypesSelector where the rule-based identity resolution uses to match profiles. + */ + export interface DomainAttributeTypesSelectorArgs { + /** + * The Address type. You can choose from Address, BusinessAddress, MaillingAddress, and ShippingAddress. You only can use the Address type in the MatchingRule. For example, if you want to match profile based on BusinessAddress.City or MaillingAddress.City, you need to choose the BusinessAddress and the MaillingAddress to represent the Address type and specify the Address.City on the matching rule. + */ + address?: pulumi.Input[]>; + /** + * Configures the AttributeMatchingModel, you can either choose ONE_TO_ONE or MANY_TO_MANY. + */ + attributeMatchingModel: pulumi.Input; + /** + * The Email type. You can choose from EmailAddress, BusinessEmailAddress and PersonalEmailAddress. You only can use the EmailAddress type in the MatchingRule. For example, if you want to match profile based on PersonalEmailAddress or BusinessEmailAddress, you need to choose the PersonalEmailAddress and the BusinessEmailAddress to represent the EmailAddress type and only specify the EmailAddress on the matching rule. + */ + emailAddress?: pulumi.Input[]>; + /** + * The PhoneNumber type. You can choose from PhoneNumber, HomePhoneNumber, and MobilePhoneNumber. You only can use the PhoneNumber type in the MatchingRule. For example, if you want to match a profile based on Phone or HomePhone, you need to choose the Phone and the HomePhone to represent the PhoneNumber type and only specify the PhoneNumber on the matching rule. + */ + phoneNumber?: pulumi.Input[]>; + } + + /** + * Configuration information about the auto-merging process. + */ + export interface DomainAutoMergingArgs { + conflictResolution?: pulumi.Input; + consolidation?: pulumi.Input; + /** + * The flag that enables the auto-merging of duplicate profiles. + */ + enabled: pulumi.Input; + /** + * A number between 0 and 1 that represents the minimum confidence score required for profiles within a matching group to be merged during the auto-merge process. A higher score means higher similarity required to merge profiles. + */ + minAllowedConfidenceScoreForMerging?: pulumi.Input; + } + + /** + * How the auto-merging process should resolve conflicts between different profiles. For example, if Profile A and Profile B have the same FirstName and LastName (and that is the matching criteria), which EmailAddress should be used? + */ + export interface DomainConflictResolutionArgs { + /** + * How the auto-merging process should resolve conflicts between different profiles. + */ + conflictResolvingModel: pulumi.Input; + /** + * The ObjectType name that is used to resolve profile merging conflicts when choosing SOURCE as the ConflictResolvingModel. + */ + sourceName?: pulumi.Input; + } + + /** + * A list of matching attributes that represent matching criteria. If two profiles meet at least one of the requirements in the matching attributes list, they will be merged. + */ + export interface DomainConsolidationArgs { + /** + * A list of matching criteria. + */ + matchingAttributesList: pulumi.Input[]>[]>; + } + + /** + * Configuration information for exporting Identity Resolution results, for example, to an S3 bucket. + */ + export interface DomainExportingConfigArgs { + s3Exporting?: pulumi.Input; + } + + /** + * The day and time when do you want to start the Identity Resolution Job every week. + */ + export interface DomainJobScheduleArgs { + /** + * The day when the Identity Resolution Job should run every week. + */ + dayOfTheWeek: pulumi.Input; + /** + * The time when the Identity Resolution Job should run every week. + */ + time: pulumi.Input; + } + + /** + * The process of matching duplicate profiles. If Matching = true, Amazon Connect Customer Profiles starts a weekly batch process called Identity Resolution Job. If you do not specify a date and time for Identity Resolution Job to run, by default it runs every Saturday at 12AM UTC to detect duplicate profiles in your domains. After the Identity Resolution Job completes, use the GetMatches API to return and review the results. Or, if you have configured ExportingConfig in the MatchingRequest, you can download the results from S3. + */ + export interface DomainMatchingArgs { + autoMerging?: pulumi.Input; + /** + * The flag that enables the matching process of duplicate profiles. + */ + enabled: pulumi.Input; + exportingConfig?: pulumi.Input; + jobSchedule?: pulumi.Input; + } + + /** + * Specifies how does the rule-based matching process should match profiles. + */ + export interface DomainMatchingRuleArgs { + rule: pulumi.Input[]>; + } + + /** + * The process of matching duplicate profiles using the Rule-Based matching. If RuleBasedMatching = true, Amazon Connect Customer Profiles will start to match and merge your profiles according to your configuration in the RuleBasedMatchingRequest. You can use the ListRuleBasedMatches and GetSimilarProfiles API to return and review the results. Also, if you have configured ExportingConfig in the RuleBasedMatchingRequest, you can download the results from S3. + */ + export interface DomainRuleBasedMatchingArgs { + attributeTypesSelector?: pulumi.Input; + conflictResolution?: pulumi.Input; + /** + * The flag that enables the rule-based matching process of duplicate profiles. + */ + enabled: pulumi.Input; + exportingConfig?: pulumi.Input; + /** + * Configures how the rule-based matching process should match profiles. You can have up to 15 MatchingRule in the MatchingRules. + */ + matchingRules?: pulumi.Input[]>; + /** + * Indicates the maximum allowed rule level for matching. + */ + maxAllowedRuleLevelForMatching?: pulumi.Input; + /** + * Indicates the maximum allowed rule level for merging. + */ + maxAllowedRuleLevelForMerging?: pulumi.Input; + status?: pulumi.Input; + } + + /** + * The S3 location where Identity Resolution Jobs write result files. + */ + export interface DomainS3ExportingConfigArgs { + /** + * The name of the S3 bucket where Identity Resolution Jobs write result files. + */ + s3BucketName: pulumi.Input; + /** + * The S3 key name of the location where Identity Resolution Jobs write result files. + */ + s3KeyName?: pulumi.Input; + } + export interface DomainTagArgs { key: pulumi.Input; value: pulumi.Input; @@ -16019,6 +16245,60 @@ export namespace emrserverless { } export namespace entityresolution { + export interface IdMappingWorkflowIdMappingTechniquesArgs { + idMappingType?: pulumi.Input; + providerProperties?: pulumi.Input; + } + + export interface IdMappingWorkflowInputSourceArgs { + /** + * An Glue table ARN for the input source table + */ + inputSourceArn: pulumi.Input; + schemaArn: pulumi.Input; + } + + export interface IdMappingWorkflowIntermediateSourceConfigurationArgs { + /** + * The s3 path that would be used to stage the intermediate data being generated during workflow execution. + */ + intermediateS3Path: pulumi.Input; + } + + export interface IdMappingWorkflowOutputSourceArgs { + kmsArn?: pulumi.Input; + /** + * The S3 path to which Entity Resolution will write the output table + */ + outputS3Path: pulumi.Input; + } + + export interface IdMappingWorkflowProviderPropertiesArgs { + intermediateSourceConfiguration?: pulumi.Input; + /** + * Additional Provider configuration that would be required for the provider service. The Configuration must be in JSON string format + */ + providerConfiguration?: any; + /** + * Arn of the Provider Service being used. + */ + providerServiceArn: pulumi.Input; + } + + /** + * A key-value pair to associate with a resource + */ + export interface IdMappingWorkflowTagArgs { + /** + * The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. + */ + key: pulumi.Input; + /** + * The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. + */ + value: pulumi.Input; + } + export interface MatchingWorkflowInputSourceArgs { applyNormalization?: pulumi.Input; /** @@ -16278,7 +16558,6 @@ export namespace events { dbUser?: pulumi.Input; secretManagerArn?: pulumi.Input; sql?: pulumi.Input; - sqls?: pulumi.Input[]>; statementName?: pulumi.Input; withEvent?: pulumi.Input; } @@ -18965,7 +19244,13 @@ export namespace healthlake { export namespace iam { export interface GroupPolicyArgs { - policyDocument: any; + /** + * The policy document. + */ + policyDocument: pulumi.Input; + /** + * The friendly name (not ARN) identifying the policy. + */ policyName: pulumi.Input; } @@ -20090,6 +20375,11 @@ export namespace iot { action: pulumi.Input; } + export interface PolicyTagArgs { + key: pulumi.Input; + value: pulumi.Input; + } + /** * Configuration for pre-signed S3 URLs. */ @@ -30655,6 +30945,120 @@ export namespace msk { revision?: pulumi.Input; } + /** + * Details of an Amazon MSK cluster. + */ + export interface ReplicatorAmazonMskClusterArgs { + /** + * The ARN of an Amazon MSK cluster. + */ + mskClusterArn: pulumi.Input; + } + + /** + * Configuration relating to consumer group replication. + */ + export interface ReplicatorConsumerGroupReplicationArgs { + /** + * List of regular expression patterns indicating the consumer groups that should not be replicated. + */ + consumerGroupsToExclude?: pulumi.Input[]>; + /** + * List of regular expression patterns indicating the consumer groups to copy. + */ + consumerGroupsToReplicate: pulumi.Input[]>; + /** + * Whether to periodically check for new consumer groups. + */ + detectAndCopyNewConsumerGroups?: pulumi.Input; + /** + * Whether to periodically write the translated offsets to __consumer_offsets topic in target cluster. + */ + synchroniseConsumerGroupOffsets?: pulumi.Input; + } + + /** + * Details of a Kafka cluster for replication. + */ + export interface ReplicatorKafkaClusterArgs { + /** + * Details of an Amazon MSK cluster. Exactly one of AmazonMskCluster is required. + */ + amazonMskCluster: pulumi.Input; + /** + * Details of an Amazon VPC which has network connectivity to the Apache Kafka cluster. + */ + vpcConfig: pulumi.Input; + } + + /** + * Details of an Amazon VPC which has network connectivity to the Kafka cluster. + */ + export interface ReplicatorKafkaClusterClientVpcConfigArgs { + /** + * The AWS security groups to associate with the elastic network interfaces in order to specify what the replicator has access to. If a security group is not specified, the default security group associated with the VPC is used. + */ + securityGroupIds?: pulumi.Input[]>; + /** + * The list of subnets to connect to in the virtual private cloud (VPC). AWS creates elastic network interfaces inside these subnets. + */ + subnetIds: pulumi.Input[]>; + } + + /** + * Specifies configuration for replication between a source and target Kafka cluster. + */ + export interface ReplicatorReplicationInfoArgs { + /** + * Configuration relating to consumer group replication. + */ + consumerGroupReplication: pulumi.Input; + /** + * Amazon Resource Name of the source Kafka cluster. + */ + sourceKafkaClusterArn: pulumi.Input; + /** + * The type of compression to use writing records to target Kafka cluster. + */ + targetCompressionType: pulumi.Input; + /** + * Amazon Resource Name of the target Kafka cluster. + */ + targetKafkaClusterArn: pulumi.Input; + /** + * Configuration relating to topic replication. + */ + topicReplication: pulumi.Input; + } + + export interface ReplicatorTagArgs { + key: pulumi.Input; + value: pulumi.Input; + } + + export interface ReplicatorTopicReplicationArgs { + /** + * Whether to periodically configure remote topic ACLs to match their corresponding upstream topics. + */ + copyAccessControlListsForTopics?: pulumi.Input; + /** + * Whether to periodically configure remote topics to match their corresponding upstream topics. + */ + copyTopicConfigurations?: pulumi.Input; + /** + * Whether to periodically check for new topics and partitions. + */ + detectAndCopyNewTopics?: pulumi.Input; + /** + * List of regular expression patterns indicating the topics that should not be replicated. + */ + topicsToExclude?: pulumi.Input[]>; + /** + * List of regular expression patterns indicating the topics to copy. + */ + topicsToReplicate: pulumi.Input[]>; + } + export interface ServerlessClusterClientAuthenticationArgs { sasl: pulumi.Input; } @@ -36278,6 +36682,10 @@ export namespace quicksight { name?: pulumi.Input; } + export interface AnalysisValidationStrategyArgs { + mode: pulumi.Input; + } + export interface AnalysisVisibleRangeOptionsArgs { percentRange?: pulumi.Input; } @@ -39314,6 +39722,10 @@ export namespace quicksight { name?: pulumi.Input; } + export interface DashboardValidationStrategyArgs { + mode: pulumi.Input; + } + export interface DashboardVersionDefinitionArgs { analysisDefaults?: pulumi.Input; calculatedFields?: pulumi.Input[]>; @@ -43093,6 +43505,10 @@ export namespace quicksight { name?: pulumi.Input; } + export interface TemplateValidationStrategyArgs { + mode: pulumi.Input; + } + export interface TemplateVersionDefinitionArgs { analysisDefaults?: pulumi.Input; calculatedFields?: pulumi.Input[]>; @@ -45189,41 +45605,20 @@ export namespace s3 { vpcId?: pulumi.Input; } - /** - * Specifies the days since the initiation of an incomplete multipart upload that Amazon S3 will wait before permanently removing all parts of the upload. - */ export interface BucketAbortIncompleteMultipartUploadArgs { - /** - * Specifies the number of days after which Amazon S3 aborts an incomplete multipart upload. - */ daysAfterInitiation: pulumi.Input; } export interface BucketAccelerateConfigurationArgs { - /** - * Configures the transfer acceleration state for an Amazon S3 bucket. - */ - accelerationStatus: pulumi.Input; + accelerationStatus: pulumi.Input; } - /** - * Specify this only in a cross-account scenario (where source and destination bucket owners are not the same), and you want to change replica ownership to the AWS account that owns the destination bucket. If this is not specified in the replication configuration, the replicas are owned by same AWS account that owns the source object. - */ export interface BucketAccessControlTranslationArgs { owner: pulumi.Input; } - /** - * Specifies the configuration and any analyses for the analytics filter of an Amazon S3 bucket. - */ export interface BucketAnalyticsConfigurationArgs { - /** - * The ID that identifies the analytics configuration. - */ id: pulumi.Input; - /** - * The prefix that an object must have to be included in the analytics results. - */ prefix?: pulumi.Input; storageClassAnalysis: pulumi.Input; tagFilters?: pulumi.Input[]>; @@ -45233,207 +45628,90 @@ export namespace s3 { corsRules: pulumi.Input[]>; } - /** - * A set of origins and methods (cross-origin access that you want to allow). You can add up to 100 rules to the configuration. - */ export interface BucketCorsRuleArgs { - /** - * Headers that are specified in the Access-Control-Request-Headers header. - */ allowedHeaders?: pulumi.Input[]>; - /** - * An HTTP method that you allow the origin to execute. - */ - allowedMethods: pulumi.Input[]>; - /** - * One or more origins you want customers to be able to access the bucket from. - */ + allowedMethods: pulumi.Input[]>; allowedOrigins: pulumi.Input[]>; - /** - * One or more headers in the response that you want customers to be able to access from their applications (for example, from a JavaScript XMLHttpRequest object). - */ exposedHeaders?: pulumi.Input[]>; - /** - * A unique identifier for this rule. - */ id?: pulumi.Input; - /** - * The time in seconds that your browser is to cache the preflight response for the specified resource. - */ maxAge?: pulumi.Input; } - /** - * Specifies how data related to the storage class analysis for an Amazon S3 bucket should be exported. - */ export interface BucketDataExportArgs { destination: pulumi.Input; - /** - * The version of the output schema to use when exporting data. - */ outputSchemaVersion: pulumi.Input; } - /** - * The default retention period that you want to apply to new objects placed in the specified bucket. - */ export interface BucketDefaultRetentionArgs { days?: pulumi.Input; - mode?: pulumi.Input; + mode?: pulumi.Input; years?: pulumi.Input; } export interface BucketDeleteMarkerReplicationArgs { - status?: pulumi.Input; + status?: pulumi.Input; } - /** - * Specifies information about where to publish analysis or configuration results for an Amazon S3 bucket and S3 Replication Time Control (S3 RTC). - */ export interface BucketDestinationArgs { - /** - * The account ID that owns the destination S3 bucket. - */ bucketAccountId?: pulumi.Input; - /** - * The Amazon Resource Name (ARN) of the bucket to which data is exported. - */ bucketArn: pulumi.Input; - /** - * Specifies the file format used when exporting data to Amazon S3. - */ - format: pulumi.Input; - /** - * The prefix to use when exporting data. The prefix is prepended to all results. - */ + format: pulumi.Input; prefix?: pulumi.Input; } - /** - * Specifies default encryption for a bucket using server-side encryption with either Amazon S3-managed keys (SSE-S3) or AWS KMS-managed keys (SSE-KMS). - */ export interface BucketEncryptionArgs { - /** - * Specifies the default server-side-encryption configuration. - */ serverSideEncryptionConfiguration: pulumi.Input[]>; } - /** - * Specifies encryption-related information for an Amazon S3 bucket that is a destination for replicated objects. - */ export interface BucketEncryptionConfigurationArgs { - /** - * Specifies the ID (Key ARN or Alias ARN) of the customer managed customer master key (CMK) stored in AWS Key Management Service (KMS) for the destination bucket. - */ replicaKmsKeyId: pulumi.Input; } - /** - * Describes the Amazon EventBridge notification configuration for an Amazon S3 bucket. - */ export interface BucketEventBridgeConfigurationArgs { - /** - * Specifies whether to send notifications to Amazon EventBridge when events occur in an Amazon S3 bucket. - */ - eventBridgeEnabled: pulumi.Input; + eventBridgeEnabled?: pulumi.Input; } - /** - * Specifies the Amazon S3 object key name to filter on and whether to filter on the suffix or prefix of the key name. - */ export interface BucketFilterRuleArgs { name: pulumi.Input; value: pulumi.Input; } export interface BucketIntelligentTieringConfigurationArgs { - /** - * The ID used to identify the S3 Intelligent-Tiering configuration. - */ id: pulumi.Input; - /** - * An object key name prefix that identifies the subset of objects to which the rule applies. - */ prefix?: pulumi.Input; - /** - * Specifies the status of the configuration. - */ - status: pulumi.Input; - /** - * A container for a key-value pair. - */ + status: pulumi.Input; tagFilters?: pulumi.Input[]>; - /** - * Specifies a list of S3 Intelligent-Tiering storage class tiers in the configuration. At least one tier must be defined in the list. At most, you can specify two tiers in the list, one for each available AccessTier: ARCHIVE_ACCESS and DEEP_ARCHIVE_ACCESS. - */ tierings: pulumi.Input[]>; } export interface BucketInventoryConfigurationArgs { destination: pulumi.Input; - /** - * Specifies whether the inventory is enabled or disabled. - */ enabled: pulumi.Input; - /** - * The ID used to identify the inventory configuration. - */ id: pulumi.Input; - /** - * Object versions to include in the inventory list. - */ - includedObjectVersions: pulumi.Input; - /** - * Contains the optional fields that are included in the inventory results. - */ - optionalFields?: pulumi.Input[]>; - /** - * The prefix that is prepended to all inventory results. - */ + includedObjectVersions: pulumi.Input; + optionalFields?: pulumi.Input[]>; prefix?: pulumi.Input; - /** - * Specifies the schedule for generating inventory results. - */ - scheduleFrequency: pulumi.Input; + scheduleFrequency: pulumi.Input; } - /** - * Describes the AWS Lambda functions to invoke and the events for which to invoke them. - */ export interface BucketLambdaConfigurationArgs { - /** - * The Amazon S3 bucket event for which to invoke the AWS Lambda function. - */ event: pulumi.Input; - /** - * The filtering rules that determine which objects invoke the AWS Lambda function. - */ filter?: pulumi.Input; - /** - * The Amazon Resource Name (ARN) of the AWS Lambda function that Amazon S3 invokes when the specified event type occurs. - */ function: pulumi.Input; } export interface BucketLifecycleConfigurationArgs { - /** - * A lifecycle rule for individual objects in an Amazon S3 bucket. - */ rules: pulumi.Input[]>; } export interface BucketLoggingConfigurationArgs { - /** - * The name of an Amazon S3 bucket where Amazon S3 store server access log files. You can store log files in any bucket that you own. By default, logs are stored in the bucket where the LoggingConfiguration property is defined. - */ destinationBucketName?: pulumi.Input; logFilePrefix?: pulumi.Input; } export interface BucketMetricsArgs { eventThreshold?: pulumi.Input; - status: pulumi.Input; + status: pulumi.Input; } export interface BucketMetricsConfigurationArgs { @@ -45443,41 +45721,17 @@ export namespace s3 { tagFilters?: pulumi.Input[]>; } - /** - * Container for the expiration rule that describes when noncurrent objects are expired. If your bucket is versioning-enabled (or versioning is suspended), you can set this action to request that Amazon S3 expire noncurrent object versions at a specific period in the object's lifetime - */ export interface BucketNoncurrentVersionExpirationArgs { - /** - * Specified the number of newer noncurrent and current versions that must exists before performing the associated action - */ newerNoncurrentVersions?: pulumi.Input; - /** - * Specified the number of days an object is noncurrent before Amazon S3 can perform the associated action - */ noncurrentDays: pulumi.Input; } - /** - * Container for the transition rule that describes when noncurrent objects transition to the STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER_IR, GLACIER, or DEEP_ARCHIVE storage class. If your bucket is versioning-enabled (or versioning is suspended), you can set this action to request that Amazon S3 transition noncurrent object versions to the STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER_IR, GLACIER, or DEEP_ARCHIVE storage class at a specific period in the object's lifetime. - */ export interface BucketNoncurrentVersionTransitionArgs { - /** - * Specified the number of newer noncurrent and current versions that must exists before performing the associated action - */ newerNoncurrentVersions?: pulumi.Input; - /** - * The class of storage used to store the object. - */ - storageClass: pulumi.Input; - /** - * Specifies the number of days an object is noncurrent before Amazon S3 can perform the associated action. - */ + storageClass: pulumi.Input; transitionInDays: pulumi.Input; } - /** - * Describes the notification configuration for an Amazon S3 bucket. - */ export interface BucketNotificationConfigurationArgs { eventBridgeConfiguration?: pulumi.Input; lambdaConfigurations?: pulumi.Input[]>; @@ -45485,9 +45739,6 @@ export namespace s3 { topicConfigurations?: pulumi.Input[]>; } - /** - * Specifies object key name filtering rules. - */ export interface BucketNotificationFilterArgs { s3Key: pulumi.Input; } @@ -45497,9 +45748,6 @@ export namespace s3 { rule?: pulumi.Input; } - /** - * The Object Lock rule in place for the specified object. - */ export interface BucketObjectLockRuleArgs { defaultRetention?: pulumi.Input; } @@ -45509,122 +45757,44 @@ export namespace s3 { } export interface BucketOwnershipControlsRuleArgs { - /** - * Specifies an object ownership rule. - */ - objectOwnership?: pulumi.Input; + objectOwnership?: pulumi.Input; } - /** - * Configuration that defines how Amazon S3 handles public access. - */ export interface BucketPublicAccessBlockConfigurationArgs { - /** - * Specifies whether Amazon S3 should block public access control lists (ACLs) for this bucket and objects in this bucket. Setting this element to TRUE causes the following behavior: - * - PUT Bucket acl and PUT Object acl calls fail if the specified ACL is public. - * - PUT Object calls fail if the request includes a public ACL. - * Enabling this setting doesn't affect existing policies or ACLs. - */ blockPublicAcls?: pulumi.Input; - /** - * Specifies whether Amazon S3 should block public bucket policies for this bucket. Setting this element to TRUE causes Amazon S3 to reject calls to PUT Bucket policy if the specified bucket policy allows public access. - * Enabling this setting doesn't affect existing bucket policies. - */ blockPublicPolicy?: pulumi.Input; - /** - * Specifies whether Amazon S3 should ignore public ACLs for this bucket and objects in this bucket. Setting this element to TRUE causes Amazon S3 to ignore all public ACLs on this bucket and objects in this bucket. - * Enabling this setting doesn't affect the persistence of any existing ACLs and doesn't prevent new public ACLs from being set. - */ ignorePublicAcls?: pulumi.Input; - /** - * Specifies whether Amazon S3 should restrict public bucket policies for this bucket. Setting this element to TRUE restricts access to this bucket to only AWS services and authorized users within this account if the bucket has a public policy. - * Enabling this setting doesn't affect previously stored bucket policies, except that public and cross-account access within any public bucket policy, including non-public delegation to specific accounts, is blocked. - */ restrictPublicBuckets?: pulumi.Input; } - /** - * The Amazon Simple Queue Service queues to publish messages to and the events for which to publish messages. - */ export interface BucketQueueConfigurationArgs { - /** - * The Amazon S3 bucket event about which you want to publish messages to Amazon SQS. - */ event: pulumi.Input; - /** - * The filtering rules that determine which objects trigger notifications. - */ filter?: pulumi.Input; - /** - * The Amazon Resource Name (ARN) of the Amazon SQS queue to which Amazon S3 publishes a message when it detects events of the specified type. - */ queue: pulumi.Input; } - /** - * Specifies the redirect behavior of all requests to a website endpoint of an Amazon S3 bucket. - */ export interface BucketRedirectAllRequestsToArgs { - /** - * Name of the host where requests are redirected. - */ hostName: pulumi.Input; - /** - * Protocol to use when redirecting requests. The default is the protocol that is used in the original request. - */ - protocol?: pulumi.Input; + protocol?: pulumi.Input; } - /** - * Specifies how requests are redirected. In the event of an error, you can specify a different error code to return. - */ export interface BucketRedirectRuleArgs { - /** - * The host name to use in the redirect request. - */ hostName?: pulumi.Input; - /** - * The HTTP redirect code to use on the response. Not required if one of the siblings is present. - */ httpRedirectCode?: pulumi.Input; - /** - * Protocol to use when redirecting requests. The default is the protocol that is used in the original request. - */ - protocol?: pulumi.Input; - /** - * The object key prefix to use in the redirect request. - */ + protocol?: pulumi.Input; replaceKeyPrefixWith?: pulumi.Input; - /** - * The specific object key to use in the redirect request.d - */ replaceKeyWith?: pulumi.Input; } export interface BucketReplicaModificationsArgs { - /** - * Specifies whether Amazon S3 replicates modifications on replicas. - */ - status: pulumi.Input; + status: pulumi.Input; } - /** - * A container for replication rules. You can add up to 1,000 rules. The maximum size of a replication configuration is 2 MB. - */ export interface BucketReplicationConfigurationArgs { - /** - * The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that Amazon S3 assumes when replicating objects. - */ role: pulumi.Input; - /** - * A container for one or more replication rules. - */ rules: pulumi.Input[]>; } - /** - * Specifies which Amazon S3 bucket to store replicated objects in and their storage class. - */ export interface BucketReplicationDestinationArgs { accessControlTranslation?: pulumi.Input; account?: pulumi.Input; @@ -45632,33 +45802,18 @@ export namespace s3 { encryptionConfiguration?: pulumi.Input; metrics?: pulumi.Input; replicationTime?: pulumi.Input; - /** - * The storage class to use when replicating objects, such as S3 Standard or reduced redundancy. - */ - storageClass?: pulumi.Input; + storageClass?: pulumi.Input; } - /** - * Specifies which Amazon S3 objects to replicate and where to store the replicas. - */ export interface BucketReplicationRuleArgs { deleteMarkerReplication?: pulumi.Input; destination: pulumi.Input; filter?: pulumi.Input; - /** - * A unique identifier for the rule. - */ id?: pulumi.Input; - /** - * An object key name prefix that identifies the object or objects to which the rule applies. - */ prefix?: pulumi.Input; priority?: pulumi.Input; sourceSelectionCriteria?: pulumi.Input; - /** - * Specifies whether the rule is enabled. - */ - status: pulumi.Input; + status: pulumi.Input; } export interface BucketReplicationRuleAndOperatorArgs { @@ -45673,7 +45828,7 @@ export namespace s3 { } export interface BucketReplicationTimeArgs { - status: pulumi.Input; + status: pulumi.Input; time: pulumi.Input; } @@ -45681,34 +45836,16 @@ export namespace s3 { minutes: pulumi.Input; } - /** - * Specifies the redirect behavior and when a redirect is applied. - */ export interface BucketRoutingRuleArgs { - /** - * Container for redirect information. You can redirect requests to another host, to another page, or with another protocol. In the event of an error, you can specify a different error code to return. - */ redirectRule: pulumi.Input; routingRuleCondition?: pulumi.Input; } - /** - * A container for describing a condition that must be met for the specified redirect to apply.You must specify at least one of HttpErrorCodeReturnedEquals and KeyPrefixEquals - */ export interface BucketRoutingRuleConditionArgs { - /** - * The HTTP error code when the redirect is applied. - */ httpErrorCodeReturnedEquals?: pulumi.Input; - /** - * The object key name prefix when the redirect is applied. - */ keyPrefixEquals?: pulumi.Input; } - /** - * You must specify at least one of the following properties: AbortIncompleteMultipartUpload, ExpirationDate, ExpirationInDays, NoncurrentVersionExpirationInDays, NoncurrentVersionTransition, NoncurrentVersionTransitions, Transition, or Transitions. - */ export interface BucketRuleArgs { abortIncompleteMultipartUpload?: pulumi.Input; expirationDate?: pulumi.Input; @@ -45719,71 +45856,38 @@ export namespace s3 { noncurrentVersionExpirationInDays?: pulumi.Input; noncurrentVersionTransition?: pulumi.Input; noncurrentVersionTransitions?: pulumi.Input[]>; - objectSizeGreaterThan?: pulumi.Input; - objectSizeLessThan?: pulumi.Input; + objectSizeGreaterThan?: pulumi.Input; + objectSizeLessThan?: pulumi.Input; prefix?: pulumi.Input; - status: pulumi.Input; + status: pulumi.Input; tagFilters?: pulumi.Input[]>; transition?: pulumi.Input; transitions?: pulumi.Input[]>; } - /** - * A container for object key name prefix and suffix filtering rules. - */ export interface BucketS3KeyFilterArgs { rules: pulumi.Input[]>; } - /** - * Specifies the default server-side encryption to apply to new objects in the bucket. If a PUT Object request doesn't specify any server-side encryption, this default encryption will be applied. - */ export interface BucketServerSideEncryptionByDefaultArgs { - /** - * "KMSMasterKeyID" can only be used when you set the value of SSEAlgorithm as aws:kms or aws:kms:dsse. - */ kmsMasterKeyId?: pulumi.Input; - sseAlgorithm: pulumi.Input; + sseAlgorithm: pulumi.Input; } - /** - * Specifies the default server-side encryption configuration. - */ export interface BucketServerSideEncryptionRuleArgs { - /** - * Specifies whether Amazon S3 should use an S3 Bucket Key with server-side encryption using KMS (SSE-KMS) for new objects in the bucket. Existing objects are not affected. Setting the BucketKeyEnabled element to true causes Amazon S3 to use an S3 Bucket Key. By default, S3 Bucket Key is not enabled. - */ bucketKeyEnabled?: pulumi.Input; serverSideEncryptionByDefault?: pulumi.Input; } - /** - * A container that describes additional filters for identifying the source objects that you want to replicate. - */ export interface BucketSourceSelectionCriteriaArgs { - /** - * A filter that you can specify for selection for modifications on replicas. - */ replicaModifications?: pulumi.Input; - /** - * A container for filter information for the selection of Amazon S3 objects encrypted with AWS KMS. - */ sseKmsEncryptedObjects?: pulumi.Input; } - /** - * A container for filter information for the selection of S3 objects encrypted with AWS KMS. - */ export interface BucketSseKmsEncryptedObjectsArgs { - /** - * Specifies whether Amazon S3 replicates objects created with server-side encryption using a customer master key (CMK) stored in AWS Key Management Service. - */ - status: pulumi.Input; + status: pulumi.Input; } - /** - * Specifies data related to access patterns to be collected and made available to analyze the tradeoffs between different storage classes for an Amazon S3 bucket. - */ export interface BucketStorageClassAnalysisArgs { dataExport?: pulumi.Input; } @@ -45793,73 +45897,34 @@ export namespace s3 { value: pulumi.Input; } - /** - * Tags to use to identify a subset of objects for an Amazon S3 bucket. - */ export interface BucketTagFilterArgs { key: pulumi.Input; value: pulumi.Input; } export interface BucketTieringArgs { - /** - * S3 Intelligent-Tiering access tier. See Storage class for automatically optimizing frequently and infrequently accessed objects for a list of access tiers in the S3 Intelligent-Tiering storage class. - */ - accessTier: pulumi.Input; - /** - * The number of consecutive days of no access after which an object will be eligible to be transitioned to the corresponding tier. The minimum number of days specified for Archive Access tier must be at least 90 days and Deep Archive Access tier must be at least 180 days. The maximum can be up to 2 years (730 days). - */ + accessTier: pulumi.Input; days: pulumi.Input; } - /** - * The topic to which notifications are sent and the events for which notifications are generated. - */ export interface BucketTopicConfigurationArgs { - /** - * The Amazon S3 bucket event about which to send notifications. - */ event: pulumi.Input; - /** - * The filtering rules that determine for which objects to send notifications. - */ filter?: pulumi.Input; - /** - * The Amazon Resource Name (ARN) of the Amazon SNS topic to which Amazon S3 publishes a message when it detects events of the specified type. - */ topic: pulumi.Input; } - /** - * You must specify at least one of "TransitionDate" and "TransitionInDays" - */ export interface BucketTransitionArgs { - storageClass: pulumi.Input; + storageClass: pulumi.Input; transitionDate?: pulumi.Input; transitionInDays?: pulumi.Input; } - /** - * Describes the versioning state of an Amazon S3 bucket. - */ export interface BucketVersioningConfigurationArgs { - /** - * The versioning state of the bucket. - */ - status: pulumi.Input; + status: pulumi.Input; } - /** - * Specifies website configuration parameters for an Amazon S3 bucket. - */ export interface BucketWebsiteConfigurationArgs { - /** - * The name of the error document for the website. - */ errorDocument?: pulumi.Input; - /** - * The name of the index document for the website. - */ indexDocument?: pulumi.Input; redirectAllRequestsTo?: pulumi.Input; routingRules?: pulumi.Input[]>; @@ -46306,6 +46371,10 @@ export namespace sagemaker { */ dataCapturedDestinationS3Uri: pulumi.Input; datasetFormat: pulumi.Input; + /** + * Indexes or names of the features to be excluded from analysis + */ + excludeFeaturesAttribute?: pulumi.Input; /** * Path to the filesystem where the endpoint data is available to the container. */ @@ -46423,6 +46492,10 @@ export namespace sagemaker { */ export interface DataQualityJobDefinitionEndpointInputArgs { endpointName: pulumi.Input; + /** + * Indexes or names of the features to be excluded from analysis + */ + excludeFeaturesAttribute?: pulumi.Input; /** * Path to the filesystem where the endpoint data is available to the container. */ @@ -48876,6 +48949,10 @@ export namespace sagemaker { */ dataCapturedDestinationS3Uri: pulumi.Input; datasetFormat: pulumi.Input; + /** + * Indexes or names of the features to be excluded from analysis + */ + excludeFeaturesAttribute?: pulumi.Input; /** * Path to the filesystem where the endpoint data is available to the container. */ @@ -48959,6 +49036,10 @@ export namespace sagemaker { */ export interface MonitoringScheduleEndpointInputArgs { endpointName: pulumi.Input; + /** + * Indexes or names of the features to be excluded from analysis + */ + excludeFeaturesAttribute?: pulumi.Input; /** * Path to the filesystem where the endpoint data is available to the container. */ @@ -49136,7 +49217,15 @@ export namespace sagemaker { */ export interface MonitoringScheduleScheduleConfigArgs { /** - * A cron expression that describes details about the monitoring schedule. + * Data Analysis end time, e.g. PT0H + */ + dataAnalysisEndTime?: pulumi.Input; + /** + * Data Analysis start time, e.g. -PT1H + */ + dataAnalysisStartTime?: pulumi.Input; + /** + * A cron expression or 'NOW' that describes details about the monitoring schedule. */ scheduleExpression: pulumi.Input; } diff --git a/sdk/nodejs/types/output.ts b/sdk/nodejs/types/output.ts index b34baddc5e..5146277d86 100644 --- a/sdk/nodejs/types/output.ts +++ b/sdk/nodejs/types/output.ts @@ -568,62 +568,77 @@ export namespace apigateway { value: string; } + /** + * The ``AccessLogSetting`` property type specifies settings for logging access in this stage. + * ``AccessLogSetting`` is a property of the [StageDescription](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html) property type. + */ export interface DeploymentAccessLogSetting { /** - * The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with amazon-apigateway-. + * The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with ``amazon-apigateway-``. */ destinationArn?: string; /** - * A single line format of the access logs of data, as specified by selected $context variables. The format must include at least $context.requestId. + * A single line format of the access logs of data, as specified by selected $context variables. The format must include at least ``$context.requestId``. */ format?: string; } + /** + * The ``CanarySetting`` property type specifies settings for the canary deployment in this stage. + * ``CanarySetting`` is a property of the [StageDescription](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html) property type. + */ export interface DeploymentCanarySetting { /** * The percent (0-100) of traffic diverted to a canary deployment. */ percentTraffic?: number; /** - * Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values. + * Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values. */ stageVariableOverrides?: any; /** - * Whether the canary deployment uses the stage cache or not. + * A Boolean flag to indicate whether the canary deployment uses the stage cache or not. */ useStageCache?: boolean; } + /** + * The ``DeploymentCanarySettings`` property type specifies settings for the canary deployment. + */ export interface DeploymentCanarySettings { /** - * The percentage (0-100) of traffic diverted to a canary deployment. + * The percentage (0.0-100.0) of traffic routed to the canary deployment. */ percentTraffic?: number; /** - * Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values. Duplicates are not allowed. + * A stage variable overrides used for the canary release deployment. They can override existing stage variables or add new stage variables for the canary release deployment. These stage variables are represented as a string-to-string map between stage variable names and their values. */ stageVariableOverrides?: any; /** - * Whether the canary deployment uses the stage cache. + * A Boolean flag to indicate whether the canary release deployment uses the stage cache or not. */ useStageCache?: boolean; } + /** + * The ``MethodSetting`` property type configures settings for all methods in a stage. + * The ``MethodSettings`` property of the [Amazon API Gateway Deployment StageDescription](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html) property type contains a list of ``MethodSetting`` property types. + */ export interface DeploymentMethodSetting { /** - * Indicates whether the cached responses are encrypted + * Specifies whether the cached responses are encrypted. */ cacheDataEncrypted?: boolean; /** - * The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. + * Specifies the time to live (TTL), in seconds, for cached responses. The higher the TTL, the longer the response will be cached. */ cacheTtlInSeconds?: number; /** - * Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses. + * Specifies whether responses should be cached and returned for requests. A cache cluster must be enabled on the stage for responses to be cached. */ cachingEnabled?: boolean; /** - * Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs. + * Specifies whether data trace logging is enabled for this method, which affects the log entries pushed to Amazon CloudWatch Logs. This can be useful to troubleshoot APIs, but can result in logging sensitive data. We recommend that you don't enable this option for production APIs. */ dataTraceEnabled?: boolean; /** @@ -631,50 +646,53 @@ export namespace apigateway { */ httpMethod?: string; /** - * The logging level for this method. For valid values, see the loggingLevel property of the Stage resource in the Amazon API Gateway API Reference. + * Specifies the logging level for this method, which affects the log entries pushed to Amazon CloudWatch Logs. Valid values are ``OFF``, ``ERROR``, and ``INFO``. Choose ``ERROR`` to write only error-level entries to CloudWatch Logs, or choose ``INFO`` to include all ``ERROR`` events as well as extra informational events. */ loggingLevel?: string; /** - * Indicates whether Amazon CloudWatch metrics are enabled for methods in the stage. + * Specifies whether Amazon CloudWatch metrics are enabled for this method. */ metricsEnabled?: boolean; /** - * The resource path for this method. Forward slashes (/) are encoded as ~1 and the initial slash must include a forward slash. + * The resource path for this method. Forward slashes (``/``) are encoded as ``~1`` and the initial slash must include a forward slash. For example, the path value ``/resource/subresource`` must be encoded as ``/~1resource~1subresource``. To specify the root path, use only a slash (``/``). */ resourcePath?: string; /** - * The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. + * Specifies the throttling burst limit. */ throttlingBurstLimit?: number; /** - * The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. + * Specifies the throttling rate limit. */ throttlingRateLimit?: number; } + /** + * ``StageDescription`` is a property of the [AWS::ApiGateway::Deployment](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-deployment.html) resource that configures a deployment stage. + */ export interface DeploymentStageDescription { /** * Specifies settings for logging access in this stage. */ accessLogSetting?: outputs.apigateway.DeploymentAccessLogSetting; /** - * Indicates whether cache clustering is enabled for the stage. + * Specifies whether a cache cluster is enabled for the stage. */ cacheClusterEnabled?: boolean; /** - * The size of the stage's cache cluster. + * The size of the stage's cache cluster. For more information, see [cacheClusterSize](https://docs.aws.amazon.com/apigateway/latest/api/API_CreateStage.html#apigw-CreateStage-request-cacheClusterSize) in the *API Gateway API Reference*. */ cacheClusterSize?: string; /** - * The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. + * Indicates whether the cached responses are encrypted. */ cacheDataEncrypted?: boolean; /** - * The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. + * The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. */ cacheTtlInSeconds?: number; /** - * Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses. + * Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses. For more information, see [Enable API Gateway Caching in a Stage to Enhance API Performance](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html) in the *API Gateway Developer Guide*. */ cachingEnabled?: boolean; /** @@ -682,11 +700,11 @@ export namespace apigateway { */ canarySetting?: outputs.apigateway.DeploymentCanarySetting; /** - * The identifier of the client certificate that API Gateway uses to call your integration endpoints in the stage. + * The identifier of the client certificate that API Gateway uses to call your integration endpoints in the stage. */ clientCertificateId?: string; /** - * Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs. + * Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs. */ dataTraceEnabled?: boolean; /** @@ -698,7 +716,7 @@ export namespace apigateway { */ documentationVersion?: string; /** - * The logging level for this method. For valid values, see the loggingLevel property of the Stage resource in the Amazon API Gateway API Reference. + * The logging level for this method. For valid values, see the ``loggingLevel`` property of the [MethodSetting](https://docs.aws.amazon.com/apigateway/latest/api/API_MethodSetting.html) resource in the *Amazon API Gateway API Reference*. */ loggingLevel?: string; /** @@ -714,19 +732,20 @@ export namespace apigateway { */ tags?: outputs.apigateway.DeploymentTag[]; /** - * The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. + * The target request burst rate limit. This allows more requests through for a period of time than the target rate limit. For more information, see [Manage API Request Throttling](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-request-throttling.html) in the *API Gateway Developer Guide*. */ throttlingBurstLimit?: number; /** - * The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. + * The target request steady-state rate limit. For more information, see [Manage API Request Throttling](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-request-throttling.html) in the *API Gateway Developer Guide*. */ throttlingRateLimit?: number; /** * Specifies whether active tracing with X-ray is enabled for this stage. + * For more information, see [Trace API Gateway API Execution with X-Ray](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-xray.html) in the *API Gateway Developer Guide*. */ tracingEnabled?: boolean; /** - * A map that defines the stage variables. Variable names must consist of alphanumeric characters, and the values must match the following regular expression: [A-Za-z0-9-._~:/?#&=,]+. + * A map that defines the stage variables. Variable names must consist of alphanumeric characters, and the values must match the following regular expression: ``[A-Za-z0-9-._~:/?#&=,]+``. */ variables?: any; } @@ -742,25 +761,29 @@ export namespace apigateway { value: string; } + /** + * The ``Location`` property specifies the location of the Amazon API Gateway API entity that the documentation applies to. ``Location`` is a property of the [AWS::ApiGateway::DocumentationPart](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationpart.html) resource. + * For more information about each property, including constraints and valid values, see [DocumentationPart](https://docs.aws.amazon.com/apigateway/latest/api/API_DocumentationPartLocation.html) in the *Amazon API Gateway REST API Reference*. + */ export interface DocumentationPartLocation { /** - * The HTTP verb of a method. + * The HTTP verb of a method. It is a valid field for the API entity types of ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``*`` for any method. When an applicable child entity inherits the content of an entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``method`` attribute must match that of the parent entity exactly. */ method?: string; /** - * The name of the targeted API entity. + * The name of the targeted API entity. It is a valid and required field for the API entity types of ``AUTHORIZER``, ``MODEL``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY`` and ``RESPONSE_HEADER``. It is an invalid field for any other entity type. */ name?: string; /** - * The URL path of the target. + * The URL path of the target. It is a valid field for the API entity types of ``RESOURCE``, ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``/`` for the root resource. When an applicable child entity inherits the content of another entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``path`` attribute must match that of the parent entity as a prefix. */ path?: string; /** - * The HTTP status code of a response. + * The HTTP status code of a response. It is a valid field for the API entity types of ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``*`` for any status code. When an applicable child entity inherits the content of an entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``statusCode`` attribute must match that of the parent entity exactly. */ statusCode?: string; /** - * The type of API entity that the documentation content applies to. + * The type of API entity to which the documentation content applies. Valid values are ``API``, ``AUTHORIZER``, ``MODEL``, ``RESOURCE``, ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. Content inheritance does not apply to any entity of the ``API``, ``AUTHORIZER``, ``METHOD``, ``MODEL``, ``REQUEST_BODY``, or ``RESOURCE`` type. */ type?: enums.apigateway.DocumentationPartLocationType; } @@ -779,112 +802,151 @@ export namespace apigateway { value?: string; } + /** + * ``Integration`` is a property of the [AWS::ApiGateway::Method](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html) resource that specifies information about the target backend that a method calls. + */ export interface MethodIntegration { /** - * A list of request parameters whose values API Gateway caches. + * A list of request parameters whose values API Gateway caches. To be valid values for ``cacheKeyParameters``, these parameters must also be specified for Method ``requestParameters``. */ cacheKeyParameters?: string[]; /** - * An API-specific tag group of related cached parameters. + * Specifies a group of related cached parameters. By default, API Gateway uses the resource ID as the ``cacheNamespace``. You can specify the same ``cacheNamespace`` across resources to return the same cached data for requests to different resources. */ cacheNamespace?: string; /** - * The ID of the VpcLink used for the integration when connectionType=VPC_LINK, otherwise undefined. + * The ID of the VpcLink used for the integration when ``connectionType=VPC_LINK`` and undefined, otherwise. */ connectionId?: string; /** - * The type of the network connection to the integration endpoint. + * The type of the network connection to the integration endpoint. The valid value is ``INTERNET`` for connections through the public routable internet or ``VPC_LINK`` for private connections between API Gateway and a network load balancer in a VPC. The default value is ``INTERNET``. */ connectionType?: enums.apigateway.MethodIntegrationConnectionType; /** - * Specifies how to handle request payload content type conversions. + * Specifies how to handle request payload content type conversions. Supported values are ``CONVERT_TO_BINARY`` and ``CONVERT_TO_TEXT``, with the following behaviors: + * If this property is not defined, the request payload will be passed through from the method request to integration request without modification, provided that the ``passthroughBehavior`` is configured to support payload pass-through. */ contentHandling?: enums.apigateway.MethodIntegrationContentHandling; /** - * The credentials that are required for the integration. + * Specifies the credentials required for the integration, if any. For AWS integrations, three options are available. To specify an IAM Role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To require that the caller's identity be passed through from the request, specify the string ``arn:aws:iam::\*:user/\*``. To use resource-based permissions on supported AWS services, specify null. */ credentials?: string; /** - * The integration's HTTP method type. + * Specifies the integration's HTTP method type. For the Type property, if you specify ``MOCK``, this property is optional. For Lambda integrations, you must set the integration method to ``POST``. For all other types, you must specify this property. */ integrationHttpMethod?: string; /** - * The response that API Gateway provides after a method's backend completes processing a request. + * Specifies the integration's responses. */ integrationResponses?: outputs.apigateway.MethodIntegrationResponse[]; /** - * Indicates when API Gateway passes requests to the targeted backend. + * Specifies how the method request body of an unmapped content type will be passed through the integration request to the back end without transformation. A content type is unmapped if no mapping template is defined in the integration or the content type does not match any of the mapped content types, as specified in ``requestTemplates``. The valid value is one of the following: ``WHEN_NO_MATCH``: passes the method request body through the integration request to the back end without transformation when the method request content type does not match any content type associated with the mapping templates defined in the integration request. ``WHEN_NO_TEMPLATES``: passes the method request body through the integration request to the back end without transformation when no mapping template is defined in the integration request. If a template is defined when this option is selected, the method request of an unmapped content-type will be rejected with an HTTP 415 Unsupported Media Type response. ``NEVER``: rejects the method request with an HTTP 415 Unsupported Media Type response when either the method request content type does not match any content type associated with the mapping templates defined in the integration request or no mapping template is defined in the integration request. */ passthroughBehavior?: enums.apigateway.MethodIntegrationPassthroughBehavior; /** - * The request parameters that API Gateway sends with the backend request. + * A key-value map specifying request parameters that are passed from the method request to the back end. The key is an integration request parameter name and the associated value is a method request parameter value or static value that must be enclosed within single quotes and pre-encoded as required by the back end. The method request parameter value must match the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and ``name`` must be a valid and unique method request parameter name. */ requestParameters?: any; /** - * A map of Apache Velocity templates that are applied on the request payload. + * Represents a map of Velocity templates that are applied on the request payload based on the value of the Content-Type header sent by the client. The content type value is the key in this map, and the template (as a String) is the value. */ requestTemplates?: any; /** - * Custom timeout between 50 and 29,000 milliseconds. + * Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds or 29 seconds. */ timeoutInMillis?: number; /** - * The type of backend that your method is running. + * Specifies an API method integration type. The valid value is one of the following: + * For the HTTP and HTTP proxy integrations, each integration can specify a protocol (``http/https``), port and path. Standard 80 and 443 ports are supported as well as custom ports above 1024. An HTTP or HTTP proxy integration with a ``connectionType`` of ``VPC_LINK`` is referred to as a private integration and uses a VpcLink to connect API Gateway to a network load balancer of a VPC. */ type: enums.apigateway.MethodIntegrationType; /** - * The Uniform Resource Identifier (URI) for the integration. + * Specifies Uniform Resource Identifier (URI) of the integration endpoint. + * For ``HTTP`` or ``HTTP_PROXY`` integrations, the URI must be a fully formed, encoded HTTP(S) URL according to the RFC-3986 specification for standard integrations. If ``connectionType`` is ``VPC_LINK`` specify the Network Load Balancer DNS name. For ``AWS`` or ``AWS_PROXY`` integrations, the URI is of the form ``arn:aws:apigateway:{region}:{subdomain.service|service}:path|action/{service_api}``. Here, {Region} is the API Gateway region (e.g., us-east-1); {service} is the name of the integrated AWS service (e.g., s3); and {subdomain} is a designated subdomain supported by certain AWS service for fast host-name lookup. action can be used for an AWS service action-based API, using an Action={name}&{p1}={v1}&p2={v2}... query string. The ensuing {service_api} refers to a supported action {name} plus any required input parameters. Alternatively, path can be used for an AWS service path-based API. The ensuing service_api refers to the path to an AWS service resource, including the region of the integrated AWS service, if applicable. For example, for integration with the S3 API of GetObject, the uri can be either ``arn:aws:apigateway:us-west-2:s3:action/GetObject&Bucket={bucket}&Key={key}`` or ``arn:aws:apigateway:us-west-2:s3:path/{bucket}/{key}`` */ uri?: string; } + /** + * ``IntegrationResponse`` is a property of the [Amazon API Gateway Method Integration](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html) property type that specifies the response that API Gateway sends after a method's backend finishes processing a request. + */ export interface MethodIntegrationResponse { /** - * Specifies how to handle request payload content type conversions. + * Specifies how to handle response payload content type conversions. Supported values are ``CONVERT_TO_BINARY`` and ``CONVERT_TO_TEXT``, with the following behaviors: + * If this property is not defined, the response payload will be passed through from the integration response to the method response without modification. */ contentHandling?: enums.apigateway.MethodIntegrationResponseContentHandling; /** - * The response parameters from the backend response that API Gateway sends to the method response. + * A key-value map specifying response parameters that are passed to the method response from the back end. The key is a method response header parameter name and the mapped value is an integration response header value, a static value enclosed within a pair of single quotes, or a JSON expression from the integration response body. The mapping key must match the pattern of ``method.response.header.{name}``, where ``name`` is a valid and unique header name. The mapped non-static value must match the pattern of ``integration.response.header.{name}`` or ``integration.response.body.{JSON-expression}``, where ``name`` is a valid and unique response header name and ``JSON-expression`` is a valid JSON expression without the ``$`` prefix. */ responseParameters?: any; /** - * The templates that are used to transform the integration response body. Specify templates as key-value pairs (string-to-string mappings), with a content type as the key and a template as the value. + * Specifies the templates used to transform the integration response body. Response templates are represented as a key/value map, with a content-type as the key and a template as the value. */ responseTemplates?: any; /** - * A regular expression that specifies which error strings or status codes from the backend map to the integration response. + * Specifies the regular expression (regex) pattern used to choose an integration response based on the response from the back end. For example, if the success response returns nothing and the error response returns some string, you could use the ``.+`` regex to match error response. However, make sure that the error response does not contain any newline (``\n``) character in such cases. If the back end is an LAMlong function, the LAMlong function error header is matched. For all other HTTP and AWS back ends, the HTTP status code is matched. */ selectionPattern?: string; /** - * The status code that API Gateway uses to map the integration response to a MethodResponse status code. + * Specifies the status code that is used to map the integration response to an existing MethodResponse. */ statusCode: string; } + /** + * Represents a method response of a given HTTP status code returned to the client. The method response is passed from the back end through the associated integration response that can be transformed using a mapping template. + */ export interface MethodResponse { /** - * The resources used for the response's content type. Specify response models as key-value pairs (string-to-string maps), with a content type as the key and a Model resource name as the value. + * Specifies the Model resources used for the response's content-type. Response models are represented as a key/value map, with a content-type as the key and a Model name as the value. */ responseModels?: any; /** - * Response parameters that API Gateway sends to the client that called a method. Specify response parameters as key-value pairs (string-to-Boolean maps), with a destination as the key and a Boolean as the value. + * A key-value map specifying required or optional response parameters that API Gateway can send back to the caller. A key defines a method response header and the value specifies whether the associated method response header is required or not. The expression of the key must match the pattern ``method.response.header.{name}``, where ``name`` is a valid and unique header name. API Gateway passes certain integration response data to the method response headers specified here according to the mapping you prescribe in the API's IntegrationResponse. The integration response data that can be mapped include an integration response header expressed in ``integration.response.header.{name}``, a static value enclosed within a pair of single quotes (e.g., ``'application/json'``), or a JSON expression from the back-end response payload in the form of ``integration.response.body.{JSON-expression}``, where ``JSON-expression`` is a valid JSON expression without the ``$`` prefix.) */ responseParameters?: any; /** - * The method response's status code, which you map to an IntegrationResponse. + * The method response's status code. */ statusCode: string; } + /** + * The ``EndpointConfiguration`` property type specifies the endpoint types of a REST API. + * ``EndpointConfiguration`` is a property of the [AWS::ApiGateway::RestApi](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html) resource. + */ export interface RestApiEndpointConfiguration { + /** + * A list of endpoint types of an API (RestApi) or its custom domain name (DomainName). For an edge-optimized API and its custom domain name, the endpoint type is ``"EDGE"``. For a regional API and its custom domain name, the endpoint type is ``REGIONAL``. For a private API, the endpoint type is ``PRIVATE``. + */ types?: string[]; + /** + * A list of VpcEndpointIds of an API (RestApi) against which to create Route53 ALIASes. It is only supported for ``PRIVATE`` endpoint type. + */ vpcEndpointIds?: string[]; } + /** + * ``S3Location`` is a property of the [AWS::ApiGateway::RestApi](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html) resource that specifies the Amazon S3 location of a OpenAPI (formerly Swagger) file that defines a set of RESTful APIs in JSON or YAML. + * On January 1, 2016, the Swagger Specification was donated to the [OpenAPI initiative](https://docs.aws.amazon.com/https://www.openapis.org/), becoming the foundation of the OpenAPI Specification. + */ export interface RestApiS3Location { + /** + * The name of the S3 bucket where the OpenAPI file is stored. + */ bucket?: string; + /** + * The Amazon S3 ETag (a file checksum) of the OpenAPI file. If you don't specify a value, API Gateway skips ETag validation of your OpenAPI file. + */ eTag?: string; + /** + * The file name of the OpenAPI file (Amazon S3 object name). + */ key?: string; + /** + * For versioning-enabled buckets, a specific version of the OpenAPI file. + */ version?: string; } @@ -894,29 +956,30 @@ export namespace apigateway { } /** - * Specifies settings for logging access in this stage. + * The ``AccessLogSetting`` property type specifies settings for logging access in this stage. + * ``AccessLogSetting`` is a property of the [AWS::ApiGateway::Stage](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html) resource. */ export interface StageAccessLogSetting { /** - * The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with amazon-apigateway-. This parameter is required to enable access logging. + * The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with ``amazon-apigateway-``. This parameter is required to enable access logging. */ destinationArn?: string; /** - * A single line format of the access logs of data, as specified by selected $context variables (https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html#context-variable-reference). The format must include at least $context.requestId. This parameter is required to enable access logging. + * A single line format of the access logs of data, as specified by selected [$context variables](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html#context-variable-reference). The format must include at least ``$context.requestId``. This parameter is required to enable access logging. */ format?: string; } /** - * Specifies settings for the canary deployment in this stage. + * Configuration settings of a canary deployment. */ export interface StageCanarySetting { /** - * The identifier of the deployment that the stage points to. + * The ID of the canary deployment. */ deploymentId?: string; /** - * The percentage (0-100) of traffic diverted to a canary deployment. + * The percent (0-100) of traffic diverted to a canary deployment. */ percentTraffic?: number; /** @@ -924,53 +987,54 @@ export namespace apigateway { */ stageVariableOverrides?: any; /** - * Whether the canary deployment uses the stage cache or not. + * A Boolean flag to indicate whether the canary deployment uses the stage cache or not. */ useStageCache?: boolean; } /** - * Configures settings for all methods in a stage. + * The ``MethodSetting`` property type configures settings for all methods in a stage. + * The ``MethodSettings`` property of the ``AWS::ApiGateway::Stage`` resource contains a list of ``MethodSetting`` property types. */ export interface StageMethodSetting { /** - * Indicates whether the cached responses are encrypted. + * Specifies whether the cached responses are encrypted. */ cacheDataEncrypted?: boolean; /** - * The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. + * Specifies the time to live (TTL), in seconds, for cached responses. The higher the TTL, the longer the response will be cached. */ cacheTtlInSeconds?: number; /** - * Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses. + * Specifies whether responses should be cached and returned for requests. A cache cluster must be enabled on the stage for responses to be cached. */ cachingEnabled?: boolean; /** - * Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs. + * Specifies whether data trace logging is enabled for this method, which affects the log entries pushed to Amazon CloudWatch Logs. This can be useful to troubleshoot APIs, but can result in logging sensitive data. We recommend that you don't enable this option for production APIs. */ dataTraceEnabled?: boolean; /** - * The HTTP method. You can use an asterisk (*) as a wildcard to apply method settings to multiple methods. + * The HTTP method. To apply settings to multiple resources and methods, specify an asterisk (``*``) for the ``HttpMethod`` and ``/*`` for the ``ResourcePath``. This parameter is required when you specify a ``MethodSetting``. */ httpMethod?: string; /** - * The logging level for this method. For valid values, see the loggingLevel property of the Stage (https://docs.aws.amazon.com/apigateway/api-reference/resource/stage/#loggingLevel) resource in the Amazon API Gateway API Reference. + * Specifies the logging level for this method, which affects the log entries pushed to Amazon CloudWatch Logs. Valid values are ``OFF``, ``ERROR``, and ``INFO``. Choose ``ERROR`` to write only error-level entries to CloudWatch Logs, or choose ``INFO`` to include all ``ERROR`` events as well as extra informational events. */ loggingLevel?: string; /** - * Indicates whether Amazon CloudWatch metrics are enabled for methods in the stage. + * Specifies whether Amazon CloudWatch metrics are enabled for this method. */ metricsEnabled?: boolean; /** - * The resource path for this method. Forward slashes (/) are encoded as ~1 and the initial slash must include a forward slash. For example, the path value /resource/subresource must be encoded as /~1resource~1subresource. To specify the root path, use only a slash (/). You can use an asterisk (*) as a wildcard to apply method settings to multiple methods. + * The resource path for this method. Forward slashes (``/``) are encoded as ``~1`` and the initial slash must include a forward slash. For example, the path value ``/resource/subresource`` must be encoded as ``/~1resource~1subresource``. To specify the root path, use only a slash (``/``). To apply settings to multiple resources and methods, specify an asterisk (``*``) for the ``HttpMethod`` and ``/*`` for the ``ResourcePath``. This parameter is required when you specify a ``MethodSetting``. */ resourcePath?: string; /** - * The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. + * Specifies the throttling burst limit. */ throttlingBurstLimit?: number; /** - * The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. + * Specifies the throttling rate limit. */ throttlingRateLimit?: number; } @@ -1207,9 +1271,18 @@ export namespace apigatewayv2 { } export namespace appconfig { + /** + * Metadata to assign to the application. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define. + */ export interface ApplicationTags { - key?: string; - value?: string; + /** + * The key-value string map. The valid character set is [a-zA-Z1-9+-=._:/]. The tag key can be up to 128 characters and must not start with aws:. + */ + key: string; + /** + * The tag value can be up to 256 characters. + */ + value: string; } export interface ConfigurationProfileTags { @@ -3973,17 +4046,41 @@ export namespace appsync { relationalDatabaseSourceType: string; } + /** + * Describes a runtime used by an AWS AppSync pipeline resolver or AWS AppSync function. Specifies the name and version of the runtime to use. Note that if a runtime is specified, code must also be specified. + */ export interface FunctionConfigurationAppSyncRuntime { + /** + * The name of the runtime to use. Currently, the only allowed value is APPSYNC_JS. + */ name: string; + /** + * The version of the runtime to use. Currently, the only allowed version is 1.0.0. + */ runtimeVersion: string; } + /** + * The LambdaConflictHandlerConfig when configuring LAMBDA as the Conflict Handler. + */ export interface FunctionConfigurationLambdaConflictHandlerConfig { + /** + * The Amazon Resource Name (ARN) for the Lambda function to use as the Conflict Handler. + */ lambdaConflictHandlerArn?: string; } + /** + * Describes a Sync configuration for a resolver. Specifies which Conflict Detection strategy and Resolution strategy to use when the resolver is invoked. + */ export interface FunctionConfigurationSyncConfig { + /** + * The Conflict Detection strategy to use. + */ conflictDetection: string; + /** + * The Conflict Resolution strategy to perform in the event of a conflict. + */ conflictHandler?: string; lambdaConflictHandlerConfig?: outputs.appsync.FunctionConfigurationLambdaConflictHandlerConfig; } @@ -7247,8 +7344,8 @@ export namespace codestarnotifications { export namespace cognito { export interface IdentityPoolCognitoIdentityProvider { - clientId: string; - providerName: string; + clientId?: string; + providerName?: string; serverSideTokenCheck?: boolean; } @@ -7263,20 +7360,6 @@ export namespace cognito { roleArn?: string; } - /** - * A key-value pair to associate with a resource. - */ - export interface IdentityPoolTag { - /** - * The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. - */ - key: string; - /** - * The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. - */ - value: string; - } - export interface LogDeliveryConfigurationCloudWatchLogsConfiguration { logGroupArn?: string; } @@ -9479,6 +9562,171 @@ export namespace customerprofiles { uri: string; } + /** + * Configures information about the AttributeTypesSelector where the rule-based identity resolution uses to match profiles. + */ + export interface DomainAttributeTypesSelector { + /** + * The Address type. You can choose from Address, BusinessAddress, MaillingAddress, and ShippingAddress. You only can use the Address type in the MatchingRule. For example, if you want to match profile based on BusinessAddress.City or MaillingAddress.City, you need to choose the BusinessAddress and the MaillingAddress to represent the Address type and specify the Address.City on the matching rule. + */ + address?: string[]; + /** + * Configures the AttributeMatchingModel, you can either choose ONE_TO_ONE or MANY_TO_MANY. + */ + attributeMatchingModel: enums.customerprofiles.DomainAttributeTypesSelectorAttributeMatchingModel; + /** + * The Email type. You can choose from EmailAddress, BusinessEmailAddress and PersonalEmailAddress. You only can use the EmailAddress type in the MatchingRule. For example, if you want to match profile based on PersonalEmailAddress or BusinessEmailAddress, you need to choose the PersonalEmailAddress and the BusinessEmailAddress to represent the EmailAddress type and only specify the EmailAddress on the matching rule. + */ + emailAddress?: string[]; + /** + * The PhoneNumber type. You can choose from PhoneNumber, HomePhoneNumber, and MobilePhoneNumber. You only can use the PhoneNumber type in the MatchingRule. For example, if you want to match a profile based on Phone or HomePhone, you need to choose the Phone and the HomePhone to represent the PhoneNumber type and only specify the PhoneNumber on the matching rule. + */ + phoneNumber?: string[]; + } + + /** + * Configuration information about the auto-merging process. + */ + export interface DomainAutoMerging { + conflictResolution?: outputs.customerprofiles.DomainConflictResolution; + consolidation?: outputs.customerprofiles.DomainConsolidation; + /** + * The flag that enables the auto-merging of duplicate profiles. + */ + enabled: boolean; + /** + * A number between 0 and 1 that represents the minimum confidence score required for profiles within a matching group to be merged during the auto-merge process. A higher score means higher similarity required to merge profiles. + */ + minAllowedConfidenceScoreForMerging?: number; + } + + /** + * How the auto-merging process should resolve conflicts between different profiles. For example, if Profile A and Profile B have the same FirstName and LastName (and that is the matching criteria), which EmailAddress should be used? + */ + export interface DomainConflictResolution { + /** + * How the auto-merging process should resolve conflicts between different profiles. + */ + conflictResolvingModel: enums.customerprofiles.DomainConflictResolutionConflictResolvingModel; + /** + * The ObjectType name that is used to resolve profile merging conflicts when choosing SOURCE as the ConflictResolvingModel. + */ + sourceName?: string; + } + + /** + * A list of matching attributes that represent matching criteria. If two profiles meet at least one of the requirements in the matching attributes list, they will be merged. + */ + export interface DomainConsolidation { + /** + * A list of matching criteria. + */ + matchingAttributesList: string[][]; + } + + /** + * Configuration information for exporting Identity Resolution results, for example, to an S3 bucket. + */ + export interface DomainExportingConfig { + s3Exporting?: outputs.customerprofiles.DomainS3ExportingConfig; + } + + /** + * The day and time when do you want to start the Identity Resolution Job every week. + */ + export interface DomainJobSchedule { + /** + * The day when the Identity Resolution Job should run every week. + */ + dayOfTheWeek: enums.customerprofiles.DomainJobScheduleDayOfTheWeek; + /** + * The time when the Identity Resolution Job should run every week. + */ + time: string; + } + + /** + * The process of matching duplicate profiles. If Matching = true, Amazon Connect Customer Profiles starts a weekly batch process called Identity Resolution Job. If you do not specify a date and time for Identity Resolution Job to run, by default it runs every Saturday at 12AM UTC to detect duplicate profiles in your domains. After the Identity Resolution Job completes, use the GetMatches API to return and review the results. Or, if you have configured ExportingConfig in the MatchingRequest, you can download the results from S3. + */ + export interface DomainMatching { + autoMerging?: outputs.customerprofiles.DomainAutoMerging; + /** + * The flag that enables the matching process of duplicate profiles. + */ + enabled: boolean; + exportingConfig?: outputs.customerprofiles.DomainExportingConfig; + jobSchedule?: outputs.customerprofiles.DomainJobSchedule; + } + + /** + * Specifies how does the rule-based matching process should match profiles. + */ + export interface DomainMatchingRule { + rule: string[]; + } + + /** + * The process of matching duplicate profiles using the Rule-Based matching. If RuleBasedMatching = true, Amazon Connect Customer Profiles will start to match and merge your profiles according to your configuration in the RuleBasedMatchingRequest. You can use the ListRuleBasedMatches and GetSimilarProfiles API to return and review the results. Also, if you have configured ExportingConfig in the RuleBasedMatchingRequest, you can download the results from S3. + */ + export interface DomainRuleBasedMatching { + attributeTypesSelector?: outputs.customerprofiles.DomainAttributeTypesSelector; + conflictResolution?: outputs.customerprofiles.DomainConflictResolution; + /** + * The flag that enables the rule-based matching process of duplicate profiles. + */ + enabled: boolean; + exportingConfig?: outputs.customerprofiles.DomainExportingConfig; + /** + * Configures how the rule-based matching process should match profiles. You can have up to 15 MatchingRule in the MatchingRules. + */ + matchingRules?: outputs.customerprofiles.DomainMatchingRule[]; + /** + * Indicates the maximum allowed rule level for matching. + */ + maxAllowedRuleLevelForMatching?: number; + /** + * Indicates the maximum allowed rule level for merging. + */ + maxAllowedRuleLevelForMerging?: number; + status?: enums.customerprofiles.DomainRuleBasedMatchingStatus; + } + + /** + * The S3 location where Identity Resolution Jobs write result files. + */ + export interface DomainS3ExportingConfig { + /** + * The name of the S3 bucket where Identity Resolution Jobs write result files. + */ + s3BucketName: string; + /** + * The S3 key name of the location where Identity Resolution Jobs write result files. + */ + s3KeyName?: string; + } + + /** + * Usage-specific statistics about the domain. + */ + export interface DomainStats { + /** + * The number of profiles that you are currently paying for in the domain. If you have more than 100 objects associated with a single profile, that profile counts as two profiles. If you have more than 200 objects, that profile counts as three, and so on. + */ + meteringProfileCount?: number; + /** + * The total number of objects in domain. + */ + objectCount?: number; + /** + * The total number of profiles currently in the domain. + */ + profileCount?: number; + /** + * The total size, in bytes, of all objects in the domain. + */ + totalSize?: number; + } + export interface DomainTag { key: string; value: string; @@ -16286,6 +16534,60 @@ export namespace emrserverless { } export namespace entityresolution { + export interface IdMappingWorkflowIdMappingTechniques { + idMappingType?: enums.entityresolution.IdMappingWorkflowIdMappingTechniquesIdMappingType; + providerProperties?: outputs.entityresolution.IdMappingWorkflowProviderProperties; + } + + export interface IdMappingWorkflowInputSource { + /** + * An Glue table ARN for the input source table + */ + inputSourceArn: string; + schemaArn: string; + } + + export interface IdMappingWorkflowIntermediateSourceConfiguration { + /** + * The s3 path that would be used to stage the intermediate data being generated during workflow execution. + */ + intermediateS3Path: string; + } + + export interface IdMappingWorkflowOutputSource { + kmsArn?: string; + /** + * The S3 path to which Entity Resolution will write the output table + */ + outputS3Path: string; + } + + export interface IdMappingWorkflowProviderProperties { + intermediateSourceConfiguration?: outputs.entityresolution.IdMappingWorkflowIntermediateSourceConfiguration; + /** + * Additional Provider configuration that would be required for the provider service. The Configuration must be in JSON string format + */ + providerConfiguration?: any; + /** + * Arn of the Provider Service being used. + */ + providerServiceArn: string; + } + + /** + * A key-value pair to associate with a resource + */ + export interface IdMappingWorkflowTag { + /** + * The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. + */ + key: string; + /** + * The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. + */ + value: string; + } + export interface MatchingWorkflowInputSource { applyNormalization?: boolean; /** @@ -16546,7 +16848,6 @@ export namespace events { dbUser?: string; secretManagerArn?: string; sql?: string; - sqls?: string[]; statementName?: string; withEvent?: boolean; } @@ -19266,7 +19567,13 @@ export namespace healthlake { export namespace iam { export interface GroupPolicy { - policyDocument: any; + /** + * The policy document. + */ + policyDocument: string; + /** + * The friendly name (not ARN) identifying the policy. + */ policyName: string; } @@ -20403,6 +20710,11 @@ export namespace iot { action: enums.iot.MitigationActionUpdateDeviceCertificateParamsAction; } + export interface PolicyTag { + key: string; + value: string; + } + /** * Configuration for pre-signed S3 URLs. */ @@ -31054,6 +31366,120 @@ export namespace msk { revision?: number; } + /** + * Details of an Amazon MSK cluster. + */ + export interface ReplicatorAmazonMskCluster { + /** + * The ARN of an Amazon MSK cluster. + */ + mskClusterArn: string; + } + + /** + * Configuration relating to consumer group replication. + */ + export interface ReplicatorConsumerGroupReplication { + /** + * List of regular expression patterns indicating the consumer groups that should not be replicated. + */ + consumerGroupsToExclude?: string[]; + /** + * List of regular expression patterns indicating the consumer groups to copy. + */ + consumerGroupsToReplicate: string[]; + /** + * Whether to periodically check for new consumer groups. + */ + detectAndCopyNewConsumerGroups?: boolean; + /** + * Whether to periodically write the translated offsets to __consumer_offsets topic in target cluster. + */ + synchroniseConsumerGroupOffsets?: boolean; + } + + /** + * Details of a Kafka cluster for replication. + */ + export interface ReplicatorKafkaCluster { + /** + * Details of an Amazon MSK cluster. Exactly one of AmazonMskCluster is required. + */ + amazonMskCluster: outputs.msk.ReplicatorAmazonMskCluster; + /** + * Details of an Amazon VPC which has network connectivity to the Apache Kafka cluster. + */ + vpcConfig: outputs.msk.ReplicatorKafkaClusterClientVpcConfig; + } + + /** + * Details of an Amazon VPC which has network connectivity to the Kafka cluster. + */ + export interface ReplicatorKafkaClusterClientVpcConfig { + /** + * The AWS security groups to associate with the elastic network interfaces in order to specify what the replicator has access to. If a security group is not specified, the default security group associated with the VPC is used. + */ + securityGroupIds?: string[]; + /** + * The list of subnets to connect to in the virtual private cloud (VPC). AWS creates elastic network interfaces inside these subnets. + */ + subnetIds: string[]; + } + + /** + * Specifies configuration for replication between a source and target Kafka cluster. + */ + export interface ReplicatorReplicationInfo { + /** + * Configuration relating to consumer group replication. + */ + consumerGroupReplication: outputs.msk.ReplicatorConsumerGroupReplication; + /** + * Amazon Resource Name of the source Kafka cluster. + */ + sourceKafkaClusterArn: string; + /** + * The type of compression to use writing records to target Kafka cluster. + */ + targetCompressionType: enums.msk.ReplicatorReplicationInfoTargetCompressionType; + /** + * Amazon Resource Name of the target Kafka cluster. + */ + targetKafkaClusterArn: string; + /** + * Configuration relating to topic replication. + */ + topicReplication: outputs.msk.ReplicatorTopicReplication; + } + + export interface ReplicatorTag { + key: string; + value: string; + } + + export interface ReplicatorTopicReplication { + /** + * Whether to periodically configure remote topic ACLs to match their corresponding upstream topics. + */ + copyAccessControlListsForTopics?: boolean; + /** + * Whether to periodically configure remote topics to match their corresponding upstream topics. + */ + copyTopicConfigurations?: boolean; + /** + * Whether to periodically check for new topics and partitions. + */ + detectAndCopyNewTopics?: boolean; + /** + * List of regular expression patterns indicating the topics that should not be replicated. + */ + topicsToExclude?: string[]; + /** + * List of regular expression patterns indicating the topics to copy. + */ + topicsToReplicate: string[]; + } + export interface ServerlessClusterClientAuthentication { sasl: outputs.msk.ServerlessClusterSasl; } @@ -36810,6 +37236,10 @@ export namespace quicksight { name?: string; } + export interface AnalysisValidationStrategy { + mode: enums.quicksight.AnalysisValidationStrategyMode; + } + export interface AnalysisVisibleRangeOptions { percentRange?: outputs.quicksight.AnalysisPercentVisibleRange; } @@ -39861,6 +40291,10 @@ export namespace quicksight { name?: string; } + export interface DashboardValidationStrategy { + mode: enums.quicksight.DashboardValidationStrategyMode; + } + export interface DashboardVersion { arn?: string; createdTime?: string; @@ -43683,6 +44117,10 @@ export namespace quicksight { name?: string; } + export interface TemplateValidationStrategy { + mode: enums.quicksight.TemplateValidationStrategyMode; + } + export interface TemplateVersion { createdTime?: string; dataSetConfigurations?: outputs.quicksight.TemplateDataSetConfiguration[]; @@ -45949,41 +46387,20 @@ export namespace s3 { vpcId?: string; } - /** - * Specifies the days since the initiation of an incomplete multipart upload that Amazon S3 will wait before permanently removing all parts of the upload. - */ export interface BucketAbortIncompleteMultipartUpload { - /** - * Specifies the number of days after which Amazon S3 aborts an incomplete multipart upload. - */ daysAfterInitiation: number; } export interface BucketAccelerateConfiguration { - /** - * Configures the transfer acceleration state for an Amazon S3 bucket. - */ - accelerationStatus: enums.s3.BucketAccelerateConfigurationAccelerationStatus; + accelerationStatus: string; } - /** - * Specify this only in a cross-account scenario (where source and destination bucket owners are not the same), and you want to change replica ownership to the AWS account that owns the destination bucket. If this is not specified in the replication configuration, the replicas are owned by same AWS account that owns the source object. - */ export interface BucketAccessControlTranslation { owner: string; } - /** - * Specifies the configuration and any analyses for the analytics filter of an Amazon S3 bucket. - */ export interface BucketAnalyticsConfiguration { - /** - * The ID that identifies the analytics configuration. - */ id: string; - /** - * The prefix that an object must have to be included in the analytics results. - */ prefix?: string; storageClassAnalysis: outputs.s3.BucketStorageClassAnalysis; tagFilters?: outputs.s3.BucketTagFilter[]; @@ -45993,207 +46410,90 @@ export namespace s3 { corsRules: outputs.s3.BucketCorsRule[]; } - /** - * A set of origins and methods (cross-origin access that you want to allow). You can add up to 100 rules to the configuration. - */ export interface BucketCorsRule { - /** - * Headers that are specified in the Access-Control-Request-Headers header. - */ allowedHeaders?: string[]; - /** - * An HTTP method that you allow the origin to execute. - */ - allowedMethods: enums.s3.BucketCorsRuleAllowedMethodsItem[]; - /** - * One or more origins you want customers to be able to access the bucket from. - */ + allowedMethods: string[]; allowedOrigins: string[]; - /** - * One or more headers in the response that you want customers to be able to access from their applications (for example, from a JavaScript XMLHttpRequest object). - */ exposedHeaders?: string[]; - /** - * A unique identifier for this rule. - */ id?: string; - /** - * The time in seconds that your browser is to cache the preflight response for the specified resource. - */ maxAge?: number; } - /** - * Specifies how data related to the storage class analysis for an Amazon S3 bucket should be exported. - */ export interface BucketDataExport { destination: outputs.s3.BucketDestination; - /** - * The version of the output schema to use when exporting data. - */ outputSchemaVersion: string; } - /** - * The default retention period that you want to apply to new objects placed in the specified bucket. - */ export interface BucketDefaultRetention { days?: number; - mode?: enums.s3.BucketDefaultRetentionMode; + mode?: string; years?: number; } export interface BucketDeleteMarkerReplication { - status?: enums.s3.BucketDeleteMarkerReplicationStatus; + status?: string; } - /** - * Specifies information about where to publish analysis or configuration results for an Amazon S3 bucket and S3 Replication Time Control (S3 RTC). - */ export interface BucketDestination { - /** - * The account ID that owns the destination S3 bucket. - */ bucketAccountId?: string; - /** - * The Amazon Resource Name (ARN) of the bucket to which data is exported. - */ bucketArn: string; - /** - * Specifies the file format used when exporting data to Amazon S3. - */ - format: enums.s3.BucketDestinationFormat; - /** - * The prefix to use when exporting data. The prefix is prepended to all results. - */ + format: string; prefix?: string; } - /** - * Specifies default encryption for a bucket using server-side encryption with either Amazon S3-managed keys (SSE-S3) or AWS KMS-managed keys (SSE-KMS). - */ export interface BucketEncryption { - /** - * Specifies the default server-side-encryption configuration. - */ serverSideEncryptionConfiguration: outputs.s3.BucketServerSideEncryptionRule[]; } - /** - * Specifies encryption-related information for an Amazon S3 bucket that is a destination for replicated objects. - */ export interface BucketEncryptionConfiguration { - /** - * Specifies the ID (Key ARN or Alias ARN) of the customer managed customer master key (CMK) stored in AWS Key Management Service (KMS) for the destination bucket. - */ replicaKmsKeyId: string; } - /** - * Describes the Amazon EventBridge notification configuration for an Amazon S3 bucket. - */ export interface BucketEventBridgeConfiguration { - /** - * Specifies whether to send notifications to Amazon EventBridge when events occur in an Amazon S3 bucket. - */ - eventBridgeEnabled: boolean; + eventBridgeEnabled?: boolean; } - /** - * Specifies the Amazon S3 object key name to filter on and whether to filter on the suffix or prefix of the key name. - */ export interface BucketFilterRule { name: string; value: string; } export interface BucketIntelligentTieringConfiguration { - /** - * The ID used to identify the S3 Intelligent-Tiering configuration. - */ id: string; - /** - * An object key name prefix that identifies the subset of objects to which the rule applies. - */ prefix?: string; - /** - * Specifies the status of the configuration. - */ - status: enums.s3.BucketIntelligentTieringConfigurationStatus; - /** - * A container for a key-value pair. - */ + status: string; tagFilters?: outputs.s3.BucketTagFilter[]; - /** - * Specifies a list of S3 Intelligent-Tiering storage class tiers in the configuration. At least one tier must be defined in the list. At most, you can specify two tiers in the list, one for each available AccessTier: ARCHIVE_ACCESS and DEEP_ARCHIVE_ACCESS. - */ tierings: outputs.s3.BucketTiering[]; } export interface BucketInventoryConfiguration { destination: outputs.s3.BucketDestination; - /** - * Specifies whether the inventory is enabled or disabled. - */ enabled: boolean; - /** - * The ID used to identify the inventory configuration. - */ id: string; - /** - * Object versions to include in the inventory list. - */ - includedObjectVersions: enums.s3.BucketInventoryConfigurationIncludedObjectVersions; - /** - * Contains the optional fields that are included in the inventory results. - */ - optionalFields?: enums.s3.BucketInventoryConfigurationOptionalFieldsItem[]; - /** - * The prefix that is prepended to all inventory results. - */ + includedObjectVersions: string; + optionalFields?: string[]; prefix?: string; - /** - * Specifies the schedule for generating inventory results. - */ - scheduleFrequency: enums.s3.BucketInventoryConfigurationScheduleFrequency; + scheduleFrequency: string; } - /** - * Describes the AWS Lambda functions to invoke and the events for which to invoke them. - */ export interface BucketLambdaConfiguration { - /** - * The Amazon S3 bucket event for which to invoke the AWS Lambda function. - */ event: string; - /** - * The filtering rules that determine which objects invoke the AWS Lambda function. - */ filter?: outputs.s3.BucketNotificationFilter; - /** - * The Amazon Resource Name (ARN) of the AWS Lambda function that Amazon S3 invokes when the specified event type occurs. - */ function: string; } export interface BucketLifecycleConfiguration { - /** - * A lifecycle rule for individual objects in an Amazon S3 bucket. - */ rules: outputs.s3.BucketRule[]; } export interface BucketLoggingConfiguration { - /** - * The name of an Amazon S3 bucket where Amazon S3 store server access log files. You can store log files in any bucket that you own. By default, logs are stored in the bucket where the LoggingConfiguration property is defined. - */ destinationBucketName?: string; logFilePrefix?: string; } export interface BucketMetrics { eventThreshold?: outputs.s3.BucketReplicationTimeValue; - status: enums.s3.BucketMetricsStatus; + status: string; } export interface BucketMetricsConfiguration { @@ -46203,41 +46503,17 @@ export namespace s3 { tagFilters?: outputs.s3.BucketTagFilter[]; } - /** - * Container for the expiration rule that describes when noncurrent objects are expired. If your bucket is versioning-enabled (or versioning is suspended), you can set this action to request that Amazon S3 expire noncurrent object versions at a specific period in the object's lifetime - */ export interface BucketNoncurrentVersionExpiration { - /** - * Specified the number of newer noncurrent and current versions that must exists before performing the associated action - */ newerNoncurrentVersions?: number; - /** - * Specified the number of days an object is noncurrent before Amazon S3 can perform the associated action - */ noncurrentDays: number; } - /** - * Container for the transition rule that describes when noncurrent objects transition to the STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER_IR, GLACIER, or DEEP_ARCHIVE storage class. If your bucket is versioning-enabled (or versioning is suspended), you can set this action to request that Amazon S3 transition noncurrent object versions to the STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER_IR, GLACIER, or DEEP_ARCHIVE storage class at a specific period in the object's lifetime. - */ export interface BucketNoncurrentVersionTransition { - /** - * Specified the number of newer noncurrent and current versions that must exists before performing the associated action - */ newerNoncurrentVersions?: number; - /** - * The class of storage used to store the object. - */ - storageClass: enums.s3.BucketNoncurrentVersionTransitionStorageClass; - /** - * Specifies the number of days an object is noncurrent before Amazon S3 can perform the associated action. - */ + storageClass: string; transitionInDays: number; } - /** - * Describes the notification configuration for an Amazon S3 bucket. - */ export interface BucketNotificationConfiguration { eventBridgeConfiguration?: outputs.s3.BucketEventBridgeConfiguration; lambdaConfigurations?: outputs.s3.BucketLambdaConfiguration[]; @@ -46245,9 +46521,6 @@ export namespace s3 { topicConfigurations?: outputs.s3.BucketTopicConfiguration[]; } - /** - * Specifies object key name filtering rules. - */ export interface BucketNotificationFilter { s3Key: outputs.s3.BucketS3KeyFilter; } @@ -46257,9 +46530,6 @@ export namespace s3 { rule?: outputs.s3.BucketObjectLockRule; } - /** - * The Object Lock rule in place for the specified object. - */ export interface BucketObjectLockRule { defaultRetention?: outputs.s3.BucketDefaultRetention; } @@ -46269,122 +46539,44 @@ export namespace s3 { } export interface BucketOwnershipControlsRule { - /** - * Specifies an object ownership rule. - */ - objectOwnership?: enums.s3.BucketOwnershipControlsRuleObjectOwnership; + objectOwnership?: string; } - /** - * Configuration that defines how Amazon S3 handles public access. - */ export interface BucketPublicAccessBlockConfiguration { - /** - * Specifies whether Amazon S3 should block public access control lists (ACLs) for this bucket and objects in this bucket. Setting this element to TRUE causes the following behavior: - * - PUT Bucket acl and PUT Object acl calls fail if the specified ACL is public. - * - PUT Object calls fail if the request includes a public ACL. - * Enabling this setting doesn't affect existing policies or ACLs. - */ blockPublicAcls?: boolean; - /** - * Specifies whether Amazon S3 should block public bucket policies for this bucket. Setting this element to TRUE causes Amazon S3 to reject calls to PUT Bucket policy if the specified bucket policy allows public access. - * Enabling this setting doesn't affect existing bucket policies. - */ blockPublicPolicy?: boolean; - /** - * Specifies whether Amazon S3 should ignore public ACLs for this bucket and objects in this bucket. Setting this element to TRUE causes Amazon S3 to ignore all public ACLs on this bucket and objects in this bucket. - * Enabling this setting doesn't affect the persistence of any existing ACLs and doesn't prevent new public ACLs from being set. - */ ignorePublicAcls?: boolean; - /** - * Specifies whether Amazon S3 should restrict public bucket policies for this bucket. Setting this element to TRUE restricts access to this bucket to only AWS services and authorized users within this account if the bucket has a public policy. - * Enabling this setting doesn't affect previously stored bucket policies, except that public and cross-account access within any public bucket policy, including non-public delegation to specific accounts, is blocked. - */ restrictPublicBuckets?: boolean; } - /** - * The Amazon Simple Queue Service queues to publish messages to and the events for which to publish messages. - */ export interface BucketQueueConfiguration { - /** - * The Amazon S3 bucket event about which you want to publish messages to Amazon SQS. - */ event: string; - /** - * The filtering rules that determine which objects trigger notifications. - */ filter?: outputs.s3.BucketNotificationFilter; - /** - * The Amazon Resource Name (ARN) of the Amazon SQS queue to which Amazon S3 publishes a message when it detects events of the specified type. - */ queue: string; } - /** - * Specifies the redirect behavior of all requests to a website endpoint of an Amazon S3 bucket. - */ export interface BucketRedirectAllRequestsTo { - /** - * Name of the host where requests are redirected. - */ hostName: string; - /** - * Protocol to use when redirecting requests. The default is the protocol that is used in the original request. - */ - protocol?: enums.s3.BucketRedirectAllRequestsToProtocol; + protocol?: string; } - /** - * Specifies how requests are redirected. In the event of an error, you can specify a different error code to return. - */ export interface BucketRedirectRule { - /** - * The host name to use in the redirect request. - */ hostName?: string; - /** - * The HTTP redirect code to use on the response. Not required if one of the siblings is present. - */ httpRedirectCode?: string; - /** - * Protocol to use when redirecting requests. The default is the protocol that is used in the original request. - */ - protocol?: enums.s3.BucketRedirectRuleProtocol; - /** - * The object key prefix to use in the redirect request. - */ + protocol?: string; replaceKeyPrefixWith?: string; - /** - * The specific object key to use in the redirect request.d - */ replaceKeyWith?: string; } export interface BucketReplicaModifications { - /** - * Specifies whether Amazon S3 replicates modifications on replicas. - */ - status: enums.s3.BucketReplicaModificationsStatus; + status: string; } - /** - * A container for replication rules. You can add up to 1,000 rules. The maximum size of a replication configuration is 2 MB. - */ export interface BucketReplicationConfiguration { - /** - * The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that Amazon S3 assumes when replicating objects. - */ role: string; - /** - * A container for one or more replication rules. - */ rules: outputs.s3.BucketReplicationRule[]; } - /** - * Specifies which Amazon S3 bucket to store replicated objects in and their storage class. - */ export interface BucketReplicationDestination { accessControlTranslation?: outputs.s3.BucketAccessControlTranslation; account?: string; @@ -46392,33 +46584,18 @@ export namespace s3 { encryptionConfiguration?: outputs.s3.BucketEncryptionConfiguration; metrics?: outputs.s3.BucketMetrics; replicationTime?: outputs.s3.BucketReplicationTime; - /** - * The storage class to use when replicating objects, such as S3 Standard or reduced redundancy. - */ - storageClass?: enums.s3.BucketReplicationDestinationStorageClass; + storageClass?: string; } - /** - * Specifies which Amazon S3 objects to replicate and where to store the replicas. - */ export interface BucketReplicationRule { deleteMarkerReplication?: outputs.s3.BucketDeleteMarkerReplication; destination: outputs.s3.BucketReplicationDestination; filter?: outputs.s3.BucketReplicationRuleFilter; - /** - * A unique identifier for the rule. - */ id?: string; - /** - * An object key name prefix that identifies the object or objects to which the rule applies. - */ prefix?: string; priority?: number; sourceSelectionCriteria?: outputs.s3.BucketSourceSelectionCriteria; - /** - * Specifies whether the rule is enabled. - */ - status: enums.s3.BucketReplicationRuleStatus; + status: string; } export interface BucketReplicationRuleAndOperator { @@ -46433,7 +46610,7 @@ export namespace s3 { } export interface BucketReplicationTime { - status: enums.s3.BucketReplicationTimeStatus; + status: string; time: outputs.s3.BucketReplicationTimeValue; } @@ -46441,34 +46618,16 @@ export namespace s3 { minutes: number; } - /** - * Specifies the redirect behavior and when a redirect is applied. - */ export interface BucketRoutingRule { - /** - * Container for redirect information. You can redirect requests to another host, to another page, or with another protocol. In the event of an error, you can specify a different error code to return. - */ redirectRule: outputs.s3.BucketRedirectRule; routingRuleCondition?: outputs.s3.BucketRoutingRuleCondition; } - /** - * A container for describing a condition that must be met for the specified redirect to apply.You must specify at least one of HttpErrorCodeReturnedEquals and KeyPrefixEquals - */ export interface BucketRoutingRuleCondition { - /** - * The HTTP error code when the redirect is applied. - */ httpErrorCodeReturnedEquals?: string; - /** - * The object key name prefix when the redirect is applied. - */ keyPrefixEquals?: string; } - /** - * You must specify at least one of the following properties: AbortIncompleteMultipartUpload, ExpirationDate, ExpirationInDays, NoncurrentVersionExpirationInDays, NoncurrentVersionTransition, NoncurrentVersionTransitions, Transition, or Transitions. - */ export interface BucketRule { abortIncompleteMultipartUpload?: outputs.s3.BucketAbortIncompleteMultipartUpload; expirationDate?: string; @@ -46479,71 +46638,38 @@ export namespace s3 { noncurrentVersionExpirationInDays?: number; noncurrentVersionTransition?: outputs.s3.BucketNoncurrentVersionTransition; noncurrentVersionTransitions?: outputs.s3.BucketNoncurrentVersionTransition[]; - objectSizeGreaterThan?: string; - objectSizeLessThan?: string; + objectSizeGreaterThan?: number; + objectSizeLessThan?: number; prefix?: string; - status: enums.s3.BucketRuleStatus; + status: string; tagFilters?: outputs.s3.BucketTagFilter[]; transition?: outputs.s3.BucketTransition; transitions?: outputs.s3.BucketTransition[]; } - /** - * A container for object key name prefix and suffix filtering rules. - */ export interface BucketS3KeyFilter { rules: outputs.s3.BucketFilterRule[]; } - /** - * Specifies the default server-side encryption to apply to new objects in the bucket. If a PUT Object request doesn't specify any server-side encryption, this default encryption will be applied. - */ export interface BucketServerSideEncryptionByDefault { - /** - * "KMSMasterKeyID" can only be used when you set the value of SSEAlgorithm as aws:kms or aws:kms:dsse. - */ kmsMasterKeyId?: string; - sseAlgorithm: enums.s3.BucketServerSideEncryptionByDefaultSseAlgorithm; + sseAlgorithm: string; } - /** - * Specifies the default server-side encryption configuration. - */ export interface BucketServerSideEncryptionRule { - /** - * Specifies whether Amazon S3 should use an S3 Bucket Key with server-side encryption using KMS (SSE-KMS) for new objects in the bucket. Existing objects are not affected. Setting the BucketKeyEnabled element to true causes Amazon S3 to use an S3 Bucket Key. By default, S3 Bucket Key is not enabled. - */ bucketKeyEnabled?: boolean; serverSideEncryptionByDefault?: outputs.s3.BucketServerSideEncryptionByDefault; } - /** - * A container that describes additional filters for identifying the source objects that you want to replicate. - */ export interface BucketSourceSelectionCriteria { - /** - * A filter that you can specify for selection for modifications on replicas. - */ replicaModifications?: outputs.s3.BucketReplicaModifications; - /** - * A container for filter information for the selection of Amazon S3 objects encrypted with AWS KMS. - */ sseKmsEncryptedObjects?: outputs.s3.BucketSseKmsEncryptedObjects; } - /** - * A container for filter information for the selection of S3 objects encrypted with AWS KMS. - */ export interface BucketSseKmsEncryptedObjects { - /** - * Specifies whether Amazon S3 replicates objects created with server-side encryption using a customer master key (CMK) stored in AWS Key Management Service. - */ - status: enums.s3.BucketSseKmsEncryptedObjectsStatus; + status: string; } - /** - * Specifies data related to access patterns to be collected and made available to analyze the tradeoffs between different storage classes for an Amazon S3 bucket. - */ export interface BucketStorageClassAnalysis { dataExport?: outputs.s3.BucketDataExport; } @@ -46553,73 +46679,34 @@ export namespace s3 { value: string; } - /** - * Tags to use to identify a subset of objects for an Amazon S3 bucket. - */ export interface BucketTagFilter { key: string; value: string; } export interface BucketTiering { - /** - * S3 Intelligent-Tiering access tier. See Storage class for automatically optimizing frequently and infrequently accessed objects for a list of access tiers in the S3 Intelligent-Tiering storage class. - */ - accessTier: enums.s3.BucketTieringAccessTier; - /** - * The number of consecutive days of no access after which an object will be eligible to be transitioned to the corresponding tier. The minimum number of days specified for Archive Access tier must be at least 90 days and Deep Archive Access tier must be at least 180 days. The maximum can be up to 2 years (730 days). - */ + accessTier: string; days: number; } - /** - * The topic to which notifications are sent and the events for which notifications are generated. - */ export interface BucketTopicConfiguration { - /** - * The Amazon S3 bucket event about which to send notifications. - */ event: string; - /** - * The filtering rules that determine for which objects to send notifications. - */ filter?: outputs.s3.BucketNotificationFilter; - /** - * The Amazon Resource Name (ARN) of the Amazon SNS topic to which Amazon S3 publishes a message when it detects events of the specified type. - */ topic: string; } - /** - * You must specify at least one of "TransitionDate" and "TransitionInDays" - */ export interface BucketTransition { - storageClass: enums.s3.BucketTransitionStorageClass; + storageClass: string; transitionDate?: string; transitionInDays?: number; } - /** - * Describes the versioning state of an Amazon S3 bucket. - */ export interface BucketVersioningConfiguration { - /** - * The versioning state of the bucket. - */ - status: enums.s3.BucketVersioningConfigurationStatus; + status: string; } - /** - * Specifies website configuration parameters for an Amazon S3 bucket. - */ export interface BucketWebsiteConfiguration { - /** - * The name of the error document for the website. - */ errorDocument?: string; - /** - * The name of the index document for the website. - */ indexDocument?: string; redirectAllRequestsTo?: outputs.s3.BucketRedirectAllRequestsTo; routingRules?: outputs.s3.BucketRoutingRule[]; @@ -47130,6 +47217,10 @@ export namespace sagemaker { */ dataCapturedDestinationS3Uri: string; datasetFormat: outputs.sagemaker.DataQualityJobDefinitionDatasetFormat; + /** + * Indexes or names of the features to be excluded from analysis + */ + excludeFeaturesAttribute?: string; /** * Path to the filesystem where the endpoint data is available to the container. */ @@ -47247,6 +47338,10 @@ export namespace sagemaker { */ export interface DataQualityJobDefinitionEndpointInput { endpointName: string; + /** + * Indexes or names of the features to be excluded from analysis + */ + excludeFeaturesAttribute?: string; /** * Path to the filesystem where the endpoint data is available to the container. */ @@ -49715,6 +49810,10 @@ export namespace sagemaker { */ dataCapturedDestinationS3Uri: string; datasetFormat: outputs.sagemaker.MonitoringScheduleDatasetFormat; + /** + * Indexes or names of the features to be excluded from analysis + */ + excludeFeaturesAttribute?: string; /** * Path to the filesystem where the endpoint data is available to the container. */ @@ -49798,6 +49897,10 @@ export namespace sagemaker { */ export interface MonitoringScheduleEndpointInput { endpointName: string; + /** + * Indexes or names of the features to be excluded from analysis + */ + excludeFeaturesAttribute?: string; /** * Path to the filesystem where the endpoint data is available to the container. */ @@ -49975,7 +50078,15 @@ export namespace sagemaker { */ export interface MonitoringScheduleScheduleConfig { /** - * A cron expression that describes details about the monitoring schedule. + * Data Analysis end time, e.g. PT0H + */ + dataAnalysisEndTime?: string; + /** + * Data Analysis start time, e.g. -PT1H + */ + dataAnalysisStartTime?: string; + /** + * A cron expression or 'NOW' that describes details about the monitoring schedule. */ scheduleExpression: string; } diff --git a/sdk/python/pulumi_aws_native/__init__.py b/sdk/python/pulumi_aws_native/__init__.py index c2f933362f..08ba3a5307 100644 --- a/sdk/python/pulumi_aws_native/__init__.py +++ b/sdk/python/pulumi_aws_native/__init__.py @@ -1730,6 +1730,7 @@ "mod": "entityresolution", "fqn": "pulumi_aws_native.entityresolution", "classes": { + "aws-native:entityresolution:IdMappingWorkflow": "IdMappingWorkflow", "aws-native:entityresolution:MatchingWorkflow": "MatchingWorkflow", "aws-native:entityresolution:SchemaMapping": "SchemaMapping" } @@ -2545,6 +2546,7 @@ "aws-native:msk:Cluster": "Cluster", "aws-native:msk:ClusterPolicy": "ClusterPolicy", "aws-native:msk:Configuration": "Configuration", + "aws-native:msk:Replicator": "Replicator", "aws-native:msk:ServerlessCluster": "ServerlessCluster", "aws-native:msk:VpcConnection": "VpcConnection" } diff --git a/sdk/python/pulumi_aws_native/apigateway/_enums.py b/sdk/python/pulumi_aws_native/apigateway/_enums.py index e0a8e2244f..2bf6e1a2e7 100644 --- a/sdk/python/pulumi_aws_native/apigateway/_enums.py +++ b/sdk/python/pulumi_aws_native/apigateway/_enums.py @@ -18,7 +18,7 @@ class DocumentationPartLocationType(str, Enum): """ - The type of API entity that the documentation content applies to. + The type of API entity to which the documentation content applies. Valid values are ``API``, ``AUTHORIZER``, ``MODEL``, ``RESOURCE``, ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. Content inheritance does not apply to any entity of the ``API``, ``AUTHORIZER``, ``METHOD``, ``MODEL``, ``REQUEST_BODY``, or ``RESOURCE`` type. """ API = "API" AUTHORIZER = "AUTHORIZER" @@ -36,7 +36,8 @@ class DocumentationPartLocationType(str, Enum): class MethodAuthorizationType(str, Enum): """ - The method's authorization type. + The method's authorization type. This parameter is required. For valid values, see [Method](https://docs.aws.amazon.com/apigateway/latest/api/API_Method.html) in the *API Gateway API Reference*. + If you specify the ``AuthorizerId`` property, specify ``CUSTOM`` or ``COGNITO_USER_POOLS`` for this property. """ NONE = "NONE" AWS_IAM = "AWS_IAM" @@ -46,7 +47,7 @@ class MethodAuthorizationType(str, Enum): class MethodIntegrationConnectionType(str, Enum): """ - The type of the network connection to the integration endpoint. + The type of the network connection to the integration endpoint. The valid value is ``INTERNET`` for connections through the public routable internet or ``VPC_LINK`` for private connections between API Gateway and a network load balancer in a VPC. The default value is ``INTERNET``. """ INTERNET = "INTERNET" VPC_LINK = "VPC_LINK" @@ -54,7 +55,8 @@ class MethodIntegrationConnectionType(str, Enum): class MethodIntegrationContentHandling(str, Enum): """ - Specifies how to handle request payload content type conversions. + Specifies how to handle request payload content type conversions. Supported values are ``CONVERT_TO_BINARY`` and ``CONVERT_TO_TEXT``, with the following behaviors: + If this property is not defined, the request payload will be passed through from the method request to integration request without modification, provided that the ``passthroughBehavior`` is configured to support payload pass-through. """ CONVERT_TO_BINARY = "CONVERT_TO_BINARY" CONVERT_TO_TEXT = "CONVERT_TO_TEXT" @@ -62,7 +64,7 @@ class MethodIntegrationContentHandling(str, Enum): class MethodIntegrationPassthroughBehavior(str, Enum): """ - Indicates when API Gateway passes requests to the targeted backend. + Specifies how the method request body of an unmapped content type will be passed through the integration request to the back end without transformation. A content type is unmapped if no mapping template is defined in the integration or the content type does not match any of the mapped content types, as specified in ``requestTemplates``. The valid value is one of the following: ``WHEN_NO_MATCH``: passes the method request body through the integration request to the back end without transformation when the method request content type does not match any content type associated with the mapping templates defined in the integration request. ``WHEN_NO_TEMPLATES``: passes the method request body through the integration request to the back end without transformation when no mapping template is defined in the integration request. If a template is defined when this option is selected, the method request of an unmapped content-type will be rejected with an HTTP 415 Unsupported Media Type response. ``NEVER``: rejects the method request with an HTTP 415 Unsupported Media Type response when either the method request content type does not match any content type associated with the mapping templates defined in the integration request or no mapping template is defined in the integration request. """ WHEN_NO_MATCH = "WHEN_NO_MATCH" WHEN_NO_TEMPLATES = "WHEN_NO_TEMPLATES" @@ -71,7 +73,8 @@ class MethodIntegrationPassthroughBehavior(str, Enum): class MethodIntegrationResponseContentHandling(str, Enum): """ - Specifies how to handle request payload content type conversions. + Specifies how to handle response payload content type conversions. Supported values are ``CONVERT_TO_BINARY`` and ``CONVERT_TO_TEXT``, with the following behaviors: + If this property is not defined, the response payload will be passed through from the integration response to the method response without modification. """ CONVERT_TO_BINARY = "CONVERT_TO_BINARY" CONVERT_TO_TEXT = "CONVERT_TO_TEXT" @@ -79,7 +82,8 @@ class MethodIntegrationResponseContentHandling(str, Enum): class MethodIntegrationType(str, Enum): """ - The type of backend that your method is running. + Specifies an API method integration type. The valid value is one of the following: + For the HTTP and HTTP proxy integrations, each integration can specify a protocol (``http/https``), port and path. Standard 80 and 443 ports are supported as well as custom ports above 1024. An HTTP or HTTP proxy integration with a ``connectionType`` of ``VPC_LINK`` is referred to as a private integration and uses a VpcLink to connect API Gateway to a network load balancer of a VPC. """ AWS = "AWS" AWS_PROXY = "AWS_PROXY" @@ -90,6 +94,6 @@ class MethodIntegrationType(str, Enum): class UsagePlanKeyKeyType(str, Enum): """ - The type of usage plan key. Currently, the only valid key type is API_KEY. + The type of a UsagePlanKey resource for a plan customer. """ API_KEY = "API_KEY" diff --git a/sdk/python/pulumi_aws_native/apigateway/_inputs.py b/sdk/python/pulumi_aws_native/apigateway/_inputs.py index 224428867c..a91f9297ad 100644 --- a/sdk/python/pulumi_aws_native/apigateway/_inputs.py +++ b/sdk/python/pulumi_aws_native/apigateway/_inputs.py @@ -183,8 +183,10 @@ def __init__(__self__, *, destination_arn: Optional[pulumi.Input[str]] = None, format: Optional[pulumi.Input[str]] = None): """ - :param pulumi.Input[str] destination_arn: The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with amazon-apigateway-. - :param pulumi.Input[str] format: A single line format of the access logs of data, as specified by selected $context variables. The format must include at least $context.requestId. + The ``AccessLogSetting`` property type specifies settings for logging access in this stage. + ``AccessLogSetting`` is a property of the [StageDescription](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html) property type. + :param pulumi.Input[str] destination_arn: The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with ``amazon-apigateway-``. + :param pulumi.Input[str] format: A single line format of the access logs of data, as specified by selected $context variables. The format must include at least ``$context.requestId``. """ DeploymentAccessLogSettingArgs._configure( lambda key, value: pulumi.set(__self__, key, value), @@ -206,7 +208,7 @@ def _configure( @pulumi.getter(name="destinationArn") def destination_arn(self) -> Optional[pulumi.Input[str]]: """ - The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with amazon-apigateway-. + The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with ``amazon-apigateway-``. """ return pulumi.get(self, "destination_arn") @@ -218,7 +220,7 @@ def destination_arn(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def format(self) -> Optional[pulumi.Input[str]]: """ - A single line format of the access logs of data, as specified by selected $context variables. The format must include at least $context.requestId. + A single line format of the access logs of data, as specified by selected $context variables. The format must include at least ``$context.requestId``. """ return pulumi.get(self, "format") @@ -234,9 +236,10 @@ def __init__(__self__, *, stage_variable_overrides: Optional[Any] = None, use_stage_cache: Optional[pulumi.Input[bool]] = None): """ - :param pulumi.Input[float] percent_traffic: The percentage (0-100) of traffic diverted to a canary deployment. - :param Any stage_variable_overrides: Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values. Duplicates are not allowed. - :param pulumi.Input[bool] use_stage_cache: Whether the canary deployment uses the stage cache. + The ``DeploymentCanarySettings`` property type specifies settings for the canary deployment. + :param pulumi.Input[float] percent_traffic: The percentage (0.0-100.0) of traffic routed to the canary deployment. + :param Any stage_variable_overrides: A stage variable overrides used for the canary release deployment. They can override existing stage variables or add new stage variables for the canary release deployment. These stage variables are represented as a string-to-string map between stage variable names and their values. + :param pulumi.Input[bool] use_stage_cache: A Boolean flag to indicate whether the canary release deployment uses the stage cache or not. """ DeploymentCanarySettingsArgs._configure( lambda key, value: pulumi.set(__self__, key, value), @@ -262,7 +265,7 @@ def _configure( @pulumi.getter(name="percentTraffic") def percent_traffic(self) -> Optional[pulumi.Input[float]]: """ - The percentage (0-100) of traffic diverted to a canary deployment. + The percentage (0.0-100.0) of traffic routed to the canary deployment. """ return pulumi.get(self, "percent_traffic") @@ -274,7 +277,7 @@ def percent_traffic(self, value: Optional[pulumi.Input[float]]): @pulumi.getter(name="stageVariableOverrides") def stage_variable_overrides(self) -> Optional[Any]: """ - Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values. Duplicates are not allowed. + A stage variable overrides used for the canary release deployment. They can override existing stage variables or add new stage variables for the canary release deployment. These stage variables are represented as a string-to-string map between stage variable names and their values. """ return pulumi.get(self, "stage_variable_overrides") @@ -286,7 +289,7 @@ def stage_variable_overrides(self, value: Optional[Any]): @pulumi.getter(name="useStageCache") def use_stage_cache(self) -> Optional[pulumi.Input[bool]]: """ - Whether the canary deployment uses the stage cache. + A Boolean flag to indicate whether the canary release deployment uses the stage cache or not. """ return pulumi.get(self, "use_stage_cache") @@ -302,9 +305,11 @@ def __init__(__self__, *, stage_variable_overrides: Optional[Any] = None, use_stage_cache: Optional[pulumi.Input[bool]] = None): """ + The ``CanarySetting`` property type specifies settings for the canary deployment in this stage. + ``CanarySetting`` is a property of the [StageDescription](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html) property type. :param pulumi.Input[float] percent_traffic: The percent (0-100) of traffic diverted to a canary deployment. - :param Any stage_variable_overrides: Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values. - :param pulumi.Input[bool] use_stage_cache: Whether the canary deployment uses the stage cache or not. + :param Any stage_variable_overrides: Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values. + :param pulumi.Input[bool] use_stage_cache: A Boolean flag to indicate whether the canary deployment uses the stage cache or not. """ DeploymentCanarySettingArgs._configure( lambda key, value: pulumi.set(__self__, key, value), @@ -342,7 +347,7 @@ def percent_traffic(self, value: Optional[pulumi.Input[float]]): @pulumi.getter(name="stageVariableOverrides") def stage_variable_overrides(self) -> Optional[Any]: """ - Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values. + Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values. """ return pulumi.get(self, "stage_variable_overrides") @@ -354,7 +359,7 @@ def stage_variable_overrides(self, value: Optional[Any]): @pulumi.getter(name="useStageCache") def use_stage_cache(self) -> Optional[pulumi.Input[bool]]: """ - Whether the canary deployment uses the stage cache or not. + A Boolean flag to indicate whether the canary deployment uses the stage cache or not. """ return pulumi.get(self, "use_stage_cache") @@ -377,16 +382,18 @@ def __init__(__self__, *, throttling_burst_limit: Optional[pulumi.Input[int]] = None, throttling_rate_limit: Optional[pulumi.Input[float]] = None): """ - :param pulumi.Input[bool] cache_data_encrypted: Indicates whether the cached responses are encrypted - :param pulumi.Input[int] cache_ttl_in_seconds: The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. - :param pulumi.Input[bool] caching_enabled: Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses. - :param pulumi.Input[bool] data_trace_enabled: Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs. + The ``MethodSetting`` property type configures settings for all methods in a stage. + The ``MethodSettings`` property of the [Amazon API Gateway Deployment StageDescription](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html) property type contains a list of ``MethodSetting`` property types. + :param pulumi.Input[bool] cache_data_encrypted: Specifies whether the cached responses are encrypted. + :param pulumi.Input[int] cache_ttl_in_seconds: Specifies the time to live (TTL), in seconds, for cached responses. The higher the TTL, the longer the response will be cached. + :param pulumi.Input[bool] caching_enabled: Specifies whether responses should be cached and returned for requests. A cache cluster must be enabled on the stage for responses to be cached. + :param pulumi.Input[bool] data_trace_enabled: Specifies whether data trace logging is enabled for this method, which affects the log entries pushed to Amazon CloudWatch Logs. This can be useful to troubleshoot APIs, but can result in logging sensitive data. We recommend that you don't enable this option for production APIs. :param pulumi.Input[str] http_method: The HTTP method. - :param pulumi.Input[str] logging_level: The logging level for this method. For valid values, see the loggingLevel property of the Stage resource in the Amazon API Gateway API Reference. - :param pulumi.Input[bool] metrics_enabled: Indicates whether Amazon CloudWatch metrics are enabled for methods in the stage. - :param pulumi.Input[str] resource_path: The resource path for this method. Forward slashes (/) are encoded as ~1 and the initial slash must include a forward slash. - :param pulumi.Input[int] throttling_burst_limit: The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. - :param pulumi.Input[float] throttling_rate_limit: The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. + :param pulumi.Input[str] logging_level: Specifies the logging level for this method, which affects the log entries pushed to Amazon CloudWatch Logs. Valid values are ``OFF``, ``ERROR``, and ``INFO``. Choose ``ERROR`` to write only error-level entries to CloudWatch Logs, or choose ``INFO`` to include all ``ERROR`` events as well as extra informational events. + :param pulumi.Input[bool] metrics_enabled: Specifies whether Amazon CloudWatch metrics are enabled for this method. + :param pulumi.Input[str] resource_path: The resource path for this method. Forward slashes (``/``) are encoded as ``~1`` and the initial slash must include a forward slash. For example, the path value ``/resource/subresource`` must be encoded as ``/~1resource~1subresource``. To specify the root path, use only a slash (``/``). + :param pulumi.Input[int] throttling_burst_limit: Specifies the throttling burst limit. + :param pulumi.Input[float] throttling_rate_limit: Specifies the throttling rate limit. """ DeploymentMethodSettingArgs._configure( lambda key, value: pulumi.set(__self__, key, value), @@ -440,7 +447,7 @@ def _configure( @pulumi.getter(name="cacheDataEncrypted") def cache_data_encrypted(self) -> Optional[pulumi.Input[bool]]: """ - Indicates whether the cached responses are encrypted + Specifies whether the cached responses are encrypted. """ return pulumi.get(self, "cache_data_encrypted") @@ -452,7 +459,7 @@ def cache_data_encrypted(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter(name="cacheTtlInSeconds") def cache_ttl_in_seconds(self) -> Optional[pulumi.Input[int]]: """ - The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. + Specifies the time to live (TTL), in seconds, for cached responses. The higher the TTL, the longer the response will be cached. """ return pulumi.get(self, "cache_ttl_in_seconds") @@ -464,7 +471,7 @@ def cache_ttl_in_seconds(self, value: Optional[pulumi.Input[int]]): @pulumi.getter(name="cachingEnabled") def caching_enabled(self) -> Optional[pulumi.Input[bool]]: """ - Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses. + Specifies whether responses should be cached and returned for requests. A cache cluster must be enabled on the stage for responses to be cached. """ return pulumi.get(self, "caching_enabled") @@ -476,7 +483,7 @@ def caching_enabled(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter(name="dataTraceEnabled") def data_trace_enabled(self) -> Optional[pulumi.Input[bool]]: """ - Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs. + Specifies whether data trace logging is enabled for this method, which affects the log entries pushed to Amazon CloudWatch Logs. This can be useful to troubleshoot APIs, but can result in logging sensitive data. We recommend that you don't enable this option for production APIs. """ return pulumi.get(self, "data_trace_enabled") @@ -500,7 +507,7 @@ def http_method(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="loggingLevel") def logging_level(self) -> Optional[pulumi.Input[str]]: """ - The logging level for this method. For valid values, see the loggingLevel property of the Stage resource in the Amazon API Gateway API Reference. + Specifies the logging level for this method, which affects the log entries pushed to Amazon CloudWatch Logs. Valid values are ``OFF``, ``ERROR``, and ``INFO``. Choose ``ERROR`` to write only error-level entries to CloudWatch Logs, or choose ``INFO`` to include all ``ERROR`` events as well as extra informational events. """ return pulumi.get(self, "logging_level") @@ -512,7 +519,7 @@ def logging_level(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="metricsEnabled") def metrics_enabled(self) -> Optional[pulumi.Input[bool]]: """ - Indicates whether Amazon CloudWatch metrics are enabled for methods in the stage. + Specifies whether Amazon CloudWatch metrics are enabled for this method. """ return pulumi.get(self, "metrics_enabled") @@ -524,7 +531,7 @@ def metrics_enabled(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter(name="resourcePath") def resource_path(self) -> Optional[pulumi.Input[str]]: """ - The resource path for this method. Forward slashes (/) are encoded as ~1 and the initial slash must include a forward slash. + The resource path for this method. Forward slashes (``/``) are encoded as ``~1`` and the initial slash must include a forward slash. For example, the path value ``/resource/subresource`` must be encoded as ``/~1resource~1subresource``. To specify the root path, use only a slash (``/``). """ return pulumi.get(self, "resource_path") @@ -536,7 +543,7 @@ def resource_path(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="throttlingBurstLimit") def throttling_burst_limit(self) -> Optional[pulumi.Input[int]]: """ - The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. + Specifies the throttling burst limit. """ return pulumi.get(self, "throttling_burst_limit") @@ -548,7 +555,7 @@ def throttling_burst_limit(self, value: Optional[pulumi.Input[int]]): @pulumi.getter(name="throttlingRateLimit") def throttling_rate_limit(self) -> Optional[pulumi.Input[float]]: """ - The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. + Specifies the throttling rate limit. """ return pulumi.get(self, "throttling_rate_limit") @@ -580,25 +587,27 @@ def __init__(__self__, *, tracing_enabled: Optional[pulumi.Input[bool]] = None, variables: Optional[Any] = None): """ + ``StageDescription`` is a property of the [AWS::ApiGateway::Deployment](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-deployment.html) resource that configures a deployment stage. :param pulumi.Input['DeploymentAccessLogSettingArgs'] access_log_setting: Specifies settings for logging access in this stage. - :param pulumi.Input[bool] cache_cluster_enabled: Indicates whether cache clustering is enabled for the stage. - :param pulumi.Input[str] cache_cluster_size: The size of the stage's cache cluster. - :param pulumi.Input[bool] cache_data_encrypted: The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. - :param pulumi.Input[int] cache_ttl_in_seconds: The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. - :param pulumi.Input[bool] caching_enabled: Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses. + :param pulumi.Input[bool] cache_cluster_enabled: Specifies whether a cache cluster is enabled for the stage. + :param pulumi.Input[str] cache_cluster_size: The size of the stage's cache cluster. For more information, see [cacheClusterSize](https://docs.aws.amazon.com/apigateway/latest/api/API_CreateStage.html#apigw-CreateStage-request-cacheClusterSize) in the *API Gateway API Reference*. + :param pulumi.Input[bool] cache_data_encrypted: Indicates whether the cached responses are encrypted. + :param pulumi.Input[int] cache_ttl_in_seconds: The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. + :param pulumi.Input[bool] caching_enabled: Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses. For more information, see [Enable API Gateway Caching in a Stage to Enhance API Performance](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html) in the *API Gateway Developer Guide*. :param pulumi.Input['DeploymentCanarySettingArgs'] canary_setting: Specifies settings for the canary deployment in this stage. - :param pulumi.Input[str] client_certificate_id: The identifier of the client certificate that API Gateway uses to call your integration endpoints in the stage. - :param pulumi.Input[bool] data_trace_enabled: Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs. + :param pulumi.Input[str] client_certificate_id: The identifier of the client certificate that API Gateway uses to call your integration endpoints in the stage. + :param pulumi.Input[bool] data_trace_enabled: Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs. :param pulumi.Input[str] description: A description of the purpose of the stage. :param pulumi.Input[str] documentation_version: The version identifier of the API documentation snapshot. - :param pulumi.Input[str] logging_level: The logging level for this method. For valid values, see the loggingLevel property of the Stage resource in the Amazon API Gateway API Reference. + :param pulumi.Input[str] logging_level: The logging level for this method. For valid values, see the ``loggingLevel`` property of the [MethodSetting](https://docs.aws.amazon.com/apigateway/latest/api/API_MethodSetting.html) resource in the *Amazon API Gateway API Reference*. :param pulumi.Input[Sequence[pulumi.Input['DeploymentMethodSettingArgs']]] method_settings: Configures settings for all of the stage's methods. :param pulumi.Input[bool] metrics_enabled: Indicates whether Amazon CloudWatch metrics are enabled for methods in the stage. :param pulumi.Input[Sequence[pulumi.Input['DeploymentTagArgs']]] tags: An array of arbitrary tags (key-value pairs) to associate with the stage. - :param pulumi.Input[int] throttling_burst_limit: The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. - :param pulumi.Input[float] throttling_rate_limit: The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. + :param pulumi.Input[int] throttling_burst_limit: The target request burst rate limit. This allows more requests through for a period of time than the target rate limit. For more information, see [Manage API Request Throttling](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-request-throttling.html) in the *API Gateway Developer Guide*. + :param pulumi.Input[float] throttling_rate_limit: The target request steady-state rate limit. For more information, see [Manage API Request Throttling](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-request-throttling.html) in the *API Gateway Developer Guide*. :param pulumi.Input[bool] tracing_enabled: Specifies whether active tracing with X-ray is enabled for this stage. - :param Any variables: A map that defines the stage variables. Variable names must consist of alphanumeric characters, and the values must match the following regular expression: [A-Za-z0-9-._~:/?#&=,]+. + For more information, see [Trace API Gateway API Execution with X-Ray](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-xray.html) in the *API Gateway Developer Guide*. + :param Any variables: A map that defines the stage variables. Variable names must consist of alphanumeric characters, and the values must match the following regular expression: ``[A-Za-z0-9-._~:/?#&=,]+``. """ DeploymentStageDescriptionArgs._configure( lambda key, value: pulumi.set(__self__, key, value), @@ -700,7 +709,7 @@ def access_log_setting(self, value: Optional[pulumi.Input['DeploymentAccessLogSe @pulumi.getter(name="cacheClusterEnabled") def cache_cluster_enabled(self) -> Optional[pulumi.Input[bool]]: """ - Indicates whether cache clustering is enabled for the stage. + Specifies whether a cache cluster is enabled for the stage. """ return pulumi.get(self, "cache_cluster_enabled") @@ -712,7 +721,7 @@ def cache_cluster_enabled(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter(name="cacheClusterSize") def cache_cluster_size(self) -> Optional[pulumi.Input[str]]: """ - The size of the stage's cache cluster. + The size of the stage's cache cluster. For more information, see [cacheClusterSize](https://docs.aws.amazon.com/apigateway/latest/api/API_CreateStage.html#apigw-CreateStage-request-cacheClusterSize) in the *API Gateway API Reference*. """ return pulumi.get(self, "cache_cluster_size") @@ -724,7 +733,7 @@ def cache_cluster_size(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="cacheDataEncrypted") def cache_data_encrypted(self) -> Optional[pulumi.Input[bool]]: """ - The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. + Indicates whether the cached responses are encrypted. """ return pulumi.get(self, "cache_data_encrypted") @@ -736,7 +745,7 @@ def cache_data_encrypted(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter(name="cacheTtlInSeconds") def cache_ttl_in_seconds(self) -> Optional[pulumi.Input[int]]: """ - The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. + The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. """ return pulumi.get(self, "cache_ttl_in_seconds") @@ -748,7 +757,7 @@ def cache_ttl_in_seconds(self, value: Optional[pulumi.Input[int]]): @pulumi.getter(name="cachingEnabled") def caching_enabled(self) -> Optional[pulumi.Input[bool]]: """ - Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses. + Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses. For more information, see [Enable API Gateway Caching in a Stage to Enhance API Performance](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html) in the *API Gateway Developer Guide*. """ return pulumi.get(self, "caching_enabled") @@ -772,7 +781,7 @@ def canary_setting(self, value: Optional[pulumi.Input['DeploymentCanarySettingAr @pulumi.getter(name="clientCertificateId") def client_certificate_id(self) -> Optional[pulumi.Input[str]]: """ - The identifier of the client certificate that API Gateway uses to call your integration endpoints in the stage. + The identifier of the client certificate that API Gateway uses to call your integration endpoints in the stage. """ return pulumi.get(self, "client_certificate_id") @@ -784,7 +793,7 @@ def client_certificate_id(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="dataTraceEnabled") def data_trace_enabled(self) -> Optional[pulumi.Input[bool]]: """ - Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs. + Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs. """ return pulumi.get(self, "data_trace_enabled") @@ -820,7 +829,7 @@ def documentation_version(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="loggingLevel") def logging_level(self) -> Optional[pulumi.Input[str]]: """ - The logging level for this method. For valid values, see the loggingLevel property of the Stage resource in the Amazon API Gateway API Reference. + The logging level for this method. For valid values, see the ``loggingLevel`` property of the [MethodSetting](https://docs.aws.amazon.com/apigateway/latest/api/API_MethodSetting.html) resource in the *Amazon API Gateway API Reference*. """ return pulumi.get(self, "logging_level") @@ -868,7 +877,7 @@ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['DeploymentTag @pulumi.getter(name="throttlingBurstLimit") def throttling_burst_limit(self) -> Optional[pulumi.Input[int]]: """ - The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. + The target request burst rate limit. This allows more requests through for a period of time than the target rate limit. For more information, see [Manage API Request Throttling](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-request-throttling.html) in the *API Gateway Developer Guide*. """ return pulumi.get(self, "throttling_burst_limit") @@ -880,7 +889,7 @@ def throttling_burst_limit(self, value: Optional[pulumi.Input[int]]): @pulumi.getter(name="throttlingRateLimit") def throttling_rate_limit(self) -> Optional[pulumi.Input[float]]: """ - The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. + The target request steady-state rate limit. For more information, see [Manage API Request Throttling](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-request-throttling.html) in the *API Gateway Developer Guide*. """ return pulumi.get(self, "throttling_rate_limit") @@ -893,6 +902,7 @@ def throttling_rate_limit(self, value: Optional[pulumi.Input[float]]): def tracing_enabled(self) -> Optional[pulumi.Input[bool]]: """ Specifies whether active tracing with X-ray is enabled for this stage. + For more information, see [Trace API Gateway API Execution with X-Ray](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-xray.html) in the *API Gateway Developer Guide*. """ return pulumi.get(self, "tracing_enabled") @@ -904,7 +914,7 @@ def tracing_enabled(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter def variables(self) -> Optional[Any]: """ - A map that defines the stage variables. Variable names must consist of alphanumeric characters, and the values must match the following regular expression: [A-Za-z0-9-._~:/?#&=,]+. + A map that defines the stage variables. Variable names must consist of alphanumeric characters, and the values must match the following regular expression: ``[A-Za-z0-9-._~:/?#&=,]+``. """ return pulumi.get(self, "variables") @@ -970,11 +980,13 @@ def __init__(__self__, *, status_code: Optional[pulumi.Input[str]] = None, type: Optional[pulumi.Input['DocumentationPartLocationType']] = None): """ - :param pulumi.Input[str] method: The HTTP verb of a method. - :param pulumi.Input[str] name: The name of the targeted API entity. - :param pulumi.Input[str] path: The URL path of the target. - :param pulumi.Input[str] status_code: The HTTP status code of a response. - :param pulumi.Input['DocumentationPartLocationType'] type: The type of API entity that the documentation content applies to. + The ``Location`` property specifies the location of the Amazon API Gateway API entity that the documentation applies to. ``Location`` is a property of the [AWS::ApiGateway::DocumentationPart](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationpart.html) resource. + For more information about each property, including constraints and valid values, see [DocumentationPart](https://docs.aws.amazon.com/apigateway/latest/api/API_DocumentationPartLocation.html) in the *Amazon API Gateway REST API Reference*. + :param pulumi.Input[str] method: The HTTP verb of a method. It is a valid field for the API entity types of ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``*`` for any method. When an applicable child entity inherits the content of an entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``method`` attribute must match that of the parent entity exactly. + :param pulumi.Input[str] name: The name of the targeted API entity. It is a valid and required field for the API entity types of ``AUTHORIZER``, ``MODEL``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY`` and ``RESPONSE_HEADER``. It is an invalid field for any other entity type. + :param pulumi.Input[str] path: The URL path of the target. It is a valid field for the API entity types of ``RESOURCE``, ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``/`` for the root resource. When an applicable child entity inherits the content of another entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``path`` attribute must match that of the parent entity as a prefix. + :param pulumi.Input[str] status_code: The HTTP status code of a response. It is a valid field for the API entity types of ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``*`` for any status code. When an applicable child entity inherits the content of an entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``statusCode`` attribute must match that of the parent entity exactly. + :param pulumi.Input['DocumentationPartLocationType'] type: The type of API entity to which the documentation content applies. Valid values are ``API``, ``AUTHORIZER``, ``MODEL``, ``RESOURCE``, ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. Content inheritance does not apply to any entity of the ``API``, ``AUTHORIZER``, ``METHOD``, ``MODEL``, ``REQUEST_BODY``, or ``RESOURCE`` type. """ DocumentationPartLocationArgs._configure( lambda key, value: pulumi.set(__self__, key, value), @@ -1008,7 +1020,7 @@ def _configure( @pulumi.getter def method(self) -> Optional[pulumi.Input[str]]: """ - The HTTP verb of a method. + The HTTP verb of a method. It is a valid field for the API entity types of ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``*`` for any method. When an applicable child entity inherits the content of an entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``method`` attribute must match that of the parent entity exactly. """ return pulumi.get(self, "method") @@ -1020,7 +1032,7 @@ def method(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: """ - The name of the targeted API entity. + The name of the targeted API entity. It is a valid and required field for the API entity types of ``AUTHORIZER``, ``MODEL``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY`` and ``RESPONSE_HEADER``. It is an invalid field for any other entity type. """ return pulumi.get(self, "name") @@ -1032,7 +1044,7 @@ def name(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def path(self) -> Optional[pulumi.Input[str]]: """ - The URL path of the target. + The URL path of the target. It is a valid field for the API entity types of ``RESOURCE``, ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``/`` for the root resource. When an applicable child entity inherits the content of another entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``path`` attribute must match that of the parent entity as a prefix. """ return pulumi.get(self, "path") @@ -1044,7 +1056,7 @@ def path(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="statusCode") def status_code(self) -> Optional[pulumi.Input[str]]: """ - The HTTP status code of a response. + The HTTP status code of a response. It is a valid field for the API entity types of ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``*`` for any status code. When an applicable child entity inherits the content of an entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``statusCode`` attribute must match that of the parent entity exactly. """ return pulumi.get(self, "status_code") @@ -1056,7 +1068,7 @@ def status_code(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def type(self) -> Optional[pulumi.Input['DocumentationPartLocationType']]: """ - The type of API entity that the documentation content applies to. + The type of API entity to which the documentation content applies. Valid values are ``API``, ``AUTHORIZER``, ``MODEL``, ``RESOURCE``, ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. Content inheritance does not apply to any entity of the ``API``, ``AUTHORIZER``, ``METHOD``, ``MODEL``, ``REQUEST_BODY``, or ``RESOURCE`` type. """ return pulumi.get(self, "type") @@ -1180,11 +1192,13 @@ def __init__(__self__, *, response_templates: Optional[Any] = None, selection_pattern: Optional[pulumi.Input[str]] = None): """ - :param pulumi.Input[str] status_code: The status code that API Gateway uses to map the integration response to a MethodResponse status code. - :param pulumi.Input['MethodIntegrationResponseContentHandling'] content_handling: Specifies how to handle request payload content type conversions. - :param Any response_parameters: The response parameters from the backend response that API Gateway sends to the method response. - :param Any response_templates: The templates that are used to transform the integration response body. Specify templates as key-value pairs (string-to-string mappings), with a content type as the key and a template as the value. - :param pulumi.Input[str] selection_pattern: A regular expression that specifies which error strings or status codes from the backend map to the integration response. + ``IntegrationResponse`` is a property of the [Amazon API Gateway Method Integration](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html) property type that specifies the response that API Gateway sends after a method's backend finishes processing a request. + :param pulumi.Input[str] status_code: Specifies the status code that is used to map the integration response to an existing MethodResponse. + :param pulumi.Input['MethodIntegrationResponseContentHandling'] content_handling: Specifies how to handle response payload content type conversions. Supported values are ``CONVERT_TO_BINARY`` and ``CONVERT_TO_TEXT``, with the following behaviors: + If this property is not defined, the response payload will be passed through from the integration response to the method response without modification. + :param Any response_parameters: A key-value map specifying response parameters that are passed to the method response from the back end. The key is a method response header parameter name and the mapped value is an integration response header value, a static value enclosed within a pair of single quotes, or a JSON expression from the integration response body. The mapping key must match the pattern of ``method.response.header.{name}``, where ``name`` is a valid and unique header name. The mapped non-static value must match the pattern of ``integration.response.header.{name}`` or ``integration.response.body.{JSON-expression}``, where ``name`` is a valid and unique response header name and ``JSON-expression`` is a valid JSON expression without the ``$`` prefix. + :param Any response_templates: Specifies the templates used to transform the integration response body. Response templates are represented as a key/value map, with a content-type as the key and a template as the value. + :param pulumi.Input[str] selection_pattern: Specifies the regular expression (regex) pattern used to choose an integration response based on the response from the back end. For example, if the success response returns nothing and the error response returns some string, you could use the ``.+`` regex to match error response. However, make sure that the error response does not contain any newline (``\\n``) character in such cases. If the back end is an LAMlong function, the LAMlong function error header is matched. For all other HTTP and AWS back ends, the HTTP status code is matched. """ MethodIntegrationResponseArgs._configure( lambda key, value: pulumi.set(__self__, key, value), @@ -1217,7 +1231,7 @@ def _configure( @pulumi.getter(name="statusCode") def status_code(self) -> pulumi.Input[str]: """ - The status code that API Gateway uses to map the integration response to a MethodResponse status code. + Specifies the status code that is used to map the integration response to an existing MethodResponse. """ return pulumi.get(self, "status_code") @@ -1229,7 +1243,8 @@ def status_code(self, value: pulumi.Input[str]): @pulumi.getter(name="contentHandling") def content_handling(self) -> Optional[pulumi.Input['MethodIntegrationResponseContentHandling']]: """ - Specifies how to handle request payload content type conversions. + Specifies how to handle response payload content type conversions. Supported values are ``CONVERT_TO_BINARY`` and ``CONVERT_TO_TEXT``, with the following behaviors: + If this property is not defined, the response payload will be passed through from the integration response to the method response without modification. """ return pulumi.get(self, "content_handling") @@ -1241,7 +1256,7 @@ def content_handling(self, value: Optional[pulumi.Input['MethodIntegrationRespon @pulumi.getter(name="responseParameters") def response_parameters(self) -> Optional[Any]: """ - The response parameters from the backend response that API Gateway sends to the method response. + A key-value map specifying response parameters that are passed to the method response from the back end. The key is a method response header parameter name and the mapped value is an integration response header value, a static value enclosed within a pair of single quotes, or a JSON expression from the integration response body. The mapping key must match the pattern of ``method.response.header.{name}``, where ``name`` is a valid and unique header name. The mapped non-static value must match the pattern of ``integration.response.header.{name}`` or ``integration.response.body.{JSON-expression}``, where ``name`` is a valid and unique response header name and ``JSON-expression`` is a valid JSON expression without the ``$`` prefix. """ return pulumi.get(self, "response_parameters") @@ -1253,7 +1268,7 @@ def response_parameters(self, value: Optional[Any]): @pulumi.getter(name="responseTemplates") def response_templates(self) -> Optional[Any]: """ - The templates that are used to transform the integration response body. Specify templates as key-value pairs (string-to-string mappings), with a content type as the key and a template as the value. + Specifies the templates used to transform the integration response body. Response templates are represented as a key/value map, with a content-type as the key and a template as the value. """ return pulumi.get(self, "response_templates") @@ -1265,7 +1280,7 @@ def response_templates(self, value: Optional[Any]): @pulumi.getter(name="selectionPattern") def selection_pattern(self) -> Optional[pulumi.Input[str]]: """ - A regular expression that specifies which error strings or status codes from the backend map to the integration response. + Specifies the regular expression (regex) pattern used to choose an integration response based on the response from the back end. For example, if the success response returns nothing and the error response returns some string, you could use the ``.+`` regex to match error response. However, make sure that the error response does not contain any newline (``\\n``) character in such cases. If the back end is an LAMlong function, the LAMlong function error header is matched. For all other HTTP and AWS back ends, the HTTP status code is matched. """ return pulumi.get(self, "selection_pattern") @@ -1292,20 +1307,24 @@ def __init__(__self__, *, timeout_in_millis: Optional[pulumi.Input[int]] = None, uri: Optional[pulumi.Input[str]] = None): """ - :param pulumi.Input['MethodIntegrationType'] type: The type of backend that your method is running. - :param pulumi.Input[Sequence[pulumi.Input[str]]] cache_key_parameters: A list of request parameters whose values API Gateway caches. - :param pulumi.Input[str] cache_namespace: An API-specific tag group of related cached parameters. - :param pulumi.Input[str] connection_id: The ID of the VpcLink used for the integration when connectionType=VPC_LINK, otherwise undefined. - :param pulumi.Input['MethodIntegrationConnectionType'] connection_type: The type of the network connection to the integration endpoint. - :param pulumi.Input['MethodIntegrationContentHandling'] content_handling: Specifies how to handle request payload content type conversions. - :param pulumi.Input[str] credentials: The credentials that are required for the integration. - :param pulumi.Input[str] integration_http_method: The integration's HTTP method type. - :param pulumi.Input[Sequence[pulumi.Input['MethodIntegrationResponseArgs']]] integration_responses: The response that API Gateway provides after a method's backend completes processing a request. - :param pulumi.Input['MethodIntegrationPassthroughBehavior'] passthrough_behavior: Indicates when API Gateway passes requests to the targeted backend. - :param Any request_parameters: The request parameters that API Gateway sends with the backend request. - :param Any request_templates: A map of Apache Velocity templates that are applied on the request payload. - :param pulumi.Input[int] timeout_in_millis: Custom timeout between 50 and 29,000 milliseconds. - :param pulumi.Input[str] uri: The Uniform Resource Identifier (URI) for the integration. + ``Integration`` is a property of the [AWS::ApiGateway::Method](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html) resource that specifies information about the target backend that a method calls. + :param pulumi.Input['MethodIntegrationType'] type: Specifies an API method integration type. The valid value is one of the following: + For the HTTP and HTTP proxy integrations, each integration can specify a protocol (``http/https``), port and path. Standard 80 and 443 ports are supported as well as custom ports above 1024. An HTTP or HTTP proxy integration with a ``connectionType`` of ``VPC_LINK`` is referred to as a private integration and uses a VpcLink to connect API Gateway to a network load balancer of a VPC. + :param pulumi.Input[Sequence[pulumi.Input[str]]] cache_key_parameters: A list of request parameters whose values API Gateway caches. To be valid values for ``cacheKeyParameters``, these parameters must also be specified for Method ``requestParameters``. + :param pulumi.Input[str] cache_namespace: Specifies a group of related cached parameters. By default, API Gateway uses the resource ID as the ``cacheNamespace``. You can specify the same ``cacheNamespace`` across resources to return the same cached data for requests to different resources. + :param pulumi.Input[str] connection_id: The ID of the VpcLink used for the integration when ``connectionType=VPC_LINK`` and undefined, otherwise. + :param pulumi.Input['MethodIntegrationConnectionType'] connection_type: The type of the network connection to the integration endpoint. The valid value is ``INTERNET`` for connections through the public routable internet or ``VPC_LINK`` for private connections between API Gateway and a network load balancer in a VPC. The default value is ``INTERNET``. + :param pulumi.Input['MethodIntegrationContentHandling'] content_handling: Specifies how to handle request payload content type conversions. Supported values are ``CONVERT_TO_BINARY`` and ``CONVERT_TO_TEXT``, with the following behaviors: + If this property is not defined, the request payload will be passed through from the method request to integration request without modification, provided that the ``passthroughBehavior`` is configured to support payload pass-through. + :param pulumi.Input[str] credentials: Specifies the credentials required for the integration, if any. For AWS integrations, three options are available. To specify an IAM Role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To require that the caller's identity be passed through from the request, specify the string ``arn:aws:iam::\\*:user/\\*``. To use resource-based permissions on supported AWS services, specify null. + :param pulumi.Input[str] integration_http_method: Specifies the integration's HTTP method type. For the Type property, if you specify ``MOCK``, this property is optional. For Lambda integrations, you must set the integration method to ``POST``. For all other types, you must specify this property. + :param pulumi.Input[Sequence[pulumi.Input['MethodIntegrationResponseArgs']]] integration_responses: Specifies the integration's responses. + :param pulumi.Input['MethodIntegrationPassthroughBehavior'] passthrough_behavior: Specifies how the method request body of an unmapped content type will be passed through the integration request to the back end without transformation. A content type is unmapped if no mapping template is defined in the integration or the content type does not match any of the mapped content types, as specified in ``requestTemplates``. The valid value is one of the following: ``WHEN_NO_MATCH``: passes the method request body through the integration request to the back end without transformation when the method request content type does not match any content type associated with the mapping templates defined in the integration request. ``WHEN_NO_TEMPLATES``: passes the method request body through the integration request to the back end without transformation when no mapping template is defined in the integration request. If a template is defined when this option is selected, the method request of an unmapped content-type will be rejected with an HTTP 415 Unsupported Media Type response. ``NEVER``: rejects the method request with an HTTP 415 Unsupported Media Type response when either the method request content type does not match any content type associated with the mapping templates defined in the integration request or no mapping template is defined in the integration request. + :param Any request_parameters: A key-value map specifying request parameters that are passed from the method request to the back end. The key is an integration request parameter name and the associated value is a method request parameter value or static value that must be enclosed within single quotes and pre-encoded as required by the back end. The method request parameter value must match the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and ``name`` must be a valid and unique method request parameter name. + :param Any request_templates: Represents a map of Velocity templates that are applied on the request payload based on the value of the Content-Type header sent by the client. The content type value is the key in this map, and the template (as a String) is the value. + :param pulumi.Input[int] timeout_in_millis: Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds or 29 seconds. + :param pulumi.Input[str] uri: Specifies Uniform Resource Identifier (URI) of the integration endpoint. + For ``HTTP`` or ``HTTP_PROXY`` integrations, the URI must be a fully formed, encoded HTTP(S) URL according to the RFC-3986 specification for standard integrations. If ``connectionType`` is ``VPC_LINK`` specify the Network Load Balancer DNS name. For ``AWS`` or ``AWS_PROXY`` integrations, the URI is of the form ``arn:aws:apigateway:{region}:{subdomain.service|service}:path|action/{service_api}``. Here, {Region} is the API Gateway region (e.g., us-east-1); {service} is the name of the integrated AWS service (e.g., s3); and {subdomain} is a designated subdomain supported by certain AWS service for fast host-name lookup. action can be used for an AWS service action-based API, using an Action={name}&{p1}={v1}&p2={v2}... query string. The ensuing {service_api} refers to a supported action {name} plus any required input parameters. Alternatively, path can be used for an AWS service path-based API. The ensuing service_api refers to the path to an AWS service resource, including the region of the integrated AWS service, if applicable. For example, for integration with the S3 API of GetObject, the uri can be either ``arn:aws:apigateway:us-west-2:s3:action/GetObject&Bucket={bucket}&Key={key}`` or ``arn:aws:apigateway:us-west-2:s3:path/{bucket}/{key}`` """ MethodIntegrationArgs._configure( lambda key, value: pulumi.set(__self__, key, value), @@ -1374,7 +1393,8 @@ def _configure( @pulumi.getter def type(self) -> pulumi.Input['MethodIntegrationType']: """ - The type of backend that your method is running. + Specifies an API method integration type. The valid value is one of the following: + For the HTTP and HTTP proxy integrations, each integration can specify a protocol (``http/https``), port and path. Standard 80 and 443 ports are supported as well as custom ports above 1024. An HTTP or HTTP proxy integration with a ``connectionType`` of ``VPC_LINK`` is referred to as a private integration and uses a VpcLink to connect API Gateway to a network load balancer of a VPC. """ return pulumi.get(self, "type") @@ -1386,7 +1406,7 @@ def type(self, value: pulumi.Input['MethodIntegrationType']): @pulumi.getter(name="cacheKeyParameters") def cache_key_parameters(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - A list of request parameters whose values API Gateway caches. + A list of request parameters whose values API Gateway caches. To be valid values for ``cacheKeyParameters``, these parameters must also be specified for Method ``requestParameters``. """ return pulumi.get(self, "cache_key_parameters") @@ -1398,7 +1418,7 @@ def cache_key_parameters(self, value: Optional[pulumi.Input[Sequence[pulumi.Inpu @pulumi.getter(name="cacheNamespace") def cache_namespace(self) -> Optional[pulumi.Input[str]]: """ - An API-specific tag group of related cached parameters. + Specifies a group of related cached parameters. By default, API Gateway uses the resource ID as the ``cacheNamespace``. You can specify the same ``cacheNamespace`` across resources to return the same cached data for requests to different resources. """ return pulumi.get(self, "cache_namespace") @@ -1410,7 +1430,7 @@ def cache_namespace(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="connectionId") def connection_id(self) -> Optional[pulumi.Input[str]]: """ - The ID of the VpcLink used for the integration when connectionType=VPC_LINK, otherwise undefined. + The ID of the VpcLink used for the integration when ``connectionType=VPC_LINK`` and undefined, otherwise. """ return pulumi.get(self, "connection_id") @@ -1422,7 +1442,7 @@ def connection_id(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="connectionType") def connection_type(self) -> Optional[pulumi.Input['MethodIntegrationConnectionType']]: """ - The type of the network connection to the integration endpoint. + The type of the network connection to the integration endpoint. The valid value is ``INTERNET`` for connections through the public routable internet or ``VPC_LINK`` for private connections between API Gateway and a network load balancer in a VPC. The default value is ``INTERNET``. """ return pulumi.get(self, "connection_type") @@ -1434,7 +1454,8 @@ def connection_type(self, value: Optional[pulumi.Input['MethodIntegrationConnect @pulumi.getter(name="contentHandling") def content_handling(self) -> Optional[pulumi.Input['MethodIntegrationContentHandling']]: """ - Specifies how to handle request payload content type conversions. + Specifies how to handle request payload content type conversions. Supported values are ``CONVERT_TO_BINARY`` and ``CONVERT_TO_TEXT``, with the following behaviors: + If this property is not defined, the request payload will be passed through from the method request to integration request without modification, provided that the ``passthroughBehavior`` is configured to support payload pass-through. """ return pulumi.get(self, "content_handling") @@ -1446,7 +1467,7 @@ def content_handling(self, value: Optional[pulumi.Input['MethodIntegrationConten @pulumi.getter def credentials(self) -> Optional[pulumi.Input[str]]: """ - The credentials that are required for the integration. + Specifies the credentials required for the integration, if any. For AWS integrations, three options are available. To specify an IAM Role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To require that the caller's identity be passed through from the request, specify the string ``arn:aws:iam::\\*:user/\\*``. To use resource-based permissions on supported AWS services, specify null. """ return pulumi.get(self, "credentials") @@ -1458,7 +1479,7 @@ def credentials(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="integrationHttpMethod") def integration_http_method(self) -> Optional[pulumi.Input[str]]: """ - The integration's HTTP method type. + Specifies the integration's HTTP method type. For the Type property, if you specify ``MOCK``, this property is optional. For Lambda integrations, you must set the integration method to ``POST``. For all other types, you must specify this property. """ return pulumi.get(self, "integration_http_method") @@ -1470,7 +1491,7 @@ def integration_http_method(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="integrationResponses") def integration_responses(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['MethodIntegrationResponseArgs']]]]: """ - The response that API Gateway provides after a method's backend completes processing a request. + Specifies the integration's responses. """ return pulumi.get(self, "integration_responses") @@ -1482,7 +1503,7 @@ def integration_responses(self, value: Optional[pulumi.Input[Sequence[pulumi.Inp @pulumi.getter(name="passthroughBehavior") def passthrough_behavior(self) -> Optional[pulumi.Input['MethodIntegrationPassthroughBehavior']]: """ - Indicates when API Gateway passes requests to the targeted backend. + Specifies how the method request body of an unmapped content type will be passed through the integration request to the back end without transformation. A content type is unmapped if no mapping template is defined in the integration or the content type does not match any of the mapped content types, as specified in ``requestTemplates``. The valid value is one of the following: ``WHEN_NO_MATCH``: passes the method request body through the integration request to the back end without transformation when the method request content type does not match any content type associated with the mapping templates defined in the integration request. ``WHEN_NO_TEMPLATES``: passes the method request body through the integration request to the back end without transformation when no mapping template is defined in the integration request. If a template is defined when this option is selected, the method request of an unmapped content-type will be rejected with an HTTP 415 Unsupported Media Type response. ``NEVER``: rejects the method request with an HTTP 415 Unsupported Media Type response when either the method request content type does not match any content type associated with the mapping templates defined in the integration request or no mapping template is defined in the integration request. """ return pulumi.get(self, "passthrough_behavior") @@ -1494,7 +1515,7 @@ def passthrough_behavior(self, value: Optional[pulumi.Input['MethodIntegrationPa @pulumi.getter(name="requestParameters") def request_parameters(self) -> Optional[Any]: """ - The request parameters that API Gateway sends with the backend request. + A key-value map specifying request parameters that are passed from the method request to the back end. The key is an integration request parameter name and the associated value is a method request parameter value or static value that must be enclosed within single quotes and pre-encoded as required by the back end. The method request parameter value must match the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and ``name`` must be a valid and unique method request parameter name. """ return pulumi.get(self, "request_parameters") @@ -1506,7 +1527,7 @@ def request_parameters(self, value: Optional[Any]): @pulumi.getter(name="requestTemplates") def request_templates(self) -> Optional[Any]: """ - A map of Apache Velocity templates that are applied on the request payload. + Represents a map of Velocity templates that are applied on the request payload based on the value of the Content-Type header sent by the client. The content type value is the key in this map, and the template (as a String) is the value. """ return pulumi.get(self, "request_templates") @@ -1518,7 +1539,7 @@ def request_templates(self, value: Optional[Any]): @pulumi.getter(name="timeoutInMillis") def timeout_in_millis(self) -> Optional[pulumi.Input[int]]: """ - Custom timeout between 50 and 29,000 milliseconds. + Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds or 29 seconds. """ return pulumi.get(self, "timeout_in_millis") @@ -1530,7 +1551,8 @@ def timeout_in_millis(self, value: Optional[pulumi.Input[int]]): @pulumi.getter def uri(self) -> Optional[pulumi.Input[str]]: """ - The Uniform Resource Identifier (URI) for the integration. + Specifies Uniform Resource Identifier (URI) of the integration endpoint. + For ``HTTP`` or ``HTTP_PROXY`` integrations, the URI must be a fully formed, encoded HTTP(S) URL according to the RFC-3986 specification for standard integrations. If ``connectionType`` is ``VPC_LINK`` specify the Network Load Balancer DNS name. For ``AWS`` or ``AWS_PROXY`` integrations, the URI is of the form ``arn:aws:apigateway:{region}:{subdomain.service|service}:path|action/{service_api}``. Here, {Region} is the API Gateway region (e.g., us-east-1); {service} is the name of the integrated AWS service (e.g., s3); and {subdomain} is a designated subdomain supported by certain AWS service for fast host-name lookup. action can be used for an AWS service action-based API, using an Action={name}&{p1}={v1}&p2={v2}... query string. The ensuing {service_api} refers to a supported action {name} plus any required input parameters. Alternatively, path can be used for an AWS service path-based API. The ensuing service_api refers to the path to an AWS service resource, including the region of the integrated AWS service, if applicable. For example, for integration with the S3 API of GetObject, the uri can be either ``arn:aws:apigateway:us-west-2:s3:action/GetObject&Bucket={bucket}&Key={key}`` or ``arn:aws:apigateway:us-west-2:s3:path/{bucket}/{key}`` """ return pulumi.get(self, "uri") @@ -1546,9 +1568,10 @@ def __init__(__self__, *, response_models: Optional[Any] = None, response_parameters: Optional[Any] = None): """ - :param pulumi.Input[str] status_code: The method response's status code, which you map to an IntegrationResponse. - :param Any response_models: The resources used for the response's content type. Specify response models as key-value pairs (string-to-string maps), with a content type as the key and a Model resource name as the value. - :param Any response_parameters: Response parameters that API Gateway sends to the client that called a method. Specify response parameters as key-value pairs (string-to-Boolean maps), with a destination as the key and a Boolean as the value. + Represents a method response of a given HTTP status code returned to the client. The method response is passed from the back end through the associated integration response that can be transformed using a mapping template. + :param pulumi.Input[str] status_code: The method response's status code. + :param Any response_models: Specifies the Model resources used for the response's content-type. Response models are represented as a key/value map, with a content-type as the key and a Model name as the value. + :param Any response_parameters: A key-value map specifying required or optional response parameters that API Gateway can send back to the caller. A key defines a method response header and the value specifies whether the associated method response header is required or not. The expression of the key must match the pattern ``method.response.header.{name}``, where ``name`` is a valid and unique header name. API Gateway passes certain integration response data to the method response headers specified here according to the mapping you prescribe in the API's IntegrationResponse. The integration response data that can be mapped include an integration response header expressed in ``integration.response.header.{name}``, a static value enclosed within a pair of single quotes (e.g., ``'application/json'``), or a JSON expression from the back-end response payload in the form of ``integration.response.body.{JSON-expression}``, where ``JSON-expression`` is a valid JSON expression without the ``$`` prefix.) """ MethodResponseArgs._configure( lambda key, value: pulumi.set(__self__, key, value), @@ -1573,7 +1596,7 @@ def _configure( @pulumi.getter(name="statusCode") def status_code(self) -> pulumi.Input[str]: """ - The method response's status code, which you map to an IntegrationResponse. + The method response's status code. """ return pulumi.get(self, "status_code") @@ -1585,7 +1608,7 @@ def status_code(self, value: pulumi.Input[str]): @pulumi.getter(name="responseModels") def response_models(self) -> Optional[Any]: """ - The resources used for the response's content type. Specify response models as key-value pairs (string-to-string maps), with a content type as the key and a Model resource name as the value. + Specifies the Model resources used for the response's content-type. Response models are represented as a key/value map, with a content-type as the key and a Model name as the value. """ return pulumi.get(self, "response_models") @@ -1597,7 +1620,7 @@ def response_models(self, value: Optional[Any]): @pulumi.getter(name="responseParameters") def response_parameters(self) -> Optional[Any]: """ - Response parameters that API Gateway sends to the client that called a method. Specify response parameters as key-value pairs (string-to-Boolean maps), with a destination as the key and a Boolean as the value. + A key-value map specifying required or optional response parameters that API Gateway can send back to the caller. A key defines a method response header and the value specifies whether the associated method response header is required or not. The expression of the key must match the pattern ``method.response.header.{name}``, where ``name`` is a valid and unique header name. API Gateway passes certain integration response data to the method response headers specified here according to the mapping you prescribe in the API's IntegrationResponse. The integration response data that can be mapped include an integration response header expressed in ``integration.response.header.{name}``, a static value enclosed within a pair of single quotes (e.g., ``'application/json'``), or a JSON expression from the back-end response payload in the form of ``integration.response.body.{JSON-expression}``, where ``JSON-expression`` is a valid JSON expression without the ``$`` prefix.) """ return pulumi.get(self, "response_parameters") @@ -1611,6 +1634,12 @@ class RestApiEndpointConfigurationArgs: def __init__(__self__, *, types: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, vpc_endpoint_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): + """ + The ``EndpointConfiguration`` property type specifies the endpoint types of a REST API. + ``EndpointConfiguration`` is a property of the [AWS::ApiGateway::RestApi](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html) resource. + :param pulumi.Input[Sequence[pulumi.Input[str]]] types: A list of endpoint types of an API (RestApi) or its custom domain name (DomainName). For an edge-optimized API and its custom domain name, the endpoint type is ``"EDGE"``. For a regional API and its custom domain name, the endpoint type is ``REGIONAL``. For a private API, the endpoint type is ``PRIVATE``. + :param pulumi.Input[Sequence[pulumi.Input[str]]] vpc_endpoint_ids: A list of VpcEndpointIds of an API (RestApi) against which to create Route53 ALIASes. It is only supported for ``PRIVATE`` endpoint type. + """ RestApiEndpointConfigurationArgs._configure( lambda key, value: pulumi.set(__self__, key, value), types=types, @@ -1630,6 +1659,9 @@ def _configure( @property @pulumi.getter def types(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + """ + A list of endpoint types of an API (RestApi) or its custom domain name (DomainName). For an edge-optimized API and its custom domain name, the endpoint type is ``"EDGE"``. For a regional API and its custom domain name, the endpoint type is ``REGIONAL``. For a private API, the endpoint type is ``PRIVATE``. + """ return pulumi.get(self, "types") @types.setter @@ -1639,6 +1671,9 @@ def types(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter(name="vpcEndpointIds") def vpc_endpoint_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + """ + A list of VpcEndpointIds of an API (RestApi) against which to create Route53 ALIASes. It is only supported for ``PRIVATE`` endpoint type. + """ return pulumi.get(self, "vpc_endpoint_ids") @vpc_endpoint_ids.setter @@ -1653,6 +1688,14 @@ def __init__(__self__, *, e_tag: Optional[pulumi.Input[str]] = None, key: Optional[pulumi.Input[str]] = None, version: Optional[pulumi.Input[str]] = None): + """ + ``S3Location`` is a property of the [AWS::ApiGateway::RestApi](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html) resource that specifies the Amazon S3 location of a OpenAPI (formerly Swagger) file that defines a set of RESTful APIs in JSON or YAML. + On January 1, 2016, the Swagger Specification was donated to the [OpenAPI initiative](https://docs.aws.amazon.com/https://www.openapis.org/), becoming the foundation of the OpenAPI Specification. + :param pulumi.Input[str] bucket: The name of the S3 bucket where the OpenAPI file is stored. + :param pulumi.Input[str] e_tag: The Amazon S3 ETag (a file checksum) of the OpenAPI file. If you don't specify a value, API Gateway skips ETag validation of your OpenAPI file. + :param pulumi.Input[str] key: The file name of the OpenAPI file (Amazon S3 object name). + :param pulumi.Input[str] version: For versioning-enabled buckets, a specific version of the OpenAPI file. + """ RestApiS3LocationArgs._configure( lambda key, value: pulumi.set(__self__, key, value), bucket=bucket, @@ -1680,6 +1723,9 @@ def _configure( @property @pulumi.getter def bucket(self) -> Optional[pulumi.Input[str]]: + """ + The name of the S3 bucket where the OpenAPI file is stored. + """ return pulumi.get(self, "bucket") @bucket.setter @@ -1689,6 +1735,9 @@ def bucket(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="eTag") def e_tag(self) -> Optional[pulumi.Input[str]]: + """ + The Amazon S3 ETag (a file checksum) of the OpenAPI file. If you don't specify a value, API Gateway skips ETag validation of your OpenAPI file. + """ return pulumi.get(self, "e_tag") @e_tag.setter @@ -1698,6 +1747,9 @@ def e_tag(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def key(self) -> Optional[pulumi.Input[str]]: + """ + The file name of the OpenAPI file (Amazon S3 object name). + """ return pulumi.get(self, "key") @key.setter @@ -1707,6 +1759,9 @@ def key(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def version(self) -> Optional[pulumi.Input[str]]: + """ + For versioning-enabled buckets, a specific version of the OpenAPI file. + """ return pulumi.get(self, "version") @version.setter @@ -1758,9 +1813,10 @@ def __init__(__self__, *, destination_arn: Optional[pulumi.Input[str]] = None, format: Optional[pulumi.Input[str]] = None): """ - Specifies settings for logging access in this stage. - :param pulumi.Input[str] destination_arn: The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with amazon-apigateway-. This parameter is required to enable access logging. - :param pulumi.Input[str] format: A single line format of the access logs of data, as specified by selected $context variables (https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html#context-variable-reference). The format must include at least $context.requestId. This parameter is required to enable access logging. + The ``AccessLogSetting`` property type specifies settings for logging access in this stage. + ``AccessLogSetting`` is a property of the [AWS::ApiGateway::Stage](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html) resource. + :param pulumi.Input[str] destination_arn: The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with ``amazon-apigateway-``. This parameter is required to enable access logging. + :param pulumi.Input[str] format: A single line format of the access logs of data, as specified by selected [$context variables](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html#context-variable-reference). The format must include at least ``$context.requestId``. This parameter is required to enable access logging. """ StageAccessLogSettingArgs._configure( lambda key, value: pulumi.set(__self__, key, value), @@ -1782,7 +1838,7 @@ def _configure( @pulumi.getter(name="destinationArn") def destination_arn(self) -> Optional[pulumi.Input[str]]: """ - The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with amazon-apigateway-. This parameter is required to enable access logging. + The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with ``amazon-apigateway-``. This parameter is required to enable access logging. """ return pulumi.get(self, "destination_arn") @@ -1794,7 +1850,7 @@ def destination_arn(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def format(self) -> Optional[pulumi.Input[str]]: """ - A single line format of the access logs of data, as specified by selected $context variables (https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html#context-variable-reference). The format must include at least $context.requestId. This parameter is required to enable access logging. + A single line format of the access logs of data, as specified by selected [$context variables](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html#context-variable-reference). The format must include at least ``$context.requestId``. This parameter is required to enable access logging. """ return pulumi.get(self, "format") @@ -1811,11 +1867,11 @@ def __init__(__self__, *, stage_variable_overrides: Optional[Any] = None, use_stage_cache: Optional[pulumi.Input[bool]] = None): """ - Specifies settings for the canary deployment in this stage. - :param pulumi.Input[str] deployment_id: The identifier of the deployment that the stage points to. - :param pulumi.Input[float] percent_traffic: The percentage (0-100) of traffic diverted to a canary deployment. + Configuration settings of a canary deployment. + :param pulumi.Input[str] deployment_id: The ID of the canary deployment. + :param pulumi.Input[float] percent_traffic: The percent (0-100) of traffic diverted to a canary deployment. :param Any stage_variable_overrides: Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values. - :param pulumi.Input[bool] use_stage_cache: Whether the canary deployment uses the stage cache or not. + :param pulumi.Input[bool] use_stage_cache: A Boolean flag to indicate whether the canary deployment uses the stage cache or not. """ StageCanarySettingArgs._configure( lambda key, value: pulumi.set(__self__, key, value), @@ -1845,7 +1901,7 @@ def _configure( @pulumi.getter(name="deploymentId") def deployment_id(self) -> Optional[pulumi.Input[str]]: """ - The identifier of the deployment that the stage points to. + The ID of the canary deployment. """ return pulumi.get(self, "deployment_id") @@ -1857,7 +1913,7 @@ def deployment_id(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="percentTraffic") def percent_traffic(self) -> Optional[pulumi.Input[float]]: """ - The percentage (0-100) of traffic diverted to a canary deployment. + The percent (0-100) of traffic diverted to a canary deployment. """ return pulumi.get(self, "percent_traffic") @@ -1881,7 +1937,7 @@ def stage_variable_overrides(self, value: Optional[Any]): @pulumi.getter(name="useStageCache") def use_stage_cache(self) -> Optional[pulumi.Input[bool]]: """ - Whether the canary deployment uses the stage cache or not. + A Boolean flag to indicate whether the canary deployment uses the stage cache or not. """ return pulumi.get(self, "use_stage_cache") @@ -1904,17 +1960,18 @@ def __init__(__self__, *, throttling_burst_limit: Optional[pulumi.Input[int]] = None, throttling_rate_limit: Optional[pulumi.Input[float]] = None): """ - Configures settings for all methods in a stage. - :param pulumi.Input[bool] cache_data_encrypted: Indicates whether the cached responses are encrypted. - :param pulumi.Input[int] cache_ttl_in_seconds: The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. - :param pulumi.Input[bool] caching_enabled: Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses. - :param pulumi.Input[bool] data_trace_enabled: Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs. - :param pulumi.Input[str] http_method: The HTTP method. You can use an asterisk (*) as a wildcard to apply method settings to multiple methods. - :param pulumi.Input[str] logging_level: The logging level for this method. For valid values, see the loggingLevel property of the Stage (https://docs.aws.amazon.com/apigateway/api-reference/resource/stage/#loggingLevel) resource in the Amazon API Gateway API Reference. - :param pulumi.Input[bool] metrics_enabled: Indicates whether Amazon CloudWatch metrics are enabled for methods in the stage. - :param pulumi.Input[str] resource_path: The resource path for this method. Forward slashes (/) are encoded as ~1 and the initial slash must include a forward slash. For example, the path value /resource/subresource must be encoded as /~1resource~1subresource. To specify the root path, use only a slash (/). You can use an asterisk (*) as a wildcard to apply method settings to multiple methods. - :param pulumi.Input[int] throttling_burst_limit: The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. - :param pulumi.Input[float] throttling_rate_limit: The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. + The ``MethodSetting`` property type configures settings for all methods in a stage. + The ``MethodSettings`` property of the ``AWS::ApiGateway::Stage`` resource contains a list of ``MethodSetting`` property types. + :param pulumi.Input[bool] cache_data_encrypted: Specifies whether the cached responses are encrypted. + :param pulumi.Input[int] cache_ttl_in_seconds: Specifies the time to live (TTL), in seconds, for cached responses. The higher the TTL, the longer the response will be cached. + :param pulumi.Input[bool] caching_enabled: Specifies whether responses should be cached and returned for requests. A cache cluster must be enabled on the stage for responses to be cached. + :param pulumi.Input[bool] data_trace_enabled: Specifies whether data trace logging is enabled for this method, which affects the log entries pushed to Amazon CloudWatch Logs. This can be useful to troubleshoot APIs, but can result in logging sensitive data. We recommend that you don't enable this option for production APIs. + :param pulumi.Input[str] http_method: The HTTP method. To apply settings to multiple resources and methods, specify an asterisk (``*``) for the ``HttpMethod`` and ``/*`` for the ``ResourcePath``. This parameter is required when you specify a ``MethodSetting``. + :param pulumi.Input[str] logging_level: Specifies the logging level for this method, which affects the log entries pushed to Amazon CloudWatch Logs. Valid values are ``OFF``, ``ERROR``, and ``INFO``. Choose ``ERROR`` to write only error-level entries to CloudWatch Logs, or choose ``INFO`` to include all ``ERROR`` events as well as extra informational events. + :param pulumi.Input[bool] metrics_enabled: Specifies whether Amazon CloudWatch metrics are enabled for this method. + :param pulumi.Input[str] resource_path: The resource path for this method. Forward slashes (``/``) are encoded as ``~1`` and the initial slash must include a forward slash. For example, the path value ``/resource/subresource`` must be encoded as ``/~1resource~1subresource``. To specify the root path, use only a slash (``/``). To apply settings to multiple resources and methods, specify an asterisk (``*``) for the ``HttpMethod`` and ``/*`` for the ``ResourcePath``. This parameter is required when you specify a ``MethodSetting``. + :param pulumi.Input[int] throttling_burst_limit: Specifies the throttling burst limit. + :param pulumi.Input[float] throttling_rate_limit: Specifies the throttling rate limit. """ StageMethodSettingArgs._configure( lambda key, value: pulumi.set(__self__, key, value), @@ -1968,7 +2025,7 @@ def _configure( @pulumi.getter(name="cacheDataEncrypted") def cache_data_encrypted(self) -> Optional[pulumi.Input[bool]]: """ - Indicates whether the cached responses are encrypted. + Specifies whether the cached responses are encrypted. """ return pulumi.get(self, "cache_data_encrypted") @@ -1980,7 +2037,7 @@ def cache_data_encrypted(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter(name="cacheTtlInSeconds") def cache_ttl_in_seconds(self) -> Optional[pulumi.Input[int]]: """ - The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. + Specifies the time to live (TTL), in seconds, for cached responses. The higher the TTL, the longer the response will be cached. """ return pulumi.get(self, "cache_ttl_in_seconds") @@ -1992,7 +2049,7 @@ def cache_ttl_in_seconds(self, value: Optional[pulumi.Input[int]]): @pulumi.getter(name="cachingEnabled") def caching_enabled(self) -> Optional[pulumi.Input[bool]]: """ - Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses. + Specifies whether responses should be cached and returned for requests. A cache cluster must be enabled on the stage for responses to be cached. """ return pulumi.get(self, "caching_enabled") @@ -2004,7 +2061,7 @@ def caching_enabled(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter(name="dataTraceEnabled") def data_trace_enabled(self) -> Optional[pulumi.Input[bool]]: """ - Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs. + Specifies whether data trace logging is enabled for this method, which affects the log entries pushed to Amazon CloudWatch Logs. This can be useful to troubleshoot APIs, but can result in logging sensitive data. We recommend that you don't enable this option for production APIs. """ return pulumi.get(self, "data_trace_enabled") @@ -2016,7 +2073,7 @@ def data_trace_enabled(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter(name="httpMethod") def http_method(self) -> Optional[pulumi.Input[str]]: """ - The HTTP method. You can use an asterisk (*) as a wildcard to apply method settings to multiple methods. + The HTTP method. To apply settings to multiple resources and methods, specify an asterisk (``*``) for the ``HttpMethod`` and ``/*`` for the ``ResourcePath``. This parameter is required when you specify a ``MethodSetting``. """ return pulumi.get(self, "http_method") @@ -2028,7 +2085,7 @@ def http_method(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="loggingLevel") def logging_level(self) -> Optional[pulumi.Input[str]]: """ - The logging level for this method. For valid values, see the loggingLevel property of the Stage (https://docs.aws.amazon.com/apigateway/api-reference/resource/stage/#loggingLevel) resource in the Amazon API Gateway API Reference. + Specifies the logging level for this method, which affects the log entries pushed to Amazon CloudWatch Logs. Valid values are ``OFF``, ``ERROR``, and ``INFO``. Choose ``ERROR`` to write only error-level entries to CloudWatch Logs, or choose ``INFO`` to include all ``ERROR`` events as well as extra informational events. """ return pulumi.get(self, "logging_level") @@ -2040,7 +2097,7 @@ def logging_level(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="metricsEnabled") def metrics_enabled(self) -> Optional[pulumi.Input[bool]]: """ - Indicates whether Amazon CloudWatch metrics are enabled for methods in the stage. + Specifies whether Amazon CloudWatch metrics are enabled for this method. """ return pulumi.get(self, "metrics_enabled") @@ -2052,7 +2109,7 @@ def metrics_enabled(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter(name="resourcePath") def resource_path(self) -> Optional[pulumi.Input[str]]: """ - The resource path for this method. Forward slashes (/) are encoded as ~1 and the initial slash must include a forward slash. For example, the path value /resource/subresource must be encoded as /~1resource~1subresource. To specify the root path, use only a slash (/). You can use an asterisk (*) as a wildcard to apply method settings to multiple methods. + The resource path for this method. Forward slashes (``/``) are encoded as ``~1`` and the initial slash must include a forward slash. For example, the path value ``/resource/subresource`` must be encoded as ``/~1resource~1subresource``. To specify the root path, use only a slash (``/``). To apply settings to multiple resources and methods, specify an asterisk (``*``) for the ``HttpMethod`` and ``/*`` for the ``ResourcePath``. This parameter is required when you specify a ``MethodSetting``. """ return pulumi.get(self, "resource_path") @@ -2064,7 +2121,7 @@ def resource_path(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="throttlingBurstLimit") def throttling_burst_limit(self) -> Optional[pulumi.Input[int]]: """ - The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. + Specifies the throttling burst limit. """ return pulumi.get(self, "throttling_burst_limit") @@ -2076,7 +2133,7 @@ def throttling_burst_limit(self, value: Optional[pulumi.Input[int]]): @pulumi.getter(name="throttlingRateLimit") def throttling_rate_limit(self) -> Optional[pulumi.Input[float]]: """ - The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. + Specifies the throttling rate limit. """ return pulumi.get(self, "throttling_rate_limit") diff --git a/sdk/python/pulumi_aws_native/apigateway/account.py b/sdk/python/pulumi_aws_native/apigateway/account.py index 32800ff3c7..21d506e1e9 100644 --- a/sdk/python/pulumi_aws_native/apigateway/account.py +++ b/sdk/python/pulumi_aws_native/apigateway/account.py @@ -17,7 +17,7 @@ def __init__(__self__, *, cloud_watch_role_arn: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a Account resource. - :param pulumi.Input[str] cloud_watch_role_arn: The Amazon Resource Name (ARN) of an IAM role that has write access to CloudWatch Logs in your account. + :param pulumi.Input[str] cloud_watch_role_arn: The ARN of an Amazon CloudWatch role for the current Account. """ AccountArgs._configure( lambda key, value: pulumi.set(__self__, key, value), @@ -35,7 +35,7 @@ def _configure( @pulumi.getter(name="cloudWatchRoleArn") def cloud_watch_role_arn(self) -> Optional[pulumi.Input[str]]: """ - The Amazon Resource Name (ARN) of an IAM role that has write access to CloudWatch Logs in your account. + The ARN of an Amazon CloudWatch role for the current Account. """ return pulumi.get(self, "cloud_watch_role_arn") @@ -52,11 +52,11 @@ def __init__(__self__, cloud_watch_role_arn: Optional[pulumi.Input[str]] = None, __props__=None): """ - Resource Type definition for AWS::ApiGateway::Account + The ``AWS::ApiGateway::Account`` resource specifies the IAM role that Amazon API Gateway uses to write API logs to Amazon CloudWatch Logs. To avoid overwriting other roles, you should only have one ``AWS::ApiGateway::Account`` resource per region per account. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] cloud_watch_role_arn: The Amazon Resource Name (ARN) of an IAM role that has write access to CloudWatch Logs in your account. + :param pulumi.Input[str] cloud_watch_role_arn: The ARN of an Amazon CloudWatch role for the current Account. """ ... @overload @@ -65,7 +65,7 @@ def __init__(__self__, args: Optional[AccountArgs] = None, opts: Optional[pulumi.ResourceOptions] = None): """ - Resource Type definition for AWS::ApiGateway::Account + The ``AWS::ApiGateway::Account`` resource specifies the IAM role that Amazon API Gateway uses to write API logs to Amazon CloudWatch Logs. To avoid overwriting other roles, you should only have one ``AWS::ApiGateway::Account`` resource per region per account. :param str resource_name: The name of the resource. :param AccountArgs args: The arguments to use to populate this resource's properties. @@ -126,7 +126,7 @@ def get(resource_name: str, @pulumi.getter(name="cloudWatchRoleArn") def cloud_watch_role_arn(self) -> pulumi.Output[Optional[str]]: """ - The Amazon Resource Name (ARN) of an IAM role that has write access to CloudWatch Logs in your account. + The ARN of an Amazon CloudWatch role for the current Account. """ return pulumi.get(self, "cloud_watch_role_arn") diff --git a/sdk/python/pulumi_aws_native/apigateway/authorizer.py b/sdk/python/pulumi_aws_native/apigateway/authorizer.py index 770d611b42..0843bc9a27 100644 --- a/sdk/python/pulumi_aws_native/apigateway/authorizer.py +++ b/sdk/python/pulumi_aws_native/apigateway/authorizer.py @@ -26,16 +26,16 @@ def __init__(__self__, *, provider_arns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): """ The set of arguments for constructing a Authorizer resource. - :param pulumi.Input[str] rest_api_id: The identifier of the API. - :param pulumi.Input[str] type: The authorizer type. + :param pulumi.Input[str] rest_api_id: The string identifier of the associated RestApi. + :param pulumi.Input[str] type: The authorizer type. Valid values are ``TOKEN`` for a Lambda function using a single authorization token submitted in a custom header, ``REQUEST`` for a Lambda function using incoming request parameters, and ``COGNITO_USER_POOLS`` for using an Amazon Cognito user pool. :param pulumi.Input[str] auth_type: Optional customer-defined field, used in OpenAPI imports and exports without functional impact. - :param pulumi.Input[str] authorizer_credentials: Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. - :param pulumi.Input[int] authorizer_result_ttl_in_seconds: The TTL in seconds of cached authorizer results. - :param pulumi.Input[str] authorizer_uri: Specifies the authorizer's Uniform Resource Identifier (URI). - :param pulumi.Input[str] identity_source: The identity source for which authorization is requested. - :param pulumi.Input[str] identity_validation_expression: A validation expression for the incoming identity token. + :param pulumi.Input[str] authorizer_credentials: Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. To specify an IAM role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To use resource-based permissions on the Lambda function, specify null. + :param pulumi.Input[int] authorizer_result_ttl_in_seconds: The TTL in seconds of cached authorizer results. If it equals 0, authorization caching is disabled. If it is greater than 0, API Gateway will cache authorizer responses. If this field is not set, the default value is 300. The maximum value is 3600, or 1 hour. + :param pulumi.Input[str] authorizer_uri: Specifies the authorizer's Uniform Resource Identifier (URI). For ``TOKEN`` or ``REQUEST`` authorizers, this must be a well-formed Lambda function URI, for example, ``arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:{account_id}:function:{lambda_function_name}/invocations``. In general, the URI has this form ``arn:aws:apigateway:{region}:lambda:path/{service_api}``, where ``{region}`` is the same as the region hosting the Lambda function, ``path`` indicates that the remaining substring in the URI should be treated as the path to the resource, including the initial ``/``. For Lambda functions, this is usually of the form ``/2015-03-31/functions/[FunctionARN]/invocations``. + :param pulumi.Input[str] identity_source: The identity source for which authorization is requested. For a ``TOKEN`` or ``COGNITO_USER_POOLS`` authorizer, this is required and specifies the request header mapping expression for the custom header holding the authorization token submitted by the client. For example, if the token header name is ``Auth``, the header mapping expression is ``method.request.header.Auth``. For the ``REQUEST`` authorizer, this is required when authorization caching is enabled. The value is a comma-separated string of one or more mapping expressions of the specified request parameters. For example, if an ``Auth`` header, a ``Name`` query string parameter are defined as identity sources, this value is ``method.request.header.Auth, method.request.querystring.Name``. These parameters will be used to derive the authorization caching key and to perform runtime validation of the ``REQUEST`` authorizer by verifying all of the identity-related request parameters are present, not null and non-empty. Only when this is true does the authorizer invoke the authorizer Lambda function, otherwise, it returns a 401 Unauthorized response without calling the Lambda function. The valid value is a string of comma-separated mapping expressions of the specified request parameters. When the authorization caching is not enabled, this property is optional. + :param pulumi.Input[str] identity_validation_expression: A validation expression for the incoming identity token. For ``TOKEN`` authorizers, this value is a regular expression. For ``COGNITO_USER_POOLS`` authorizers, API Gateway will match the ``aud`` field of the incoming token from the client against the specified regular expression. It will invoke the authorizer's Lambda function when there is a match. Otherwise, it will return a 401 Unauthorized response without calling the Lambda function. The validation expression does not apply to the ``REQUEST`` authorizer. :param pulumi.Input[str] name: The name of the authorizer. - :param pulumi.Input[Sequence[pulumi.Input[str]]] provider_arns: A list of the Amazon Cognito user pool ARNs for the COGNITO_USER_POOLS authorizer. + :param pulumi.Input[Sequence[pulumi.Input[str]]] provider_arns: A list of the Amazon Cognito user pool ARNs for the ``COGNITO_USER_POOLS`` authorizer. Each element is of this format: ``arn:aws:cognito-idp:{region}:{account_id}:userpool/{user_pool_id}``. For a ``TOKEN`` or ``REQUEST`` authorizer, this is not defined. """ AuthorizerArgs._configure( lambda key, value: pulumi.set(__self__, key, value), @@ -87,7 +87,7 @@ def _configure( @pulumi.getter(name="restApiId") def rest_api_id(self) -> pulumi.Input[str]: """ - The identifier of the API. + The string identifier of the associated RestApi. """ return pulumi.get(self, "rest_api_id") @@ -99,7 +99,7 @@ def rest_api_id(self, value: pulumi.Input[str]): @pulumi.getter def type(self) -> pulumi.Input[str]: """ - The authorizer type. + The authorizer type. Valid values are ``TOKEN`` for a Lambda function using a single authorization token submitted in a custom header, ``REQUEST`` for a Lambda function using incoming request parameters, and ``COGNITO_USER_POOLS`` for using an Amazon Cognito user pool. """ return pulumi.get(self, "type") @@ -123,7 +123,7 @@ def auth_type(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="authorizerCredentials") def authorizer_credentials(self) -> Optional[pulumi.Input[str]]: """ - Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. + Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. To specify an IAM role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To use resource-based permissions on the Lambda function, specify null. """ return pulumi.get(self, "authorizer_credentials") @@ -135,7 +135,7 @@ def authorizer_credentials(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="authorizerResultTtlInSeconds") def authorizer_result_ttl_in_seconds(self) -> Optional[pulumi.Input[int]]: """ - The TTL in seconds of cached authorizer results. + The TTL in seconds of cached authorizer results. If it equals 0, authorization caching is disabled. If it is greater than 0, API Gateway will cache authorizer responses. If this field is not set, the default value is 300. The maximum value is 3600, or 1 hour. """ return pulumi.get(self, "authorizer_result_ttl_in_seconds") @@ -147,7 +147,7 @@ def authorizer_result_ttl_in_seconds(self, value: Optional[pulumi.Input[int]]): @pulumi.getter(name="authorizerUri") def authorizer_uri(self) -> Optional[pulumi.Input[str]]: """ - Specifies the authorizer's Uniform Resource Identifier (URI). + Specifies the authorizer's Uniform Resource Identifier (URI). For ``TOKEN`` or ``REQUEST`` authorizers, this must be a well-formed Lambda function URI, for example, ``arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:{account_id}:function:{lambda_function_name}/invocations``. In general, the URI has this form ``arn:aws:apigateway:{region}:lambda:path/{service_api}``, where ``{region}`` is the same as the region hosting the Lambda function, ``path`` indicates that the remaining substring in the URI should be treated as the path to the resource, including the initial ``/``. For Lambda functions, this is usually of the form ``/2015-03-31/functions/[FunctionARN]/invocations``. """ return pulumi.get(self, "authorizer_uri") @@ -159,7 +159,7 @@ def authorizer_uri(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="identitySource") def identity_source(self) -> Optional[pulumi.Input[str]]: """ - The identity source for which authorization is requested. + The identity source for which authorization is requested. For a ``TOKEN`` or ``COGNITO_USER_POOLS`` authorizer, this is required and specifies the request header mapping expression for the custom header holding the authorization token submitted by the client. For example, if the token header name is ``Auth``, the header mapping expression is ``method.request.header.Auth``. For the ``REQUEST`` authorizer, this is required when authorization caching is enabled. The value is a comma-separated string of one or more mapping expressions of the specified request parameters. For example, if an ``Auth`` header, a ``Name`` query string parameter are defined as identity sources, this value is ``method.request.header.Auth, method.request.querystring.Name``. These parameters will be used to derive the authorization caching key and to perform runtime validation of the ``REQUEST`` authorizer by verifying all of the identity-related request parameters are present, not null and non-empty. Only when this is true does the authorizer invoke the authorizer Lambda function, otherwise, it returns a 401 Unauthorized response without calling the Lambda function. The valid value is a string of comma-separated mapping expressions of the specified request parameters. When the authorization caching is not enabled, this property is optional. """ return pulumi.get(self, "identity_source") @@ -171,7 +171,7 @@ def identity_source(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="identityValidationExpression") def identity_validation_expression(self) -> Optional[pulumi.Input[str]]: """ - A validation expression for the incoming identity token. + A validation expression for the incoming identity token. For ``TOKEN`` authorizers, this value is a regular expression. For ``COGNITO_USER_POOLS`` authorizers, API Gateway will match the ``aud`` field of the incoming token from the client against the specified regular expression. It will invoke the authorizer's Lambda function when there is a match. Otherwise, it will return a 401 Unauthorized response without calling the Lambda function. The validation expression does not apply to the ``REQUEST`` authorizer. """ return pulumi.get(self, "identity_validation_expression") @@ -195,7 +195,7 @@ def name(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="providerArns") def provider_arns(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - A list of the Amazon Cognito user pool ARNs for the COGNITO_USER_POOLS authorizer. + A list of the Amazon Cognito user pool ARNs for the ``COGNITO_USER_POOLS`` authorizer. Each element is of this format: ``arn:aws:cognito-idp:{region}:{account_id}:userpool/{user_pool_id}``. For a ``TOKEN`` or ``REQUEST`` authorizer, this is not defined. """ return pulumi.get(self, "provider_arns") @@ -221,20 +221,20 @@ def __init__(__self__, type: Optional[pulumi.Input[str]] = None, __props__=None): """ - Represents an authorization layer for methods. If enabled on a method, API Gateway will activate the authorizer when a client calls the method. + The ``AWS::ApiGateway::Authorizer`` resource creates an authorization layer that API Gateway activates for methods that have authorization enabled. API Gateway activates the authorizer when a client calls those methods. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] auth_type: Optional customer-defined field, used in OpenAPI imports and exports without functional impact. - :param pulumi.Input[str] authorizer_credentials: Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. - :param pulumi.Input[int] authorizer_result_ttl_in_seconds: The TTL in seconds of cached authorizer results. - :param pulumi.Input[str] authorizer_uri: Specifies the authorizer's Uniform Resource Identifier (URI). - :param pulumi.Input[str] identity_source: The identity source for which authorization is requested. - :param pulumi.Input[str] identity_validation_expression: A validation expression for the incoming identity token. + :param pulumi.Input[str] authorizer_credentials: Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. To specify an IAM role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To use resource-based permissions on the Lambda function, specify null. + :param pulumi.Input[int] authorizer_result_ttl_in_seconds: The TTL in seconds of cached authorizer results. If it equals 0, authorization caching is disabled. If it is greater than 0, API Gateway will cache authorizer responses. If this field is not set, the default value is 300. The maximum value is 3600, or 1 hour. + :param pulumi.Input[str] authorizer_uri: Specifies the authorizer's Uniform Resource Identifier (URI). For ``TOKEN`` or ``REQUEST`` authorizers, this must be a well-formed Lambda function URI, for example, ``arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:{account_id}:function:{lambda_function_name}/invocations``. In general, the URI has this form ``arn:aws:apigateway:{region}:lambda:path/{service_api}``, where ``{region}`` is the same as the region hosting the Lambda function, ``path`` indicates that the remaining substring in the URI should be treated as the path to the resource, including the initial ``/``. For Lambda functions, this is usually of the form ``/2015-03-31/functions/[FunctionARN]/invocations``. + :param pulumi.Input[str] identity_source: The identity source for which authorization is requested. For a ``TOKEN`` or ``COGNITO_USER_POOLS`` authorizer, this is required and specifies the request header mapping expression for the custom header holding the authorization token submitted by the client. For example, if the token header name is ``Auth``, the header mapping expression is ``method.request.header.Auth``. For the ``REQUEST`` authorizer, this is required when authorization caching is enabled. The value is a comma-separated string of one or more mapping expressions of the specified request parameters. For example, if an ``Auth`` header, a ``Name`` query string parameter are defined as identity sources, this value is ``method.request.header.Auth, method.request.querystring.Name``. These parameters will be used to derive the authorization caching key and to perform runtime validation of the ``REQUEST`` authorizer by verifying all of the identity-related request parameters are present, not null and non-empty. Only when this is true does the authorizer invoke the authorizer Lambda function, otherwise, it returns a 401 Unauthorized response without calling the Lambda function. The valid value is a string of comma-separated mapping expressions of the specified request parameters. When the authorization caching is not enabled, this property is optional. + :param pulumi.Input[str] identity_validation_expression: A validation expression for the incoming identity token. For ``TOKEN`` authorizers, this value is a regular expression. For ``COGNITO_USER_POOLS`` authorizers, API Gateway will match the ``aud`` field of the incoming token from the client against the specified regular expression. It will invoke the authorizer's Lambda function when there is a match. Otherwise, it will return a 401 Unauthorized response without calling the Lambda function. The validation expression does not apply to the ``REQUEST`` authorizer. :param pulumi.Input[str] name: The name of the authorizer. - :param pulumi.Input[Sequence[pulumi.Input[str]]] provider_arns: A list of the Amazon Cognito user pool ARNs for the COGNITO_USER_POOLS authorizer. - :param pulumi.Input[str] rest_api_id: The identifier of the API. - :param pulumi.Input[str] type: The authorizer type. + :param pulumi.Input[Sequence[pulumi.Input[str]]] provider_arns: A list of the Amazon Cognito user pool ARNs for the ``COGNITO_USER_POOLS`` authorizer. Each element is of this format: ``arn:aws:cognito-idp:{region}:{account_id}:userpool/{user_pool_id}``. For a ``TOKEN`` or ``REQUEST`` authorizer, this is not defined. + :param pulumi.Input[str] rest_api_id: The string identifier of the associated RestApi. + :param pulumi.Input[str] type: The authorizer type. Valid values are ``TOKEN`` for a Lambda function using a single authorization token submitted in a custom header, ``REQUEST`` for a Lambda function using incoming request parameters, and ``COGNITO_USER_POOLS`` for using an Amazon Cognito user pool. """ ... @overload @@ -243,7 +243,7 @@ def __init__(__self__, args: AuthorizerArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Represents an authorization layer for methods. If enabled on a method, API Gateway will activate the authorizer when a client calls the method. + The ``AWS::ApiGateway::Authorizer`` resource creates an authorization layer that API Gateway activates for methods that have authorization enabled. API Gateway activates the authorizer when a client calls those methods. :param str resource_name: The name of the resource. :param AuthorizerArgs args: The arguments to use to populate this resource's properties. @@ -347,7 +347,7 @@ def auth_type(self) -> pulumi.Output[Optional[str]]: @pulumi.getter(name="authorizerCredentials") def authorizer_credentials(self) -> pulumi.Output[Optional[str]]: """ - Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. + Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. To specify an IAM role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To use resource-based permissions on the Lambda function, specify null. """ return pulumi.get(self, "authorizer_credentials") @@ -360,7 +360,7 @@ def authorizer_id(self) -> pulumi.Output[str]: @pulumi.getter(name="authorizerResultTtlInSeconds") def authorizer_result_ttl_in_seconds(self) -> pulumi.Output[Optional[int]]: """ - The TTL in seconds of cached authorizer results. + The TTL in seconds of cached authorizer results. If it equals 0, authorization caching is disabled. If it is greater than 0, API Gateway will cache authorizer responses. If this field is not set, the default value is 300. The maximum value is 3600, or 1 hour. """ return pulumi.get(self, "authorizer_result_ttl_in_seconds") @@ -368,7 +368,7 @@ def authorizer_result_ttl_in_seconds(self) -> pulumi.Output[Optional[int]]: @pulumi.getter(name="authorizerUri") def authorizer_uri(self) -> pulumi.Output[Optional[str]]: """ - Specifies the authorizer's Uniform Resource Identifier (URI). + Specifies the authorizer's Uniform Resource Identifier (URI). For ``TOKEN`` or ``REQUEST`` authorizers, this must be a well-formed Lambda function URI, for example, ``arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:{account_id}:function:{lambda_function_name}/invocations``. In general, the URI has this form ``arn:aws:apigateway:{region}:lambda:path/{service_api}``, where ``{region}`` is the same as the region hosting the Lambda function, ``path`` indicates that the remaining substring in the URI should be treated as the path to the resource, including the initial ``/``. For Lambda functions, this is usually of the form ``/2015-03-31/functions/[FunctionARN]/invocations``. """ return pulumi.get(self, "authorizer_uri") @@ -376,7 +376,7 @@ def authorizer_uri(self) -> pulumi.Output[Optional[str]]: @pulumi.getter(name="identitySource") def identity_source(self) -> pulumi.Output[Optional[str]]: """ - The identity source for which authorization is requested. + The identity source for which authorization is requested. For a ``TOKEN`` or ``COGNITO_USER_POOLS`` authorizer, this is required and specifies the request header mapping expression for the custom header holding the authorization token submitted by the client. For example, if the token header name is ``Auth``, the header mapping expression is ``method.request.header.Auth``. For the ``REQUEST`` authorizer, this is required when authorization caching is enabled. The value is a comma-separated string of one or more mapping expressions of the specified request parameters. For example, if an ``Auth`` header, a ``Name`` query string parameter are defined as identity sources, this value is ``method.request.header.Auth, method.request.querystring.Name``. These parameters will be used to derive the authorization caching key and to perform runtime validation of the ``REQUEST`` authorizer by verifying all of the identity-related request parameters are present, not null and non-empty. Only when this is true does the authorizer invoke the authorizer Lambda function, otherwise, it returns a 401 Unauthorized response without calling the Lambda function. The valid value is a string of comma-separated mapping expressions of the specified request parameters. When the authorization caching is not enabled, this property is optional. """ return pulumi.get(self, "identity_source") @@ -384,7 +384,7 @@ def identity_source(self) -> pulumi.Output[Optional[str]]: @pulumi.getter(name="identityValidationExpression") def identity_validation_expression(self) -> pulumi.Output[Optional[str]]: """ - A validation expression for the incoming identity token. + A validation expression for the incoming identity token. For ``TOKEN`` authorizers, this value is a regular expression. For ``COGNITO_USER_POOLS`` authorizers, API Gateway will match the ``aud`` field of the incoming token from the client against the specified regular expression. It will invoke the authorizer's Lambda function when there is a match. Otherwise, it will return a 401 Unauthorized response without calling the Lambda function. The validation expression does not apply to the ``REQUEST`` authorizer. """ return pulumi.get(self, "identity_validation_expression") @@ -400,7 +400,7 @@ def name(self) -> pulumi.Output[str]: @pulumi.getter(name="providerArns") def provider_arns(self) -> pulumi.Output[Optional[Sequence[str]]]: """ - A list of the Amazon Cognito user pool ARNs for the COGNITO_USER_POOLS authorizer. + A list of the Amazon Cognito user pool ARNs for the ``COGNITO_USER_POOLS`` authorizer. Each element is of this format: ``arn:aws:cognito-idp:{region}:{account_id}:userpool/{user_pool_id}``. For a ``TOKEN`` or ``REQUEST`` authorizer, this is not defined. """ return pulumi.get(self, "provider_arns") @@ -408,7 +408,7 @@ def provider_arns(self) -> pulumi.Output[Optional[Sequence[str]]]: @pulumi.getter(name="restApiId") def rest_api_id(self) -> pulumi.Output[str]: """ - The identifier of the API. + The string identifier of the associated RestApi. """ return pulumi.get(self, "rest_api_id") @@ -416,7 +416,7 @@ def rest_api_id(self) -> pulumi.Output[str]: @pulumi.getter def type(self) -> pulumi.Output[str]: """ - The authorizer type. + The authorizer type. Valid values are ``TOKEN`` for a Lambda function using a single authorization token submitted in a custom header, ``REQUEST`` for a Lambda function using incoming request parameters, and ``COGNITO_USER_POOLS`` for using an Amazon Cognito user pool. """ return pulumi.get(self, "type") diff --git a/sdk/python/pulumi_aws_native/apigateway/deployment.py b/sdk/python/pulumi_aws_native/apigateway/deployment.py index 8e53109695..77e08c44cb 100644 --- a/sdk/python/pulumi_aws_native/apigateway/deployment.py +++ b/sdk/python/pulumi_aws_native/apigateway/deployment.py @@ -23,11 +23,11 @@ def __init__(__self__, *, stage_name: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a Deployment resource. - :param pulumi.Input[str] rest_api_id: The ID of the RestApi resource to deploy. - :param pulumi.Input['DeploymentCanarySettingsArgs'] deployment_canary_settings: Specifies settings for the canary deployment. - :param pulumi.Input[str] description: A description of the purpose of the API Gateway deployment. - :param pulumi.Input['DeploymentStageDescriptionArgs'] stage_description: Configures the stage that API Gateway creates with this deployment. - :param pulumi.Input[str] stage_name: A name for the stage that API Gateway creates with this deployment. Use only alphanumeric characters. + :param pulumi.Input[str] rest_api_id: The string identifier of the associated RestApi. + :param pulumi.Input['DeploymentCanarySettingsArgs'] deployment_canary_settings: The input configuration for a canary deployment. + :param pulumi.Input[str] description: The description for the Deployment resource to create. + :param pulumi.Input['DeploymentStageDescriptionArgs'] stage_description: The description of the Stage resource for the Deployment resource to create. To specify a stage description, you must also provide a stage name. + :param pulumi.Input[str] stage_name: The name of the Stage resource for the Deployment resource to create. """ DeploymentArgs._configure( lambda key, value: pulumi.set(__self__, key, value), @@ -60,7 +60,7 @@ def _configure( @pulumi.getter(name="restApiId") def rest_api_id(self) -> pulumi.Input[str]: """ - The ID of the RestApi resource to deploy. + The string identifier of the associated RestApi. """ return pulumi.get(self, "rest_api_id") @@ -72,7 +72,7 @@ def rest_api_id(self, value: pulumi.Input[str]): @pulumi.getter(name="deploymentCanarySettings") def deployment_canary_settings(self) -> Optional[pulumi.Input['DeploymentCanarySettingsArgs']]: """ - Specifies settings for the canary deployment. + The input configuration for a canary deployment. """ return pulumi.get(self, "deployment_canary_settings") @@ -84,7 +84,7 @@ def deployment_canary_settings(self, value: Optional[pulumi.Input['DeploymentCan @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: """ - A description of the purpose of the API Gateway deployment. + The description for the Deployment resource to create. """ return pulumi.get(self, "description") @@ -96,7 +96,7 @@ def description(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="stageDescription") def stage_description(self) -> Optional[pulumi.Input['DeploymentStageDescriptionArgs']]: """ - Configures the stage that API Gateway creates with this deployment. + The description of the Stage resource for the Deployment resource to create. To specify a stage description, you must also provide a stage name. """ return pulumi.get(self, "stage_description") @@ -108,7 +108,7 @@ def stage_description(self, value: Optional[pulumi.Input['DeploymentStageDescrip @pulumi.getter(name="stageName") def stage_name(self) -> Optional[pulumi.Input[str]]: """ - A name for the stage that API Gateway creates with this deployment. Use only alphanumeric characters. + The name of the Stage resource for the Deployment resource to create. """ return pulumi.get(self, "stage_name") @@ -129,15 +129,15 @@ def __init__(__self__, stage_name: Optional[pulumi.Input[str]] = None, __props__=None): """ - Resource Type definition for AWS::ApiGateway::Deployment + The ``AWS::ApiGateway::Deployment`` resource deploys an API Gateway ``RestApi`` resource to a stage so that clients can call the API over the internet. The stage acts as an environment. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[pulumi.InputType['DeploymentCanarySettingsArgs']] deployment_canary_settings: Specifies settings for the canary deployment. - :param pulumi.Input[str] description: A description of the purpose of the API Gateway deployment. - :param pulumi.Input[str] rest_api_id: The ID of the RestApi resource to deploy. - :param pulumi.Input[pulumi.InputType['DeploymentStageDescriptionArgs']] stage_description: Configures the stage that API Gateway creates with this deployment. - :param pulumi.Input[str] stage_name: A name for the stage that API Gateway creates with this deployment. Use only alphanumeric characters. + :param pulumi.Input[pulumi.InputType['DeploymentCanarySettingsArgs']] deployment_canary_settings: The input configuration for a canary deployment. + :param pulumi.Input[str] description: The description for the Deployment resource to create. + :param pulumi.Input[str] rest_api_id: The string identifier of the associated RestApi. + :param pulumi.Input[pulumi.InputType['DeploymentStageDescriptionArgs']] stage_description: The description of the Stage resource for the Deployment resource to create. To specify a stage description, you must also provide a stage name. + :param pulumi.Input[str] stage_name: The name of the Stage resource for the Deployment resource to create. """ ... @overload @@ -146,7 +146,7 @@ def __init__(__self__, args: DeploymentArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Resource Type definition for AWS::ApiGateway::Deployment + The ``AWS::ApiGateway::Deployment`` resource deploys an API Gateway ``RestApi`` resource to a stage so that clients can call the API over the internet. The stage acts as an environment. :param str resource_name: The name of the resource. :param DeploymentArgs args: The arguments to use to populate this resource's properties. @@ -235,7 +235,7 @@ def get(resource_name: str, @pulumi.getter(name="deploymentCanarySettings") def deployment_canary_settings(self) -> pulumi.Output[Optional['outputs.DeploymentCanarySettings']]: """ - Specifies settings for the canary deployment. + The input configuration for a canary deployment. """ return pulumi.get(self, "deployment_canary_settings") @@ -251,7 +251,7 @@ def deployment_id(self) -> pulumi.Output[str]: @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: """ - A description of the purpose of the API Gateway deployment. + The description for the Deployment resource to create. """ return pulumi.get(self, "description") @@ -259,7 +259,7 @@ def description(self) -> pulumi.Output[Optional[str]]: @pulumi.getter(name="restApiId") def rest_api_id(self) -> pulumi.Output[str]: """ - The ID of the RestApi resource to deploy. + The string identifier of the associated RestApi. """ return pulumi.get(self, "rest_api_id") @@ -267,7 +267,7 @@ def rest_api_id(self) -> pulumi.Output[str]: @pulumi.getter(name="stageDescription") def stage_description(self) -> pulumi.Output[Optional['outputs.DeploymentStageDescription']]: """ - Configures the stage that API Gateway creates with this deployment. + The description of the Stage resource for the Deployment resource to create. To specify a stage description, you must also provide a stage name. """ return pulumi.get(self, "stage_description") @@ -275,7 +275,7 @@ def stage_description(self) -> pulumi.Output[Optional['outputs.DeploymentStageDe @pulumi.getter(name="stageName") def stage_name(self) -> pulumi.Output[Optional[str]]: """ - A name for the stage that API Gateway creates with this deployment. Use only alphanumeric characters. + The name of the Stage resource for the Deployment resource to create. """ return pulumi.get(self, "stage_name") diff --git a/sdk/python/pulumi_aws_native/apigateway/documentation_part.py b/sdk/python/pulumi_aws_native/apigateway/documentation_part.py index 107287e0f7..c47439429b 100644 --- a/sdk/python/pulumi_aws_native/apigateway/documentation_part.py +++ b/sdk/python/pulumi_aws_native/apigateway/documentation_part.py @@ -22,9 +22,9 @@ def __init__(__self__, *, rest_api_id: pulumi.Input[str]): """ The set of arguments for constructing a DocumentationPart resource. - :param pulumi.Input['DocumentationPartLocationArgs'] location: The location of the API entity that the documentation applies to. - :param pulumi.Input[str] properties: The documentation content map of the targeted API entity. - :param pulumi.Input[str] rest_api_id: Identifier of the targeted API entity + :param pulumi.Input['DocumentationPartLocationArgs'] location: The location of the targeted API entity of the to-be-created documentation part. + :param pulumi.Input[str] properties: The new documentation content map of the targeted API entity. Enclosed key-value pairs are API-specific, but only OpenAPI-compliant key-value pairs can be exported and, hence, published. + :param pulumi.Input[str] rest_api_id: The string identifier of the associated RestApi. """ DocumentationPartArgs._configure( lambda key, value: pulumi.set(__self__, key, value), @@ -47,7 +47,7 @@ def _configure( @pulumi.getter def location(self) -> pulumi.Input['DocumentationPartLocationArgs']: """ - The location of the API entity that the documentation applies to. + The location of the targeted API entity of the to-be-created documentation part. """ return pulumi.get(self, "location") @@ -59,7 +59,7 @@ def location(self, value: pulumi.Input['DocumentationPartLocationArgs']): @pulumi.getter def properties(self) -> pulumi.Input[str]: """ - The documentation content map of the targeted API entity. + The new documentation content map of the targeted API entity. Enclosed key-value pairs are API-specific, but only OpenAPI-compliant key-value pairs can be exported and, hence, published. """ return pulumi.get(self, "properties") @@ -71,7 +71,7 @@ def properties(self, value: pulumi.Input[str]): @pulumi.getter(name="restApiId") def rest_api_id(self) -> pulumi.Input[str]: """ - Identifier of the targeted API entity + The string identifier of the associated RestApi. """ return pulumi.get(self, "rest_api_id") @@ -90,13 +90,13 @@ def __init__(__self__, rest_api_id: Optional[pulumi.Input[str]] = None, __props__=None): """ - Resource Type definition for AWS::ApiGateway::DocumentationPart + The ``AWS::ApiGateway::DocumentationPart`` resource creates a documentation part for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[pulumi.InputType['DocumentationPartLocationArgs']] location: The location of the API entity that the documentation applies to. - :param pulumi.Input[str] properties: The documentation content map of the targeted API entity. - :param pulumi.Input[str] rest_api_id: Identifier of the targeted API entity + :param pulumi.Input[pulumi.InputType['DocumentationPartLocationArgs']] location: The location of the targeted API entity of the to-be-created documentation part. + :param pulumi.Input[str] properties: The new documentation content map of the targeted API entity. Enclosed key-value pairs are API-specific, but only OpenAPI-compliant key-value pairs can be exported and, hence, published. + :param pulumi.Input[str] rest_api_id: The string identifier of the associated RestApi. """ ... @overload @@ -105,7 +105,7 @@ def __init__(__self__, args: DocumentationPartArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Resource Type definition for AWS::ApiGateway::DocumentationPart + The ``AWS::ApiGateway::DocumentationPart`` resource creates a documentation part for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*. :param str resource_name: The name of the resource. :param DocumentationPartArgs args: The arguments to use to populate this resource's properties. @@ -195,7 +195,7 @@ def documentation_part_id(self) -> pulumi.Output[str]: @pulumi.getter def location(self) -> pulumi.Output['outputs.DocumentationPartLocation']: """ - The location of the API entity that the documentation applies to. + The location of the targeted API entity of the to-be-created documentation part. """ return pulumi.get(self, "location") @@ -203,7 +203,7 @@ def location(self) -> pulumi.Output['outputs.DocumentationPartLocation']: @pulumi.getter def properties(self) -> pulumi.Output[str]: """ - The documentation content map of the targeted API entity. + The new documentation content map of the targeted API entity. Enclosed key-value pairs are API-specific, but only OpenAPI-compliant key-value pairs can be exported and, hence, published. """ return pulumi.get(self, "properties") @@ -211,7 +211,7 @@ def properties(self) -> pulumi.Output[str]: @pulumi.getter(name="restApiId") def rest_api_id(self) -> pulumi.Output[str]: """ - Identifier of the targeted API entity + The string identifier of the associated RestApi. """ return pulumi.get(self, "rest_api_id") diff --git a/sdk/python/pulumi_aws_native/apigateway/documentation_version.py b/sdk/python/pulumi_aws_native/apigateway/documentation_version.py index e19e896708..2490c929f4 100644 --- a/sdk/python/pulumi_aws_native/apigateway/documentation_version.py +++ b/sdk/python/pulumi_aws_native/apigateway/documentation_version.py @@ -19,9 +19,9 @@ def __init__(__self__, *, description: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a DocumentationVersion resource. - :param pulumi.Input[str] documentation_version: The version identifier of the API documentation snapshot. - :param pulumi.Input[str] rest_api_id: The identifier of the API. - :param pulumi.Input[str] description: The description of the API documentation snapshot. + :param pulumi.Input[str] documentation_version: The version identifier of the to-be-updated documentation version. + :param pulumi.Input[str] rest_api_id: The string identifier of the associated RestApi. + :param pulumi.Input[str] description: A description about the new documentation snapshot. """ DocumentationVersionArgs._configure( lambda key, value: pulumi.set(__self__, key, value), @@ -45,7 +45,7 @@ def _configure( @pulumi.getter(name="documentationVersion") def documentation_version(self) -> pulumi.Input[str]: """ - The version identifier of the API documentation snapshot. + The version identifier of the to-be-updated documentation version. """ return pulumi.get(self, "documentation_version") @@ -57,7 +57,7 @@ def documentation_version(self, value: pulumi.Input[str]): @pulumi.getter(name="restApiId") def rest_api_id(self) -> pulumi.Input[str]: """ - The identifier of the API. + The string identifier of the associated RestApi. """ return pulumi.get(self, "rest_api_id") @@ -69,7 +69,7 @@ def rest_api_id(self, value: pulumi.Input[str]): @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: """ - The description of the API documentation snapshot. + A description about the new documentation snapshot. """ return pulumi.get(self, "description") @@ -88,13 +88,13 @@ def __init__(__self__, rest_api_id: Optional[pulumi.Input[str]] = None, __props__=None): """ - A snapshot of the documentation of an API. + The ``AWS::ApiGateway::DocumentationVersion`` resource creates a snapshot of the documentation for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] description: The description of the API documentation snapshot. - :param pulumi.Input[str] documentation_version: The version identifier of the API documentation snapshot. - :param pulumi.Input[str] rest_api_id: The identifier of the API. + :param pulumi.Input[str] description: A description about the new documentation snapshot. + :param pulumi.Input[str] documentation_version: The version identifier of the to-be-updated documentation version. + :param pulumi.Input[str] rest_api_id: The string identifier of the associated RestApi. """ ... @overload @@ -103,7 +103,7 @@ def __init__(__self__, args: DocumentationVersionArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - A snapshot of the documentation of an API. + The ``AWS::ApiGateway::DocumentationVersion`` resource creates a snapshot of the documentation for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*. :param str resource_name: The name of the resource. :param DocumentationVersionArgs args: The arguments to use to populate this resource's properties. @@ -176,7 +176,7 @@ def get(resource_name: str, @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: """ - The description of the API documentation snapshot. + A description about the new documentation snapshot. """ return pulumi.get(self, "description") @@ -184,7 +184,7 @@ def description(self) -> pulumi.Output[Optional[str]]: @pulumi.getter(name="documentationVersion") def documentation_version(self) -> pulumi.Output[str]: """ - The version identifier of the API documentation snapshot. + The version identifier of the to-be-updated documentation version. """ return pulumi.get(self, "documentation_version") @@ -192,7 +192,7 @@ def documentation_version(self) -> pulumi.Output[str]: @pulumi.getter(name="restApiId") def rest_api_id(self) -> pulumi.Output[str]: """ - The identifier of the API. + The string identifier of the associated RestApi. """ return pulumi.get(self, "rest_api_id") diff --git a/sdk/python/pulumi_aws_native/apigateway/get_account.py b/sdk/python/pulumi_aws_native/apigateway/get_account.py index 402a6ec55d..6bca33f668 100644 --- a/sdk/python/pulumi_aws_native/apigateway/get_account.py +++ b/sdk/python/pulumi_aws_native/apigateway/get_account.py @@ -30,7 +30,7 @@ def __init__(__self__, cloud_watch_role_arn=None, id=None): @pulumi.getter(name="cloudWatchRoleArn") def cloud_watch_role_arn(self) -> Optional[str]: """ - The Amazon Resource Name (ARN) of an IAM role that has write access to CloudWatch Logs in your account. + The ARN of an Amazon CloudWatch role for the current Account. """ return pulumi.get(self, "cloud_watch_role_arn") @@ -56,7 +56,7 @@ def __await__(self): def get_account(id: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetAccountResult: """ - Resource Type definition for AWS::ApiGateway::Account + The ``AWS::ApiGateway::Account`` resource specifies the IAM role that Amazon API Gateway uses to write API logs to Amazon CloudWatch Logs. To avoid overwriting other roles, you should only have one ``AWS::ApiGateway::Account`` resource per region per account. :param str id: Primary identifier which is manually generated. @@ -75,7 +75,7 @@ def get_account(id: Optional[str] = None, def get_account_output(id: Optional[pulumi.Input[str]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetAccountResult]: """ - Resource Type definition for AWS::ApiGateway::Account + The ``AWS::ApiGateway::Account`` resource specifies the IAM role that Amazon API Gateway uses to write API logs to Amazon CloudWatch Logs. To avoid overwriting other roles, you should only have one ``AWS::ApiGateway::Account`` resource per region per account. :param str id: Primary identifier which is manually generated. diff --git a/sdk/python/pulumi_aws_native/apigateway/get_authorizer.py b/sdk/python/pulumi_aws_native/apigateway/get_authorizer.py index 5e6fef8110..fa64061f63 100644 --- a/sdk/python/pulumi_aws_native/apigateway/get_authorizer.py +++ b/sdk/python/pulumi_aws_native/apigateway/get_authorizer.py @@ -62,7 +62,7 @@ def auth_type(self) -> Optional[str]: @pulumi.getter(name="authorizerCredentials") def authorizer_credentials(self) -> Optional[str]: """ - Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. + Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. To specify an IAM role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To use resource-based permissions on the Lambda function, specify null. """ return pulumi.get(self, "authorizer_credentials") @@ -75,7 +75,7 @@ def authorizer_id(self) -> Optional[str]: @pulumi.getter(name="authorizerResultTtlInSeconds") def authorizer_result_ttl_in_seconds(self) -> Optional[int]: """ - The TTL in seconds of cached authorizer results. + The TTL in seconds of cached authorizer results. If it equals 0, authorization caching is disabled. If it is greater than 0, API Gateway will cache authorizer responses. If this field is not set, the default value is 300. The maximum value is 3600, or 1 hour. """ return pulumi.get(self, "authorizer_result_ttl_in_seconds") @@ -83,7 +83,7 @@ def authorizer_result_ttl_in_seconds(self) -> Optional[int]: @pulumi.getter(name="authorizerUri") def authorizer_uri(self) -> Optional[str]: """ - Specifies the authorizer's Uniform Resource Identifier (URI). + Specifies the authorizer's Uniform Resource Identifier (URI). For ``TOKEN`` or ``REQUEST`` authorizers, this must be a well-formed Lambda function URI, for example, ``arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:{account_id}:function:{lambda_function_name}/invocations``. In general, the URI has this form ``arn:aws:apigateway:{region}:lambda:path/{service_api}``, where ``{region}`` is the same as the region hosting the Lambda function, ``path`` indicates that the remaining substring in the URI should be treated as the path to the resource, including the initial ``/``. For Lambda functions, this is usually of the form ``/2015-03-31/functions/[FunctionARN]/invocations``. """ return pulumi.get(self, "authorizer_uri") @@ -91,7 +91,7 @@ def authorizer_uri(self) -> Optional[str]: @pulumi.getter(name="identitySource") def identity_source(self) -> Optional[str]: """ - The identity source for which authorization is requested. + The identity source for which authorization is requested. For a ``TOKEN`` or ``COGNITO_USER_POOLS`` authorizer, this is required and specifies the request header mapping expression for the custom header holding the authorization token submitted by the client. For example, if the token header name is ``Auth``, the header mapping expression is ``method.request.header.Auth``. For the ``REQUEST`` authorizer, this is required when authorization caching is enabled. The value is a comma-separated string of one or more mapping expressions of the specified request parameters. For example, if an ``Auth`` header, a ``Name`` query string parameter are defined as identity sources, this value is ``method.request.header.Auth, method.request.querystring.Name``. These parameters will be used to derive the authorization caching key and to perform runtime validation of the ``REQUEST`` authorizer by verifying all of the identity-related request parameters are present, not null and non-empty. Only when this is true does the authorizer invoke the authorizer Lambda function, otherwise, it returns a 401 Unauthorized response without calling the Lambda function. The valid value is a string of comma-separated mapping expressions of the specified request parameters. When the authorization caching is not enabled, this property is optional. """ return pulumi.get(self, "identity_source") @@ -99,7 +99,7 @@ def identity_source(self) -> Optional[str]: @pulumi.getter(name="identityValidationExpression") def identity_validation_expression(self) -> Optional[str]: """ - A validation expression for the incoming identity token. + A validation expression for the incoming identity token. For ``TOKEN`` authorizers, this value is a regular expression. For ``COGNITO_USER_POOLS`` authorizers, API Gateway will match the ``aud`` field of the incoming token from the client against the specified regular expression. It will invoke the authorizer's Lambda function when there is a match. Otherwise, it will return a 401 Unauthorized response without calling the Lambda function. The validation expression does not apply to the ``REQUEST`` authorizer. """ return pulumi.get(self, "identity_validation_expression") @@ -115,7 +115,7 @@ def name(self) -> Optional[str]: @pulumi.getter(name="providerArns") def provider_arns(self) -> Optional[Sequence[str]]: """ - A list of the Amazon Cognito user pool ARNs for the COGNITO_USER_POOLS authorizer. + A list of the Amazon Cognito user pool ARNs for the ``COGNITO_USER_POOLS`` authorizer. Each element is of this format: ``arn:aws:cognito-idp:{region}:{account_id}:userpool/{user_pool_id}``. For a ``TOKEN`` or ``REQUEST`` authorizer, this is not defined. """ return pulumi.get(self, "provider_arns") @@ -123,7 +123,7 @@ def provider_arns(self) -> Optional[Sequence[str]]: @pulumi.getter def type(self) -> Optional[str]: """ - The authorizer type. + The authorizer type. Valid values are ``TOKEN`` for a Lambda function using a single authorization token submitted in a custom header, ``REQUEST`` for a Lambda function using incoming request parameters, and ``COGNITO_USER_POOLS`` for using an Amazon Cognito user pool. """ return pulumi.get(self, "type") @@ -150,10 +150,10 @@ def get_authorizer(authorizer_id: Optional[str] = None, rest_api_id: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetAuthorizerResult: """ - Represents an authorization layer for methods. If enabled on a method, API Gateway will activate the authorizer when a client calls the method. + The ``AWS::ApiGateway::Authorizer`` resource creates an authorization layer that API Gateway activates for methods that have authorization enabled. API Gateway activates the authorizer when a client calls those methods. - :param str rest_api_id: The identifier of the API. + :param str rest_api_id: The string identifier of the associated RestApi. """ __args__ = dict() __args__['authorizerId'] = authorizer_id @@ -179,9 +179,9 @@ def get_authorizer_output(authorizer_id: Optional[pulumi.Input[str]] = None, rest_api_id: Optional[pulumi.Input[str]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetAuthorizerResult]: """ - Represents an authorization layer for methods. If enabled on a method, API Gateway will activate the authorizer when a client calls the method. + The ``AWS::ApiGateway::Authorizer`` resource creates an authorization layer that API Gateway activates for methods that have authorization enabled. API Gateway activates the authorizer when a client calls those methods. - :param str rest_api_id: The identifier of the API. + :param str rest_api_id: The string identifier of the associated RestApi. """ ... diff --git a/sdk/python/pulumi_aws_native/apigateway/get_deployment.py b/sdk/python/pulumi_aws_native/apigateway/get_deployment.py index 133025875e..7f18a0f2b1 100644 --- a/sdk/python/pulumi_aws_native/apigateway/get_deployment.py +++ b/sdk/python/pulumi_aws_native/apigateway/get_deployment.py @@ -38,7 +38,7 @@ def deployment_id(self) -> Optional[str]: @pulumi.getter def description(self) -> Optional[str]: """ - A description of the purpose of the API Gateway deployment. + The description for the Deployment resource to create. """ return pulumi.get(self, "description") @@ -57,11 +57,11 @@ def get_deployment(deployment_id: Optional[str] = None, rest_api_id: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetDeploymentResult: """ - Resource Type definition for AWS::ApiGateway::Deployment + The ``AWS::ApiGateway::Deployment`` resource deploys an API Gateway ``RestApi`` resource to a stage so that clients can call the API over the internet. The stage acts as an environment. :param str deployment_id: Primary Id for this resource - :param str rest_api_id: The ID of the RestApi resource to deploy. + :param str rest_api_id: The string identifier of the associated RestApi. """ __args__ = dict() __args__['deploymentId'] = deployment_id @@ -79,10 +79,10 @@ def get_deployment_output(deployment_id: Optional[pulumi.Input[str]] = None, rest_api_id: Optional[pulumi.Input[str]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetDeploymentResult]: """ - Resource Type definition for AWS::ApiGateway::Deployment + The ``AWS::ApiGateway::Deployment`` resource deploys an API Gateway ``RestApi`` resource to a stage so that clients can call the API over the internet. The stage acts as an environment. :param str deployment_id: Primary Id for this resource - :param str rest_api_id: The ID of the RestApi resource to deploy. + :param str rest_api_id: The string identifier of the associated RestApi. """ ... diff --git a/sdk/python/pulumi_aws_native/apigateway/get_documentation_part.py b/sdk/python/pulumi_aws_native/apigateway/get_documentation_part.py index 8602f1c029..93cf4a70d4 100644 --- a/sdk/python/pulumi_aws_native/apigateway/get_documentation_part.py +++ b/sdk/python/pulumi_aws_native/apigateway/get_documentation_part.py @@ -38,7 +38,7 @@ def documentation_part_id(self) -> Optional[str]: @pulumi.getter def properties(self) -> Optional[str]: """ - The documentation content map of the targeted API entity. + The new documentation content map of the targeted API entity. Enclosed key-value pairs are API-specific, but only OpenAPI-compliant key-value pairs can be exported and, hence, published. """ return pulumi.get(self, "properties") @@ -57,11 +57,11 @@ def get_documentation_part(documentation_part_id: Optional[str] = None, rest_api_id: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetDocumentationPartResult: """ - Resource Type definition for AWS::ApiGateway::DocumentationPart + The ``AWS::ApiGateway::DocumentationPart`` resource creates a documentation part for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*. :param str documentation_part_id: The identifier of the documentation Part. - :param str rest_api_id: Identifier of the targeted API entity + :param str rest_api_id: The string identifier of the associated RestApi. """ __args__ = dict() __args__['documentationPartId'] = documentation_part_id @@ -79,10 +79,10 @@ def get_documentation_part_output(documentation_part_id: Optional[pulumi.Input[s rest_api_id: Optional[pulumi.Input[str]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetDocumentationPartResult]: """ - Resource Type definition for AWS::ApiGateway::DocumentationPart + The ``AWS::ApiGateway::DocumentationPart`` resource creates a documentation part for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*. :param str documentation_part_id: The identifier of the documentation Part. - :param str rest_api_id: Identifier of the targeted API entity + :param str rest_api_id: The string identifier of the associated RestApi. """ ... diff --git a/sdk/python/pulumi_aws_native/apigateway/get_documentation_version.py b/sdk/python/pulumi_aws_native/apigateway/get_documentation_version.py index 7b17c3b429..e255916734 100644 --- a/sdk/python/pulumi_aws_native/apigateway/get_documentation_version.py +++ b/sdk/python/pulumi_aws_native/apigateway/get_documentation_version.py @@ -27,7 +27,7 @@ def __init__(__self__, description=None): @pulumi.getter def description(self) -> Optional[str]: """ - The description of the API documentation snapshot. + A description about the new documentation snapshot. """ return pulumi.get(self, "description") @@ -45,11 +45,11 @@ def get_documentation_version(documentation_version: Optional[str] = None, rest_api_id: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetDocumentationVersionResult: """ - A snapshot of the documentation of an API. + The ``AWS::ApiGateway::DocumentationVersion`` resource creates a snapshot of the documentation for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*. - :param str documentation_version: The version identifier of the API documentation snapshot. - :param str rest_api_id: The identifier of the API. + :param str documentation_version: The version identifier of the to-be-updated documentation version. + :param str rest_api_id: The string identifier of the associated RestApi. """ __args__ = dict() __args__['documentationVersion'] = documentation_version @@ -66,10 +66,10 @@ def get_documentation_version_output(documentation_version: Optional[pulumi.Inpu rest_api_id: Optional[pulumi.Input[str]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetDocumentationVersionResult]: """ - A snapshot of the documentation of an API. + The ``AWS::ApiGateway::DocumentationVersion`` resource creates a snapshot of the documentation for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*. - :param str documentation_version: The version identifier of the API documentation snapshot. - :param str rest_api_id: The identifier of the API. + :param str documentation_version: The version identifier of the to-be-updated documentation version. + :param str rest_api_id: The string identifier of the associated RestApi. """ ... diff --git a/sdk/python/pulumi_aws_native/apigateway/get_method.py b/sdk/python/pulumi_aws_native/apigateway/get_method.py index e3c32503c0..826672d6ab 100644 --- a/sdk/python/pulumi_aws_native/apigateway/get_method.py +++ b/sdk/python/pulumi_aws_native/apigateway/get_method.py @@ -56,7 +56,7 @@ def __init__(__self__, api_key_required=None, authorization_scopes=None, authori @pulumi.getter(name="apiKeyRequired") def api_key_required(self) -> Optional[bool]: """ - Indicates whether the method requires clients to submit a valid API key. + A boolean flag specifying whether a valid ApiKey is required to invoke this method. """ return pulumi.get(self, "api_key_required") @@ -64,7 +64,7 @@ def api_key_required(self) -> Optional[bool]: @pulumi.getter(name="authorizationScopes") def authorization_scopes(self) -> Optional[Sequence[str]]: """ - A list of authorization scopes configured on the method. + A list of authorization scopes configured on the method. The scopes are used with a ``COGNITO_USER_POOLS`` authorizer to authorize the method invocation. The authorization works by matching the method scopes against the scopes parsed from the access token in the incoming request. The method invocation is authorized if any method scopes matches a claimed scope in the access token. Otherwise, the invocation is not authorized. When the method scope is configured, the client must provide an access token instead of an identity token for authorization purposes. """ return pulumi.get(self, "authorization_scopes") @@ -72,7 +72,8 @@ def authorization_scopes(self) -> Optional[Sequence[str]]: @pulumi.getter(name="authorizationType") def authorization_type(self) -> Optional['MethodAuthorizationType']: """ - The method's authorization type. + The method's authorization type. This parameter is required. For valid values, see [Method](https://docs.aws.amazon.com/apigateway/latest/api/API_Method.html) in the *API Gateway API Reference*. + If you specify the ``AuthorizerId`` property, specify ``CUSTOM`` or ``COGNITO_USER_POOLS`` for this property. """ return pulumi.get(self, "authorization_type") @@ -80,7 +81,7 @@ def authorization_type(self) -> Optional['MethodAuthorizationType']: @pulumi.getter(name="authorizerId") def authorizer_id(self) -> Optional[str]: """ - The identifier of the authorizer to use on this method. + The identifier of an authorizer to use on this method. The method's authorization type must be ``CUSTOM`` or ``COGNITO_USER_POOLS``. """ return pulumi.get(self, "authorizer_id") @@ -88,7 +89,7 @@ def authorizer_id(self) -> Optional[str]: @pulumi.getter def integration(self) -> Optional['outputs.MethodIntegration']: """ - The backend system that the method calls when it receives a request. + Represents an ``HTTP``, ``HTTP_PROXY``, ``AWS``, ``AWS_PROXY``, or Mock integration. """ return pulumi.get(self, "integration") @@ -96,7 +97,7 @@ def integration(self) -> Optional['outputs.MethodIntegration']: @pulumi.getter(name="methodResponses") def method_responses(self) -> Optional[Sequence['outputs.MethodResponse']]: """ - The responses that can be sent to the client who calls the method. + Gets a method response associated with a given HTTP status code. """ return pulumi.get(self, "method_responses") @@ -104,7 +105,7 @@ def method_responses(self) -> Optional[Sequence['outputs.MethodResponse']]: @pulumi.getter(name="operationName") def operation_name(self) -> Optional[str]: """ - A friendly operation name for the method. + A human-friendly operation identifier for the method. For example, you can assign the ``operationName`` of ``ListPets`` for the ``GET /pets`` method in the ``PetStore`` example. """ return pulumi.get(self, "operation_name") @@ -112,7 +113,7 @@ def operation_name(self) -> Optional[str]: @pulumi.getter(name="requestModels") def request_models(self) -> Optional[Any]: """ - The resources that are used for the request's content type. Specify request models as key-value pairs (string-to-string mapping), with a content type as the key and a Model resource name as the value. + A key-value map specifying data schemas, represented by Model resources, (as the mapped value) of the request payloads of given content types (as the mapping key). """ return pulumi.get(self, "request_models") @@ -120,7 +121,7 @@ def request_models(self) -> Optional[Any]: @pulumi.getter(name="requestParameters") def request_parameters(self) -> Optional[Any]: """ - The request parameters that API Gateway accepts. Specify request parameters as key-value pairs (string-to-Boolean mapping), with a source as the key and a Boolean as the value. + A key-value map defining required or optional method request parameters that can be accepted by API Gateway. A key is a method request parameter name matching the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and ``name`` is a valid and unique parameter name. The value associated with the key is a Boolean flag indicating whether the parameter is required (``true``) or optional (``false``). The method request parameter names defined here are available in Integration to be mapped to integration request parameters or templates. """ return pulumi.get(self, "request_parameters") @@ -128,7 +129,7 @@ def request_parameters(self) -> Optional[Any]: @pulumi.getter(name="requestValidatorId") def request_validator_id(self) -> Optional[str]: """ - The ID of the associated request validator. + The identifier of a RequestValidator for request validation. """ return pulumi.get(self, "request_validator_id") @@ -156,12 +157,12 @@ def get_method(http_method: Optional[str] = None, rest_api_id: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetMethodResult: """ - Resource Type definition for AWS::ApiGateway::Method + The ``AWS::ApiGateway::Method`` resource creates API Gateway methods that define the parameters and body that clients must send in their requests. - :param str http_method: The backend system that the method calls when it receives a request. - :param str resource_id: The ID of an API Gateway resource. - :param str rest_api_id: The ID of the RestApi resource in which API Gateway creates the method. + :param str http_method: The method's HTTP verb. + :param str resource_id: The Resource identifier for the MethodResponse resource. + :param str rest_api_id: The string identifier of the associated RestApi. """ __args__ = dict() __args__['httpMethod'] = http_method @@ -189,11 +190,11 @@ def get_method_output(http_method: Optional[pulumi.Input[str]] = None, rest_api_id: Optional[pulumi.Input[str]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetMethodResult]: """ - Resource Type definition for AWS::ApiGateway::Method + The ``AWS::ApiGateway::Method`` resource creates API Gateway methods that define the parameters and body that clients must send in their requests. - :param str http_method: The backend system that the method calls when it receives a request. - :param str resource_id: The ID of an API Gateway resource. - :param str rest_api_id: The ID of the RestApi resource in which API Gateway creates the method. + :param str http_method: The method's HTTP verb. + :param str resource_id: The Resource identifier for the MethodResponse resource. + :param str rest_api_id: The string identifier of the associated RestApi. """ ... diff --git a/sdk/python/pulumi_aws_native/apigateway/get_model.py b/sdk/python/pulumi_aws_native/apigateway/get_model.py index eb276fa771..ea85876d4d 100644 --- a/sdk/python/pulumi_aws_native/apigateway/get_model.py +++ b/sdk/python/pulumi_aws_native/apigateway/get_model.py @@ -30,7 +30,7 @@ def __init__(__self__, description=None, schema=None): @pulumi.getter def description(self) -> Optional[str]: """ - A description that identifies this model. + The description of the model. """ return pulumi.get(self, "description") @@ -38,7 +38,7 @@ def description(self) -> Optional[str]: @pulumi.getter def schema(self) -> Optional[Any]: """ - The schema to use to transform data to one or more output formats. Specify null ({}) if you don't want to specify a schema. + The schema for the model. For ``application/json`` models, this should be JSON schema draft 4 model. Do not include "\\*/" characters in the description of any properties because such "\\*/" characters may be interpreted as the closing marker for comments in some languages, such as Java or JavaScript, causing the installation of your API's SDK generated by API Gateway to fail. """ return pulumi.get(self, "schema") @@ -57,11 +57,12 @@ def get_model(name: Optional[str] = None, rest_api_id: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetModelResult: """ - Resource Type definition for AWS::ApiGateway::Model + The ``AWS::ApiGateway::Model`` resource defines the structure of a request or response payload for an API method. - :param str name: A name for the model. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the model name. - :param str rest_api_id: The ID of a REST API with which to associate this model. + :param str name: A name for the model. If you don't specify a name, CFN generates a unique physical ID and uses that ID for the model name. For more information, see [Name Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html). + 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 str rest_api_id: The string identifier of the associated RestApi. """ __args__ = dict() __args__['name'] = name @@ -79,10 +80,11 @@ def get_model_output(name: Optional[pulumi.Input[str]] = None, rest_api_id: Optional[pulumi.Input[str]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetModelResult]: """ - Resource Type definition for AWS::ApiGateway::Model + The ``AWS::ApiGateway::Model`` resource defines the structure of a request or response payload for an API method. - :param str name: A name for the model. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the model name. - :param str rest_api_id: The ID of a REST API with which to associate this model. + :param str name: A name for the model. If you don't specify a name, CFN generates a unique physical ID and uses that ID for the model name. For more information, see [Name Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html). + 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 str rest_api_id: The string identifier of the associated RestApi. """ ... diff --git a/sdk/python/pulumi_aws_native/apigateway/get_resource.py b/sdk/python/pulumi_aws_native/apigateway/get_resource.py index 1deb933a17..5035f2472d 100644 --- a/sdk/python/pulumi_aws_native/apigateway/get_resource.py +++ b/sdk/python/pulumi_aws_native/apigateway/get_resource.py @@ -45,11 +45,11 @@ def get_resource(resource_id: Optional[str] = None, rest_api_id: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetResourceResult: """ - Resource Type definition for AWS::ApiGateway::Resource + The ``AWS::ApiGateway::Resource`` resource creates a resource in an API. :param str resource_id: A unique primary identifier for a Resource - :param str rest_api_id: The ID of the RestApi resource in which you want to create this resource.. + :param str rest_api_id: The string identifier of the associated RestApi. """ __args__ = dict() __args__['resourceId'] = resource_id @@ -66,10 +66,10 @@ def get_resource_output(resource_id: Optional[pulumi.Input[str]] = None, rest_api_id: Optional[pulumi.Input[str]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetResourceResult]: """ - Resource Type definition for AWS::ApiGateway::Resource + The ``AWS::ApiGateway::Resource`` resource creates a resource in an API. :param str resource_id: A unique primary identifier for a Resource - :param str rest_api_id: The ID of the RestApi resource in which you want to create this resource.. + :param str rest_api_id: The string identifier of the associated RestApi. """ ... diff --git a/sdk/python/pulumi_aws_native/apigateway/get_rest_api.py b/sdk/python/pulumi_aws_native/apigateway/get_rest_api.py index 7e3ab7782a..cbb371334c 100644 --- a/sdk/python/pulumi_aws_native/apigateway/get_rest_api.py +++ b/sdk/python/pulumi_aws_native/apigateway/get_rest_api.py @@ -57,41 +57,65 @@ def __init__(__self__, api_key_source_type=None, binary_media_types=None, descri @property @pulumi.getter(name="apiKeySourceType") def api_key_source_type(self) -> Optional[str]: + """ + The source of the API key for metering requests according to a usage plan. Valid values are: ``HEADER`` to read the API key from the ``X-API-Key`` header of a request. ``AUTHORIZER`` to read the API key from the ``UsageIdentifierKey`` from a custom authorizer. + """ return pulumi.get(self, "api_key_source_type") @property @pulumi.getter(name="binaryMediaTypes") def binary_media_types(self) -> Optional[Sequence[str]]: + """ + The list of binary media types supported by the RestApi. By default, the RestApi supports only UTF-8-encoded text payloads. + """ return pulumi.get(self, "binary_media_types") @property @pulumi.getter def description(self) -> Optional[str]: + """ + The description of the RestApi. + """ return pulumi.get(self, "description") @property @pulumi.getter(name="disableExecuteApiEndpoint") def disable_execute_api_endpoint(self) -> Optional[bool]: + """ + Specifies whether clients can invoke your API by using the default ``execute-api`` endpoint. By default, clients can invoke your API with the default ``https://{api_id}.execute-api.{region}.amazonaws.com`` endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint + """ return pulumi.get(self, "disable_execute_api_endpoint") @property @pulumi.getter(name="endpointConfiguration") def endpoint_configuration(self) -> Optional['outputs.RestApiEndpointConfiguration']: + """ + A list of the endpoint types of the API. Use this property when creating an API. When importing an existing API, specify the endpoint configuration types using the ``Parameters`` property. + """ return pulumi.get(self, "endpoint_configuration") @property @pulumi.getter(name="minimumCompressionSize") def minimum_compression_size(self) -> Optional[int]: + """ + A nullable integer that is used to enable compression (with non-negative between 0 and 10485760 (10M) bytes, inclusive) or disable compression (with a null value) on an API. When compression is enabled, compression or decompression is not applied on the payload if the payload size is smaller than this value. Setting it to zero allows compression for any payload size. + """ return pulumi.get(self, "minimum_compression_size") @property @pulumi.getter def name(self) -> Optional[str]: + """ + The name of the RestApi. A name is required if the REST API is not based on an OpenAPI specification. + """ return pulumi.get(self, "name") @property @pulumi.getter def policy(self) -> Optional[Any]: + """ + A policy document that contains the permissions for the ``RestApi`` resource. To set the ARN for the policy, use the ``!Join`` intrinsic function with ``""`` as delimiter and values of ``"execute-api:/"`` and ``"*"``. + """ return pulumi.get(self, "policy") @property @@ -107,6 +131,9 @@ def root_resource_id(self) -> Optional[str]: @property @pulumi.getter def tags(self) -> Optional[Sequence['outputs.RestApiTag']]: + """ + The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with ``aws:``. The tag value can be up to 256 characters. + """ return pulumi.get(self, "tags") @@ -132,7 +159,8 @@ def __await__(self): def get_rest_api(rest_api_id: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetRestApiResult: """ - Resource Type definition for AWS::ApiGateway::RestApi. + The ``AWS::ApiGateway::RestApi`` resource creates a REST API. For more information, see [restapi:create](https://docs.aws.amazon.com/apigateway/latest/api/API_CreateRestApi.html) in the *Amazon API Gateway REST API Reference*. + On January 1, 2016, the Swagger Specification was donated to the [OpenAPI initiative](https://docs.aws.amazon.com/https://www.openapis.org/), becoming the foundation of the OpenAPI Specification. """ __args__ = dict() __args__['restApiId'] = rest_api_id @@ -157,6 +185,7 @@ def get_rest_api(rest_api_id: Optional[str] = None, def get_rest_api_output(rest_api_id: Optional[pulumi.Input[str]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetRestApiResult]: """ - Resource Type definition for AWS::ApiGateway::RestApi. + The ``AWS::ApiGateway::RestApi`` resource creates a REST API. For more information, see [restapi:create](https://docs.aws.amazon.com/apigateway/latest/api/API_CreateRestApi.html) in the *Amazon API Gateway REST API Reference*. + On January 1, 2016, the Swagger Specification was donated to the [OpenAPI initiative](https://docs.aws.amazon.com/https://www.openapis.org/), becoming the foundation of the OpenAPI Specification. """ ... diff --git a/sdk/python/pulumi_aws_native/apigateway/get_stage.py b/sdk/python/pulumi_aws_native/apigateway/get_stage.py index 547efa3ecf..e72cb5d15b 100644 --- a/sdk/python/pulumi_aws_native/apigateway/get_stage.py +++ b/sdk/python/pulumi_aws_native/apigateway/get_stage.py @@ -61,7 +61,7 @@ def __init__(__self__, access_log_setting=None, cache_cluster_enabled=None, cach @pulumi.getter(name="accessLogSetting") def access_log_setting(self) -> Optional['outputs.StageAccessLogSetting']: """ - Specifies settings for logging access in this stage. + Access log settings, including the access log format and access log destination ARN. """ return pulumi.get(self, "access_log_setting") @@ -69,7 +69,7 @@ def access_log_setting(self) -> Optional['outputs.StageAccessLogSetting']: @pulumi.getter(name="cacheClusterEnabled") def cache_cluster_enabled(self) -> Optional[bool]: """ - Indicates whether cache clustering is enabled for the stage. + Specifies whether a cache cluster is enabled for the stage. """ return pulumi.get(self, "cache_cluster_enabled") @@ -77,7 +77,7 @@ def cache_cluster_enabled(self) -> Optional[bool]: @pulumi.getter(name="cacheClusterSize") def cache_cluster_size(self) -> Optional[str]: """ - The stage's cache cluster size. + The stage's cache capacity in GB. For more information about choosing a cache size, see [Enabling API caching to enhance responsiveness](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html). """ return pulumi.get(self, "cache_cluster_size") @@ -85,7 +85,7 @@ def cache_cluster_size(self) -> Optional[str]: @pulumi.getter(name="canarySetting") def canary_setting(self) -> Optional['outputs.StageCanarySetting']: """ - Specifies settings for the canary deployment in this stage. + Settings for the canary deployment in this stage. """ return pulumi.get(self, "canary_setting") @@ -93,7 +93,7 @@ def canary_setting(self) -> Optional['outputs.StageCanarySetting']: @pulumi.getter(name="clientCertificateId") def client_certificate_id(self) -> Optional[str]: """ - The ID of the client certificate that API Gateway uses to call your integration endpoints in the stage. + The identifier of a client certificate for an API stage. """ return pulumi.get(self, "client_certificate_id") @@ -101,7 +101,7 @@ def client_certificate_id(self) -> Optional[str]: @pulumi.getter(name="deploymentId") def deployment_id(self) -> Optional[str]: """ - The ID of the deployment that the stage is associated with. This parameter is required to create a stage. + The identifier of the Deployment that the stage points to. """ return pulumi.get(self, "deployment_id") @@ -109,7 +109,7 @@ def deployment_id(self) -> Optional[str]: @pulumi.getter def description(self) -> Optional[str]: """ - A description of the stage. + The stage's description. """ return pulumi.get(self, "description") @@ -117,7 +117,7 @@ def description(self) -> Optional[str]: @pulumi.getter(name="documentationVersion") def documentation_version(self) -> Optional[str]: """ - The version ID of the API documentation snapshot. + The version of the associated API documentation. """ return pulumi.get(self, "documentation_version") @@ -125,7 +125,7 @@ def documentation_version(self) -> Optional[str]: @pulumi.getter(name="methodSettings") def method_settings(self) -> Optional[Sequence['outputs.StageMethodSetting']]: """ - Settings for all methods in the stage. + A map that defines the method settings for a Stage resource. Keys (designated as ``/{method_setting_key`` below) are method paths defined as ``{resource_path}/{http_method}`` for an individual method override, or ``/\\*/\\*`` for overriding all methods in the stage. """ return pulumi.get(self, "method_settings") @@ -133,7 +133,7 @@ def method_settings(self) -> Optional[Sequence['outputs.StageMethodSetting']]: @pulumi.getter def tags(self) -> Optional[Sequence['outputs.StageTag']]: """ - An array of arbitrary tags (key-value pairs) to associate with the stage. + The collection of tags. Each tag element is associated with a given resource. """ return pulumi.get(self, "tags") @@ -141,7 +141,7 @@ def tags(self) -> Optional[Sequence['outputs.StageTag']]: @pulumi.getter(name="tracingEnabled") def tracing_enabled(self) -> Optional[bool]: """ - Specifies whether active X-Ray tracing is enabled for this stage. + Specifies whether active tracing with X-ray is enabled for the Stage. """ return pulumi.get(self, "tracing_enabled") @@ -149,7 +149,7 @@ def tracing_enabled(self) -> Optional[bool]: @pulumi.getter def variables(self) -> Optional[Any]: """ - A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value. + A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value. Variable names are limited to alphanumeric characters. Values must match the following regular expression: ``[A-Za-z0-9-._~:/?#&=,]+``. """ return pulumi.get(self, "variables") @@ -178,11 +178,11 @@ def get_stage(rest_api_id: Optional[str] = None, stage_name: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetStageResult: """ - Resource Type definition for AWS::ApiGateway::Stage + The ``AWS::ApiGateway::Stage`` resource creates a stage for a deployment. - :param str rest_api_id: The ID of the RestApi resource that you're deploying with this stage. - :param str stage_name: The name of the stage, which API Gateway uses as the first path segment in the invoked Uniform Resource Identifier (URI). + :param str rest_api_id: The string identifier of the associated RestApi. + :param str stage_name: The name of the stage is the first path segment in the Uniform Resource Identifier (URI) of a call to API Gateway. Stage names can only contain alphanumeric characters, hyphens, and underscores. Maximum length is 128 characters. """ __args__ = dict() __args__['restApiId'] = rest_api_id @@ -210,10 +210,10 @@ def get_stage_output(rest_api_id: Optional[pulumi.Input[str]] = None, stage_name: Optional[pulumi.Input[str]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetStageResult]: """ - Resource Type definition for AWS::ApiGateway::Stage + The ``AWS::ApiGateway::Stage`` resource creates a stage for a deployment. - :param str rest_api_id: The ID of the RestApi resource that you're deploying with this stage. - :param str stage_name: The name of the stage, which API Gateway uses as the first path segment in the invoked Uniform Resource Identifier (URI). + :param str rest_api_id: The string identifier of the associated RestApi. + :param str stage_name: The name of the stage is the first path segment in the Uniform Resource Identifier (URI) of a call to API Gateway. Stage names can only contain alphanumeric characters, hyphens, and underscores. Maximum length is 128 characters. """ ... diff --git a/sdk/python/pulumi_aws_native/apigateway/get_usage_plan_key.py b/sdk/python/pulumi_aws_native/apigateway/get_usage_plan_key.py index 638bca2c29..37cc61db0e 100644 --- a/sdk/python/pulumi_aws_native/apigateway/get_usage_plan_key.py +++ b/sdk/python/pulumi_aws_native/apigateway/get_usage_plan_key.py @@ -44,7 +44,7 @@ def __await__(self): def get_usage_plan_key(id: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetUsagePlanKeyResult: """ - Resource Type definition for AWS::ApiGateway::UsagePlanKey + The ``AWS::ApiGateway::UsagePlanKey`` resource associates an API key with a usage plan. This association determines which users the usage plan is applied to. :param str id: An autogenerated ID which is a combination of the ID of the key and ID of the usage plan combined with a : such as 123abcdef:abc123. @@ -62,7 +62,7 @@ def get_usage_plan_key(id: Optional[str] = None, def get_usage_plan_key_output(id: Optional[pulumi.Input[str]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetUsagePlanKeyResult]: """ - Resource Type definition for AWS::ApiGateway::UsagePlanKey + The ``AWS::ApiGateway::UsagePlanKey`` resource associates an API key with a usage plan. This association determines which users the usage plan is applied to. :param str id: An autogenerated ID which is a combination of the ID of the key and ID of the usage plan combined with a : such as 123abcdef:abc123. diff --git a/sdk/python/pulumi_aws_native/apigateway/method.py b/sdk/python/pulumi_aws_native/apigateway/method.py index e67db8af4b..ad2b393af8 100644 --- a/sdk/python/pulumi_aws_native/apigateway/method.py +++ b/sdk/python/pulumi_aws_native/apigateway/method.py @@ -32,19 +32,20 @@ def __init__(__self__, *, request_validator_id: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a Method resource. - :param pulumi.Input[str] http_method: The backend system that the method calls when it receives a request. - :param pulumi.Input[str] resource_id: The ID of an API Gateway resource. - :param pulumi.Input[str] rest_api_id: The ID of the RestApi resource in which API Gateway creates the method. - :param pulumi.Input[bool] api_key_required: Indicates whether the method requires clients to submit a valid API key. - :param pulumi.Input[Sequence[pulumi.Input[str]]] authorization_scopes: A list of authorization scopes configured on the method. - :param pulumi.Input['MethodAuthorizationType'] authorization_type: The method's authorization type. - :param pulumi.Input[str] authorizer_id: The identifier of the authorizer to use on this method. - :param pulumi.Input['MethodIntegrationArgs'] integration: The backend system that the method calls when it receives a request. - :param pulumi.Input[Sequence[pulumi.Input['MethodResponseArgs']]] method_responses: The responses that can be sent to the client who calls the method. - :param pulumi.Input[str] operation_name: A friendly operation name for the method. - :param Any request_models: The resources that are used for the request's content type. Specify request models as key-value pairs (string-to-string mapping), with a content type as the key and a Model resource name as the value. - :param Any request_parameters: The request parameters that API Gateway accepts. Specify request parameters as key-value pairs (string-to-Boolean mapping), with a source as the key and a Boolean as the value. - :param pulumi.Input[str] request_validator_id: The ID of the associated request validator. + :param pulumi.Input[str] http_method: The method's HTTP verb. + :param pulumi.Input[str] resource_id: The Resource identifier for the MethodResponse resource. + :param pulumi.Input[str] rest_api_id: The string identifier of the associated RestApi. + :param pulumi.Input[bool] api_key_required: A boolean flag specifying whether a valid ApiKey is required to invoke this method. + :param pulumi.Input[Sequence[pulumi.Input[str]]] authorization_scopes: A list of authorization scopes configured on the method. The scopes are used with a ``COGNITO_USER_POOLS`` authorizer to authorize the method invocation. The authorization works by matching the method scopes against the scopes parsed from the access token in the incoming request. The method invocation is authorized if any method scopes matches a claimed scope in the access token. Otherwise, the invocation is not authorized. When the method scope is configured, the client must provide an access token instead of an identity token for authorization purposes. + :param pulumi.Input['MethodAuthorizationType'] authorization_type: The method's authorization type. This parameter is required. For valid values, see [Method](https://docs.aws.amazon.com/apigateway/latest/api/API_Method.html) in the *API Gateway API Reference*. + If you specify the ``AuthorizerId`` property, specify ``CUSTOM`` or ``COGNITO_USER_POOLS`` for this property. + :param pulumi.Input[str] authorizer_id: The identifier of an authorizer to use on this method. The method's authorization type must be ``CUSTOM`` or ``COGNITO_USER_POOLS``. + :param pulumi.Input['MethodIntegrationArgs'] integration: Represents an ``HTTP``, ``HTTP_PROXY``, ``AWS``, ``AWS_PROXY``, or Mock integration. + :param pulumi.Input[Sequence[pulumi.Input['MethodResponseArgs']]] method_responses: Gets a method response associated with a given HTTP status code. + :param pulumi.Input[str] operation_name: A human-friendly operation identifier for the method. For example, you can assign the ``operationName`` of ``ListPets`` for the ``GET /pets`` method in the ``PetStore`` example. + :param Any request_models: A key-value map specifying data schemas, represented by Model resources, (as the mapped value) of the request payloads of given content types (as the mapping key). + :param Any request_parameters: A key-value map defining required or optional method request parameters that can be accepted by API Gateway. A key is a method request parameter name matching the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and ``name`` is a valid and unique parameter name. The value associated with the key is a Boolean flag indicating whether the parameter is required (``true``) or optional (``false``). The method request parameter names defined here are available in Integration to be mapped to integration request parameters or templates. + :param pulumi.Input[str] request_validator_id: The identifier of a RequestValidator for request validation. """ MethodArgs._configure( lambda key, value: pulumi.set(__self__, key, value), @@ -107,7 +108,7 @@ def _configure( @pulumi.getter(name="httpMethod") def http_method(self) -> pulumi.Input[str]: """ - The backend system that the method calls when it receives a request. + The method's HTTP verb. """ return pulumi.get(self, "http_method") @@ -119,7 +120,7 @@ def http_method(self, value: pulumi.Input[str]): @pulumi.getter(name="resourceId") def resource_id(self) -> pulumi.Input[str]: """ - The ID of an API Gateway resource. + The Resource identifier for the MethodResponse resource. """ return pulumi.get(self, "resource_id") @@ -131,7 +132,7 @@ def resource_id(self, value: pulumi.Input[str]): @pulumi.getter(name="restApiId") def rest_api_id(self) -> pulumi.Input[str]: """ - The ID of the RestApi resource in which API Gateway creates the method. + The string identifier of the associated RestApi. """ return pulumi.get(self, "rest_api_id") @@ -143,7 +144,7 @@ def rest_api_id(self, value: pulumi.Input[str]): @pulumi.getter(name="apiKeyRequired") def api_key_required(self) -> Optional[pulumi.Input[bool]]: """ - Indicates whether the method requires clients to submit a valid API key. + A boolean flag specifying whether a valid ApiKey is required to invoke this method. """ return pulumi.get(self, "api_key_required") @@ -155,7 +156,7 @@ def api_key_required(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter(name="authorizationScopes") def authorization_scopes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - A list of authorization scopes configured on the method. + A list of authorization scopes configured on the method. The scopes are used with a ``COGNITO_USER_POOLS`` authorizer to authorize the method invocation. The authorization works by matching the method scopes against the scopes parsed from the access token in the incoming request. The method invocation is authorized if any method scopes matches a claimed scope in the access token. Otherwise, the invocation is not authorized. When the method scope is configured, the client must provide an access token instead of an identity token for authorization purposes. """ return pulumi.get(self, "authorization_scopes") @@ -167,7 +168,8 @@ def authorization_scopes(self, value: Optional[pulumi.Input[Sequence[pulumi.Inpu @pulumi.getter(name="authorizationType") def authorization_type(self) -> Optional[pulumi.Input['MethodAuthorizationType']]: """ - The method's authorization type. + The method's authorization type. This parameter is required. For valid values, see [Method](https://docs.aws.amazon.com/apigateway/latest/api/API_Method.html) in the *API Gateway API Reference*. + If you specify the ``AuthorizerId`` property, specify ``CUSTOM`` or ``COGNITO_USER_POOLS`` for this property. """ return pulumi.get(self, "authorization_type") @@ -179,7 +181,7 @@ def authorization_type(self, value: Optional[pulumi.Input['MethodAuthorizationTy @pulumi.getter(name="authorizerId") def authorizer_id(self) -> Optional[pulumi.Input[str]]: """ - The identifier of the authorizer to use on this method. + The identifier of an authorizer to use on this method. The method's authorization type must be ``CUSTOM`` or ``COGNITO_USER_POOLS``. """ return pulumi.get(self, "authorizer_id") @@ -191,7 +193,7 @@ def authorizer_id(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def integration(self) -> Optional[pulumi.Input['MethodIntegrationArgs']]: """ - The backend system that the method calls when it receives a request. + Represents an ``HTTP``, ``HTTP_PROXY``, ``AWS``, ``AWS_PROXY``, or Mock integration. """ return pulumi.get(self, "integration") @@ -203,7 +205,7 @@ def integration(self, value: Optional[pulumi.Input['MethodIntegrationArgs']]): @pulumi.getter(name="methodResponses") def method_responses(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['MethodResponseArgs']]]]: """ - The responses that can be sent to the client who calls the method. + Gets a method response associated with a given HTTP status code. """ return pulumi.get(self, "method_responses") @@ -215,7 +217,7 @@ def method_responses(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['M @pulumi.getter(name="operationName") def operation_name(self) -> Optional[pulumi.Input[str]]: """ - A friendly operation name for the method. + A human-friendly operation identifier for the method. For example, you can assign the ``operationName`` of ``ListPets`` for the ``GET /pets`` method in the ``PetStore`` example. """ return pulumi.get(self, "operation_name") @@ -227,7 +229,7 @@ def operation_name(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="requestModels") def request_models(self) -> Optional[Any]: """ - The resources that are used for the request's content type. Specify request models as key-value pairs (string-to-string mapping), with a content type as the key and a Model resource name as the value. + A key-value map specifying data schemas, represented by Model resources, (as the mapped value) of the request payloads of given content types (as the mapping key). """ return pulumi.get(self, "request_models") @@ -239,7 +241,7 @@ def request_models(self, value: Optional[Any]): @pulumi.getter(name="requestParameters") def request_parameters(self) -> Optional[Any]: """ - The request parameters that API Gateway accepts. Specify request parameters as key-value pairs (string-to-Boolean mapping), with a source as the key and a Boolean as the value. + A key-value map defining required or optional method request parameters that can be accepted by API Gateway. A key is a method request parameter name matching the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and ``name`` is a valid and unique parameter name. The value associated with the key is a Boolean flag indicating whether the parameter is required (``true``) or optional (``false``). The method request parameter names defined here are available in Integration to be mapped to integration request parameters or templates. """ return pulumi.get(self, "request_parameters") @@ -251,7 +253,7 @@ def request_parameters(self, value: Optional[Any]): @pulumi.getter(name="requestValidatorId") def request_validator_id(self) -> Optional[pulumi.Input[str]]: """ - The ID of the associated request validator. + The identifier of a RequestValidator for request validation. """ return pulumi.get(self, "request_validator_id") @@ -280,23 +282,24 @@ def __init__(__self__, rest_api_id: Optional[pulumi.Input[str]] = None, __props__=None): """ - Resource Type definition for AWS::ApiGateway::Method + The ``AWS::ApiGateway::Method`` resource creates API Gateway methods that define the parameters and body that clients must send in their requests. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[bool] api_key_required: Indicates whether the method requires clients to submit a valid API key. - :param pulumi.Input[Sequence[pulumi.Input[str]]] authorization_scopes: A list of authorization scopes configured on the method. - :param pulumi.Input['MethodAuthorizationType'] authorization_type: The method's authorization type. - :param pulumi.Input[str] authorizer_id: The identifier of the authorizer to use on this method. - :param pulumi.Input[str] http_method: The backend system that the method calls when it receives a request. - :param pulumi.Input[pulumi.InputType['MethodIntegrationArgs']] integration: The backend system that the method calls when it receives a request. - :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['MethodResponseArgs']]]] method_responses: The responses that can be sent to the client who calls the method. - :param pulumi.Input[str] operation_name: A friendly operation name for the method. - :param Any request_models: The resources that are used for the request's content type. Specify request models as key-value pairs (string-to-string mapping), with a content type as the key and a Model resource name as the value. - :param Any request_parameters: The request parameters that API Gateway accepts. Specify request parameters as key-value pairs (string-to-Boolean mapping), with a source as the key and a Boolean as the value. - :param pulumi.Input[str] request_validator_id: The ID of the associated request validator. - :param pulumi.Input[str] resource_id: The ID of an API Gateway resource. - :param pulumi.Input[str] rest_api_id: The ID of the RestApi resource in which API Gateway creates the method. + :param pulumi.Input[bool] api_key_required: A boolean flag specifying whether a valid ApiKey is required to invoke this method. + :param pulumi.Input[Sequence[pulumi.Input[str]]] authorization_scopes: A list of authorization scopes configured on the method. The scopes are used with a ``COGNITO_USER_POOLS`` authorizer to authorize the method invocation. The authorization works by matching the method scopes against the scopes parsed from the access token in the incoming request. The method invocation is authorized if any method scopes matches a claimed scope in the access token. Otherwise, the invocation is not authorized. When the method scope is configured, the client must provide an access token instead of an identity token for authorization purposes. + :param pulumi.Input['MethodAuthorizationType'] authorization_type: The method's authorization type. This parameter is required. For valid values, see [Method](https://docs.aws.amazon.com/apigateway/latest/api/API_Method.html) in the *API Gateway API Reference*. + If you specify the ``AuthorizerId`` property, specify ``CUSTOM`` or ``COGNITO_USER_POOLS`` for this property. + :param pulumi.Input[str] authorizer_id: The identifier of an authorizer to use on this method. The method's authorization type must be ``CUSTOM`` or ``COGNITO_USER_POOLS``. + :param pulumi.Input[str] http_method: The method's HTTP verb. + :param pulumi.Input[pulumi.InputType['MethodIntegrationArgs']] integration: Represents an ``HTTP``, ``HTTP_PROXY``, ``AWS``, ``AWS_PROXY``, or Mock integration. + :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['MethodResponseArgs']]]] method_responses: Gets a method response associated with a given HTTP status code. + :param pulumi.Input[str] operation_name: A human-friendly operation identifier for the method. For example, you can assign the ``operationName`` of ``ListPets`` for the ``GET /pets`` method in the ``PetStore`` example. + :param Any request_models: A key-value map specifying data schemas, represented by Model resources, (as the mapped value) of the request payloads of given content types (as the mapping key). + :param Any request_parameters: A key-value map defining required or optional method request parameters that can be accepted by API Gateway. A key is a method request parameter name matching the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and ``name`` is a valid and unique parameter name. The value associated with the key is a Boolean flag indicating whether the parameter is required (``true``) or optional (``false``). The method request parameter names defined here are available in Integration to be mapped to integration request parameters or templates. + :param pulumi.Input[str] request_validator_id: The identifier of a RequestValidator for request validation. + :param pulumi.Input[str] resource_id: The Resource identifier for the MethodResponse resource. + :param pulumi.Input[str] rest_api_id: The string identifier of the associated RestApi. """ ... @overload @@ -305,7 +308,7 @@ def __init__(__self__, args: MethodArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Resource Type definition for AWS::ApiGateway::Method + The ``AWS::ApiGateway::Method`` resource creates API Gateway methods that define the parameters and body that clients must send in their requests. :param str resource_name: The name of the resource. :param MethodArgs args: The arguments to use to populate this resource's properties. @@ -415,7 +418,7 @@ def get(resource_name: str, @pulumi.getter(name="apiKeyRequired") def api_key_required(self) -> pulumi.Output[Optional[bool]]: """ - Indicates whether the method requires clients to submit a valid API key. + A boolean flag specifying whether a valid ApiKey is required to invoke this method. """ return pulumi.get(self, "api_key_required") @@ -423,7 +426,7 @@ def api_key_required(self) -> pulumi.Output[Optional[bool]]: @pulumi.getter(name="authorizationScopes") def authorization_scopes(self) -> pulumi.Output[Optional[Sequence[str]]]: """ - A list of authorization scopes configured on the method. + A list of authorization scopes configured on the method. The scopes are used with a ``COGNITO_USER_POOLS`` authorizer to authorize the method invocation. The authorization works by matching the method scopes against the scopes parsed from the access token in the incoming request. The method invocation is authorized if any method scopes matches a claimed scope in the access token. Otherwise, the invocation is not authorized. When the method scope is configured, the client must provide an access token instead of an identity token for authorization purposes. """ return pulumi.get(self, "authorization_scopes") @@ -431,7 +434,8 @@ def authorization_scopes(self) -> pulumi.Output[Optional[Sequence[str]]]: @pulumi.getter(name="authorizationType") def authorization_type(self) -> pulumi.Output[Optional['MethodAuthorizationType']]: """ - The method's authorization type. + The method's authorization type. This parameter is required. For valid values, see [Method](https://docs.aws.amazon.com/apigateway/latest/api/API_Method.html) in the *API Gateway API Reference*. + If you specify the ``AuthorizerId`` property, specify ``CUSTOM`` or ``COGNITO_USER_POOLS`` for this property. """ return pulumi.get(self, "authorization_type") @@ -439,7 +443,7 @@ def authorization_type(self) -> pulumi.Output[Optional['MethodAuthorizationType' @pulumi.getter(name="authorizerId") def authorizer_id(self) -> pulumi.Output[Optional[str]]: """ - The identifier of the authorizer to use on this method. + The identifier of an authorizer to use on this method. The method's authorization type must be ``CUSTOM`` or ``COGNITO_USER_POOLS``. """ return pulumi.get(self, "authorizer_id") @@ -447,7 +451,7 @@ def authorizer_id(self) -> pulumi.Output[Optional[str]]: @pulumi.getter(name="httpMethod") def http_method(self) -> pulumi.Output[str]: """ - The backend system that the method calls when it receives a request. + The method's HTTP verb. """ return pulumi.get(self, "http_method") @@ -455,7 +459,7 @@ def http_method(self) -> pulumi.Output[str]: @pulumi.getter def integration(self) -> pulumi.Output[Optional['outputs.MethodIntegration']]: """ - The backend system that the method calls when it receives a request. + Represents an ``HTTP``, ``HTTP_PROXY``, ``AWS``, ``AWS_PROXY``, or Mock integration. """ return pulumi.get(self, "integration") @@ -463,7 +467,7 @@ def integration(self) -> pulumi.Output[Optional['outputs.MethodIntegration']]: @pulumi.getter(name="methodResponses") def method_responses(self) -> pulumi.Output[Optional[Sequence['outputs.MethodResponse']]]: """ - The responses that can be sent to the client who calls the method. + Gets a method response associated with a given HTTP status code. """ return pulumi.get(self, "method_responses") @@ -471,7 +475,7 @@ def method_responses(self) -> pulumi.Output[Optional[Sequence['outputs.MethodRes @pulumi.getter(name="operationName") def operation_name(self) -> pulumi.Output[Optional[str]]: """ - A friendly operation name for the method. + A human-friendly operation identifier for the method. For example, you can assign the ``operationName`` of ``ListPets`` for the ``GET /pets`` method in the ``PetStore`` example. """ return pulumi.get(self, "operation_name") @@ -479,7 +483,7 @@ def operation_name(self) -> pulumi.Output[Optional[str]]: @pulumi.getter(name="requestModels") def request_models(self) -> pulumi.Output[Optional[Any]]: """ - The resources that are used for the request's content type. Specify request models as key-value pairs (string-to-string mapping), with a content type as the key and a Model resource name as the value. + A key-value map specifying data schemas, represented by Model resources, (as the mapped value) of the request payloads of given content types (as the mapping key). """ return pulumi.get(self, "request_models") @@ -487,7 +491,7 @@ def request_models(self) -> pulumi.Output[Optional[Any]]: @pulumi.getter(name="requestParameters") def request_parameters(self) -> pulumi.Output[Optional[Any]]: """ - The request parameters that API Gateway accepts. Specify request parameters as key-value pairs (string-to-Boolean mapping), with a source as the key and a Boolean as the value. + A key-value map defining required or optional method request parameters that can be accepted by API Gateway. A key is a method request parameter name matching the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and ``name`` is a valid and unique parameter name. The value associated with the key is a Boolean flag indicating whether the parameter is required (``true``) or optional (``false``). The method request parameter names defined here are available in Integration to be mapped to integration request parameters or templates. """ return pulumi.get(self, "request_parameters") @@ -495,7 +499,7 @@ def request_parameters(self) -> pulumi.Output[Optional[Any]]: @pulumi.getter(name="requestValidatorId") def request_validator_id(self) -> pulumi.Output[Optional[str]]: """ - The ID of the associated request validator. + The identifier of a RequestValidator for request validation. """ return pulumi.get(self, "request_validator_id") @@ -503,7 +507,7 @@ def request_validator_id(self) -> pulumi.Output[Optional[str]]: @pulumi.getter(name="resourceId") def resource_id(self) -> pulumi.Output[str]: """ - The ID of an API Gateway resource. + The Resource identifier for the MethodResponse resource. """ return pulumi.get(self, "resource_id") @@ -511,7 +515,7 @@ def resource_id(self) -> pulumi.Output[str]: @pulumi.getter(name="restApiId") def rest_api_id(self) -> pulumi.Output[str]: """ - The ID of the RestApi resource in which API Gateway creates the method. + The string identifier of the associated RestApi. """ return pulumi.get(self, "rest_api_id") diff --git a/sdk/python/pulumi_aws_native/apigateway/model.py b/sdk/python/pulumi_aws_native/apigateway/model.py index acf70cea84..210cb315c0 100644 --- a/sdk/python/pulumi_aws_native/apigateway/model.py +++ b/sdk/python/pulumi_aws_native/apigateway/model.py @@ -21,11 +21,12 @@ def __init__(__self__, *, schema: Optional[Any] = None): """ The set of arguments for constructing a Model resource. - :param pulumi.Input[str] rest_api_id: The ID of a REST API with which to associate this model. - :param pulumi.Input[str] content_type: The content type for the model. - :param pulumi.Input[str] description: A description that identifies this model. - :param pulumi.Input[str] name: A name for the model. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the model name. - :param Any schema: The schema to use to transform data to one or more output formats. Specify null ({}) if you don't want to specify a schema. + :param pulumi.Input[str] rest_api_id: The string identifier of the associated RestApi. + :param pulumi.Input[str] content_type: The content-type for the model. + :param pulumi.Input[str] description: The description of the model. + :param pulumi.Input[str] name: A name for the model. If you don't specify a name, CFN generates a unique physical ID and uses that ID for the model name. For more information, see [Name Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html). + 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 Any schema: The schema for the model. For ``application/json`` models, this should be JSON schema draft 4 model. Do not include "\\*/" characters in the description of any properties because such "\\*/" characters may be interpreted as the closing marker for comments in some languages, such as Java or JavaScript, causing the installation of your API's SDK generated by API Gateway to fail. """ ModelArgs._configure( lambda key, value: pulumi.set(__self__, key, value), @@ -58,7 +59,7 @@ def _configure( @pulumi.getter(name="restApiId") def rest_api_id(self) -> pulumi.Input[str]: """ - The ID of a REST API with which to associate this model. + The string identifier of the associated RestApi. """ return pulumi.get(self, "rest_api_id") @@ -70,7 +71,7 @@ def rest_api_id(self, value: pulumi.Input[str]): @pulumi.getter(name="contentType") def content_type(self) -> Optional[pulumi.Input[str]]: """ - The content type for the model. + The content-type for the model. """ return pulumi.get(self, "content_type") @@ -82,7 +83,7 @@ def content_type(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: """ - A description that identifies this model. + The description of the model. """ return pulumi.get(self, "description") @@ -94,7 +95,8 @@ def description(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: """ - A name for the model. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the model name. + A name for the model. If you don't specify a name, CFN generates a unique physical ID and uses that ID for the model name. For more information, see [Name Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html). + 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. """ return pulumi.get(self, "name") @@ -106,7 +108,7 @@ def name(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def schema(self) -> Optional[Any]: """ - The schema to use to transform data to one or more output formats. Specify null ({}) if you don't want to specify a schema. + The schema for the model. For ``application/json`` models, this should be JSON schema draft 4 model. Do not include "\\*/" characters in the description of any properties because such "\\*/" characters may be interpreted as the closing marker for comments in some languages, such as Java or JavaScript, causing the installation of your API's SDK generated by API Gateway to fail. """ return pulumi.get(self, "schema") @@ -127,15 +129,16 @@ def __init__(__self__, schema: Optional[Any] = None, __props__=None): """ - Resource Type definition for AWS::ApiGateway::Model + The ``AWS::ApiGateway::Model`` resource defines the structure of a request or response payload for an API method. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] content_type: The content type for the model. - :param pulumi.Input[str] description: A description that identifies this model. - :param pulumi.Input[str] name: A name for the model. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the model name. - :param pulumi.Input[str] rest_api_id: The ID of a REST API with which to associate this model. - :param Any schema: The schema to use to transform data to one or more output formats. Specify null ({}) if you don't want to specify a schema. + :param pulumi.Input[str] content_type: The content-type for the model. + :param pulumi.Input[str] description: The description of the model. + :param pulumi.Input[str] name: A name for the model. If you don't specify a name, CFN generates a unique physical ID and uses that ID for the model name. For more information, see [Name Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html). + 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] rest_api_id: The string identifier of the associated RestApi. + :param Any schema: The schema for the model. For ``application/json`` models, this should be JSON schema draft 4 model. Do not include "\\*/" characters in the description of any properties because such "\\*/" characters may be interpreted as the closing marker for comments in some languages, such as Java or JavaScript, causing the installation of your API's SDK generated by API Gateway to fail. """ ... @overload @@ -144,7 +147,7 @@ def __init__(__self__, args: ModelArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Resource Type definition for AWS::ApiGateway::Model + The ``AWS::ApiGateway::Model`` resource defines the structure of a request or response payload for an API method. :param str resource_name: The name of the resource. :param ModelArgs args: The arguments to use to populate this resource's properties. @@ -221,7 +224,7 @@ def get(resource_name: str, @pulumi.getter(name="contentType") def content_type(self) -> pulumi.Output[Optional[str]]: """ - The content type for the model. + The content-type for the model. """ return pulumi.get(self, "content_type") @@ -229,7 +232,7 @@ def content_type(self) -> pulumi.Output[Optional[str]]: @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: """ - A description that identifies this model. + The description of the model. """ return pulumi.get(self, "description") @@ -237,7 +240,8 @@ def description(self) -> pulumi.Output[Optional[str]]: @pulumi.getter def name(self) -> pulumi.Output[Optional[str]]: """ - A name for the model. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the model name. + A name for the model. If you don't specify a name, CFN generates a unique physical ID and uses that ID for the model name. For more information, see [Name Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html). + 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. """ return pulumi.get(self, "name") @@ -245,7 +249,7 @@ def name(self) -> pulumi.Output[Optional[str]]: @pulumi.getter(name="restApiId") def rest_api_id(self) -> pulumi.Output[str]: """ - The ID of a REST API with which to associate this model. + The string identifier of the associated RestApi. """ return pulumi.get(self, "rest_api_id") @@ -253,7 +257,7 @@ def rest_api_id(self) -> pulumi.Output[str]: @pulumi.getter def schema(self) -> pulumi.Output[Optional[Any]]: """ - The schema to use to transform data to one or more output formats. Specify null ({}) if you don't want to specify a schema. + The schema for the model. For ``application/json`` models, this should be JSON schema draft 4 model. Do not include "\\*/" characters in the description of any properties because such "\\*/" characters may be interpreted as the closing marker for comments in some languages, such as Java or JavaScript, causing the installation of your API's SDK generated by API Gateway to fail. """ return pulumi.get(self, "schema") diff --git a/sdk/python/pulumi_aws_native/apigateway/outputs.py b/sdk/python/pulumi_aws_native/apigateway/outputs.py index da49cf6fd3..8f459418c5 100644 --- a/sdk/python/pulumi_aws_native/apigateway/outputs.py +++ b/sdk/python/pulumi_aws_native/apigateway/outputs.py @@ -175,6 +175,10 @@ def value(self) -> str: @pulumi.output_type class DeploymentAccessLogSetting(dict): + """ + The ``AccessLogSetting`` property type specifies settings for logging access in this stage. + ``AccessLogSetting`` is a property of the [StageDescription](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html) property type. + """ @staticmethod def __key_warning(key: str): suggest = None @@ -196,8 +200,10 @@ def __init__(__self__, *, destination_arn: Optional[str] = None, format: Optional[str] = None): """ - :param str destination_arn: The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with amazon-apigateway-. - :param str format: A single line format of the access logs of data, as specified by selected $context variables. The format must include at least $context.requestId. + The ``AccessLogSetting`` property type specifies settings for logging access in this stage. + ``AccessLogSetting`` is a property of the [StageDescription](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html) property type. + :param str destination_arn: The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with ``amazon-apigateway-``. + :param str format: A single line format of the access logs of data, as specified by selected $context variables. The format must include at least ``$context.requestId``. """ DeploymentAccessLogSetting._configure( lambda key, value: pulumi.set(__self__, key, value), @@ -219,7 +225,7 @@ def _configure( @pulumi.getter(name="destinationArn") def destination_arn(self) -> Optional[str]: """ - The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with amazon-apigateway-. + The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with ``amazon-apigateway-``. """ return pulumi.get(self, "destination_arn") @@ -227,13 +233,17 @@ def destination_arn(self) -> Optional[str]: @pulumi.getter def format(self) -> Optional[str]: """ - A single line format of the access logs of data, as specified by selected $context variables. The format must include at least $context.requestId. + A single line format of the access logs of data, as specified by selected $context variables. The format must include at least ``$context.requestId``. """ return pulumi.get(self, "format") @pulumi.output_type class DeploymentCanarySetting(dict): + """ + The ``CanarySetting`` property type specifies settings for the canary deployment in this stage. + ``CanarySetting`` is a property of the [StageDescription](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html) property type. + """ @staticmethod def __key_warning(key: str): suggest = None @@ -260,9 +270,11 @@ def __init__(__self__, *, stage_variable_overrides: Optional[Any] = None, use_stage_cache: Optional[bool] = None): """ + The ``CanarySetting`` property type specifies settings for the canary deployment in this stage. + ``CanarySetting`` is a property of the [StageDescription](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html) property type. :param float percent_traffic: The percent (0-100) of traffic diverted to a canary deployment. - :param Any stage_variable_overrides: Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values. - :param bool use_stage_cache: Whether the canary deployment uses the stage cache or not. + :param Any stage_variable_overrides: Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values. + :param bool use_stage_cache: A Boolean flag to indicate whether the canary deployment uses the stage cache or not. """ DeploymentCanarySetting._configure( lambda key, value: pulumi.set(__self__, key, value), @@ -296,7 +308,7 @@ def percent_traffic(self) -> Optional[float]: @pulumi.getter(name="stageVariableOverrides") def stage_variable_overrides(self) -> Optional[Any]: """ - Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values. + Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values. """ return pulumi.get(self, "stage_variable_overrides") @@ -304,13 +316,16 @@ def stage_variable_overrides(self) -> Optional[Any]: @pulumi.getter(name="useStageCache") def use_stage_cache(self) -> Optional[bool]: """ - Whether the canary deployment uses the stage cache or not. + A Boolean flag to indicate whether the canary deployment uses the stage cache or not. """ return pulumi.get(self, "use_stage_cache") @pulumi.output_type class DeploymentCanarySettings(dict): + """ + The ``DeploymentCanarySettings`` property type specifies settings for the canary deployment. + """ @staticmethod def __key_warning(key: str): suggest = None @@ -337,9 +352,10 @@ def __init__(__self__, *, stage_variable_overrides: Optional[Any] = None, use_stage_cache: Optional[bool] = None): """ - :param float percent_traffic: The percentage (0-100) of traffic diverted to a canary deployment. - :param Any stage_variable_overrides: Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values. Duplicates are not allowed. - :param bool use_stage_cache: Whether the canary deployment uses the stage cache. + The ``DeploymentCanarySettings`` property type specifies settings for the canary deployment. + :param float percent_traffic: The percentage (0.0-100.0) of traffic routed to the canary deployment. + :param Any stage_variable_overrides: A stage variable overrides used for the canary release deployment. They can override existing stage variables or add new stage variables for the canary release deployment. These stage variables are represented as a string-to-string map between stage variable names and their values. + :param bool use_stage_cache: A Boolean flag to indicate whether the canary release deployment uses the stage cache or not. """ DeploymentCanarySettings._configure( lambda key, value: pulumi.set(__self__, key, value), @@ -365,7 +381,7 @@ def _configure( @pulumi.getter(name="percentTraffic") def percent_traffic(self) -> Optional[float]: """ - The percentage (0-100) of traffic diverted to a canary deployment. + The percentage (0.0-100.0) of traffic routed to the canary deployment. """ return pulumi.get(self, "percent_traffic") @@ -373,7 +389,7 @@ def percent_traffic(self) -> Optional[float]: @pulumi.getter(name="stageVariableOverrides") def stage_variable_overrides(self) -> Optional[Any]: """ - Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values. Duplicates are not allowed. + A stage variable overrides used for the canary release deployment. They can override existing stage variables or add new stage variables for the canary release deployment. These stage variables are represented as a string-to-string map between stage variable names and their values. """ return pulumi.get(self, "stage_variable_overrides") @@ -381,13 +397,17 @@ def stage_variable_overrides(self) -> Optional[Any]: @pulumi.getter(name="useStageCache") def use_stage_cache(self) -> Optional[bool]: """ - Whether the canary deployment uses the stage cache. + A Boolean flag to indicate whether the canary release deployment uses the stage cache or not. """ return pulumi.get(self, "use_stage_cache") @pulumi.output_type class DeploymentMethodSetting(dict): + """ + The ``MethodSetting`` property type configures settings for all methods in a stage. + The ``MethodSettings`` property of the [Amazon API Gateway Deployment StageDescription](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html) property type contains a list of ``MethodSetting`` property types. + """ @staticmethod def __key_warning(key: str): suggest = None @@ -435,16 +455,18 @@ def __init__(__self__, *, throttling_burst_limit: Optional[int] = None, throttling_rate_limit: Optional[float] = None): """ - :param bool cache_data_encrypted: Indicates whether the cached responses are encrypted - :param int cache_ttl_in_seconds: The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. - :param bool caching_enabled: Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses. - :param bool data_trace_enabled: Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs. + The ``MethodSetting`` property type configures settings for all methods in a stage. + The ``MethodSettings`` property of the [Amazon API Gateway Deployment StageDescription](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html) property type contains a list of ``MethodSetting`` property types. + :param bool cache_data_encrypted: Specifies whether the cached responses are encrypted. + :param int cache_ttl_in_seconds: Specifies the time to live (TTL), in seconds, for cached responses. The higher the TTL, the longer the response will be cached. + :param bool caching_enabled: Specifies whether responses should be cached and returned for requests. A cache cluster must be enabled on the stage for responses to be cached. + :param bool data_trace_enabled: Specifies whether data trace logging is enabled for this method, which affects the log entries pushed to Amazon CloudWatch Logs. This can be useful to troubleshoot APIs, but can result in logging sensitive data. We recommend that you don't enable this option for production APIs. :param str http_method: The HTTP method. - :param str logging_level: The logging level for this method. For valid values, see the loggingLevel property of the Stage resource in the Amazon API Gateway API Reference. - :param bool metrics_enabled: Indicates whether Amazon CloudWatch metrics are enabled for methods in the stage. - :param str resource_path: The resource path for this method. Forward slashes (/) are encoded as ~1 and the initial slash must include a forward slash. - :param int throttling_burst_limit: The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. - :param float throttling_rate_limit: The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. + :param str logging_level: Specifies the logging level for this method, which affects the log entries pushed to Amazon CloudWatch Logs. Valid values are ``OFF``, ``ERROR``, and ``INFO``. Choose ``ERROR`` to write only error-level entries to CloudWatch Logs, or choose ``INFO`` to include all ``ERROR`` events as well as extra informational events. + :param bool metrics_enabled: Specifies whether Amazon CloudWatch metrics are enabled for this method. + :param str resource_path: The resource path for this method. Forward slashes (``/``) are encoded as ``~1`` and the initial slash must include a forward slash. For example, the path value ``/resource/subresource`` must be encoded as ``/~1resource~1subresource``. To specify the root path, use only a slash (``/``). + :param int throttling_burst_limit: Specifies the throttling burst limit. + :param float throttling_rate_limit: Specifies the throttling rate limit. """ DeploymentMethodSetting._configure( lambda key, value: pulumi.set(__self__, key, value), @@ -498,7 +520,7 @@ def _configure( @pulumi.getter(name="cacheDataEncrypted") def cache_data_encrypted(self) -> Optional[bool]: """ - Indicates whether the cached responses are encrypted + Specifies whether the cached responses are encrypted. """ return pulumi.get(self, "cache_data_encrypted") @@ -506,7 +528,7 @@ def cache_data_encrypted(self) -> Optional[bool]: @pulumi.getter(name="cacheTtlInSeconds") def cache_ttl_in_seconds(self) -> Optional[int]: """ - The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. + Specifies the time to live (TTL), in seconds, for cached responses. The higher the TTL, the longer the response will be cached. """ return pulumi.get(self, "cache_ttl_in_seconds") @@ -514,7 +536,7 @@ def cache_ttl_in_seconds(self) -> Optional[int]: @pulumi.getter(name="cachingEnabled") def caching_enabled(self) -> Optional[bool]: """ - Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses. + Specifies whether responses should be cached and returned for requests. A cache cluster must be enabled on the stage for responses to be cached. """ return pulumi.get(self, "caching_enabled") @@ -522,7 +544,7 @@ def caching_enabled(self) -> Optional[bool]: @pulumi.getter(name="dataTraceEnabled") def data_trace_enabled(self) -> Optional[bool]: """ - Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs. + Specifies whether data trace logging is enabled for this method, which affects the log entries pushed to Amazon CloudWatch Logs. This can be useful to troubleshoot APIs, but can result in logging sensitive data. We recommend that you don't enable this option for production APIs. """ return pulumi.get(self, "data_trace_enabled") @@ -538,7 +560,7 @@ def http_method(self) -> Optional[str]: @pulumi.getter(name="loggingLevel") def logging_level(self) -> Optional[str]: """ - The logging level for this method. For valid values, see the loggingLevel property of the Stage resource in the Amazon API Gateway API Reference. + Specifies the logging level for this method, which affects the log entries pushed to Amazon CloudWatch Logs. Valid values are ``OFF``, ``ERROR``, and ``INFO``. Choose ``ERROR`` to write only error-level entries to CloudWatch Logs, or choose ``INFO`` to include all ``ERROR`` events as well as extra informational events. """ return pulumi.get(self, "logging_level") @@ -546,7 +568,7 @@ def logging_level(self) -> Optional[str]: @pulumi.getter(name="metricsEnabled") def metrics_enabled(self) -> Optional[bool]: """ - Indicates whether Amazon CloudWatch metrics are enabled for methods in the stage. + Specifies whether Amazon CloudWatch metrics are enabled for this method. """ return pulumi.get(self, "metrics_enabled") @@ -554,7 +576,7 @@ def metrics_enabled(self) -> Optional[bool]: @pulumi.getter(name="resourcePath") def resource_path(self) -> Optional[str]: """ - The resource path for this method. Forward slashes (/) are encoded as ~1 and the initial slash must include a forward slash. + The resource path for this method. Forward slashes (``/``) are encoded as ``~1`` and the initial slash must include a forward slash. For example, the path value ``/resource/subresource`` must be encoded as ``/~1resource~1subresource``. To specify the root path, use only a slash (``/``). """ return pulumi.get(self, "resource_path") @@ -562,7 +584,7 @@ def resource_path(self) -> Optional[str]: @pulumi.getter(name="throttlingBurstLimit") def throttling_burst_limit(self) -> Optional[int]: """ - The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. + Specifies the throttling burst limit. """ return pulumi.get(self, "throttling_burst_limit") @@ -570,13 +592,16 @@ def throttling_burst_limit(self) -> Optional[int]: @pulumi.getter(name="throttlingRateLimit") def throttling_rate_limit(self) -> Optional[float]: """ - The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. + Specifies the throttling rate limit. """ return pulumi.get(self, "throttling_rate_limit") @pulumi.output_type class DeploymentStageDescription(dict): + """ + ``StageDescription`` is a property of the [AWS::ApiGateway::Deployment](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-deployment.html) resource that configures a deployment stage. + """ @staticmethod def __key_warning(key: str): suggest = None @@ -645,25 +670,27 @@ def __init__(__self__, *, tracing_enabled: Optional[bool] = None, variables: Optional[Any] = None): """ + ``StageDescription`` is a property of the [AWS::ApiGateway::Deployment](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-deployment.html) resource that configures a deployment stage. :param 'DeploymentAccessLogSetting' access_log_setting: Specifies settings for logging access in this stage. - :param bool cache_cluster_enabled: Indicates whether cache clustering is enabled for the stage. - :param str cache_cluster_size: The size of the stage's cache cluster. - :param bool cache_data_encrypted: The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. - :param int cache_ttl_in_seconds: The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. - :param bool caching_enabled: Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses. + :param bool cache_cluster_enabled: Specifies whether a cache cluster is enabled for the stage. + :param str cache_cluster_size: The size of the stage's cache cluster. For more information, see [cacheClusterSize](https://docs.aws.amazon.com/apigateway/latest/api/API_CreateStage.html#apigw-CreateStage-request-cacheClusterSize) in the *API Gateway API Reference*. + :param bool cache_data_encrypted: Indicates whether the cached responses are encrypted. + :param int cache_ttl_in_seconds: The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. + :param bool caching_enabled: Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses. For more information, see [Enable API Gateway Caching in a Stage to Enhance API Performance](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html) in the *API Gateway Developer Guide*. :param 'DeploymentCanarySetting' canary_setting: Specifies settings for the canary deployment in this stage. - :param str client_certificate_id: The identifier of the client certificate that API Gateway uses to call your integration endpoints in the stage. - :param bool data_trace_enabled: Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs. + :param str client_certificate_id: The identifier of the client certificate that API Gateway uses to call your integration endpoints in the stage. + :param bool data_trace_enabled: Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs. :param str description: A description of the purpose of the stage. :param str documentation_version: The version identifier of the API documentation snapshot. - :param str logging_level: The logging level for this method. For valid values, see the loggingLevel property of the Stage resource in the Amazon API Gateway API Reference. + :param str logging_level: The logging level for this method. For valid values, see the ``loggingLevel`` property of the [MethodSetting](https://docs.aws.amazon.com/apigateway/latest/api/API_MethodSetting.html) resource in the *Amazon API Gateway API Reference*. :param Sequence['DeploymentMethodSetting'] method_settings: Configures settings for all of the stage's methods. :param bool metrics_enabled: Indicates whether Amazon CloudWatch metrics are enabled for methods in the stage. :param Sequence['DeploymentTag'] tags: An array of arbitrary tags (key-value pairs) to associate with the stage. - :param int throttling_burst_limit: The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. - :param float throttling_rate_limit: The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. + :param int throttling_burst_limit: The target request burst rate limit. This allows more requests through for a period of time than the target rate limit. For more information, see [Manage API Request Throttling](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-request-throttling.html) in the *API Gateway Developer Guide*. + :param float throttling_rate_limit: The target request steady-state rate limit. For more information, see [Manage API Request Throttling](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-request-throttling.html) in the *API Gateway Developer Guide*. :param bool tracing_enabled: Specifies whether active tracing with X-ray is enabled for this stage. - :param Any variables: A map that defines the stage variables. Variable names must consist of alphanumeric characters, and the values must match the following regular expression: [A-Za-z0-9-._~:/?#&=,]+. + For more information, see [Trace API Gateway API Execution with X-Ray](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-xray.html) in the *API Gateway Developer Guide*. + :param Any variables: A map that defines the stage variables. Variable names must consist of alphanumeric characters, and the values must match the following regular expression: ``[A-Za-z0-9-._~:/?#&=,]+``. """ DeploymentStageDescription._configure( lambda key, value: pulumi.set(__self__, key, value), @@ -761,7 +788,7 @@ def access_log_setting(self) -> Optional['outputs.DeploymentAccessLogSetting']: @pulumi.getter(name="cacheClusterEnabled") def cache_cluster_enabled(self) -> Optional[bool]: """ - Indicates whether cache clustering is enabled for the stage. + Specifies whether a cache cluster is enabled for the stage. """ return pulumi.get(self, "cache_cluster_enabled") @@ -769,7 +796,7 @@ def cache_cluster_enabled(self) -> Optional[bool]: @pulumi.getter(name="cacheClusterSize") def cache_cluster_size(self) -> Optional[str]: """ - The size of the stage's cache cluster. + The size of the stage's cache cluster. For more information, see [cacheClusterSize](https://docs.aws.amazon.com/apigateway/latest/api/API_CreateStage.html#apigw-CreateStage-request-cacheClusterSize) in the *API Gateway API Reference*. """ return pulumi.get(self, "cache_cluster_size") @@ -777,7 +804,7 @@ def cache_cluster_size(self) -> Optional[str]: @pulumi.getter(name="cacheDataEncrypted") def cache_data_encrypted(self) -> Optional[bool]: """ - The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. + Indicates whether the cached responses are encrypted. """ return pulumi.get(self, "cache_data_encrypted") @@ -785,7 +812,7 @@ def cache_data_encrypted(self) -> Optional[bool]: @pulumi.getter(name="cacheTtlInSeconds") def cache_ttl_in_seconds(self) -> Optional[int]: """ - The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. + The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. """ return pulumi.get(self, "cache_ttl_in_seconds") @@ -793,7 +820,7 @@ def cache_ttl_in_seconds(self) -> Optional[int]: @pulumi.getter(name="cachingEnabled") def caching_enabled(self) -> Optional[bool]: """ - Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses. + Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses. For more information, see [Enable API Gateway Caching in a Stage to Enhance API Performance](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html) in the *API Gateway Developer Guide*. """ return pulumi.get(self, "caching_enabled") @@ -809,7 +836,7 @@ def canary_setting(self) -> Optional['outputs.DeploymentCanarySetting']: @pulumi.getter(name="clientCertificateId") def client_certificate_id(self) -> Optional[str]: """ - The identifier of the client certificate that API Gateway uses to call your integration endpoints in the stage. + The identifier of the client certificate that API Gateway uses to call your integration endpoints in the stage. """ return pulumi.get(self, "client_certificate_id") @@ -817,7 +844,7 @@ def client_certificate_id(self) -> Optional[str]: @pulumi.getter(name="dataTraceEnabled") def data_trace_enabled(self) -> Optional[bool]: """ - Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs. + Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs. """ return pulumi.get(self, "data_trace_enabled") @@ -841,7 +868,7 @@ def documentation_version(self) -> Optional[str]: @pulumi.getter(name="loggingLevel") def logging_level(self) -> Optional[str]: """ - The logging level for this method. For valid values, see the loggingLevel property of the Stage resource in the Amazon API Gateway API Reference. + The logging level for this method. For valid values, see the ``loggingLevel`` property of the [MethodSetting](https://docs.aws.amazon.com/apigateway/latest/api/API_MethodSetting.html) resource in the *Amazon API Gateway API Reference*. """ return pulumi.get(self, "logging_level") @@ -873,7 +900,7 @@ def tags(self) -> Optional[Sequence['outputs.DeploymentTag']]: @pulumi.getter(name="throttlingBurstLimit") def throttling_burst_limit(self) -> Optional[int]: """ - The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. + The target request burst rate limit. This allows more requests through for a period of time than the target rate limit. For more information, see [Manage API Request Throttling](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-request-throttling.html) in the *API Gateway Developer Guide*. """ return pulumi.get(self, "throttling_burst_limit") @@ -881,7 +908,7 @@ def throttling_burst_limit(self) -> Optional[int]: @pulumi.getter(name="throttlingRateLimit") def throttling_rate_limit(self) -> Optional[float]: """ - The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. + The target request steady-state rate limit. For more information, see [Manage API Request Throttling](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-request-throttling.html) in the *API Gateway Developer Guide*. """ return pulumi.get(self, "throttling_rate_limit") @@ -890,6 +917,7 @@ def throttling_rate_limit(self) -> Optional[float]: def tracing_enabled(self) -> Optional[bool]: """ Specifies whether active tracing with X-ray is enabled for this stage. + For more information, see [Trace API Gateway API Execution with X-Ray](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-xray.html) in the *API Gateway Developer Guide*. """ return pulumi.get(self, "tracing_enabled") @@ -897,7 +925,7 @@ def tracing_enabled(self) -> Optional[bool]: @pulumi.getter def variables(self) -> Optional[Any]: """ - A map that defines the stage variables. Variable names must consist of alphanumeric characters, and the values must match the following regular expression: [A-Za-z0-9-._~:/?#&=,]+. + A map that defines the stage variables. Variable names must consist of alphanumeric characters, and the values must match the following regular expression: ``[A-Za-z0-9-._~:/?#&=,]+``. """ return pulumi.get(self, "variables") @@ -944,6 +972,10 @@ def value(self) -> str: @pulumi.output_type class DocumentationPartLocation(dict): + """ + The ``Location`` property specifies the location of the Amazon API Gateway API entity that the documentation applies to. ``Location`` is a property of the [AWS::ApiGateway::DocumentationPart](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationpart.html) resource. + For more information about each property, including constraints and valid values, see [DocumentationPart](https://docs.aws.amazon.com/apigateway/latest/api/API_DocumentationPartLocation.html) in the *Amazon API Gateway REST API Reference*. + """ @staticmethod def __key_warning(key: str): suggest = None @@ -968,11 +1000,13 @@ def __init__(__self__, *, status_code: Optional[str] = None, type: Optional['DocumentationPartLocationType'] = None): """ - :param str method: The HTTP verb of a method. - :param str name: The name of the targeted API entity. - :param str path: The URL path of the target. - :param str status_code: The HTTP status code of a response. - :param 'DocumentationPartLocationType' type: The type of API entity that the documentation content applies to. + The ``Location`` property specifies the location of the Amazon API Gateway API entity that the documentation applies to. ``Location`` is a property of the [AWS::ApiGateway::DocumentationPart](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationpart.html) resource. + For more information about each property, including constraints and valid values, see [DocumentationPart](https://docs.aws.amazon.com/apigateway/latest/api/API_DocumentationPartLocation.html) in the *Amazon API Gateway REST API Reference*. + :param str method: The HTTP verb of a method. It is a valid field for the API entity types of ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``*`` for any method. When an applicable child entity inherits the content of an entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``method`` attribute must match that of the parent entity exactly. + :param str name: The name of the targeted API entity. It is a valid and required field for the API entity types of ``AUTHORIZER``, ``MODEL``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY`` and ``RESPONSE_HEADER``. It is an invalid field for any other entity type. + :param str path: The URL path of the target. It is a valid field for the API entity types of ``RESOURCE``, ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``/`` for the root resource. When an applicable child entity inherits the content of another entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``path`` attribute must match that of the parent entity as a prefix. + :param str status_code: The HTTP status code of a response. It is a valid field for the API entity types of ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``*`` for any status code. When an applicable child entity inherits the content of an entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``statusCode`` attribute must match that of the parent entity exactly. + :param 'DocumentationPartLocationType' type: The type of API entity to which the documentation content applies. Valid values are ``API``, ``AUTHORIZER``, ``MODEL``, ``RESOURCE``, ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. Content inheritance does not apply to any entity of the ``API``, ``AUTHORIZER``, ``METHOD``, ``MODEL``, ``REQUEST_BODY``, or ``RESOURCE`` type. """ DocumentationPartLocation._configure( lambda key, value: pulumi.set(__self__, key, value), @@ -1006,7 +1040,7 @@ def _configure( @pulumi.getter def method(self) -> Optional[str]: """ - The HTTP verb of a method. + The HTTP verb of a method. It is a valid field for the API entity types of ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``*`` for any method. When an applicable child entity inherits the content of an entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``method`` attribute must match that of the parent entity exactly. """ return pulumi.get(self, "method") @@ -1014,7 +1048,7 @@ def method(self) -> Optional[str]: @pulumi.getter def name(self) -> Optional[str]: """ - The name of the targeted API entity. + The name of the targeted API entity. It is a valid and required field for the API entity types of ``AUTHORIZER``, ``MODEL``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY`` and ``RESPONSE_HEADER``. It is an invalid field for any other entity type. """ return pulumi.get(self, "name") @@ -1022,7 +1056,7 @@ def name(self) -> Optional[str]: @pulumi.getter def path(self) -> Optional[str]: """ - The URL path of the target. + The URL path of the target. It is a valid field for the API entity types of ``RESOURCE``, ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``/`` for the root resource. When an applicable child entity inherits the content of another entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``path`` attribute must match that of the parent entity as a prefix. """ return pulumi.get(self, "path") @@ -1030,7 +1064,7 @@ def path(self) -> Optional[str]: @pulumi.getter(name="statusCode") def status_code(self) -> Optional[str]: """ - The HTTP status code of a response. + The HTTP status code of a response. It is a valid field for the API entity types of ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``*`` for any status code. When an applicable child entity inherits the content of an entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``statusCode`` attribute must match that of the parent entity exactly. """ return pulumi.get(self, "status_code") @@ -1038,7 +1072,7 @@ def status_code(self) -> Optional[str]: @pulumi.getter def type(self) -> Optional['DocumentationPartLocationType']: """ - The type of API entity that the documentation content applies to. + The type of API entity to which the documentation content applies. Valid values are ``API``, ``AUTHORIZER``, ``MODEL``, ``RESOURCE``, ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. Content inheritance does not apply to any entity of the ``API``, ``AUTHORIZER``, ``METHOD``, ``MODEL``, ``REQUEST_BODY``, or ``RESOURCE`` type. """ return pulumi.get(self, "type") @@ -1150,6 +1184,9 @@ def value(self) -> Optional[str]: @pulumi.output_type class MethodIntegration(dict): + """ + ``Integration`` is a property of the [AWS::ApiGateway::Method](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html) resource that specifies information about the target backend that a method calls. + """ @staticmethod def __key_warning(key: str): suggest = None @@ -1203,20 +1240,24 @@ def __init__(__self__, *, timeout_in_millis: Optional[int] = None, uri: Optional[str] = None): """ - :param 'MethodIntegrationType' type: The type of backend that your method is running. - :param Sequence[str] cache_key_parameters: A list of request parameters whose values API Gateway caches. - :param str cache_namespace: An API-specific tag group of related cached parameters. - :param str connection_id: The ID of the VpcLink used for the integration when connectionType=VPC_LINK, otherwise undefined. - :param 'MethodIntegrationConnectionType' connection_type: The type of the network connection to the integration endpoint. - :param 'MethodIntegrationContentHandling' content_handling: Specifies how to handle request payload content type conversions. - :param str credentials: The credentials that are required for the integration. - :param str integration_http_method: The integration's HTTP method type. - :param Sequence['MethodIntegrationResponse'] integration_responses: The response that API Gateway provides after a method's backend completes processing a request. - :param 'MethodIntegrationPassthroughBehavior' passthrough_behavior: Indicates when API Gateway passes requests to the targeted backend. - :param Any request_parameters: The request parameters that API Gateway sends with the backend request. - :param Any request_templates: A map of Apache Velocity templates that are applied on the request payload. - :param int timeout_in_millis: Custom timeout between 50 and 29,000 milliseconds. - :param str uri: The Uniform Resource Identifier (URI) for the integration. + ``Integration`` is a property of the [AWS::ApiGateway::Method](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html) resource that specifies information about the target backend that a method calls. + :param 'MethodIntegrationType' type: Specifies an API method integration type. The valid value is one of the following: + For the HTTP and HTTP proxy integrations, each integration can specify a protocol (``http/https``), port and path. Standard 80 and 443 ports are supported as well as custom ports above 1024. An HTTP or HTTP proxy integration with a ``connectionType`` of ``VPC_LINK`` is referred to as a private integration and uses a VpcLink to connect API Gateway to a network load balancer of a VPC. + :param Sequence[str] cache_key_parameters: A list of request parameters whose values API Gateway caches. To be valid values for ``cacheKeyParameters``, these parameters must also be specified for Method ``requestParameters``. + :param str cache_namespace: Specifies a group of related cached parameters. By default, API Gateway uses the resource ID as the ``cacheNamespace``. You can specify the same ``cacheNamespace`` across resources to return the same cached data for requests to different resources. + :param str connection_id: The ID of the VpcLink used for the integration when ``connectionType=VPC_LINK`` and undefined, otherwise. + :param 'MethodIntegrationConnectionType' connection_type: The type of the network connection to the integration endpoint. The valid value is ``INTERNET`` for connections through the public routable internet or ``VPC_LINK`` for private connections between API Gateway and a network load balancer in a VPC. The default value is ``INTERNET``. + :param 'MethodIntegrationContentHandling' content_handling: Specifies how to handle request payload content type conversions. Supported values are ``CONVERT_TO_BINARY`` and ``CONVERT_TO_TEXT``, with the following behaviors: + If this property is not defined, the request payload will be passed through from the method request to integration request without modification, provided that the ``passthroughBehavior`` is configured to support payload pass-through. + :param str credentials: Specifies the credentials required for the integration, if any. For AWS integrations, three options are available. To specify an IAM Role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To require that the caller's identity be passed through from the request, specify the string ``arn:aws:iam::\\*:user/\\*``. To use resource-based permissions on supported AWS services, specify null. + :param str integration_http_method: Specifies the integration's HTTP method type. For the Type property, if you specify ``MOCK``, this property is optional. For Lambda integrations, you must set the integration method to ``POST``. For all other types, you must specify this property. + :param Sequence['MethodIntegrationResponse'] integration_responses: Specifies the integration's responses. + :param 'MethodIntegrationPassthroughBehavior' passthrough_behavior: Specifies how the method request body of an unmapped content type will be passed through the integration request to the back end without transformation. A content type is unmapped if no mapping template is defined in the integration or the content type does not match any of the mapped content types, as specified in ``requestTemplates``. The valid value is one of the following: ``WHEN_NO_MATCH``: passes the method request body through the integration request to the back end without transformation when the method request content type does not match any content type associated with the mapping templates defined in the integration request. ``WHEN_NO_TEMPLATES``: passes the method request body through the integration request to the back end without transformation when no mapping template is defined in the integration request. If a template is defined when this option is selected, the method request of an unmapped content-type will be rejected with an HTTP 415 Unsupported Media Type response. ``NEVER``: rejects the method request with an HTTP 415 Unsupported Media Type response when either the method request content type does not match any content type associated with the mapping templates defined in the integration request or no mapping template is defined in the integration request. + :param Any request_parameters: A key-value map specifying request parameters that are passed from the method request to the back end. The key is an integration request parameter name and the associated value is a method request parameter value or static value that must be enclosed within single quotes and pre-encoded as required by the back end. The method request parameter value must match the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and ``name`` must be a valid and unique method request parameter name. + :param Any request_templates: Represents a map of Velocity templates that are applied on the request payload based on the value of the Content-Type header sent by the client. The content type value is the key in this map, and the template (as a String) is the value. + :param int timeout_in_millis: Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds or 29 seconds. + :param str uri: Specifies Uniform Resource Identifier (URI) of the integration endpoint. + For ``HTTP`` or ``HTTP_PROXY`` integrations, the URI must be a fully formed, encoded HTTP(S) URL according to the RFC-3986 specification for standard integrations. If ``connectionType`` is ``VPC_LINK`` specify the Network Load Balancer DNS name. For ``AWS`` or ``AWS_PROXY`` integrations, the URI is of the form ``arn:aws:apigateway:{region}:{subdomain.service|service}:path|action/{service_api}``. Here, {Region} is the API Gateway region (e.g., us-east-1); {service} is the name of the integrated AWS service (e.g., s3); and {subdomain} is a designated subdomain supported by certain AWS service for fast host-name lookup. action can be used for an AWS service action-based API, using an Action={name}&{p1}={v1}&p2={v2}... query string. The ensuing {service_api} refers to a supported action {name} plus any required input parameters. Alternatively, path can be used for an AWS service path-based API. The ensuing service_api refers to the path to an AWS service resource, including the region of the integrated AWS service, if applicable. For example, for integration with the S3 API of GetObject, the uri can be either ``arn:aws:apigateway:us-west-2:s3:action/GetObject&Bucket={bucket}&Key={key}`` or ``arn:aws:apigateway:us-west-2:s3:path/{bucket}/{key}`` """ MethodIntegration._configure( lambda key, value: pulumi.set(__self__, key, value), @@ -1285,7 +1326,8 @@ def _configure( @pulumi.getter def type(self) -> 'MethodIntegrationType': """ - The type of backend that your method is running. + Specifies an API method integration type. The valid value is one of the following: + For the HTTP and HTTP proxy integrations, each integration can specify a protocol (``http/https``), port and path. Standard 80 and 443 ports are supported as well as custom ports above 1024. An HTTP or HTTP proxy integration with a ``connectionType`` of ``VPC_LINK`` is referred to as a private integration and uses a VpcLink to connect API Gateway to a network load balancer of a VPC. """ return pulumi.get(self, "type") @@ -1293,7 +1335,7 @@ def type(self) -> 'MethodIntegrationType': @pulumi.getter(name="cacheKeyParameters") def cache_key_parameters(self) -> Optional[Sequence[str]]: """ - A list of request parameters whose values API Gateway caches. + A list of request parameters whose values API Gateway caches. To be valid values for ``cacheKeyParameters``, these parameters must also be specified for Method ``requestParameters``. """ return pulumi.get(self, "cache_key_parameters") @@ -1301,7 +1343,7 @@ def cache_key_parameters(self) -> Optional[Sequence[str]]: @pulumi.getter(name="cacheNamespace") def cache_namespace(self) -> Optional[str]: """ - An API-specific tag group of related cached parameters. + Specifies a group of related cached parameters. By default, API Gateway uses the resource ID as the ``cacheNamespace``. You can specify the same ``cacheNamespace`` across resources to return the same cached data for requests to different resources. """ return pulumi.get(self, "cache_namespace") @@ -1309,7 +1351,7 @@ def cache_namespace(self) -> Optional[str]: @pulumi.getter(name="connectionId") def connection_id(self) -> Optional[str]: """ - The ID of the VpcLink used for the integration when connectionType=VPC_LINK, otherwise undefined. + The ID of the VpcLink used for the integration when ``connectionType=VPC_LINK`` and undefined, otherwise. """ return pulumi.get(self, "connection_id") @@ -1317,7 +1359,7 @@ def connection_id(self) -> Optional[str]: @pulumi.getter(name="connectionType") def connection_type(self) -> Optional['MethodIntegrationConnectionType']: """ - The type of the network connection to the integration endpoint. + The type of the network connection to the integration endpoint. The valid value is ``INTERNET`` for connections through the public routable internet or ``VPC_LINK`` for private connections between API Gateway and a network load balancer in a VPC. The default value is ``INTERNET``. """ return pulumi.get(self, "connection_type") @@ -1325,7 +1367,8 @@ def connection_type(self) -> Optional['MethodIntegrationConnectionType']: @pulumi.getter(name="contentHandling") def content_handling(self) -> Optional['MethodIntegrationContentHandling']: """ - Specifies how to handle request payload content type conversions. + Specifies how to handle request payload content type conversions. Supported values are ``CONVERT_TO_BINARY`` and ``CONVERT_TO_TEXT``, with the following behaviors: + If this property is not defined, the request payload will be passed through from the method request to integration request without modification, provided that the ``passthroughBehavior`` is configured to support payload pass-through. """ return pulumi.get(self, "content_handling") @@ -1333,7 +1376,7 @@ def content_handling(self) -> Optional['MethodIntegrationContentHandling']: @pulumi.getter def credentials(self) -> Optional[str]: """ - The credentials that are required for the integration. + Specifies the credentials required for the integration, if any. For AWS integrations, three options are available. To specify an IAM Role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To require that the caller's identity be passed through from the request, specify the string ``arn:aws:iam::\\*:user/\\*``. To use resource-based permissions on supported AWS services, specify null. """ return pulumi.get(self, "credentials") @@ -1341,7 +1384,7 @@ def credentials(self) -> Optional[str]: @pulumi.getter(name="integrationHttpMethod") def integration_http_method(self) -> Optional[str]: """ - The integration's HTTP method type. + Specifies the integration's HTTP method type. For the Type property, if you specify ``MOCK``, this property is optional. For Lambda integrations, you must set the integration method to ``POST``. For all other types, you must specify this property. """ return pulumi.get(self, "integration_http_method") @@ -1349,7 +1392,7 @@ def integration_http_method(self) -> Optional[str]: @pulumi.getter(name="integrationResponses") def integration_responses(self) -> Optional[Sequence['outputs.MethodIntegrationResponse']]: """ - The response that API Gateway provides after a method's backend completes processing a request. + Specifies the integration's responses. """ return pulumi.get(self, "integration_responses") @@ -1357,7 +1400,7 @@ def integration_responses(self) -> Optional[Sequence['outputs.MethodIntegrationR @pulumi.getter(name="passthroughBehavior") def passthrough_behavior(self) -> Optional['MethodIntegrationPassthroughBehavior']: """ - Indicates when API Gateway passes requests to the targeted backend. + Specifies how the method request body of an unmapped content type will be passed through the integration request to the back end without transformation. A content type is unmapped if no mapping template is defined in the integration or the content type does not match any of the mapped content types, as specified in ``requestTemplates``. The valid value is one of the following: ``WHEN_NO_MATCH``: passes the method request body through the integration request to the back end without transformation when the method request content type does not match any content type associated with the mapping templates defined in the integration request. ``WHEN_NO_TEMPLATES``: passes the method request body through the integration request to the back end without transformation when no mapping template is defined in the integration request. If a template is defined when this option is selected, the method request of an unmapped content-type will be rejected with an HTTP 415 Unsupported Media Type response. ``NEVER``: rejects the method request with an HTTP 415 Unsupported Media Type response when either the method request content type does not match any content type associated with the mapping templates defined in the integration request or no mapping template is defined in the integration request. """ return pulumi.get(self, "passthrough_behavior") @@ -1365,7 +1408,7 @@ def passthrough_behavior(self) -> Optional['MethodIntegrationPassthroughBehavior @pulumi.getter(name="requestParameters") def request_parameters(self) -> Optional[Any]: """ - The request parameters that API Gateway sends with the backend request. + A key-value map specifying request parameters that are passed from the method request to the back end. The key is an integration request parameter name and the associated value is a method request parameter value or static value that must be enclosed within single quotes and pre-encoded as required by the back end. The method request parameter value must match the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and ``name`` must be a valid and unique method request parameter name. """ return pulumi.get(self, "request_parameters") @@ -1373,7 +1416,7 @@ def request_parameters(self) -> Optional[Any]: @pulumi.getter(name="requestTemplates") def request_templates(self) -> Optional[Any]: """ - A map of Apache Velocity templates that are applied on the request payload. + Represents a map of Velocity templates that are applied on the request payload based on the value of the Content-Type header sent by the client. The content type value is the key in this map, and the template (as a String) is the value. """ return pulumi.get(self, "request_templates") @@ -1381,7 +1424,7 @@ def request_templates(self) -> Optional[Any]: @pulumi.getter(name="timeoutInMillis") def timeout_in_millis(self) -> Optional[int]: """ - Custom timeout between 50 and 29,000 milliseconds. + Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds or 29 seconds. """ return pulumi.get(self, "timeout_in_millis") @@ -1389,13 +1432,17 @@ def timeout_in_millis(self) -> Optional[int]: @pulumi.getter def uri(self) -> Optional[str]: """ - The Uniform Resource Identifier (URI) for the integration. + Specifies Uniform Resource Identifier (URI) of the integration endpoint. + For ``HTTP`` or ``HTTP_PROXY`` integrations, the URI must be a fully formed, encoded HTTP(S) URL according to the RFC-3986 specification for standard integrations. If ``connectionType`` is ``VPC_LINK`` specify the Network Load Balancer DNS name. For ``AWS`` or ``AWS_PROXY`` integrations, the URI is of the form ``arn:aws:apigateway:{region}:{subdomain.service|service}:path|action/{service_api}``. Here, {Region} is the API Gateway region (e.g., us-east-1); {service} is the name of the integrated AWS service (e.g., s3); and {subdomain} is a designated subdomain supported by certain AWS service for fast host-name lookup. action can be used for an AWS service action-based API, using an Action={name}&{p1}={v1}&p2={v2}... query string. The ensuing {service_api} refers to a supported action {name} plus any required input parameters. Alternatively, path can be used for an AWS service path-based API. The ensuing service_api refers to the path to an AWS service resource, including the region of the integrated AWS service, if applicable. For example, for integration with the S3 API of GetObject, the uri can be either ``arn:aws:apigateway:us-west-2:s3:action/GetObject&Bucket={bucket}&Key={key}`` or ``arn:aws:apigateway:us-west-2:s3:path/{bucket}/{key}`` """ return pulumi.get(self, "uri") @pulumi.output_type class MethodIntegrationResponse(dict): + """ + ``IntegrationResponse`` is a property of the [Amazon API Gateway Method Integration](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html) property type that specifies the response that API Gateway sends after a method's backend finishes processing a request. + """ @staticmethod def __key_warning(key: str): suggest = None @@ -1428,11 +1475,13 @@ def __init__(__self__, *, response_templates: Optional[Any] = None, selection_pattern: Optional[str] = None): """ - :param str status_code: The status code that API Gateway uses to map the integration response to a MethodResponse status code. - :param 'MethodIntegrationResponseContentHandling' content_handling: Specifies how to handle request payload content type conversions. - :param Any response_parameters: The response parameters from the backend response that API Gateway sends to the method response. - :param Any response_templates: The templates that are used to transform the integration response body. Specify templates as key-value pairs (string-to-string mappings), with a content type as the key and a template as the value. - :param str selection_pattern: A regular expression that specifies which error strings or status codes from the backend map to the integration response. + ``IntegrationResponse`` is a property of the [Amazon API Gateway Method Integration](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html) property type that specifies the response that API Gateway sends after a method's backend finishes processing a request. + :param str status_code: Specifies the status code that is used to map the integration response to an existing MethodResponse. + :param 'MethodIntegrationResponseContentHandling' content_handling: Specifies how to handle response payload content type conversions. Supported values are ``CONVERT_TO_BINARY`` and ``CONVERT_TO_TEXT``, with the following behaviors: + If this property is not defined, the response payload will be passed through from the integration response to the method response without modification. + :param Any response_parameters: A key-value map specifying response parameters that are passed to the method response from the back end. The key is a method response header parameter name and the mapped value is an integration response header value, a static value enclosed within a pair of single quotes, or a JSON expression from the integration response body. The mapping key must match the pattern of ``method.response.header.{name}``, where ``name`` is a valid and unique header name. The mapped non-static value must match the pattern of ``integration.response.header.{name}`` or ``integration.response.body.{JSON-expression}``, where ``name`` is a valid and unique response header name and ``JSON-expression`` is a valid JSON expression without the ``$`` prefix. + :param Any response_templates: Specifies the templates used to transform the integration response body. Response templates are represented as a key/value map, with a content-type as the key and a template as the value. + :param str selection_pattern: Specifies the regular expression (regex) pattern used to choose an integration response based on the response from the back end. For example, if the success response returns nothing and the error response returns some string, you could use the ``.+`` regex to match error response. However, make sure that the error response does not contain any newline (``\\n``) character in such cases. If the back end is an LAMlong function, the LAMlong function error header is matched. For all other HTTP and AWS back ends, the HTTP status code is matched. """ MethodIntegrationResponse._configure( lambda key, value: pulumi.set(__self__, key, value), @@ -1465,7 +1514,7 @@ def _configure( @pulumi.getter(name="statusCode") def status_code(self) -> str: """ - The status code that API Gateway uses to map the integration response to a MethodResponse status code. + Specifies the status code that is used to map the integration response to an existing MethodResponse. """ return pulumi.get(self, "status_code") @@ -1473,7 +1522,8 @@ def status_code(self) -> str: @pulumi.getter(name="contentHandling") def content_handling(self) -> Optional['MethodIntegrationResponseContentHandling']: """ - Specifies how to handle request payload content type conversions. + Specifies how to handle response payload content type conversions. Supported values are ``CONVERT_TO_BINARY`` and ``CONVERT_TO_TEXT``, with the following behaviors: + If this property is not defined, the response payload will be passed through from the integration response to the method response without modification. """ return pulumi.get(self, "content_handling") @@ -1481,7 +1531,7 @@ def content_handling(self) -> Optional['MethodIntegrationResponseContentHandling @pulumi.getter(name="responseParameters") def response_parameters(self) -> Optional[Any]: """ - The response parameters from the backend response that API Gateway sends to the method response. + A key-value map specifying response parameters that are passed to the method response from the back end. The key is a method response header parameter name and the mapped value is an integration response header value, a static value enclosed within a pair of single quotes, or a JSON expression from the integration response body. The mapping key must match the pattern of ``method.response.header.{name}``, where ``name`` is a valid and unique header name. The mapped non-static value must match the pattern of ``integration.response.header.{name}`` or ``integration.response.body.{JSON-expression}``, where ``name`` is a valid and unique response header name and ``JSON-expression`` is a valid JSON expression without the ``$`` prefix. """ return pulumi.get(self, "response_parameters") @@ -1489,7 +1539,7 @@ def response_parameters(self) -> Optional[Any]: @pulumi.getter(name="responseTemplates") def response_templates(self) -> Optional[Any]: """ - The templates that are used to transform the integration response body. Specify templates as key-value pairs (string-to-string mappings), with a content type as the key and a template as the value. + Specifies the templates used to transform the integration response body. Response templates are represented as a key/value map, with a content-type as the key and a template as the value. """ return pulumi.get(self, "response_templates") @@ -1497,13 +1547,16 @@ def response_templates(self) -> Optional[Any]: @pulumi.getter(name="selectionPattern") def selection_pattern(self) -> Optional[str]: """ - A regular expression that specifies which error strings or status codes from the backend map to the integration response. + Specifies the regular expression (regex) pattern used to choose an integration response based on the response from the back end. For example, if the success response returns nothing and the error response returns some string, you could use the ``.+`` regex to match error response. However, make sure that the error response does not contain any newline (``\\n``) character in such cases. If the back end is an LAMlong function, the LAMlong function error header is matched. For all other HTTP and AWS back ends, the HTTP status code is matched. """ return pulumi.get(self, "selection_pattern") @pulumi.output_type class MethodResponse(dict): + """ + Represents a method response of a given HTTP status code returned to the client. The method response is passed from the back end through the associated integration response that can be transformed using a mapping template. + """ @staticmethod def __key_warning(key: str): suggest = None @@ -1530,9 +1583,10 @@ def __init__(__self__, *, response_models: Optional[Any] = None, response_parameters: Optional[Any] = None): """ - :param str status_code: The method response's status code, which you map to an IntegrationResponse. - :param Any response_models: The resources used for the response's content type. Specify response models as key-value pairs (string-to-string maps), with a content type as the key and a Model resource name as the value. - :param Any response_parameters: Response parameters that API Gateway sends to the client that called a method. Specify response parameters as key-value pairs (string-to-Boolean maps), with a destination as the key and a Boolean as the value. + Represents a method response of a given HTTP status code returned to the client. The method response is passed from the back end through the associated integration response that can be transformed using a mapping template. + :param str status_code: The method response's status code. + :param Any response_models: Specifies the Model resources used for the response's content-type. Response models are represented as a key/value map, with a content-type as the key and a Model name as the value. + :param Any response_parameters: A key-value map specifying required or optional response parameters that API Gateway can send back to the caller. A key defines a method response header and the value specifies whether the associated method response header is required or not. The expression of the key must match the pattern ``method.response.header.{name}``, where ``name`` is a valid and unique header name. API Gateway passes certain integration response data to the method response headers specified here according to the mapping you prescribe in the API's IntegrationResponse. The integration response data that can be mapped include an integration response header expressed in ``integration.response.header.{name}``, a static value enclosed within a pair of single quotes (e.g., ``'application/json'``), or a JSON expression from the back-end response payload in the form of ``integration.response.body.{JSON-expression}``, where ``JSON-expression`` is a valid JSON expression without the ``$`` prefix.) """ MethodResponse._configure( lambda key, value: pulumi.set(__self__, key, value), @@ -1557,7 +1611,7 @@ def _configure( @pulumi.getter(name="statusCode") def status_code(self) -> str: """ - The method response's status code, which you map to an IntegrationResponse. + The method response's status code. """ return pulumi.get(self, "status_code") @@ -1565,7 +1619,7 @@ def status_code(self) -> str: @pulumi.getter(name="responseModels") def response_models(self) -> Optional[Any]: """ - The resources used for the response's content type. Specify response models as key-value pairs (string-to-string maps), with a content type as the key and a Model resource name as the value. + Specifies the Model resources used for the response's content-type. Response models are represented as a key/value map, with a content-type as the key and a Model name as the value. """ return pulumi.get(self, "response_models") @@ -1573,13 +1627,17 @@ def response_models(self) -> Optional[Any]: @pulumi.getter(name="responseParameters") def response_parameters(self) -> Optional[Any]: """ - Response parameters that API Gateway sends to the client that called a method. Specify response parameters as key-value pairs (string-to-Boolean maps), with a destination as the key and a Boolean as the value. + A key-value map specifying required or optional response parameters that API Gateway can send back to the caller. A key defines a method response header and the value specifies whether the associated method response header is required or not. The expression of the key must match the pattern ``method.response.header.{name}``, where ``name`` is a valid and unique header name. API Gateway passes certain integration response data to the method response headers specified here according to the mapping you prescribe in the API's IntegrationResponse. The integration response data that can be mapped include an integration response header expressed in ``integration.response.header.{name}``, a static value enclosed within a pair of single quotes (e.g., ``'application/json'``), or a JSON expression from the back-end response payload in the form of ``integration.response.body.{JSON-expression}``, where ``JSON-expression`` is a valid JSON expression without the ``$`` prefix.) """ return pulumi.get(self, "response_parameters") @pulumi.output_type class RestApiEndpointConfiguration(dict): + """ + The ``EndpointConfiguration`` property type specifies the endpoint types of a REST API. + ``EndpointConfiguration`` is a property of the [AWS::ApiGateway::RestApi](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html) resource. + """ @staticmethod def __key_warning(key: str): suggest = None @@ -1600,6 +1658,12 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, types: Optional[Sequence[str]] = None, vpc_endpoint_ids: Optional[Sequence[str]] = None): + """ + The ``EndpointConfiguration`` property type specifies the endpoint types of a REST API. + ``EndpointConfiguration`` is a property of the [AWS::ApiGateway::RestApi](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html) resource. + :param Sequence[str] types: A list of endpoint types of an API (RestApi) or its custom domain name (DomainName). For an edge-optimized API and its custom domain name, the endpoint type is ``"EDGE"``. For a regional API and its custom domain name, the endpoint type is ``REGIONAL``. For a private API, the endpoint type is ``PRIVATE``. + :param Sequence[str] vpc_endpoint_ids: A list of VpcEndpointIds of an API (RestApi) against which to create Route53 ALIASes. It is only supported for ``PRIVATE`` endpoint type. + """ RestApiEndpointConfiguration._configure( lambda key, value: pulumi.set(__self__, key, value), types=types, @@ -1619,16 +1683,26 @@ def _configure( @property @pulumi.getter def types(self) -> Optional[Sequence[str]]: + """ + A list of endpoint types of an API (RestApi) or its custom domain name (DomainName). For an edge-optimized API and its custom domain name, the endpoint type is ``"EDGE"``. For a regional API and its custom domain name, the endpoint type is ``REGIONAL``. For a private API, the endpoint type is ``PRIVATE``. + """ return pulumi.get(self, "types") @property @pulumi.getter(name="vpcEndpointIds") def vpc_endpoint_ids(self) -> Optional[Sequence[str]]: + """ + A list of VpcEndpointIds of an API (RestApi) against which to create Route53 ALIASes. It is only supported for ``PRIVATE`` endpoint type. + """ return pulumi.get(self, "vpc_endpoint_ids") @pulumi.output_type class RestApiS3Location(dict): + """ + ``S3Location`` is a property of the [AWS::ApiGateway::RestApi](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html) resource that specifies the Amazon S3 location of a OpenAPI (formerly Swagger) file that defines a set of RESTful APIs in JSON or YAML. + On January 1, 2016, the Swagger Specification was donated to the [OpenAPI initiative](https://docs.aws.amazon.com/https://www.openapis.org/), becoming the foundation of the OpenAPI Specification. + """ @staticmethod def __key_warning(key: str): suggest = None @@ -1651,6 +1725,14 @@ def __init__(__self__, *, e_tag: Optional[str] = None, key: Optional[str] = None, version: Optional[str] = None): + """ + ``S3Location`` is a property of the [AWS::ApiGateway::RestApi](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html) resource that specifies the Amazon S3 location of a OpenAPI (formerly Swagger) file that defines a set of RESTful APIs in JSON or YAML. + On January 1, 2016, the Swagger Specification was donated to the [OpenAPI initiative](https://docs.aws.amazon.com/https://www.openapis.org/), becoming the foundation of the OpenAPI Specification. + :param str bucket: The name of the S3 bucket where the OpenAPI file is stored. + :param str e_tag: The Amazon S3 ETag (a file checksum) of the OpenAPI file. If you don't specify a value, API Gateway skips ETag validation of your OpenAPI file. + :param str key: The file name of the OpenAPI file (Amazon S3 object name). + :param str version: For versioning-enabled buckets, a specific version of the OpenAPI file. + """ RestApiS3Location._configure( lambda key, value: pulumi.set(__self__, key, value), bucket=bucket, @@ -1678,21 +1760,33 @@ def _configure( @property @pulumi.getter def bucket(self) -> Optional[str]: + """ + The name of the S3 bucket where the OpenAPI file is stored. + """ return pulumi.get(self, "bucket") @property @pulumi.getter(name="eTag") def e_tag(self) -> Optional[str]: + """ + The Amazon S3 ETag (a file checksum) of the OpenAPI file. If you don't specify a value, API Gateway skips ETag validation of your OpenAPI file. + """ return pulumi.get(self, "e_tag") @property @pulumi.getter def key(self) -> Optional[str]: + """ + The file name of the OpenAPI file (Amazon S3 object name). + """ return pulumi.get(self, "key") @property @pulumi.getter def version(self) -> Optional[str]: + """ + For versioning-enabled buckets, a specific version of the OpenAPI file. + """ return pulumi.get(self, "version") @@ -1729,7 +1823,8 @@ def value(self) -> str: @pulumi.output_type class StageAccessLogSetting(dict): """ - Specifies settings for logging access in this stage. + The ``AccessLogSetting`` property type specifies settings for logging access in this stage. + ``AccessLogSetting`` is a property of the [AWS::ApiGateway::Stage](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html) resource. """ @staticmethod def __key_warning(key: str): @@ -1752,9 +1847,10 @@ def __init__(__self__, *, destination_arn: Optional[str] = None, format: Optional[str] = None): """ - Specifies settings for logging access in this stage. - :param str destination_arn: The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with amazon-apigateway-. This parameter is required to enable access logging. - :param str format: A single line format of the access logs of data, as specified by selected $context variables (https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html#context-variable-reference). The format must include at least $context.requestId. This parameter is required to enable access logging. + The ``AccessLogSetting`` property type specifies settings for logging access in this stage. + ``AccessLogSetting`` is a property of the [AWS::ApiGateway::Stage](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html) resource. + :param str destination_arn: The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with ``amazon-apigateway-``. This parameter is required to enable access logging. + :param str format: A single line format of the access logs of data, as specified by selected [$context variables](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html#context-variable-reference). The format must include at least ``$context.requestId``. This parameter is required to enable access logging. """ StageAccessLogSetting._configure( lambda key, value: pulumi.set(__self__, key, value), @@ -1776,7 +1872,7 @@ def _configure( @pulumi.getter(name="destinationArn") def destination_arn(self) -> Optional[str]: """ - The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with amazon-apigateway-. This parameter is required to enable access logging. + The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with ``amazon-apigateway-``. This parameter is required to enable access logging. """ return pulumi.get(self, "destination_arn") @@ -1784,7 +1880,7 @@ def destination_arn(self) -> Optional[str]: @pulumi.getter def format(self) -> Optional[str]: """ - A single line format of the access logs of data, as specified by selected $context variables (https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html#context-variable-reference). The format must include at least $context.requestId. This parameter is required to enable access logging. + A single line format of the access logs of data, as specified by selected [$context variables](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html#context-variable-reference). The format must include at least ``$context.requestId``. This parameter is required to enable access logging. """ return pulumi.get(self, "format") @@ -1792,7 +1888,7 @@ def format(self) -> Optional[str]: @pulumi.output_type class StageCanarySetting(dict): """ - Specifies settings for the canary deployment in this stage. + Configuration settings of a canary deployment. """ @staticmethod def __key_warning(key: str): @@ -1823,11 +1919,11 @@ def __init__(__self__, *, stage_variable_overrides: Optional[Any] = None, use_stage_cache: Optional[bool] = None): """ - Specifies settings for the canary deployment in this stage. - :param str deployment_id: The identifier of the deployment that the stage points to. - :param float percent_traffic: The percentage (0-100) of traffic diverted to a canary deployment. + Configuration settings of a canary deployment. + :param str deployment_id: The ID of the canary deployment. + :param float percent_traffic: The percent (0-100) of traffic diverted to a canary deployment. :param Any stage_variable_overrides: Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values. - :param bool use_stage_cache: Whether the canary deployment uses the stage cache or not. + :param bool use_stage_cache: A Boolean flag to indicate whether the canary deployment uses the stage cache or not. """ StageCanarySetting._configure( lambda key, value: pulumi.set(__self__, key, value), @@ -1857,7 +1953,7 @@ def _configure( @pulumi.getter(name="deploymentId") def deployment_id(self) -> Optional[str]: """ - The identifier of the deployment that the stage points to. + The ID of the canary deployment. """ return pulumi.get(self, "deployment_id") @@ -1865,7 +1961,7 @@ def deployment_id(self) -> Optional[str]: @pulumi.getter(name="percentTraffic") def percent_traffic(self) -> Optional[float]: """ - The percentage (0-100) of traffic diverted to a canary deployment. + The percent (0-100) of traffic diverted to a canary deployment. """ return pulumi.get(self, "percent_traffic") @@ -1881,7 +1977,7 @@ def stage_variable_overrides(self) -> Optional[Any]: @pulumi.getter(name="useStageCache") def use_stage_cache(self) -> Optional[bool]: """ - Whether the canary deployment uses the stage cache or not. + A Boolean flag to indicate whether the canary deployment uses the stage cache or not. """ return pulumi.get(self, "use_stage_cache") @@ -1889,7 +1985,8 @@ def use_stage_cache(self) -> Optional[bool]: @pulumi.output_type class StageMethodSetting(dict): """ - Configures settings for all methods in a stage. + The ``MethodSetting`` property type configures settings for all methods in a stage. + The ``MethodSettings`` property of the ``AWS::ApiGateway::Stage`` resource contains a list of ``MethodSetting`` property types. """ @staticmethod def __key_warning(key: str): @@ -1938,17 +2035,18 @@ def __init__(__self__, *, throttling_burst_limit: Optional[int] = None, throttling_rate_limit: Optional[float] = None): """ - Configures settings for all methods in a stage. - :param bool cache_data_encrypted: Indicates whether the cached responses are encrypted. - :param int cache_ttl_in_seconds: The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. - :param bool caching_enabled: Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses. - :param bool data_trace_enabled: Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs. - :param str http_method: The HTTP method. You can use an asterisk (*) as a wildcard to apply method settings to multiple methods. - :param str logging_level: The logging level for this method. For valid values, see the loggingLevel property of the Stage (https://docs.aws.amazon.com/apigateway/api-reference/resource/stage/#loggingLevel) resource in the Amazon API Gateway API Reference. - :param bool metrics_enabled: Indicates whether Amazon CloudWatch metrics are enabled for methods in the stage. - :param str resource_path: The resource path for this method. Forward slashes (/) are encoded as ~1 and the initial slash must include a forward slash. For example, the path value /resource/subresource must be encoded as /~1resource~1subresource. To specify the root path, use only a slash (/). You can use an asterisk (*) as a wildcard to apply method settings to multiple methods. - :param int throttling_burst_limit: The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. - :param float throttling_rate_limit: The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. + The ``MethodSetting`` property type configures settings for all methods in a stage. + The ``MethodSettings`` property of the ``AWS::ApiGateway::Stage`` resource contains a list of ``MethodSetting`` property types. + :param bool cache_data_encrypted: Specifies whether the cached responses are encrypted. + :param int cache_ttl_in_seconds: Specifies the time to live (TTL), in seconds, for cached responses. The higher the TTL, the longer the response will be cached. + :param bool caching_enabled: Specifies whether responses should be cached and returned for requests. A cache cluster must be enabled on the stage for responses to be cached. + :param bool data_trace_enabled: Specifies whether data trace logging is enabled for this method, which affects the log entries pushed to Amazon CloudWatch Logs. This can be useful to troubleshoot APIs, but can result in logging sensitive data. We recommend that you don't enable this option for production APIs. + :param str http_method: The HTTP method. To apply settings to multiple resources and methods, specify an asterisk (``*``) for the ``HttpMethod`` and ``/*`` for the ``ResourcePath``. This parameter is required when you specify a ``MethodSetting``. + :param str logging_level: Specifies the logging level for this method, which affects the log entries pushed to Amazon CloudWatch Logs. Valid values are ``OFF``, ``ERROR``, and ``INFO``. Choose ``ERROR`` to write only error-level entries to CloudWatch Logs, or choose ``INFO`` to include all ``ERROR`` events as well as extra informational events. + :param bool metrics_enabled: Specifies whether Amazon CloudWatch metrics are enabled for this method. + :param str resource_path: The resource path for this method. Forward slashes (``/``) are encoded as ``~1`` and the initial slash must include a forward slash. For example, the path value ``/resource/subresource`` must be encoded as ``/~1resource~1subresource``. To specify the root path, use only a slash (``/``). To apply settings to multiple resources and methods, specify an asterisk (``*``) for the ``HttpMethod`` and ``/*`` for the ``ResourcePath``. This parameter is required when you specify a ``MethodSetting``. + :param int throttling_burst_limit: Specifies the throttling burst limit. + :param float throttling_rate_limit: Specifies the throttling rate limit. """ StageMethodSetting._configure( lambda key, value: pulumi.set(__self__, key, value), @@ -2002,7 +2100,7 @@ def _configure( @pulumi.getter(name="cacheDataEncrypted") def cache_data_encrypted(self) -> Optional[bool]: """ - Indicates whether the cached responses are encrypted. + Specifies whether the cached responses are encrypted. """ return pulumi.get(self, "cache_data_encrypted") @@ -2010,7 +2108,7 @@ def cache_data_encrypted(self) -> Optional[bool]: @pulumi.getter(name="cacheTtlInSeconds") def cache_ttl_in_seconds(self) -> Optional[int]: """ - The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. + Specifies the time to live (TTL), in seconds, for cached responses. The higher the TTL, the longer the response will be cached. """ return pulumi.get(self, "cache_ttl_in_seconds") @@ -2018,7 +2116,7 @@ def cache_ttl_in_seconds(self) -> Optional[int]: @pulumi.getter(name="cachingEnabled") def caching_enabled(self) -> Optional[bool]: """ - Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses. + Specifies whether responses should be cached and returned for requests. A cache cluster must be enabled on the stage for responses to be cached. """ return pulumi.get(self, "caching_enabled") @@ -2026,7 +2124,7 @@ def caching_enabled(self) -> Optional[bool]: @pulumi.getter(name="dataTraceEnabled") def data_trace_enabled(self) -> Optional[bool]: """ - Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs. + Specifies whether data trace logging is enabled for this method, which affects the log entries pushed to Amazon CloudWatch Logs. This can be useful to troubleshoot APIs, but can result in logging sensitive data. We recommend that you don't enable this option for production APIs. """ return pulumi.get(self, "data_trace_enabled") @@ -2034,7 +2132,7 @@ def data_trace_enabled(self) -> Optional[bool]: @pulumi.getter(name="httpMethod") def http_method(self) -> Optional[str]: """ - The HTTP method. You can use an asterisk (*) as a wildcard to apply method settings to multiple methods. + The HTTP method. To apply settings to multiple resources and methods, specify an asterisk (``*``) for the ``HttpMethod`` and ``/*`` for the ``ResourcePath``. This parameter is required when you specify a ``MethodSetting``. """ return pulumi.get(self, "http_method") @@ -2042,7 +2140,7 @@ def http_method(self) -> Optional[str]: @pulumi.getter(name="loggingLevel") def logging_level(self) -> Optional[str]: """ - The logging level for this method. For valid values, see the loggingLevel property of the Stage (https://docs.aws.amazon.com/apigateway/api-reference/resource/stage/#loggingLevel) resource in the Amazon API Gateway API Reference. + Specifies the logging level for this method, which affects the log entries pushed to Amazon CloudWatch Logs. Valid values are ``OFF``, ``ERROR``, and ``INFO``. Choose ``ERROR`` to write only error-level entries to CloudWatch Logs, or choose ``INFO`` to include all ``ERROR`` events as well as extra informational events. """ return pulumi.get(self, "logging_level") @@ -2050,7 +2148,7 @@ def logging_level(self) -> Optional[str]: @pulumi.getter(name="metricsEnabled") def metrics_enabled(self) -> Optional[bool]: """ - Indicates whether Amazon CloudWatch metrics are enabled for methods in the stage. + Specifies whether Amazon CloudWatch metrics are enabled for this method. """ return pulumi.get(self, "metrics_enabled") @@ -2058,7 +2156,7 @@ def metrics_enabled(self) -> Optional[bool]: @pulumi.getter(name="resourcePath") def resource_path(self) -> Optional[str]: """ - The resource path for this method. Forward slashes (/) are encoded as ~1 and the initial slash must include a forward slash. For example, the path value /resource/subresource must be encoded as /~1resource~1subresource. To specify the root path, use only a slash (/). You can use an asterisk (*) as a wildcard to apply method settings to multiple methods. + The resource path for this method. Forward slashes (``/``) are encoded as ``~1`` and the initial slash must include a forward slash. For example, the path value ``/resource/subresource`` must be encoded as ``/~1resource~1subresource``. To specify the root path, use only a slash (``/``). To apply settings to multiple resources and methods, specify an asterisk (``*``) for the ``HttpMethod`` and ``/*`` for the ``ResourcePath``. This parameter is required when you specify a ``MethodSetting``. """ return pulumi.get(self, "resource_path") @@ -2066,7 +2164,7 @@ def resource_path(self) -> Optional[str]: @pulumi.getter(name="throttlingBurstLimit") def throttling_burst_limit(self) -> Optional[int]: """ - The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. + Specifies the throttling burst limit. """ return pulumi.get(self, "throttling_burst_limit") @@ -2074,7 +2172,7 @@ def throttling_burst_limit(self) -> Optional[int]: @pulumi.getter(name="throttlingRateLimit") def throttling_rate_limit(self) -> Optional[float]: """ - The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. + Specifies the throttling rate limit. """ return pulumi.get(self, "throttling_rate_limit") diff --git a/sdk/python/pulumi_aws_native/apigateway/resource.py b/sdk/python/pulumi_aws_native/apigateway/resource.py index e617f0925d..7dec7fdcd1 100644 --- a/sdk/python/pulumi_aws_native/apigateway/resource.py +++ b/sdk/python/pulumi_aws_native/apigateway/resource.py @@ -21,7 +21,7 @@ def __init__(__self__, *, The set of arguments for constructing a Resource resource. :param pulumi.Input[str] parent_id: The parent resource's identifier. :param pulumi.Input[str] path_part: The last path segment for this resource. - :param pulumi.Input[str] rest_api_id: The ID of the RestApi resource in which you want to create this resource.. + :param pulumi.Input[str] rest_api_id: The string identifier of the associated RestApi. """ ResourceArgs._configure( lambda key, value: pulumi.set(__self__, key, value), @@ -68,7 +68,7 @@ def path_part(self, value: pulumi.Input[str]): @pulumi.getter(name="restApiId") def rest_api_id(self) -> pulumi.Input[str]: """ - The ID of the RestApi resource in which you want to create this resource.. + The string identifier of the associated RestApi. """ return pulumi.get(self, "rest_api_id") @@ -87,13 +87,13 @@ def __init__(__self__, rest_api_id: Optional[pulumi.Input[str]] = None, __props__=None): """ - Resource Type definition for AWS::ApiGateway::Resource + The ``AWS::ApiGateway::Resource`` resource creates a resource in an API. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] parent_id: The parent resource's identifier. :param pulumi.Input[str] path_part: The last path segment for this resource. - :param pulumi.Input[str] rest_api_id: The ID of the RestApi resource in which you want to create this resource.. + :param pulumi.Input[str] rest_api_id: The string identifier of the associated RestApi. """ ... @overload @@ -102,7 +102,7 @@ def __init__(__self__, args: ResourceArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Resource Type definition for AWS::ApiGateway::Resource + The ``AWS::ApiGateway::Resource`` resource creates a resource in an API. :param str resource_name: The name of the resource. :param ResourceArgs args: The arguments to use to populate this resource's properties. @@ -203,7 +203,7 @@ def resource_id(self) -> pulumi.Output[str]: @pulumi.getter(name="restApiId") def rest_api_id(self) -> pulumi.Output[str]: """ - The ID of the RestApi resource in which you want to create this resource.. + The string identifier of the associated RestApi. """ return pulumi.get(self, "rest_api_id") diff --git a/sdk/python/pulumi_aws_native/apigateway/rest_api.py b/sdk/python/pulumi_aws_native/apigateway/rest_api.py index f2b1a08103..3357cfc56a 100644 --- a/sdk/python/pulumi_aws_native/apigateway/rest_api.py +++ b/sdk/python/pulumi_aws_native/apigateway/rest_api.py @@ -33,6 +33,26 @@ def __init__(__self__, *, tags: Optional[pulumi.Input[Sequence[pulumi.Input['RestApiTagArgs']]]] = None): """ The set of arguments for constructing a RestApi resource. + :param pulumi.Input[str] api_key_source_type: The source of the API key for metering requests according to a usage plan. Valid values are: ``HEADER`` to read the API key from the ``X-API-Key`` header of a request. ``AUTHORIZER`` to read the API key from the ``UsageIdentifierKey`` from a custom authorizer. + :param pulumi.Input[Sequence[pulumi.Input[str]]] binary_media_types: The list of binary media types supported by the RestApi. By default, the RestApi supports only UTF-8-encoded text payloads. + :param Any body: An OpenAPI specification that defines a set of RESTful APIs in JSON format. For YAML templates, you can also provide the specification in YAML format. + :param pulumi.Input['RestApiS3LocationArgs'] body_s3_location: The Amazon Simple Storage Service (Amazon S3) location that points to an OpenAPI file, which defines a set of RESTful APIs in JSON or YAML format. + :param pulumi.Input[str] clone_from: The ID of the RestApi that you want to clone from. + :param pulumi.Input[str] description: The description of the RestApi. + :param pulumi.Input[bool] disable_execute_api_endpoint: Specifies whether clients can invoke your API by using the default ``execute-api`` endpoint. By default, clients can invoke your API with the default ``https://{api_id}.execute-api.{region}.amazonaws.com`` endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint + :param pulumi.Input['RestApiEndpointConfigurationArgs'] endpoint_configuration: A list of the endpoint types of the API. Use this property when creating an API. When importing an existing API, specify the endpoint configuration types using the ``Parameters`` property. + :param pulumi.Input[bool] fail_on_warnings: A query parameter to indicate whether to rollback the API update (``true``) or not (``false``) when a warning is encountered. The default value is ``false``. + :param pulumi.Input[int] minimum_compression_size: A nullable integer that is used to enable compression (with non-negative between 0 and 10485760 (10M) bytes, inclusive) or disable compression (with a null value) on an API. When compression is enabled, compression or decompression is not applied on the payload if the payload size is smaller than this value. Setting it to zero allows compression for any payload size. + :param pulumi.Input[str] mode: This property applies only when you use OpenAPI to define your REST API. The ``Mode`` determines how API Gateway handles resource updates. + Valid values are ``overwrite`` or ``merge``. + For ``overwrite``, the new API definition replaces the existing one. The existing API identifier remains unchanged. + For ``merge``, the new API definition is merged with the existing API. + If you don't specify this property, a default value is chosen. For REST APIs created before March 29, 2021, the default is ``overwrite``. For REST APIs created after March 29, 2021, the new API definition takes precedence, but any container types such as endpoint configurations and binary media types are merged with the existing API. + Use the default mode to define top-level ``RestApi`` properties in addition to using OpenAPI. Generally, it's preferred to use API Gateway's OpenAPI extensions to model these properties. + :param pulumi.Input[str] name: The name of the RestApi. A name is required if the REST API is not based on an OpenAPI specification. + :param Any parameters: Custom header parameters as part of the request. For example, to exclude DocumentationParts from an imported API, set ``ignore=documentation`` as a ``parameters`` value, as in the AWS CLI command of ``aws apigateway import-rest-api --parameters ignore=documentation --body 'file:///path/to/imported-api-body.json'``. + :param Any policy: A policy document that contains the permissions for the ``RestApi`` resource. To set the ARN for the policy, use the ``!Join`` intrinsic function with ``""`` as delimiter and values of ``"execute-api:/"`` and ``"*"``. + :param pulumi.Input[Sequence[pulumi.Input['RestApiTagArgs']]] tags: The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with ``aws:``. The tag value can be up to 256 characters. """ RestApiArgs._configure( lambda key, value: pulumi.set(__self__, key, value), @@ -105,6 +125,9 @@ def _configure( @property @pulumi.getter(name="apiKeySourceType") def api_key_source_type(self) -> Optional[pulumi.Input[str]]: + """ + The source of the API key for metering requests according to a usage plan. Valid values are: ``HEADER`` to read the API key from the ``X-API-Key`` header of a request. ``AUTHORIZER`` to read the API key from the ``UsageIdentifierKey`` from a custom authorizer. + """ return pulumi.get(self, "api_key_source_type") @api_key_source_type.setter @@ -114,6 +137,9 @@ def api_key_source_type(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="binaryMediaTypes") def binary_media_types(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + """ + The list of binary media types supported by the RestApi. By default, the RestApi supports only UTF-8-encoded text payloads. + """ return pulumi.get(self, "binary_media_types") @binary_media_types.setter @@ -123,6 +149,9 @@ def binary_media_types(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[ @property @pulumi.getter def body(self) -> Optional[Any]: + """ + An OpenAPI specification that defines a set of RESTful APIs in JSON format. For YAML templates, you can also provide the specification in YAML format. + """ return pulumi.get(self, "body") @body.setter @@ -132,6 +161,9 @@ def body(self, value: Optional[Any]): @property @pulumi.getter(name="bodyS3Location") def body_s3_location(self) -> Optional[pulumi.Input['RestApiS3LocationArgs']]: + """ + The Amazon Simple Storage Service (Amazon S3) location that points to an OpenAPI file, which defines a set of RESTful APIs in JSON or YAML format. + """ return pulumi.get(self, "body_s3_location") @body_s3_location.setter @@ -141,6 +173,9 @@ def body_s3_location(self, value: Optional[pulumi.Input['RestApiS3LocationArgs'] @property @pulumi.getter(name="cloneFrom") def clone_from(self) -> Optional[pulumi.Input[str]]: + """ + The ID of the RestApi that you want to clone from. + """ return pulumi.get(self, "clone_from") @clone_from.setter @@ -150,6 +185,9 @@ def clone_from(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: + """ + The description of the RestApi. + """ return pulumi.get(self, "description") @description.setter @@ -159,6 +197,9 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="disableExecuteApiEndpoint") def disable_execute_api_endpoint(self) -> Optional[pulumi.Input[bool]]: + """ + Specifies whether clients can invoke your API by using the default ``execute-api`` endpoint. By default, clients can invoke your API with the default ``https://{api_id}.execute-api.{region}.amazonaws.com`` endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint + """ return pulumi.get(self, "disable_execute_api_endpoint") @disable_execute_api_endpoint.setter @@ -168,6 +209,9 @@ def disable_execute_api_endpoint(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="endpointConfiguration") def endpoint_configuration(self) -> Optional[pulumi.Input['RestApiEndpointConfigurationArgs']]: + """ + A list of the endpoint types of the API. Use this property when creating an API. When importing an existing API, specify the endpoint configuration types using the ``Parameters`` property. + """ return pulumi.get(self, "endpoint_configuration") @endpoint_configuration.setter @@ -177,6 +221,9 @@ def endpoint_configuration(self, value: Optional[pulumi.Input['RestApiEndpointCo @property @pulumi.getter(name="failOnWarnings") def fail_on_warnings(self) -> Optional[pulumi.Input[bool]]: + """ + A query parameter to indicate whether to rollback the API update (``true``) or not (``false``) when a warning is encountered. The default value is ``false``. + """ return pulumi.get(self, "fail_on_warnings") @fail_on_warnings.setter @@ -186,6 +233,9 @@ def fail_on_warnings(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="minimumCompressionSize") def minimum_compression_size(self) -> Optional[pulumi.Input[int]]: + """ + A nullable integer that is used to enable compression (with non-negative between 0 and 10485760 (10M) bytes, inclusive) or disable compression (with a null value) on an API. When compression is enabled, compression or decompression is not applied on the payload if the payload size is smaller than this value. Setting it to zero allows compression for any payload size. + """ return pulumi.get(self, "minimum_compression_size") @minimum_compression_size.setter @@ -195,6 +245,14 @@ def minimum_compression_size(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def mode(self) -> Optional[pulumi.Input[str]]: + """ + This property applies only when you use OpenAPI to define your REST API. The ``Mode`` determines how API Gateway handles resource updates. + Valid values are ``overwrite`` or ``merge``. + For ``overwrite``, the new API definition replaces the existing one. The existing API identifier remains unchanged. + For ``merge``, the new API definition is merged with the existing API. + If you don't specify this property, a default value is chosen. For REST APIs created before March 29, 2021, the default is ``overwrite``. For REST APIs created after March 29, 2021, the new API definition takes precedence, but any container types such as endpoint configurations and binary media types are merged with the existing API. + Use the default mode to define top-level ``RestApi`` properties in addition to using OpenAPI. Generally, it's preferred to use API Gateway's OpenAPI extensions to model these properties. + """ return pulumi.get(self, "mode") @mode.setter @@ -204,6 +262,9 @@ def mode(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: + """ + The name of the RestApi. A name is required if the REST API is not based on an OpenAPI specification. + """ return pulumi.get(self, "name") @name.setter @@ -213,6 +274,9 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def parameters(self) -> Optional[Any]: + """ + Custom header parameters as part of the request. For example, to exclude DocumentationParts from an imported API, set ``ignore=documentation`` as a ``parameters`` value, as in the AWS CLI command of ``aws apigateway import-rest-api --parameters ignore=documentation --body 'file:///path/to/imported-api-body.json'``. + """ return pulumi.get(self, "parameters") @parameters.setter @@ -222,6 +286,9 @@ def parameters(self, value: Optional[Any]): @property @pulumi.getter def policy(self) -> Optional[Any]: + """ + A policy document that contains the permissions for the ``RestApi`` resource. To set the ARN for the policy, use the ``!Join`` intrinsic function with ``""`` as delimiter and values of ``"execute-api:/"`` and ``"*"``. + """ return pulumi.get(self, "policy") @policy.setter @@ -231,6 +298,9 @@ def policy(self, value: Optional[Any]): @property @pulumi.getter def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['RestApiTagArgs']]]]: + """ + The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with ``aws:``. The tag value can be up to 256 characters. + """ return pulumi.get(self, "tags") @tags.setter @@ -260,10 +330,31 @@ def __init__(__self__, tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['RestApiTagArgs']]]]] = None, __props__=None): """ - Resource Type definition for AWS::ApiGateway::RestApi. + The ``AWS::ApiGateway::RestApi`` resource creates a REST API. For more information, see [restapi:create](https://docs.aws.amazon.com/apigateway/latest/api/API_CreateRestApi.html) in the *Amazon API Gateway REST API Reference*. + On January 1, 2016, the Swagger Specification was donated to the [OpenAPI initiative](https://docs.aws.amazon.com/https://www.openapis.org/), becoming the foundation of the OpenAPI Specification. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[str] api_key_source_type: The source of the API key for metering requests according to a usage plan. Valid values are: ``HEADER`` to read the API key from the ``X-API-Key`` header of a request. ``AUTHORIZER`` to read the API key from the ``UsageIdentifierKey`` from a custom authorizer. + :param pulumi.Input[Sequence[pulumi.Input[str]]] binary_media_types: The list of binary media types supported by the RestApi. By default, the RestApi supports only UTF-8-encoded text payloads. + :param Any body: An OpenAPI specification that defines a set of RESTful APIs in JSON format. For YAML templates, you can also provide the specification in YAML format. + :param pulumi.Input[pulumi.InputType['RestApiS3LocationArgs']] body_s3_location: The Amazon Simple Storage Service (Amazon S3) location that points to an OpenAPI file, which defines a set of RESTful APIs in JSON or YAML format. + :param pulumi.Input[str] clone_from: The ID of the RestApi that you want to clone from. + :param pulumi.Input[str] description: The description of the RestApi. + :param pulumi.Input[bool] disable_execute_api_endpoint: Specifies whether clients can invoke your API by using the default ``execute-api`` endpoint. By default, clients can invoke your API with the default ``https://{api_id}.execute-api.{region}.amazonaws.com`` endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint + :param pulumi.Input[pulumi.InputType['RestApiEndpointConfigurationArgs']] endpoint_configuration: A list of the endpoint types of the API. Use this property when creating an API. When importing an existing API, specify the endpoint configuration types using the ``Parameters`` property. + :param pulumi.Input[bool] fail_on_warnings: A query parameter to indicate whether to rollback the API update (``true``) or not (``false``) when a warning is encountered. The default value is ``false``. + :param pulumi.Input[int] minimum_compression_size: A nullable integer that is used to enable compression (with non-negative between 0 and 10485760 (10M) bytes, inclusive) or disable compression (with a null value) on an API. When compression is enabled, compression or decompression is not applied on the payload if the payload size is smaller than this value. Setting it to zero allows compression for any payload size. + :param pulumi.Input[str] mode: This property applies only when you use OpenAPI to define your REST API. The ``Mode`` determines how API Gateway handles resource updates. + Valid values are ``overwrite`` or ``merge``. + For ``overwrite``, the new API definition replaces the existing one. The existing API identifier remains unchanged. + For ``merge``, the new API definition is merged with the existing API. + If you don't specify this property, a default value is chosen. For REST APIs created before March 29, 2021, the default is ``overwrite``. For REST APIs created after March 29, 2021, the new API definition takes precedence, but any container types such as endpoint configurations and binary media types are merged with the existing API. + Use the default mode to define top-level ``RestApi`` properties in addition to using OpenAPI. Generally, it's preferred to use API Gateway's OpenAPI extensions to model these properties. + :param pulumi.Input[str] name: The name of the RestApi. A name is required if the REST API is not based on an OpenAPI specification. + :param Any parameters: Custom header parameters as part of the request. For example, to exclude DocumentationParts from an imported API, set ``ignore=documentation`` as a ``parameters`` value, as in the AWS CLI command of ``aws apigateway import-rest-api --parameters ignore=documentation --body 'file:///path/to/imported-api-body.json'``. + :param Any policy: A policy document that contains the permissions for the ``RestApi`` resource. To set the ARN for the policy, use the ``!Join`` intrinsic function with ``""`` as delimiter and values of ``"execute-api:/"`` and ``"*"``. + :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['RestApiTagArgs']]]] tags: The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with ``aws:``. The tag value can be up to 256 characters. """ ... @overload @@ -272,7 +363,8 @@ def __init__(__self__, args: Optional[RestApiArgs] = None, opts: Optional[pulumi.ResourceOptions] = None): """ - Resource Type definition for AWS::ApiGateway::RestApi. + The ``AWS::ApiGateway::RestApi`` resource creates a REST API. For more information, see [restapi:create](https://docs.aws.amazon.com/apigateway/latest/api/API_CreateRestApi.html) in the *Amazon API Gateway REST API Reference*. + On January 1, 2016, the Swagger Specification was donated to the [OpenAPI initiative](https://docs.aws.amazon.com/https://www.openapis.org/), becoming the foundation of the OpenAPI Specification. :param str resource_name: The name of the resource. :param RestApiArgs args: The arguments to use to populate this resource's properties. @@ -388,71 +480,118 @@ def get(resource_name: str, @property @pulumi.getter(name="apiKeySourceType") def api_key_source_type(self) -> pulumi.Output[Optional[str]]: + """ + The source of the API key for metering requests according to a usage plan. Valid values are: ``HEADER`` to read the API key from the ``X-API-Key`` header of a request. ``AUTHORIZER`` to read the API key from the ``UsageIdentifierKey`` from a custom authorizer. + """ return pulumi.get(self, "api_key_source_type") @property @pulumi.getter(name="binaryMediaTypes") def binary_media_types(self) -> pulumi.Output[Optional[Sequence[str]]]: + """ + The list of binary media types supported by the RestApi. By default, the RestApi supports only UTF-8-encoded text payloads. + """ return pulumi.get(self, "binary_media_types") @property @pulumi.getter def body(self) -> pulumi.Output[Optional[Any]]: + """ + An OpenAPI specification that defines a set of RESTful APIs in JSON format. For YAML templates, you can also provide the specification in YAML format. + """ return pulumi.get(self, "body") @property @pulumi.getter(name="bodyS3Location") def body_s3_location(self) -> pulumi.Output[Optional['outputs.RestApiS3Location']]: + """ + The Amazon Simple Storage Service (Amazon S3) location that points to an OpenAPI file, which defines a set of RESTful APIs in JSON or YAML format. + """ return pulumi.get(self, "body_s3_location") @property @pulumi.getter(name="cloneFrom") def clone_from(self) -> pulumi.Output[Optional[str]]: + """ + The ID of the RestApi that you want to clone from. + """ return pulumi.get(self, "clone_from") @property @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: + """ + The description of the RestApi. + """ return pulumi.get(self, "description") @property @pulumi.getter(name="disableExecuteApiEndpoint") def disable_execute_api_endpoint(self) -> pulumi.Output[Optional[bool]]: + """ + Specifies whether clients can invoke your API by using the default ``execute-api`` endpoint. By default, clients can invoke your API with the default ``https://{api_id}.execute-api.{region}.amazonaws.com`` endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint + """ return pulumi.get(self, "disable_execute_api_endpoint") @property @pulumi.getter(name="endpointConfiguration") def endpoint_configuration(self) -> pulumi.Output[Optional['outputs.RestApiEndpointConfiguration']]: + """ + A list of the endpoint types of the API. Use this property when creating an API. When importing an existing API, specify the endpoint configuration types using the ``Parameters`` property. + """ return pulumi.get(self, "endpoint_configuration") @property @pulumi.getter(name="failOnWarnings") def fail_on_warnings(self) -> pulumi.Output[Optional[bool]]: + """ + A query parameter to indicate whether to rollback the API update (``true``) or not (``false``) when a warning is encountered. The default value is ``false``. + """ return pulumi.get(self, "fail_on_warnings") @property @pulumi.getter(name="minimumCompressionSize") def minimum_compression_size(self) -> pulumi.Output[Optional[int]]: + """ + A nullable integer that is used to enable compression (with non-negative between 0 and 10485760 (10M) bytes, inclusive) or disable compression (with a null value) on an API. When compression is enabled, compression or decompression is not applied on the payload if the payload size is smaller than this value. Setting it to zero allows compression for any payload size. + """ return pulumi.get(self, "minimum_compression_size") @property @pulumi.getter def mode(self) -> pulumi.Output[Optional[str]]: + """ + This property applies only when you use OpenAPI to define your REST API. The ``Mode`` determines how API Gateway handles resource updates. + Valid values are ``overwrite`` or ``merge``. + For ``overwrite``, the new API definition replaces the existing one. The existing API identifier remains unchanged. + For ``merge``, the new API definition is merged with the existing API. + If you don't specify this property, a default value is chosen. For REST APIs created before March 29, 2021, the default is ``overwrite``. For REST APIs created after March 29, 2021, the new API definition takes precedence, but any container types such as endpoint configurations and binary media types are merged with the existing API. + Use the default mode to define top-level ``RestApi`` properties in addition to using OpenAPI. Generally, it's preferred to use API Gateway's OpenAPI extensions to model these properties. + """ return pulumi.get(self, "mode") @property @pulumi.getter def name(self) -> pulumi.Output[Optional[str]]: + """ + The name of the RestApi. A name is required if the REST API is not based on an OpenAPI specification. + """ return pulumi.get(self, "name") @property @pulumi.getter def parameters(self) -> pulumi.Output[Optional[Any]]: + """ + Custom header parameters as part of the request. For example, to exclude DocumentationParts from an imported API, set ``ignore=documentation`` as a ``parameters`` value, as in the AWS CLI command of ``aws apigateway import-rest-api --parameters ignore=documentation --body 'file:///path/to/imported-api-body.json'``. + """ return pulumi.get(self, "parameters") @property @pulumi.getter def policy(self) -> pulumi.Output[Optional[Any]]: + """ + A policy document that contains the permissions for the ``RestApi`` resource. To set the ARN for the policy, use the ``!Join`` intrinsic function with ``""`` as delimiter and values of ``"execute-api:/"`` and ``"*"``. + """ return pulumi.get(self, "policy") @property @@ -468,5 +607,8 @@ def root_resource_id(self) -> pulumi.Output[str]: @property @pulumi.getter def tags(self) -> pulumi.Output[Optional[Sequence['outputs.RestApiTag']]]: + """ + The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with ``aws:``. The tag value can be up to 256 characters. + """ return pulumi.get(self, "tags") diff --git a/sdk/python/pulumi_aws_native/apigateway/stage.py b/sdk/python/pulumi_aws_native/apigateway/stage.py index 15ffb75b79..fefa82973e 100644 --- a/sdk/python/pulumi_aws_native/apigateway/stage.py +++ b/sdk/python/pulumi_aws_native/apigateway/stage.py @@ -32,20 +32,20 @@ def __init__(__self__, *, variables: Optional[Any] = None): """ The set of arguments for constructing a Stage resource. - :param pulumi.Input[str] rest_api_id: The ID of the RestApi resource that you're deploying with this stage. - :param pulumi.Input['StageAccessLogSettingArgs'] access_log_setting: Specifies settings for logging access in this stage. - :param pulumi.Input[bool] cache_cluster_enabled: Indicates whether cache clustering is enabled for the stage. - :param pulumi.Input[str] cache_cluster_size: The stage's cache cluster size. - :param pulumi.Input['StageCanarySettingArgs'] canary_setting: Specifies settings for the canary deployment in this stage. - :param pulumi.Input[str] client_certificate_id: The ID of the client certificate that API Gateway uses to call your integration endpoints in the stage. - :param pulumi.Input[str] deployment_id: The ID of the deployment that the stage is associated with. This parameter is required to create a stage. - :param pulumi.Input[str] description: A description of the stage. - :param pulumi.Input[str] documentation_version: The version ID of the API documentation snapshot. - :param pulumi.Input[Sequence[pulumi.Input['StageMethodSettingArgs']]] method_settings: Settings for all methods in the stage. - :param pulumi.Input[str] stage_name: The name of the stage, which API Gateway uses as the first path segment in the invoked Uniform Resource Identifier (URI). - :param pulumi.Input[Sequence[pulumi.Input['StageTagArgs']]] tags: An array of arbitrary tags (key-value pairs) to associate with the stage. - :param pulumi.Input[bool] tracing_enabled: Specifies whether active X-Ray tracing is enabled for this stage. - :param Any variables: A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value. + :param pulumi.Input[str] rest_api_id: The string identifier of the associated RestApi. + :param pulumi.Input['StageAccessLogSettingArgs'] access_log_setting: Access log settings, including the access log format and access log destination ARN. + :param pulumi.Input[bool] cache_cluster_enabled: Specifies whether a cache cluster is enabled for the stage. + :param pulumi.Input[str] cache_cluster_size: The stage's cache capacity in GB. For more information about choosing a cache size, see [Enabling API caching to enhance responsiveness](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html). + :param pulumi.Input['StageCanarySettingArgs'] canary_setting: Settings for the canary deployment in this stage. + :param pulumi.Input[str] client_certificate_id: The identifier of a client certificate for an API stage. + :param pulumi.Input[str] deployment_id: The identifier of the Deployment that the stage points to. + :param pulumi.Input[str] description: The stage's description. + :param pulumi.Input[str] documentation_version: The version of the associated API documentation. + :param pulumi.Input[Sequence[pulumi.Input['StageMethodSettingArgs']]] method_settings: A map that defines the method settings for a Stage resource. Keys (designated as ``/{method_setting_key`` below) are method paths defined as ``{resource_path}/{http_method}`` for an individual method override, or ``/\\*/\\*`` for overriding all methods in the stage. + :param pulumi.Input[str] stage_name: The name of the stage is the first path segment in the Uniform Resource Identifier (URI) of a call to API Gateway. Stage names can only contain alphanumeric characters, hyphens, and underscores. Maximum length is 128 characters. + :param pulumi.Input[Sequence[pulumi.Input['StageTagArgs']]] tags: The collection of tags. Each tag element is associated with a given resource. + :param pulumi.Input[bool] tracing_enabled: Specifies whether active tracing with X-ray is enabled for the Stage. + :param Any variables: A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value. Variable names are limited to alphanumeric characters. Values must match the following regular expression: ``[A-Za-z0-9-._~:/?#&=,]+``. """ StageArgs._configure( lambda key, value: pulumi.set(__self__, key, value), @@ -114,7 +114,7 @@ def _configure( @pulumi.getter(name="restApiId") def rest_api_id(self) -> pulumi.Input[str]: """ - The ID of the RestApi resource that you're deploying with this stage. + The string identifier of the associated RestApi. """ return pulumi.get(self, "rest_api_id") @@ -126,7 +126,7 @@ def rest_api_id(self, value: pulumi.Input[str]): @pulumi.getter(name="accessLogSetting") def access_log_setting(self) -> Optional[pulumi.Input['StageAccessLogSettingArgs']]: """ - Specifies settings for logging access in this stage. + Access log settings, including the access log format and access log destination ARN. """ return pulumi.get(self, "access_log_setting") @@ -138,7 +138,7 @@ def access_log_setting(self, value: Optional[pulumi.Input['StageAccessLogSetting @pulumi.getter(name="cacheClusterEnabled") def cache_cluster_enabled(self) -> Optional[pulumi.Input[bool]]: """ - Indicates whether cache clustering is enabled for the stage. + Specifies whether a cache cluster is enabled for the stage. """ return pulumi.get(self, "cache_cluster_enabled") @@ -150,7 +150,7 @@ def cache_cluster_enabled(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter(name="cacheClusterSize") def cache_cluster_size(self) -> Optional[pulumi.Input[str]]: """ - The stage's cache cluster size. + The stage's cache capacity in GB. For more information about choosing a cache size, see [Enabling API caching to enhance responsiveness](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html). """ return pulumi.get(self, "cache_cluster_size") @@ -162,7 +162,7 @@ def cache_cluster_size(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="canarySetting") def canary_setting(self) -> Optional[pulumi.Input['StageCanarySettingArgs']]: """ - Specifies settings for the canary deployment in this stage. + Settings for the canary deployment in this stage. """ return pulumi.get(self, "canary_setting") @@ -174,7 +174,7 @@ def canary_setting(self, value: Optional[pulumi.Input['StageCanarySettingArgs']] @pulumi.getter(name="clientCertificateId") def client_certificate_id(self) -> Optional[pulumi.Input[str]]: """ - The ID of the client certificate that API Gateway uses to call your integration endpoints in the stage. + The identifier of a client certificate for an API stage. """ return pulumi.get(self, "client_certificate_id") @@ -186,7 +186,7 @@ def client_certificate_id(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="deploymentId") def deployment_id(self) -> Optional[pulumi.Input[str]]: """ - The ID of the deployment that the stage is associated with. This parameter is required to create a stage. + The identifier of the Deployment that the stage points to. """ return pulumi.get(self, "deployment_id") @@ -198,7 +198,7 @@ def deployment_id(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: """ - A description of the stage. + The stage's description. """ return pulumi.get(self, "description") @@ -210,7 +210,7 @@ def description(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="documentationVersion") def documentation_version(self) -> Optional[pulumi.Input[str]]: """ - The version ID of the API documentation snapshot. + The version of the associated API documentation. """ return pulumi.get(self, "documentation_version") @@ -222,7 +222,7 @@ def documentation_version(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="methodSettings") def method_settings(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['StageMethodSettingArgs']]]]: """ - Settings for all methods in the stage. + A map that defines the method settings for a Stage resource. Keys (designated as ``/{method_setting_key`` below) are method paths defined as ``{resource_path}/{http_method}`` for an individual method override, or ``/\\*/\\*`` for overriding all methods in the stage. """ return pulumi.get(self, "method_settings") @@ -234,7 +234,7 @@ def method_settings(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['St @pulumi.getter(name="stageName") def stage_name(self) -> Optional[pulumi.Input[str]]: """ - The name of the stage, which API Gateway uses as the first path segment in the invoked Uniform Resource Identifier (URI). + The name of the stage is the first path segment in the Uniform Resource Identifier (URI) of a call to API Gateway. Stage names can only contain alphanumeric characters, hyphens, and underscores. Maximum length is 128 characters. """ return pulumi.get(self, "stage_name") @@ -246,7 +246,7 @@ def stage_name(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['StageTagArgs']]]]: """ - An array of arbitrary tags (key-value pairs) to associate with the stage. + The collection of tags. Each tag element is associated with a given resource. """ return pulumi.get(self, "tags") @@ -258,7 +258,7 @@ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['StageTagArgs' @pulumi.getter(name="tracingEnabled") def tracing_enabled(self) -> Optional[pulumi.Input[bool]]: """ - Specifies whether active X-Ray tracing is enabled for this stage. + Specifies whether active tracing with X-ray is enabled for the Stage. """ return pulumi.get(self, "tracing_enabled") @@ -270,7 +270,7 @@ def tracing_enabled(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter def variables(self) -> Optional[Any]: """ - A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value. + A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value. Variable names are limited to alphanumeric characters. Values must match the following regular expression: ``[A-Za-z0-9-._~:/?#&=,]+``. """ return pulumi.get(self, "variables") @@ -300,24 +300,24 @@ def __init__(__self__, variables: Optional[Any] = None, __props__=None): """ - Resource Type definition for AWS::ApiGateway::Stage + The ``AWS::ApiGateway::Stage`` resource creates a stage for a deployment. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[pulumi.InputType['StageAccessLogSettingArgs']] access_log_setting: Specifies settings for logging access in this stage. - :param pulumi.Input[bool] cache_cluster_enabled: Indicates whether cache clustering is enabled for the stage. - :param pulumi.Input[str] cache_cluster_size: The stage's cache cluster size. - :param pulumi.Input[pulumi.InputType['StageCanarySettingArgs']] canary_setting: Specifies settings for the canary deployment in this stage. - :param pulumi.Input[str] client_certificate_id: The ID of the client certificate that API Gateway uses to call your integration endpoints in the stage. - :param pulumi.Input[str] deployment_id: The ID of the deployment that the stage is associated with. This parameter is required to create a stage. - :param pulumi.Input[str] description: A description of the stage. - :param pulumi.Input[str] documentation_version: The version ID of the API documentation snapshot. - :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['StageMethodSettingArgs']]]] method_settings: Settings for all methods in the stage. - :param pulumi.Input[str] rest_api_id: The ID of the RestApi resource that you're deploying with this stage. - :param pulumi.Input[str] stage_name: The name of the stage, which API Gateway uses as the first path segment in the invoked Uniform Resource Identifier (URI). - :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['StageTagArgs']]]] tags: An array of arbitrary tags (key-value pairs) to associate with the stage. - :param pulumi.Input[bool] tracing_enabled: Specifies whether active X-Ray tracing is enabled for this stage. - :param Any variables: A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value. + :param pulumi.Input[pulumi.InputType['StageAccessLogSettingArgs']] access_log_setting: Access log settings, including the access log format and access log destination ARN. + :param pulumi.Input[bool] cache_cluster_enabled: Specifies whether a cache cluster is enabled for the stage. + :param pulumi.Input[str] cache_cluster_size: The stage's cache capacity in GB. For more information about choosing a cache size, see [Enabling API caching to enhance responsiveness](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html). + :param pulumi.Input[pulumi.InputType['StageCanarySettingArgs']] canary_setting: Settings for the canary deployment in this stage. + :param pulumi.Input[str] client_certificate_id: The identifier of a client certificate for an API stage. + :param pulumi.Input[str] deployment_id: The identifier of the Deployment that the stage points to. + :param pulumi.Input[str] description: The stage's description. + :param pulumi.Input[str] documentation_version: The version of the associated API documentation. + :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['StageMethodSettingArgs']]]] method_settings: A map that defines the method settings for a Stage resource. Keys (designated as ``/{method_setting_key`` below) are method paths defined as ``{resource_path}/{http_method}`` for an individual method override, or ``/\\*/\\*`` for overriding all methods in the stage. + :param pulumi.Input[str] rest_api_id: The string identifier of the associated RestApi. + :param pulumi.Input[str] stage_name: The name of the stage is the first path segment in the Uniform Resource Identifier (URI) of a call to API Gateway. Stage names can only contain alphanumeric characters, hyphens, and underscores. Maximum length is 128 characters. + :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['StageTagArgs']]]] tags: The collection of tags. Each tag element is associated with a given resource. + :param pulumi.Input[bool] tracing_enabled: Specifies whether active tracing with X-ray is enabled for the Stage. + :param Any variables: A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value. Variable names are limited to alphanumeric characters. Values must match the following regular expression: ``[A-Za-z0-9-._~:/?#&=,]+``. """ ... @overload @@ -326,7 +326,7 @@ def __init__(__self__, args: StageArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Resource Type definition for AWS::ApiGateway::Stage + The ``AWS::ApiGateway::Stage`` resource creates a stage for a deployment. :param str resource_name: The name of the resource. :param StageArgs args: The arguments to use to populate this resource's properties. @@ -440,7 +440,7 @@ def get(resource_name: str, @pulumi.getter(name="accessLogSetting") def access_log_setting(self) -> pulumi.Output[Optional['outputs.StageAccessLogSetting']]: """ - Specifies settings for logging access in this stage. + Access log settings, including the access log format and access log destination ARN. """ return pulumi.get(self, "access_log_setting") @@ -448,7 +448,7 @@ def access_log_setting(self) -> pulumi.Output[Optional['outputs.StageAccessLogSe @pulumi.getter(name="cacheClusterEnabled") def cache_cluster_enabled(self) -> pulumi.Output[Optional[bool]]: """ - Indicates whether cache clustering is enabled for the stage. + Specifies whether a cache cluster is enabled for the stage. """ return pulumi.get(self, "cache_cluster_enabled") @@ -456,7 +456,7 @@ def cache_cluster_enabled(self) -> pulumi.Output[Optional[bool]]: @pulumi.getter(name="cacheClusterSize") def cache_cluster_size(self) -> pulumi.Output[Optional[str]]: """ - The stage's cache cluster size. + The stage's cache capacity in GB. For more information about choosing a cache size, see [Enabling API caching to enhance responsiveness](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html). """ return pulumi.get(self, "cache_cluster_size") @@ -464,7 +464,7 @@ def cache_cluster_size(self) -> pulumi.Output[Optional[str]]: @pulumi.getter(name="canarySetting") def canary_setting(self) -> pulumi.Output[Optional['outputs.StageCanarySetting']]: """ - Specifies settings for the canary deployment in this stage. + Settings for the canary deployment in this stage. """ return pulumi.get(self, "canary_setting") @@ -472,7 +472,7 @@ def canary_setting(self) -> pulumi.Output[Optional['outputs.StageCanarySetting'] @pulumi.getter(name="clientCertificateId") def client_certificate_id(self) -> pulumi.Output[Optional[str]]: """ - The ID of the client certificate that API Gateway uses to call your integration endpoints in the stage. + The identifier of a client certificate for an API stage. """ return pulumi.get(self, "client_certificate_id") @@ -480,7 +480,7 @@ def client_certificate_id(self) -> pulumi.Output[Optional[str]]: @pulumi.getter(name="deploymentId") def deployment_id(self) -> pulumi.Output[Optional[str]]: """ - The ID of the deployment that the stage is associated with. This parameter is required to create a stage. + The identifier of the Deployment that the stage points to. """ return pulumi.get(self, "deployment_id") @@ -488,7 +488,7 @@ def deployment_id(self) -> pulumi.Output[Optional[str]]: @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: """ - A description of the stage. + The stage's description. """ return pulumi.get(self, "description") @@ -496,7 +496,7 @@ def description(self) -> pulumi.Output[Optional[str]]: @pulumi.getter(name="documentationVersion") def documentation_version(self) -> pulumi.Output[Optional[str]]: """ - The version ID of the API documentation snapshot. + The version of the associated API documentation. """ return pulumi.get(self, "documentation_version") @@ -504,7 +504,7 @@ def documentation_version(self) -> pulumi.Output[Optional[str]]: @pulumi.getter(name="methodSettings") def method_settings(self) -> pulumi.Output[Optional[Sequence['outputs.StageMethodSetting']]]: """ - Settings for all methods in the stage. + A map that defines the method settings for a Stage resource. Keys (designated as ``/{method_setting_key`` below) are method paths defined as ``{resource_path}/{http_method}`` for an individual method override, or ``/\\*/\\*`` for overriding all methods in the stage. """ return pulumi.get(self, "method_settings") @@ -512,7 +512,7 @@ def method_settings(self) -> pulumi.Output[Optional[Sequence['outputs.StageMetho @pulumi.getter(name="restApiId") def rest_api_id(self) -> pulumi.Output[str]: """ - The ID of the RestApi resource that you're deploying with this stage. + The string identifier of the associated RestApi. """ return pulumi.get(self, "rest_api_id") @@ -520,7 +520,7 @@ def rest_api_id(self) -> pulumi.Output[str]: @pulumi.getter(name="stageName") def stage_name(self) -> pulumi.Output[Optional[str]]: """ - The name of the stage, which API Gateway uses as the first path segment in the invoked Uniform Resource Identifier (URI). + The name of the stage is the first path segment in the Uniform Resource Identifier (URI) of a call to API Gateway. Stage names can only contain alphanumeric characters, hyphens, and underscores. Maximum length is 128 characters. """ return pulumi.get(self, "stage_name") @@ -528,7 +528,7 @@ def stage_name(self) -> pulumi.Output[Optional[str]]: @pulumi.getter def tags(self) -> pulumi.Output[Optional[Sequence['outputs.StageTag']]]: """ - An array of arbitrary tags (key-value pairs) to associate with the stage. + The collection of tags. Each tag element is associated with a given resource. """ return pulumi.get(self, "tags") @@ -536,7 +536,7 @@ def tags(self) -> pulumi.Output[Optional[Sequence['outputs.StageTag']]]: @pulumi.getter(name="tracingEnabled") def tracing_enabled(self) -> pulumi.Output[Optional[bool]]: """ - Specifies whether active X-Ray tracing is enabled for this stage. + Specifies whether active tracing with X-ray is enabled for the Stage. """ return pulumi.get(self, "tracing_enabled") @@ -544,7 +544,7 @@ def tracing_enabled(self) -> pulumi.Output[Optional[bool]]: @pulumi.getter def variables(self) -> pulumi.Output[Optional[Any]]: """ - A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value. + A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value. Variable names are limited to alphanumeric characters. Values must match the following regular expression: ``[A-Za-z0-9-._~:/?#&=,]+``. """ return pulumi.get(self, "variables") diff --git a/sdk/python/pulumi_aws_native/apigateway/usage_plan_key.py b/sdk/python/pulumi_aws_native/apigateway/usage_plan_key.py index 0578985f31..2c2a3427b2 100644 --- a/sdk/python/pulumi_aws_native/apigateway/usage_plan_key.py +++ b/sdk/python/pulumi_aws_native/apigateway/usage_plan_key.py @@ -20,9 +20,9 @@ def __init__(__self__, *, usage_plan_id: pulumi.Input[str]): """ The set of arguments for constructing a UsagePlanKey resource. - :param pulumi.Input[str] key_id: The ID of the usage plan key. - :param pulumi.Input['UsagePlanKeyKeyType'] key_type: The type of usage plan key. Currently, the only valid key type is API_KEY. - :param pulumi.Input[str] usage_plan_id: The ID of the usage plan. + :param pulumi.Input[str] key_id: The Id of the UsagePlanKey resource. + :param pulumi.Input['UsagePlanKeyKeyType'] key_type: The type of a UsagePlanKey resource for a plan customer. + :param pulumi.Input[str] usage_plan_id: The Id of the UsagePlan resource representing the usage plan containing the UsagePlanKey resource representing a plan customer. """ UsagePlanKeyArgs._configure( lambda key, value: pulumi.set(__self__, key, value), @@ -45,7 +45,7 @@ def _configure( @pulumi.getter(name="keyId") def key_id(self) -> pulumi.Input[str]: """ - The ID of the usage plan key. + The Id of the UsagePlanKey resource. """ return pulumi.get(self, "key_id") @@ -57,7 +57,7 @@ def key_id(self, value: pulumi.Input[str]): @pulumi.getter(name="keyType") def key_type(self) -> pulumi.Input['UsagePlanKeyKeyType']: """ - The type of usage plan key. Currently, the only valid key type is API_KEY. + The type of a UsagePlanKey resource for a plan customer. """ return pulumi.get(self, "key_type") @@ -69,7 +69,7 @@ def key_type(self, value: pulumi.Input['UsagePlanKeyKeyType']): @pulumi.getter(name="usagePlanId") def usage_plan_id(self) -> pulumi.Input[str]: """ - The ID of the usage plan. + The Id of the UsagePlan resource representing the usage plan containing the UsagePlanKey resource representing a plan customer. """ return pulumi.get(self, "usage_plan_id") @@ -88,13 +88,13 @@ def __init__(__self__, usage_plan_id: Optional[pulumi.Input[str]] = None, __props__=None): """ - Resource Type definition for AWS::ApiGateway::UsagePlanKey + The ``AWS::ApiGateway::UsagePlanKey`` resource associates an API key with a usage plan. This association determines which users the usage plan is applied to. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] key_id: The ID of the usage plan key. - :param pulumi.Input['UsagePlanKeyKeyType'] key_type: The type of usage plan key. Currently, the only valid key type is API_KEY. - :param pulumi.Input[str] usage_plan_id: The ID of the usage plan. + :param pulumi.Input[str] key_id: The Id of the UsagePlanKey resource. + :param pulumi.Input['UsagePlanKeyKeyType'] key_type: The type of a UsagePlanKey resource for a plan customer. + :param pulumi.Input[str] usage_plan_id: The Id of the UsagePlan resource representing the usage plan containing the UsagePlanKey resource representing a plan customer. """ ... @overload @@ -103,7 +103,7 @@ def __init__(__self__, args: UsagePlanKeyArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Resource Type definition for AWS::ApiGateway::UsagePlanKey + The ``AWS::ApiGateway::UsagePlanKey`` resource associates an API key with a usage plan. This association determines which users the usage plan is applied to. :param str resource_name: The name of the resource. :param UsagePlanKeyArgs args: The arguments to use to populate this resource's properties. @@ -178,7 +178,7 @@ def get(resource_name: str, @pulumi.getter(name="keyId") def key_id(self) -> pulumi.Output[str]: """ - The ID of the usage plan key. + The Id of the UsagePlanKey resource. """ return pulumi.get(self, "key_id") @@ -186,7 +186,7 @@ def key_id(self) -> pulumi.Output[str]: @pulumi.getter(name="keyType") def key_type(self) -> pulumi.Output['UsagePlanKeyKeyType']: """ - The type of usage plan key. Currently, the only valid key type is API_KEY. + The type of a UsagePlanKey resource for a plan customer. """ return pulumi.get(self, "key_type") @@ -194,7 +194,7 @@ def key_type(self) -> pulumi.Output['UsagePlanKeyKeyType']: @pulumi.getter(name="usagePlanId") def usage_plan_id(self) -> pulumi.Output[str]: """ - The ID of the usage plan. + The Id of the UsagePlan resource representing the usage plan containing the UsagePlanKey resource representing a plan customer. """ return pulumi.get(self, "usage_plan_id") diff --git a/sdk/python/pulumi_aws_native/appconfig/_inputs.py b/sdk/python/pulumi_aws_native/appconfig/_inputs.py index 6e6b6f0749..f20cd84f39 100644 --- a/sdk/python/pulumi_aws_native/appconfig/_inputs.py +++ b/sdk/python/pulumi_aws_native/appconfig/_inputs.py @@ -24,8 +24,13 @@ @pulumi.input_type class ApplicationTagsArgs: def __init__(__self__, *, - key: Optional[pulumi.Input[str]] = None, - value: Optional[pulumi.Input[str]] = None): + key: pulumi.Input[str], + value: pulumi.Input[str]): + """ + Metadata to assign to the application. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define. + :param pulumi.Input[str] key: The key-value string map. The valid character set is [a-zA-Z1-9+-=._:/]. The tag key can be up to 128 characters and must not start with aws:. + :param pulumi.Input[str] value: The tag value can be up to 256 characters. + """ ApplicationTagsArgs._configure( lambda key, value: pulumi.set(__self__, key, value), key=key, @@ -34,30 +39,34 @@ def __init__(__self__, *, @staticmethod def _configure( _setter: Callable[[Any, Any], None], - key: Optional[pulumi.Input[str]] = None, - value: Optional[pulumi.Input[str]] = None, + key: pulumi.Input[str], + value: pulumi.Input[str], opts: Optional[pulumi.ResourceOptions]=None): - if key is not None: - _setter("key", key) - if value is not None: - _setter("value", value) + _setter("key", key) + _setter("value", value) @property @pulumi.getter - def key(self) -> Optional[pulumi.Input[str]]: + def key(self) -> pulumi.Input[str]: + """ + The key-value string map. The valid character set is [a-zA-Z1-9+-=._:/]. The tag key can be up to 128 characters and must not start with aws:. + """ return pulumi.get(self, "key") @key.setter - def key(self, value: Optional[pulumi.Input[str]]): + def key(self, value: pulumi.Input[str]): pulumi.set(self, "key", value) @property @pulumi.getter - def value(self) -> Optional[pulumi.Input[str]]: + def value(self) -> pulumi.Input[str]: + """ + The tag value can be up to 256 characters. + """ return pulumi.get(self, "value") @value.setter - def value(self, value: Optional[pulumi.Input[str]]): + def value(self, value: pulumi.Input[str]): pulumi.set(self, "value", value) diff --git a/sdk/python/pulumi_aws_native/appconfig/application.py b/sdk/python/pulumi_aws_native/appconfig/application.py index 4e05b7b660..89b4f6d66e 100644 --- a/sdk/python/pulumi_aws_native/appconfig/application.py +++ b/sdk/python/pulumi_aws_native/appconfig/application.py @@ -21,6 +21,9 @@ def __init__(__self__, *, tags: Optional[pulumi.Input[Sequence[pulumi.Input['ApplicationTagsArgs']]]] = None): """ The set of arguments for constructing a Application resource. + :param pulumi.Input[str] description: A description of the application. + :param pulumi.Input[str] name: A name for the application. + :param pulumi.Input[Sequence[pulumi.Input['ApplicationTagsArgs']]] tags: Metadata to assign to the application. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define. """ ApplicationArgs._configure( lambda key, value: pulumi.set(__self__, key, value), @@ -45,6 +48,9 @@ def _configure( @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: + """ + A description of the application. + """ return pulumi.get(self, "description") @description.setter @@ -54,6 +60,9 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: + """ + A name for the application. + """ return pulumi.get(self, "name") @name.setter @@ -63,6 +72,9 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ApplicationTagsArgs']]]]: + """ + Metadata to assign to the application. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define. + """ return pulumi.get(self, "tags") @tags.setter @@ -70,12 +82,7 @@ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ApplicationTa pulumi.set(self, "tags", value) -warnings.warn("""Application is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.""", DeprecationWarning) - - class Application(pulumi.CustomResource): - warnings.warn("""Application is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.""", DeprecationWarning) - @overload def __init__(__self__, resource_name: str, @@ -89,6 +96,9 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[str] description: A description of the application. + :param pulumi.Input[str] name: A name for the application. + :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ApplicationTagsArgs']]]] tags: Metadata to assign to the application. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define. """ ... @overload @@ -122,7 +132,6 @@ def _internal_init(__self__, name: Optional[pulumi.Input[str]] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ApplicationTagsArgs']]]]] = None, __props__=None): - pulumi.log.warn("""Application is deprecated: Application is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.""") opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) if not isinstance(opts, pulumi.ResourceOptions): raise TypeError('Expected resource options to be a ResourceOptions instance') @@ -134,6 +143,7 @@ def _internal_init(__self__, __props__.__dict__["description"] = description __props__.__dict__["name"] = name __props__.__dict__["tags"] = tags + __props__.__dict__["application_id"] = None super(Application, __self__).__init__( 'aws-native:appconfig:Application', resource_name, @@ -156,23 +166,41 @@ def get(resource_name: str, __props__ = ApplicationArgs.__new__(ApplicationArgs) + __props__.__dict__["application_id"] = None __props__.__dict__["description"] = None __props__.__dict__["name"] = None __props__.__dict__["tags"] = None return Application(resource_name, opts=opts, __props__=__props__) + @property + @pulumi.getter(name="applicationId") + def application_id(self) -> pulumi.Output[str]: + """ + The application Id + """ + return pulumi.get(self, "application_id") + @property @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: + """ + A description of the application. + """ return pulumi.get(self, "description") @property @pulumi.getter def name(self) -> pulumi.Output[str]: + """ + A name for the application. + """ return pulumi.get(self, "name") @property @pulumi.getter def tags(self) -> pulumi.Output[Optional[Sequence['outputs.ApplicationTags']]]: + """ + Metadata to assign to the application. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define. + """ return pulumi.get(self, "tags") diff --git a/sdk/python/pulumi_aws_native/appconfig/configuration_profile.py b/sdk/python/pulumi_aws_native/appconfig/configuration_profile.py index 31d2564cfc..88723655bb 100644 --- a/sdk/python/pulumi_aws_native/appconfig/configuration_profile.py +++ b/sdk/python/pulumi_aws_native/appconfig/configuration_profile.py @@ -19,6 +19,7 @@ def __init__(__self__, *, application_id: pulumi.Input[str], location_uri: pulumi.Input[str], description: Optional[pulumi.Input[str]] = None, + kms_key_identifier: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, retrieval_role_arn: Optional[pulumi.Input[str]] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input['ConfigurationProfileTagsArgs']]]] = None, @@ -32,6 +33,7 @@ def __init__(__self__, *, application_id=application_id, location_uri=location_uri, description=description, + kms_key_identifier=kms_key_identifier, name=name, retrieval_role_arn=retrieval_role_arn, tags=tags, @@ -44,6 +46,7 @@ def _configure( application_id: pulumi.Input[str], location_uri: pulumi.Input[str], description: Optional[pulumi.Input[str]] = None, + kms_key_identifier: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, retrieval_role_arn: Optional[pulumi.Input[str]] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input['ConfigurationProfileTagsArgs']]]] = None, @@ -54,6 +57,8 @@ def _configure( _setter("location_uri", location_uri) if description is not None: _setter("description", description) + if kms_key_identifier is not None: + _setter("kms_key_identifier", kms_key_identifier) if name is not None: _setter("name", name) if retrieval_role_arn is not None: @@ -92,6 +97,15 @@ def description(self) -> Optional[pulumi.Input[str]]: def description(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "description", value) + @property + @pulumi.getter(name="kmsKeyIdentifier") + def kms_key_identifier(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "kms_key_identifier") + + @kms_key_identifier.setter + def kms_key_identifier(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "kms_key_identifier", value) + @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: @@ -150,6 +164,7 @@ def __init__(__self__, opts: Optional[pulumi.ResourceOptions] = None, application_id: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, + kms_key_identifier: Optional[pulumi.Input[str]] = None, location_uri: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, retrieval_role_arn: Optional[pulumi.Input[str]] = None, @@ -193,6 +208,7 @@ def _internal_init(__self__, opts: Optional[pulumi.ResourceOptions] = None, application_id: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, + kms_key_identifier: Optional[pulumi.Input[str]] = None, location_uri: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, retrieval_role_arn: Optional[pulumi.Input[str]] = None, @@ -213,6 +229,7 @@ def _internal_init(__self__, raise TypeError("Missing required property 'application_id'") __props__.__dict__["application_id"] = application_id __props__.__dict__["description"] = description + __props__.__dict__["kms_key_identifier"] = kms_key_identifier if location_uri is None and not opts.urn: raise TypeError("Missing required property 'location_uri'") __props__.__dict__["location_uri"] = location_uri @@ -247,6 +264,7 @@ def get(resource_name: str, __props__.__dict__["application_id"] = None __props__.__dict__["description"] = None + __props__.__dict__["kms_key_identifier"] = None __props__.__dict__["location_uri"] = None __props__.__dict__["name"] = None __props__.__dict__["retrieval_role_arn"] = None @@ -265,6 +283,11 @@ def application_id(self) -> pulumi.Output[str]: def description(self) -> pulumi.Output[Optional[str]]: return pulumi.get(self, "description") + @property + @pulumi.getter(name="kmsKeyIdentifier") + def kms_key_identifier(self) -> pulumi.Output[Optional[str]]: + return pulumi.get(self, "kms_key_identifier") + @property @pulumi.getter(name="locationUri") def location_uri(self) -> pulumi.Output[str]: diff --git a/sdk/python/pulumi_aws_native/appconfig/get_application.py b/sdk/python/pulumi_aws_native/appconfig/get_application.py index bbbddc0cd0..7d20b0b020 100644 --- a/sdk/python/pulumi_aws_native/appconfig/get_application.py +++ b/sdk/python/pulumi_aws_native/appconfig/get_application.py @@ -19,13 +19,13 @@ @pulumi.output_type class GetApplicationResult: - def __init__(__self__, description=None, id=None, name=None, tags=None): + def __init__(__self__, application_id=None, description=None, name=None, tags=None): + if application_id and not isinstance(application_id, str): + raise TypeError("Expected argument 'application_id' to be a str") + pulumi.set(__self__, "application_id", application_id) if description and not isinstance(description, str): raise TypeError("Expected argument 'description' to be a str") pulumi.set(__self__, "description", description) - if id and not isinstance(id, str): - raise TypeError("Expected argument 'id' to be a str") - pulumi.set(__self__, "id", id) if name and not isinstance(name, str): raise TypeError("Expected argument 'name' to be a str") pulumi.set(__self__, "name", name) @@ -34,23 +34,35 @@ def __init__(__self__, description=None, id=None, name=None, tags=None): pulumi.set(__self__, "tags", tags) @property - @pulumi.getter - def description(self) -> Optional[str]: - return pulumi.get(self, "description") + @pulumi.getter(name="applicationId") + def application_id(self) -> Optional[str]: + """ + The application Id + """ + return pulumi.get(self, "application_id") @property @pulumi.getter - def id(self) -> Optional[str]: - return pulumi.get(self, "id") + def description(self) -> Optional[str]: + """ + A description of the application. + """ + return pulumi.get(self, "description") @property @pulumi.getter def name(self) -> Optional[str]: + """ + A name for the application. + """ return pulumi.get(self, "name") @property @pulumi.getter def tags(self) -> Optional[Sequence['outputs.ApplicationTags']]: + """ + Metadata to assign to the application. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define. + """ return pulumi.get(self, "tags") @@ -60,33 +72,39 @@ def __await__(self): if False: yield self return GetApplicationResult( + application_id=self.application_id, description=self.description, - id=self.id, name=self.name, tags=self.tags) -def get_application(id: Optional[str] = None, +def get_application(application_id: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetApplicationResult: """ Resource Type definition for AWS::AppConfig::Application + + + :param str application_id: The application Id """ __args__ = dict() - __args__['id'] = id + __args__['applicationId'] = application_id opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) __ret__ = pulumi.runtime.invoke('aws-native:appconfig:getApplication', __args__, opts=opts, typ=GetApplicationResult).value return AwaitableGetApplicationResult( + application_id=pulumi.get(__ret__, 'application_id'), description=pulumi.get(__ret__, 'description'), - id=pulumi.get(__ret__, 'id'), name=pulumi.get(__ret__, 'name'), tags=pulumi.get(__ret__, 'tags')) @_utilities.lift_output_func(get_application) -def get_application_output(id: Optional[pulumi.Input[str]] = None, +def get_application_output(application_id: Optional[pulumi.Input[str]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetApplicationResult]: """ Resource Type definition for AWS::AppConfig::Application + + + :param str application_id: The application Id """ ... diff --git a/sdk/python/pulumi_aws_native/appconfig/get_configuration_profile.py b/sdk/python/pulumi_aws_native/appconfig/get_configuration_profile.py index 38c3f2255f..1b5fe1db0b 100644 --- a/sdk/python/pulumi_aws_native/appconfig/get_configuration_profile.py +++ b/sdk/python/pulumi_aws_native/appconfig/get_configuration_profile.py @@ -19,13 +19,16 @@ @pulumi.output_type class GetConfigurationProfileResult: - def __init__(__self__, description=None, id=None, name=None, retrieval_role_arn=None, tags=None, validators=None): + def __init__(__self__, description=None, id=None, kms_key_identifier=None, name=None, retrieval_role_arn=None, tags=None, validators=None): if description and not isinstance(description, str): raise TypeError("Expected argument 'description' to be a str") pulumi.set(__self__, "description", description) if id and not isinstance(id, str): raise TypeError("Expected argument 'id' to be a str") pulumi.set(__self__, "id", id) + if kms_key_identifier and not isinstance(kms_key_identifier, str): + raise TypeError("Expected argument 'kms_key_identifier' to be a str") + pulumi.set(__self__, "kms_key_identifier", kms_key_identifier) if name and not isinstance(name, str): raise TypeError("Expected argument 'name' to be a str") pulumi.set(__self__, "name", name) @@ -49,6 +52,11 @@ def description(self) -> Optional[str]: def id(self) -> Optional[str]: return pulumi.get(self, "id") + @property + @pulumi.getter(name="kmsKeyIdentifier") + def kms_key_identifier(self) -> Optional[str]: + return pulumi.get(self, "kms_key_identifier") + @property @pulumi.getter def name(self) -> Optional[str]: @@ -78,6 +86,7 @@ def __await__(self): return GetConfigurationProfileResult( description=self.description, id=self.id, + kms_key_identifier=self.kms_key_identifier, name=self.name, retrieval_role_arn=self.retrieval_role_arn, tags=self.tags, @@ -97,6 +106,7 @@ def get_configuration_profile(id: Optional[str] = None, return AwaitableGetConfigurationProfileResult( description=pulumi.get(__ret__, 'description'), id=pulumi.get(__ret__, 'id'), + kms_key_identifier=pulumi.get(__ret__, 'kms_key_identifier'), name=pulumi.get(__ret__, 'name'), retrieval_role_arn=pulumi.get(__ret__, 'retrieval_role_arn'), tags=pulumi.get(__ret__, 'tags'), diff --git a/sdk/python/pulumi_aws_native/appconfig/outputs.py b/sdk/python/pulumi_aws_native/appconfig/outputs.py index 3f3ed008e0..09341c9043 100644 --- a/sdk/python/pulumi_aws_native/appconfig/outputs.py +++ b/sdk/python/pulumi_aws_native/appconfig/outputs.py @@ -23,9 +23,17 @@ @pulumi.output_type class ApplicationTags(dict): + """ + Metadata to assign to the application. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define. + """ def __init__(__self__, *, - key: Optional[str] = None, - value: Optional[str] = None): + key: str, + value: str): + """ + Metadata to assign to the application. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define. + :param str key: The key-value string map. The valid character set is [a-zA-Z1-9+-=._:/]. The tag key can be up to 128 characters and must not start with aws:. + :param str value: The tag value can be up to 256 characters. + """ ApplicationTags._configure( lambda key, value: pulumi.set(__self__, key, value), key=key, @@ -34,22 +42,26 @@ def __init__(__self__, *, @staticmethod def _configure( _setter: Callable[[Any, Any], None], - key: Optional[str] = None, - value: Optional[str] = None, + key: str, + value: str, opts: Optional[pulumi.ResourceOptions]=None): - if key is not None: - _setter("key", key) - if value is not None: - _setter("value", value) + _setter("key", key) + _setter("value", value) @property @pulumi.getter - def key(self) -> Optional[str]: + def key(self) -> str: + """ + The key-value string map. The valid character set is [a-zA-Z1-9+-=._:/]. The tag key can be up to 128 characters and must not start with aws:. + """ return pulumi.get(self, "key") @property @pulumi.getter - def value(self) -> Optional[str]: + def value(self) -> str: + """ + The tag value can be up to 256 characters. + """ return pulumi.get(self, "value") diff --git a/sdk/python/pulumi_aws_native/appsync/_inputs.py b/sdk/python/pulumi_aws_native/appsync/_inputs.py index 110d0c4b61..994b731402 100644 --- a/sdk/python/pulumi_aws_native/appsync/_inputs.py +++ b/sdk/python/pulumi_aws_native/appsync/_inputs.py @@ -538,6 +538,11 @@ class FunctionConfigurationAppSyncRuntimeArgs: def __init__(__self__, *, name: pulumi.Input[str], runtime_version: pulumi.Input[str]): + """ + Describes a runtime used by an AWS AppSync pipeline resolver or AWS AppSync function. Specifies the name and version of the runtime to use. Note that if a runtime is specified, code must also be specified. + :param pulumi.Input[str] name: The name of the runtime to use. Currently, the only allowed value is APPSYNC_JS. + :param pulumi.Input[str] runtime_version: The version of the runtime to use. Currently, the only allowed version is 1.0.0. + """ FunctionConfigurationAppSyncRuntimeArgs._configure( lambda key, value: pulumi.set(__self__, key, value), name=name, @@ -555,6 +560,9 @@ def _configure( @property @pulumi.getter def name(self) -> pulumi.Input[str]: + """ + The name of the runtime to use. Currently, the only allowed value is APPSYNC_JS. + """ return pulumi.get(self, "name") @name.setter @@ -564,6 +572,9 @@ def name(self, value: pulumi.Input[str]): @property @pulumi.getter(name="runtimeVersion") def runtime_version(self) -> pulumi.Input[str]: + """ + The version of the runtime to use. Currently, the only allowed version is 1.0.0. + """ return pulumi.get(self, "runtime_version") @runtime_version.setter @@ -575,6 +586,10 @@ def runtime_version(self, value: pulumi.Input[str]): class FunctionConfigurationLambdaConflictHandlerConfigArgs: def __init__(__self__, *, lambda_conflict_handler_arn: Optional[pulumi.Input[str]] = None): + """ + The LambdaConflictHandlerConfig when configuring LAMBDA as the Conflict Handler. + :param pulumi.Input[str] lambda_conflict_handler_arn: The Amazon Resource Name (ARN) for the Lambda function to use as the Conflict Handler. + """ FunctionConfigurationLambdaConflictHandlerConfigArgs._configure( lambda key, value: pulumi.set(__self__, key, value), lambda_conflict_handler_arn=lambda_conflict_handler_arn, @@ -590,6 +605,9 @@ def _configure( @property @pulumi.getter(name="lambdaConflictHandlerArn") def lambda_conflict_handler_arn(self) -> Optional[pulumi.Input[str]]: + """ + The Amazon Resource Name (ARN) for the Lambda function to use as the Conflict Handler. + """ return pulumi.get(self, "lambda_conflict_handler_arn") @lambda_conflict_handler_arn.setter @@ -603,6 +621,11 @@ def __init__(__self__, *, conflict_detection: pulumi.Input[str], conflict_handler: Optional[pulumi.Input[str]] = None, lambda_conflict_handler_config: Optional[pulumi.Input['FunctionConfigurationLambdaConflictHandlerConfigArgs']] = None): + """ + Describes a Sync configuration for a resolver. Specifies which Conflict Detection strategy and Resolution strategy to use when the resolver is invoked. + :param pulumi.Input[str] conflict_detection: The Conflict Detection strategy to use. + :param pulumi.Input[str] conflict_handler: The Conflict Resolution strategy to perform in the event of a conflict. + """ FunctionConfigurationSyncConfigArgs._configure( lambda key, value: pulumi.set(__self__, key, value), conflict_detection=conflict_detection, @@ -625,6 +648,9 @@ def _configure( @property @pulumi.getter(name="conflictDetection") def conflict_detection(self) -> pulumi.Input[str]: + """ + The Conflict Detection strategy to use. + """ return pulumi.get(self, "conflict_detection") @conflict_detection.setter @@ -634,6 +660,9 @@ def conflict_detection(self, value: pulumi.Input[str]): @property @pulumi.getter(name="conflictHandler") def conflict_handler(self) -> Optional[pulumi.Input[str]]: + """ + The Conflict Resolution strategy to perform in the event of a conflict. + """ return pulumi.get(self, "conflict_handler") @conflict_handler.setter diff --git a/sdk/python/pulumi_aws_native/appsync/function_configuration.py b/sdk/python/pulumi_aws_native/appsync/function_configuration.py index da47b7e52f..016a37d7d2 100644 --- a/sdk/python/pulumi_aws_native/appsync/function_configuration.py +++ b/sdk/python/pulumi_aws_native/appsync/function_configuration.py @@ -32,6 +32,20 @@ def __init__(__self__, *, sync_config: Optional[pulumi.Input['FunctionConfigurationSyncConfigArgs']] = None): """ The set of arguments for constructing a FunctionConfiguration resource. + :param pulumi.Input[str] api_id: The AWS AppSync GraphQL API that you want to attach using this function. + :param pulumi.Input[str] data_source_name: The name of data source this function will attach. + :param pulumi.Input[str] code: The resolver code that contains the request and response functions. When code is used, the runtime is required. The runtime value must be APPSYNC_JS. + :param pulumi.Input[str] code_s3_location: The Amazon S3 endpoint (where the code is located??). + :param pulumi.Input[str] description: The function description. + :param pulumi.Input[str] function_version: The version of the request mapping template. Currently, only the 2018-05-29 version of the template is supported. + :param pulumi.Input[int] max_batch_size: The maximum number of resolver request inputs that will be sent to a single AWS Lambda function in a BatchInvoke operation. + :param pulumi.Input[str] name: The name of the function. + :param pulumi.Input[str] request_mapping_template: The Function request mapping template. Functions support only the 2018-05-29 version of the request mapping template. + :param pulumi.Input[str] request_mapping_template_s3_location: Describes a Sync configuration for a resolver. Contains information on which Conflict Detection, as well as Resolution strategy, should be performed when the resolver is invoked. + :param pulumi.Input[str] response_mapping_template: The Function response mapping template. + :param pulumi.Input[str] response_mapping_template_s3_location: The location of a response mapping template in an Amazon S3 bucket. Use this if you want to provision with a template file in Amazon S3 rather than embedding it in your CloudFormation template. + :param pulumi.Input['FunctionConfigurationAppSyncRuntimeArgs'] runtime: Describes a runtime used by an AWS AppSync pipeline resolver or AWS AppSync function. Specifies the name and version of the runtime to use. Note that if a runtime is specified, code must also be specified. + :param pulumi.Input['FunctionConfigurationSyncConfigArgs'] sync_config: Describes a Sync configuration for a resolver. Specifies which Conflict Detection strategy and Resolution strategy to use when the resolver is invoked. """ FunctionConfigurationArgs._configure( lambda key, value: pulumi.set(__self__, key, value), @@ -98,6 +112,9 @@ def _configure( @property @pulumi.getter(name="apiId") def api_id(self) -> pulumi.Input[str]: + """ + The AWS AppSync GraphQL API that you want to attach using this function. + """ return pulumi.get(self, "api_id") @api_id.setter @@ -107,6 +124,9 @@ def api_id(self, value: pulumi.Input[str]): @property @pulumi.getter(name="dataSourceName") def data_source_name(self) -> pulumi.Input[str]: + """ + The name of data source this function will attach. + """ return pulumi.get(self, "data_source_name") @data_source_name.setter @@ -116,6 +136,9 @@ def data_source_name(self, value: pulumi.Input[str]): @property @pulumi.getter def code(self) -> Optional[pulumi.Input[str]]: + """ + The resolver code that contains the request and response functions. When code is used, the runtime is required. The runtime value must be APPSYNC_JS. + """ return pulumi.get(self, "code") @code.setter @@ -125,6 +148,9 @@ def code(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="codeS3Location") def code_s3_location(self) -> Optional[pulumi.Input[str]]: + """ + The Amazon S3 endpoint (where the code is located??). + """ return pulumi.get(self, "code_s3_location") @code_s3_location.setter @@ -134,6 +160,9 @@ def code_s3_location(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: + """ + The function description. + """ return pulumi.get(self, "description") @description.setter @@ -143,6 +172,9 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="functionVersion") def function_version(self) -> Optional[pulumi.Input[str]]: + """ + The version of the request mapping template. Currently, only the 2018-05-29 version of the template is supported. + """ return pulumi.get(self, "function_version") @function_version.setter @@ -152,6 +184,9 @@ def function_version(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="maxBatchSize") def max_batch_size(self) -> Optional[pulumi.Input[int]]: + """ + The maximum number of resolver request inputs that will be sent to a single AWS Lambda function in a BatchInvoke operation. + """ return pulumi.get(self, "max_batch_size") @max_batch_size.setter @@ -161,6 +196,9 @@ def max_batch_size(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: + """ + The name of the function. + """ return pulumi.get(self, "name") @name.setter @@ -170,6 +208,9 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="requestMappingTemplate") def request_mapping_template(self) -> Optional[pulumi.Input[str]]: + """ + The Function request mapping template. Functions support only the 2018-05-29 version of the request mapping template. + """ return pulumi.get(self, "request_mapping_template") @request_mapping_template.setter @@ -179,6 +220,9 @@ def request_mapping_template(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="requestMappingTemplateS3Location") def request_mapping_template_s3_location(self) -> Optional[pulumi.Input[str]]: + """ + Describes a Sync configuration for a resolver. Contains information on which Conflict Detection, as well as Resolution strategy, should be performed when the resolver is invoked. + """ return pulumi.get(self, "request_mapping_template_s3_location") @request_mapping_template_s3_location.setter @@ -188,6 +232,9 @@ def request_mapping_template_s3_location(self, value: Optional[pulumi.Input[str] @property @pulumi.getter(name="responseMappingTemplate") def response_mapping_template(self) -> Optional[pulumi.Input[str]]: + """ + The Function response mapping template. + """ return pulumi.get(self, "response_mapping_template") @response_mapping_template.setter @@ -197,6 +244,9 @@ def response_mapping_template(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="responseMappingTemplateS3Location") def response_mapping_template_s3_location(self) -> Optional[pulumi.Input[str]]: + """ + The location of a response mapping template in an Amazon S3 bucket. Use this if you want to provision with a template file in Amazon S3 rather than embedding it in your CloudFormation template. + """ return pulumi.get(self, "response_mapping_template_s3_location") @response_mapping_template_s3_location.setter @@ -206,6 +256,9 @@ def response_mapping_template_s3_location(self, value: Optional[pulumi.Input[str @property @pulumi.getter def runtime(self) -> Optional[pulumi.Input['FunctionConfigurationAppSyncRuntimeArgs']]: + """ + Describes a runtime used by an AWS AppSync pipeline resolver or AWS AppSync function. Specifies the name and version of the runtime to use. Note that if a runtime is specified, code must also be specified. + """ return pulumi.get(self, "runtime") @runtime.setter @@ -215,6 +268,9 @@ def runtime(self, value: Optional[pulumi.Input['FunctionConfigurationAppSyncRunt @property @pulumi.getter(name="syncConfig") def sync_config(self) -> Optional[pulumi.Input['FunctionConfigurationSyncConfigArgs']]: + """ + Describes a Sync configuration for a resolver. Specifies which Conflict Detection strategy and Resolution strategy to use when the resolver is invoked. + """ return pulumi.get(self, "sync_config") @sync_config.setter @@ -222,12 +278,7 @@ def sync_config(self, value: Optional[pulumi.Input['FunctionConfigurationSyncCon pulumi.set(self, "sync_config", value) -warnings.warn("""FunctionConfiguration is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.""", DeprecationWarning) - - class FunctionConfiguration(pulumi.CustomResource): - warnings.warn("""FunctionConfiguration is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.""", DeprecationWarning) - @overload def __init__(__self__, resource_name: str, @@ -248,10 +299,24 @@ def __init__(__self__, sync_config: Optional[pulumi.Input[pulumi.InputType['FunctionConfigurationSyncConfigArgs']]] = None, __props__=None): """ - Resource Type definition for AWS::AppSync::FunctionConfiguration + An example resource schema demonstrating some basic constructs and validation rules. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[str] api_id: The AWS AppSync GraphQL API that you want to attach using this function. + :param pulumi.Input[str] code: The resolver code that contains the request and response functions. When code is used, the runtime is required. The runtime value must be APPSYNC_JS. + :param pulumi.Input[str] code_s3_location: The Amazon S3 endpoint (where the code is located??). + :param pulumi.Input[str] data_source_name: The name of data source this function will attach. + :param pulumi.Input[str] description: The function description. + :param pulumi.Input[str] function_version: The version of the request mapping template. Currently, only the 2018-05-29 version of the template is supported. + :param pulumi.Input[int] max_batch_size: The maximum number of resolver request inputs that will be sent to a single AWS Lambda function in a BatchInvoke operation. + :param pulumi.Input[str] name: The name of the function. + :param pulumi.Input[str] request_mapping_template: The Function request mapping template. Functions support only the 2018-05-29 version of the request mapping template. + :param pulumi.Input[str] request_mapping_template_s3_location: Describes a Sync configuration for a resolver. Contains information on which Conflict Detection, as well as Resolution strategy, should be performed when the resolver is invoked. + :param pulumi.Input[str] response_mapping_template: The Function response mapping template. + :param pulumi.Input[str] response_mapping_template_s3_location: The location of a response mapping template in an Amazon S3 bucket. Use this if you want to provision with a template file in Amazon S3 rather than embedding it in your CloudFormation template. + :param pulumi.Input[pulumi.InputType['FunctionConfigurationAppSyncRuntimeArgs']] runtime: Describes a runtime used by an AWS AppSync pipeline resolver or AWS AppSync function. Specifies the name and version of the runtime to use. Note that if a runtime is specified, code must also be specified. + :param pulumi.Input[pulumi.InputType['FunctionConfigurationSyncConfigArgs']] sync_config: Describes a Sync configuration for a resolver. Specifies which Conflict Detection strategy and Resolution strategy to use when the resolver is invoked. """ ... @overload @@ -260,7 +325,7 @@ def __init__(__self__, args: FunctionConfigurationArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Resource Type definition for AWS::AppSync::FunctionConfiguration + An example resource schema demonstrating some basic constructs and validation rules. :param str resource_name: The name of the resource. :param FunctionConfigurationArgs args: The arguments to use to populate this resource's properties. @@ -296,7 +361,6 @@ def _internal_init(__self__, runtime: Optional[pulumi.Input[pulumi.InputType['FunctionConfigurationAppSyncRuntimeArgs']]] = None, sync_config: Optional[pulumi.Input[pulumi.InputType['FunctionConfigurationSyncConfigArgs']]] = None, __props__=None): - pulumi.log.warn("""FunctionConfiguration is deprecated: FunctionConfiguration is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.""") opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) if not isinstance(opts, pulumi.ResourceOptions): raise TypeError('Expected resource options to be a ResourceOptions instance') @@ -380,80 +444,128 @@ def get(resource_name: str, @property @pulumi.getter(name="apiId") def api_id(self) -> pulumi.Output[str]: + """ + The AWS AppSync GraphQL API that you want to attach using this function. + """ return pulumi.get(self, "api_id") @property @pulumi.getter def code(self) -> pulumi.Output[Optional[str]]: + """ + The resolver code that contains the request and response functions. When code is used, the runtime is required. The runtime value must be APPSYNC_JS. + """ return pulumi.get(self, "code") @property @pulumi.getter(name="codeS3Location") def code_s3_location(self) -> pulumi.Output[Optional[str]]: + """ + The Amazon S3 endpoint (where the code is located??). + """ return pulumi.get(self, "code_s3_location") @property @pulumi.getter(name="dataSourceName") def data_source_name(self) -> pulumi.Output[str]: + """ + The name of data source this function will attach. + """ return pulumi.get(self, "data_source_name") @property @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: + """ + The function description. + """ return pulumi.get(self, "description") @property @pulumi.getter(name="functionArn") def function_arn(self) -> pulumi.Output[str]: + """ + The ARN for the function generated by the service + """ return pulumi.get(self, "function_arn") @property @pulumi.getter(name="functionId") def function_id(self) -> pulumi.Output[str]: + """ + The unique identifier for the function generated by the service + """ return pulumi.get(self, "function_id") @property @pulumi.getter(name="functionVersion") def function_version(self) -> pulumi.Output[Optional[str]]: + """ + The version of the request mapping template. Currently, only the 2018-05-29 version of the template is supported. + """ return pulumi.get(self, "function_version") @property @pulumi.getter(name="maxBatchSize") def max_batch_size(self) -> pulumi.Output[Optional[int]]: + """ + The maximum number of resolver request inputs that will be sent to a single AWS Lambda function in a BatchInvoke operation. + """ return pulumi.get(self, "max_batch_size") @property @pulumi.getter def name(self) -> pulumi.Output[str]: + """ + The name of the function. + """ return pulumi.get(self, "name") @property @pulumi.getter(name="requestMappingTemplate") def request_mapping_template(self) -> pulumi.Output[Optional[str]]: + """ + The Function request mapping template. Functions support only the 2018-05-29 version of the request mapping template. + """ return pulumi.get(self, "request_mapping_template") @property @pulumi.getter(name="requestMappingTemplateS3Location") def request_mapping_template_s3_location(self) -> pulumi.Output[Optional[str]]: + """ + Describes a Sync configuration for a resolver. Contains information on which Conflict Detection, as well as Resolution strategy, should be performed when the resolver is invoked. + """ return pulumi.get(self, "request_mapping_template_s3_location") @property @pulumi.getter(name="responseMappingTemplate") def response_mapping_template(self) -> pulumi.Output[Optional[str]]: + """ + The Function response mapping template. + """ return pulumi.get(self, "response_mapping_template") @property @pulumi.getter(name="responseMappingTemplateS3Location") def response_mapping_template_s3_location(self) -> pulumi.Output[Optional[str]]: + """ + The location of a response mapping template in an Amazon S3 bucket. Use this if you want to provision with a template file in Amazon S3 rather than embedding it in your CloudFormation template. + """ return pulumi.get(self, "response_mapping_template_s3_location") @property @pulumi.getter def runtime(self) -> pulumi.Output[Optional['outputs.FunctionConfigurationAppSyncRuntime']]: + """ + Describes a runtime used by an AWS AppSync pipeline resolver or AWS AppSync function. Specifies the name and version of the runtime to use. Note that if a runtime is specified, code must also be specified. + """ return pulumi.get(self, "runtime") @property @pulumi.getter(name="syncConfig") def sync_config(self) -> pulumi.Output[Optional['outputs.FunctionConfigurationSyncConfig']]: + """ + Describes a Sync configuration for a resolver. Specifies which Conflict Detection strategy and Resolution strategy to use when the resolver is invoked. + """ return pulumi.get(self, "sync_config") diff --git a/sdk/python/pulumi_aws_native/appsync/get_function_configuration.py b/sdk/python/pulumi_aws_native/appsync/get_function_configuration.py index d034109443..f22465c787 100644 --- a/sdk/python/pulumi_aws_native/appsync/get_function_configuration.py +++ b/sdk/python/pulumi_aws_native/appsync/get_function_configuration.py @@ -19,13 +19,10 @@ @pulumi.output_type class GetFunctionConfigurationResult: - def __init__(__self__, code=None, code_s3_location=None, data_source_name=None, description=None, function_arn=None, function_id=None, function_version=None, id=None, max_batch_size=None, name=None, request_mapping_template=None, request_mapping_template_s3_location=None, response_mapping_template=None, response_mapping_template_s3_location=None, runtime=None, sync_config=None): + def __init__(__self__, code=None, data_source_name=None, description=None, function_arn=None, function_id=None, function_version=None, max_batch_size=None, name=None, request_mapping_template=None, response_mapping_template=None, runtime=None, sync_config=None): if code and not isinstance(code, str): raise TypeError("Expected argument 'code' to be a str") pulumi.set(__self__, "code", code) - if code_s3_location and not isinstance(code_s3_location, str): - raise TypeError("Expected argument 'code_s3_location' to be a str") - pulumi.set(__self__, "code_s3_location", code_s3_location) if data_source_name and not isinstance(data_source_name, str): raise TypeError("Expected argument 'data_source_name' to be a str") pulumi.set(__self__, "data_source_name", data_source_name) @@ -41,9 +38,6 @@ def __init__(__self__, code=None, code_s3_location=None, data_source_name=None, if function_version and not isinstance(function_version, str): raise TypeError("Expected argument 'function_version' to be a str") pulumi.set(__self__, "function_version", function_version) - if id and not isinstance(id, str): - raise TypeError("Expected argument 'id' to be a str") - pulumi.set(__self__, "id", id) if max_batch_size and not isinstance(max_batch_size, int): raise TypeError("Expected argument 'max_batch_size' to be a int") pulumi.set(__self__, "max_batch_size", max_batch_size) @@ -53,15 +47,9 @@ def __init__(__self__, code=None, code_s3_location=None, data_source_name=None, if request_mapping_template and not isinstance(request_mapping_template, str): raise TypeError("Expected argument 'request_mapping_template' to be a str") pulumi.set(__self__, "request_mapping_template", request_mapping_template) - if request_mapping_template_s3_location and not isinstance(request_mapping_template_s3_location, str): - raise TypeError("Expected argument 'request_mapping_template_s3_location' to be a str") - pulumi.set(__self__, "request_mapping_template_s3_location", request_mapping_template_s3_location) if response_mapping_template and not isinstance(response_mapping_template, str): raise TypeError("Expected argument 'response_mapping_template' to be a str") pulumi.set(__self__, "response_mapping_template", response_mapping_template) - if response_mapping_template_s3_location and not isinstance(response_mapping_template_s3_location, str): - raise TypeError("Expected argument 'response_mapping_template_s3_location' to be a str") - pulumi.set(__self__, "response_mapping_template_s3_location", response_mapping_template_s3_location) if runtime and not isinstance(runtime, dict): raise TypeError("Expected argument 'runtime' to be a dict") pulumi.set(__self__, "runtime", runtime) @@ -72,81 +60,97 @@ def __init__(__self__, code=None, code_s3_location=None, data_source_name=None, @property @pulumi.getter def code(self) -> Optional[str]: + """ + The resolver code that contains the request and response functions. When code is used, the runtime is required. The runtime value must be APPSYNC_JS. + """ return pulumi.get(self, "code") - @property - @pulumi.getter(name="codeS3Location") - def code_s3_location(self) -> Optional[str]: - return pulumi.get(self, "code_s3_location") - @property @pulumi.getter(name="dataSourceName") def data_source_name(self) -> Optional[str]: + """ + The name of data source this function will attach. + """ return pulumi.get(self, "data_source_name") @property @pulumi.getter def description(self) -> Optional[str]: + """ + The function description. + """ return pulumi.get(self, "description") @property @pulumi.getter(name="functionArn") def function_arn(self) -> Optional[str]: + """ + The ARN for the function generated by the service + """ return pulumi.get(self, "function_arn") @property @pulumi.getter(name="functionId") def function_id(self) -> Optional[str]: + """ + The unique identifier for the function generated by the service + """ return pulumi.get(self, "function_id") @property @pulumi.getter(name="functionVersion") def function_version(self) -> Optional[str]: + """ + The version of the request mapping template. Currently, only the 2018-05-29 version of the template is supported. + """ return pulumi.get(self, "function_version") - @property - @pulumi.getter - def id(self) -> Optional[str]: - return pulumi.get(self, "id") - @property @pulumi.getter(name="maxBatchSize") def max_batch_size(self) -> Optional[int]: + """ + The maximum number of resolver request inputs that will be sent to a single AWS Lambda function in a BatchInvoke operation. + """ return pulumi.get(self, "max_batch_size") @property @pulumi.getter def name(self) -> Optional[str]: + """ + The name of the function. + """ return pulumi.get(self, "name") @property @pulumi.getter(name="requestMappingTemplate") def request_mapping_template(self) -> Optional[str]: + """ + The Function request mapping template. Functions support only the 2018-05-29 version of the request mapping template. + """ return pulumi.get(self, "request_mapping_template") - @property - @pulumi.getter(name="requestMappingTemplateS3Location") - def request_mapping_template_s3_location(self) -> Optional[str]: - return pulumi.get(self, "request_mapping_template_s3_location") - @property @pulumi.getter(name="responseMappingTemplate") def response_mapping_template(self) -> Optional[str]: + """ + The Function response mapping template. + """ return pulumi.get(self, "response_mapping_template") - @property - @pulumi.getter(name="responseMappingTemplateS3Location") - def response_mapping_template_s3_location(self) -> Optional[str]: - return pulumi.get(self, "response_mapping_template_s3_location") - @property @pulumi.getter def runtime(self) -> Optional['outputs.FunctionConfigurationAppSyncRuntime']: + """ + Describes a runtime used by an AWS AppSync pipeline resolver or AWS AppSync function. Specifies the name and version of the runtime to use. Note that if a runtime is specified, code must also be specified. + """ return pulumi.get(self, "runtime") @property @pulumi.getter(name="syncConfig") def sync_config(self) -> Optional['outputs.FunctionConfigurationSyncConfig']: + """ + Describes a Sync configuration for a resolver. Specifies which Conflict Detection strategy and Resolution strategy to use when the resolver is invoked. + """ return pulumi.get(self, "sync_config") @@ -157,56 +161,54 @@ def __await__(self): yield self return GetFunctionConfigurationResult( code=self.code, - code_s3_location=self.code_s3_location, data_source_name=self.data_source_name, description=self.description, function_arn=self.function_arn, function_id=self.function_id, function_version=self.function_version, - id=self.id, max_batch_size=self.max_batch_size, name=self.name, request_mapping_template=self.request_mapping_template, - request_mapping_template_s3_location=self.request_mapping_template_s3_location, response_mapping_template=self.response_mapping_template, - response_mapping_template_s3_location=self.response_mapping_template_s3_location, runtime=self.runtime, sync_config=self.sync_config) -def get_function_configuration(id: Optional[str] = None, +def get_function_configuration(function_arn: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetFunctionConfigurationResult: """ - Resource Type definition for AWS::AppSync::FunctionConfiguration + An example resource schema demonstrating some basic constructs and validation rules. + + + :param str function_arn: The ARN for the function generated by the service """ __args__ = dict() - __args__['id'] = id + __args__['functionArn'] = function_arn opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) __ret__ = pulumi.runtime.invoke('aws-native:appsync:getFunctionConfiguration', __args__, opts=opts, typ=GetFunctionConfigurationResult).value return AwaitableGetFunctionConfigurationResult( code=pulumi.get(__ret__, 'code'), - code_s3_location=pulumi.get(__ret__, 'code_s3_location'), data_source_name=pulumi.get(__ret__, 'data_source_name'), description=pulumi.get(__ret__, 'description'), function_arn=pulumi.get(__ret__, 'function_arn'), function_id=pulumi.get(__ret__, 'function_id'), function_version=pulumi.get(__ret__, 'function_version'), - id=pulumi.get(__ret__, 'id'), max_batch_size=pulumi.get(__ret__, 'max_batch_size'), name=pulumi.get(__ret__, 'name'), request_mapping_template=pulumi.get(__ret__, 'request_mapping_template'), - request_mapping_template_s3_location=pulumi.get(__ret__, 'request_mapping_template_s3_location'), response_mapping_template=pulumi.get(__ret__, 'response_mapping_template'), - response_mapping_template_s3_location=pulumi.get(__ret__, 'response_mapping_template_s3_location'), runtime=pulumi.get(__ret__, 'runtime'), sync_config=pulumi.get(__ret__, 'sync_config')) @_utilities.lift_output_func(get_function_configuration) -def get_function_configuration_output(id: Optional[pulumi.Input[str]] = None, +def get_function_configuration_output(function_arn: Optional[pulumi.Input[str]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetFunctionConfigurationResult]: """ - Resource Type definition for AWS::AppSync::FunctionConfiguration + An example resource schema demonstrating some basic constructs and validation rules. + + + :param str function_arn: The ARN for the function generated by the service """ ... diff --git a/sdk/python/pulumi_aws_native/appsync/outputs.py b/sdk/python/pulumi_aws_native/appsync/outputs.py index 7e1c3d1d2d..112ec240bc 100644 --- a/sdk/python/pulumi_aws_native/appsync/outputs.py +++ b/sdk/python/pulumi_aws_native/appsync/outputs.py @@ -637,6 +637,9 @@ def rds_http_endpoint_config(self) -> Optional['outputs.DataSourceRdsHttpEndpoin @pulumi.output_type class FunctionConfigurationAppSyncRuntime(dict): + """ + Describes a runtime used by an AWS AppSync pipeline resolver or AWS AppSync function. Specifies the name and version of the runtime to use. Note that if a runtime is specified, code must also be specified. + """ @staticmethod def __key_warning(key: str): suggest = None @@ -657,6 +660,11 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, name: str, runtime_version: str): + """ + Describes a runtime used by an AWS AppSync pipeline resolver or AWS AppSync function. Specifies the name and version of the runtime to use. Note that if a runtime is specified, code must also be specified. + :param str name: The name of the runtime to use. Currently, the only allowed value is APPSYNC_JS. + :param str runtime_version: The version of the runtime to use. Currently, the only allowed version is 1.0.0. + """ FunctionConfigurationAppSyncRuntime._configure( lambda key, value: pulumi.set(__self__, key, value), name=name, @@ -674,16 +682,25 @@ def _configure( @property @pulumi.getter def name(self) -> str: + """ + The name of the runtime to use. Currently, the only allowed value is APPSYNC_JS. + """ return pulumi.get(self, "name") @property @pulumi.getter(name="runtimeVersion") def runtime_version(self) -> str: + """ + The version of the runtime to use. Currently, the only allowed version is 1.0.0. + """ return pulumi.get(self, "runtime_version") @pulumi.output_type class FunctionConfigurationLambdaConflictHandlerConfig(dict): + """ + The LambdaConflictHandlerConfig when configuring LAMBDA as the Conflict Handler. + """ @staticmethod def __key_warning(key: str): suggest = None @@ -703,6 +720,10 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, lambda_conflict_handler_arn: Optional[str] = None): + """ + The LambdaConflictHandlerConfig when configuring LAMBDA as the Conflict Handler. + :param str lambda_conflict_handler_arn: The Amazon Resource Name (ARN) for the Lambda function to use as the Conflict Handler. + """ FunctionConfigurationLambdaConflictHandlerConfig._configure( lambda key, value: pulumi.set(__self__, key, value), lambda_conflict_handler_arn=lambda_conflict_handler_arn, @@ -718,11 +739,17 @@ def _configure( @property @pulumi.getter(name="lambdaConflictHandlerArn") def lambda_conflict_handler_arn(self) -> Optional[str]: + """ + The Amazon Resource Name (ARN) for the Lambda function to use as the Conflict Handler. + """ return pulumi.get(self, "lambda_conflict_handler_arn") @pulumi.output_type class FunctionConfigurationSyncConfig(dict): + """ + Describes a Sync configuration for a resolver. Specifies which Conflict Detection strategy and Resolution strategy to use when the resolver is invoked. + """ @staticmethod def __key_warning(key: str): suggest = None @@ -748,6 +775,11 @@ def __init__(__self__, *, conflict_detection: str, conflict_handler: Optional[str] = None, lambda_conflict_handler_config: Optional['outputs.FunctionConfigurationLambdaConflictHandlerConfig'] = None): + """ + Describes a Sync configuration for a resolver. Specifies which Conflict Detection strategy and Resolution strategy to use when the resolver is invoked. + :param str conflict_detection: The Conflict Detection strategy to use. + :param str conflict_handler: The Conflict Resolution strategy to perform in the event of a conflict. + """ FunctionConfigurationSyncConfig._configure( lambda key, value: pulumi.set(__self__, key, value), conflict_detection=conflict_detection, @@ -770,11 +802,17 @@ def _configure( @property @pulumi.getter(name="conflictDetection") def conflict_detection(self) -> str: + """ + The Conflict Detection strategy to use. + """ return pulumi.get(self, "conflict_detection") @property @pulumi.getter(name="conflictHandler") def conflict_handler(self) -> Optional[str]: + """ + The Conflict Resolution strategy to perform in the event of a conflict. + """ return pulumi.get(self, "conflict_handler") @property diff --git a/sdk/python/pulumi_aws_native/cognito/_inputs.py b/sdk/python/pulumi_aws_native/cognito/_inputs.py index 4be372d5e5..f5ca913e38 100644 --- a/sdk/python/pulumi_aws_native/cognito/_inputs.py +++ b/sdk/python/pulumi_aws_native/cognito/_inputs.py @@ -13,7 +13,6 @@ 'IdentityPoolCognitoIdentityProviderArgs', 'IdentityPoolCognitoStreamsArgs', 'IdentityPoolPushSyncArgs', - 'IdentityPoolTagArgs', 'LogDeliveryConfigurationCloudWatchLogsConfigurationArgs', 'LogDeliveryConfigurationLogConfigurationArgs', 'UserPoolAccountRecoverySettingArgs', @@ -53,8 +52,8 @@ @pulumi.input_type class IdentityPoolCognitoIdentityProviderArgs: def __init__(__self__, *, - client_id: pulumi.Input[str], - provider_name: pulumi.Input[str], + client_id: Optional[pulumi.Input[str]] = None, + provider_name: Optional[pulumi.Input[str]] = None, server_side_token_check: Optional[pulumi.Input[bool]] = None): IdentityPoolCognitoIdentityProviderArgs._configure( lambda key, value: pulumi.set(__self__, key, value), @@ -65,31 +64,33 @@ def __init__(__self__, *, @staticmethod def _configure( _setter: Callable[[Any, Any], None], - client_id: pulumi.Input[str], - provider_name: pulumi.Input[str], + client_id: Optional[pulumi.Input[str]] = None, + provider_name: Optional[pulumi.Input[str]] = None, server_side_token_check: Optional[pulumi.Input[bool]] = None, opts: Optional[pulumi.ResourceOptions]=None): - _setter("client_id", client_id) - _setter("provider_name", provider_name) + if client_id is not None: + _setter("client_id", client_id) + if provider_name is not None: + _setter("provider_name", provider_name) if server_side_token_check is not None: _setter("server_side_token_check", server_side_token_check) @property @pulumi.getter(name="clientId") - def client_id(self) -> pulumi.Input[str]: + def client_id(self) -> Optional[pulumi.Input[str]]: return pulumi.get(self, "client_id") @client_id.setter - def client_id(self, value: pulumi.Input[str]): + def client_id(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "client_id", value) @property @pulumi.getter(name="providerName") - def provider_name(self) -> pulumi.Input[str]: + def provider_name(self) -> Optional[pulumi.Input[str]]: return pulumi.get(self, "provider_name") @provider_name.setter - def provider_name(self, value: pulumi.Input[str]): + def provider_name(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "provider_name", value) @property @@ -196,55 +197,6 @@ def role_arn(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "role_arn", value) -@pulumi.input_type -class IdentityPoolTagArgs: - def __init__(__self__, *, - key: pulumi.Input[str], - value: pulumi.Input[str]): - """ - A key-value pair to associate with a resource. - :param pulumi.Input[str] key: The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. - :param pulumi.Input[str] value: The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. - """ - IdentityPoolTagArgs._configure( - lambda key, value: pulumi.set(__self__, key, value), - key=key, - value=value, - ) - @staticmethod - def _configure( - _setter: Callable[[Any, Any], None], - key: pulumi.Input[str], - value: pulumi.Input[str], - opts: Optional[pulumi.ResourceOptions]=None): - _setter("key", key) - _setter("value", value) - - @property - @pulumi.getter - def key(self) -> pulumi.Input[str]: - """ - The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. - """ - return pulumi.get(self, "key") - - @key.setter - def key(self, value: pulumi.Input[str]): - pulumi.set(self, "key", value) - - @property - @pulumi.getter - def value(self) -> pulumi.Input[str]: - """ - The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. - """ - return pulumi.get(self, "value") - - @value.setter - def value(self, value: pulumi.Input[str]): - pulumi.set(self, "value", value) - - @pulumi.input_type class LogDeliveryConfigurationCloudWatchLogsConfigurationArgs: def __init__(__self__, *, diff --git a/sdk/python/pulumi_aws_native/cognito/get_identity_pool.py b/sdk/python/pulumi_aws_native/cognito/get_identity_pool.py index b38cd8de12..b4613cfe42 100644 --- a/sdk/python/pulumi_aws_native/cognito/get_identity_pool.py +++ b/sdk/python/pulumi_aws_native/cognito/get_identity_pool.py @@ -19,16 +19,22 @@ @pulumi.output_type class GetIdentityPoolResult: - def __init__(__self__, allow_classic_flow=None, allow_unauthenticated_identities=None, cognito_identity_providers=None, developer_provider_name=None, id=None, identity_pool_name=None, identity_pool_tags=None, name=None, open_id_connect_provider_arns=None, saml_provider_arns=None, supported_login_providers=None): + def __init__(__self__, allow_classic_flow=None, allow_unauthenticated_identities=None, cognito_events=None, cognito_identity_providers=None, cognito_streams=None, developer_provider_name=None, id=None, identity_pool_name=None, name=None, open_id_connect_provider_arns=None, push_sync=None, saml_provider_arns=None, supported_login_providers=None): if allow_classic_flow and not isinstance(allow_classic_flow, bool): raise TypeError("Expected argument 'allow_classic_flow' to be a bool") pulumi.set(__self__, "allow_classic_flow", allow_classic_flow) if allow_unauthenticated_identities and not isinstance(allow_unauthenticated_identities, bool): raise TypeError("Expected argument 'allow_unauthenticated_identities' to be a bool") pulumi.set(__self__, "allow_unauthenticated_identities", allow_unauthenticated_identities) + if cognito_events and not isinstance(cognito_events, dict): + raise TypeError("Expected argument 'cognito_events' to be a dict") + pulumi.set(__self__, "cognito_events", cognito_events) if cognito_identity_providers and not isinstance(cognito_identity_providers, list): raise TypeError("Expected argument 'cognito_identity_providers' to be a list") pulumi.set(__self__, "cognito_identity_providers", cognito_identity_providers) + if cognito_streams and not isinstance(cognito_streams, dict): + raise TypeError("Expected argument 'cognito_streams' to be a dict") + pulumi.set(__self__, "cognito_streams", cognito_streams) if developer_provider_name and not isinstance(developer_provider_name, str): raise TypeError("Expected argument 'developer_provider_name' to be a str") pulumi.set(__self__, "developer_provider_name", developer_provider_name) @@ -38,15 +44,15 @@ def __init__(__self__, allow_classic_flow=None, allow_unauthenticated_identities if identity_pool_name and not isinstance(identity_pool_name, str): raise TypeError("Expected argument 'identity_pool_name' to be a str") pulumi.set(__self__, "identity_pool_name", identity_pool_name) - if identity_pool_tags and not isinstance(identity_pool_tags, list): - raise TypeError("Expected argument 'identity_pool_tags' to be a list") - pulumi.set(__self__, "identity_pool_tags", identity_pool_tags) if name and not isinstance(name, str): raise TypeError("Expected argument 'name' to be a str") pulumi.set(__self__, "name", name) if open_id_connect_provider_arns and not isinstance(open_id_connect_provider_arns, list): raise TypeError("Expected argument 'open_id_connect_provider_arns' to be a list") pulumi.set(__self__, "open_id_connect_provider_arns", open_id_connect_provider_arns) + if push_sync and not isinstance(push_sync, dict): + raise TypeError("Expected argument 'push_sync' to be a dict") + pulumi.set(__self__, "push_sync", push_sync) if saml_provider_arns and not isinstance(saml_provider_arns, list): raise TypeError("Expected argument 'saml_provider_arns' to be a list") pulumi.set(__self__, "saml_provider_arns", saml_provider_arns) @@ -64,11 +70,21 @@ def allow_classic_flow(self) -> Optional[bool]: def allow_unauthenticated_identities(self) -> Optional[bool]: return pulumi.get(self, "allow_unauthenticated_identities") + @property + @pulumi.getter(name="cognitoEvents") + def cognito_events(self) -> Optional[Any]: + return pulumi.get(self, "cognito_events") + @property @pulumi.getter(name="cognitoIdentityProviders") def cognito_identity_providers(self) -> Optional[Sequence['outputs.IdentityPoolCognitoIdentityProvider']]: return pulumi.get(self, "cognito_identity_providers") + @property + @pulumi.getter(name="cognitoStreams") + def cognito_streams(self) -> Optional['outputs.IdentityPoolCognitoStreams']: + return pulumi.get(self, "cognito_streams") + @property @pulumi.getter(name="developerProviderName") def developer_provider_name(self) -> Optional[str]: @@ -84,14 +100,6 @@ def id(self) -> Optional[str]: def identity_pool_name(self) -> Optional[str]: return pulumi.get(self, "identity_pool_name") - @property - @pulumi.getter(name="identityPoolTags") - def identity_pool_tags(self) -> Optional[Sequence['outputs.IdentityPoolTag']]: - """ - An array of key-value pairs to apply to this resource. - """ - return pulumi.get(self, "identity_pool_tags") - @property @pulumi.getter def name(self) -> Optional[str]: @@ -102,6 +110,11 @@ def name(self) -> Optional[str]: def open_id_connect_provider_arns(self) -> Optional[Sequence[str]]: return pulumi.get(self, "open_id_connect_provider_arns") + @property + @pulumi.getter(name="pushSync") + def push_sync(self) -> Optional['outputs.IdentityPoolPushSync']: + return pulumi.get(self, "push_sync") + @property @pulumi.getter(name="samlProviderArns") def saml_provider_arns(self) -> Optional[Sequence[str]]: @@ -121,13 +134,15 @@ def __await__(self): return GetIdentityPoolResult( allow_classic_flow=self.allow_classic_flow, allow_unauthenticated_identities=self.allow_unauthenticated_identities, + cognito_events=self.cognito_events, cognito_identity_providers=self.cognito_identity_providers, + cognito_streams=self.cognito_streams, developer_provider_name=self.developer_provider_name, id=self.id, identity_pool_name=self.identity_pool_name, - identity_pool_tags=self.identity_pool_tags, name=self.name, open_id_connect_provider_arns=self.open_id_connect_provider_arns, + push_sync=self.push_sync, saml_provider_arns=self.saml_provider_arns, supported_login_providers=self.supported_login_providers) @@ -145,13 +160,15 @@ def get_identity_pool(id: Optional[str] = None, return AwaitableGetIdentityPoolResult( allow_classic_flow=pulumi.get(__ret__, 'allow_classic_flow'), allow_unauthenticated_identities=pulumi.get(__ret__, 'allow_unauthenticated_identities'), + cognito_events=pulumi.get(__ret__, 'cognito_events'), cognito_identity_providers=pulumi.get(__ret__, 'cognito_identity_providers'), + cognito_streams=pulumi.get(__ret__, 'cognito_streams'), developer_provider_name=pulumi.get(__ret__, 'developer_provider_name'), id=pulumi.get(__ret__, 'id'), identity_pool_name=pulumi.get(__ret__, 'identity_pool_name'), - identity_pool_tags=pulumi.get(__ret__, 'identity_pool_tags'), name=pulumi.get(__ret__, 'name'), open_id_connect_provider_arns=pulumi.get(__ret__, 'open_id_connect_provider_arns'), + push_sync=pulumi.get(__ret__, 'push_sync'), saml_provider_arns=pulumi.get(__ret__, 'saml_provider_arns'), supported_login_providers=pulumi.get(__ret__, 'supported_login_providers')) diff --git a/sdk/python/pulumi_aws_native/cognito/get_user_pool.py b/sdk/python/pulumi_aws_native/cognito/get_user_pool.py index d0cc8d245a..4e10c4e46d 100644 --- a/sdk/python/pulumi_aws_native/cognito/get_user_pool.py +++ b/sdk/python/pulumi_aws_native/cognito/get_user_pool.py @@ -19,7 +19,7 @@ @pulumi.output_type class GetUserPoolResult: - def __init__(__self__, account_recovery_setting=None, admin_create_user_config=None, alias_attributes=None, arn=None, auto_verified_attributes=None, deletion_protection=None, device_configuration=None, email_configuration=None, email_verification_message=None, email_verification_subject=None, enabled_mfas=None, id=None, lambda_config=None, mfa_configuration=None, policies=None, provider_name=None, provider_url=None, schema=None, sms_authentication_message=None, sms_configuration=None, sms_verification_message=None, user_attribute_update_settings=None, user_pool_add_ons=None, user_pool_name=None, user_pool_tags=None, username_attributes=None, username_configuration=None, verification_message_template=None): + def __init__(__self__, account_recovery_setting=None, admin_create_user_config=None, alias_attributes=None, arn=None, auto_verified_attributes=None, deletion_protection=None, device_configuration=None, email_configuration=None, email_verification_message=None, email_verification_subject=None, lambda_config=None, mfa_configuration=None, policies=None, provider_name=None, provider_url=None, schema=None, sms_authentication_message=None, sms_configuration=None, sms_verification_message=None, user_attribute_update_settings=None, user_pool_add_ons=None, user_pool_id=None, user_pool_name=None, user_pool_tags=None, username_attributes=None, username_configuration=None, verification_message_template=None): if account_recovery_setting and not isinstance(account_recovery_setting, dict): raise TypeError("Expected argument 'account_recovery_setting' to be a dict") pulumi.set(__self__, "account_recovery_setting", account_recovery_setting) @@ -50,12 +50,6 @@ def __init__(__self__, account_recovery_setting=None, admin_create_user_config=N if email_verification_subject and not isinstance(email_verification_subject, str): raise TypeError("Expected argument 'email_verification_subject' to be a str") pulumi.set(__self__, "email_verification_subject", email_verification_subject) - if enabled_mfas and not isinstance(enabled_mfas, list): - raise TypeError("Expected argument 'enabled_mfas' to be a list") - pulumi.set(__self__, "enabled_mfas", enabled_mfas) - if id and not isinstance(id, str): - raise TypeError("Expected argument 'id' to be a str") - pulumi.set(__self__, "id", id) if lambda_config and not isinstance(lambda_config, dict): raise TypeError("Expected argument 'lambda_config' to be a dict") pulumi.set(__self__, "lambda_config", lambda_config) @@ -89,6 +83,9 @@ def __init__(__self__, account_recovery_setting=None, admin_create_user_config=N if user_pool_add_ons and not isinstance(user_pool_add_ons, dict): raise TypeError("Expected argument 'user_pool_add_ons' to be a dict") pulumi.set(__self__, "user_pool_add_ons", user_pool_add_ons) + if user_pool_id and not isinstance(user_pool_id, str): + raise TypeError("Expected argument 'user_pool_id' to be a str") + pulumi.set(__self__, "user_pool_id", user_pool_id) if user_pool_name and not isinstance(user_pool_name, str): raise TypeError("Expected argument 'user_pool_name' to be a str") pulumi.set(__self__, "user_pool_name", user_pool_name) @@ -155,16 +152,6 @@ def email_verification_message(self) -> Optional[str]: def email_verification_subject(self) -> Optional[str]: return pulumi.get(self, "email_verification_subject") - @property - @pulumi.getter(name="enabledMfas") - def enabled_mfas(self) -> Optional[Sequence[str]]: - return pulumi.get(self, "enabled_mfas") - - @property - @pulumi.getter - def id(self) -> Optional[str]: - return pulumi.get(self, "id") - @property @pulumi.getter(name="lambdaConfig") def lambda_config(self) -> Optional['outputs.UserPoolLambdaConfig']: @@ -220,6 +207,11 @@ def user_attribute_update_settings(self) -> Optional['outputs.UserPoolUserAttrib def user_pool_add_ons(self) -> Optional['outputs.UserPoolAddOns']: return pulumi.get(self, "user_pool_add_ons") + @property + @pulumi.getter(name="userPoolId") + def user_pool_id(self) -> Optional[str]: + return pulumi.get(self, "user_pool_id") + @property @pulumi.getter(name="userPoolName") def user_pool_name(self) -> Optional[str]: @@ -262,8 +254,6 @@ def __await__(self): email_configuration=self.email_configuration, email_verification_message=self.email_verification_message, email_verification_subject=self.email_verification_subject, - enabled_mfas=self.enabled_mfas, - id=self.id, lambda_config=self.lambda_config, mfa_configuration=self.mfa_configuration, policies=self.policies, @@ -275,6 +265,7 @@ def __await__(self): sms_verification_message=self.sms_verification_message, user_attribute_update_settings=self.user_attribute_update_settings, user_pool_add_ons=self.user_pool_add_ons, + user_pool_id=self.user_pool_id, user_pool_name=self.user_pool_name, user_pool_tags=self.user_pool_tags, username_attributes=self.username_attributes, @@ -282,13 +273,13 @@ def __await__(self): verification_message_template=self.verification_message_template) -def get_user_pool(id: Optional[str] = None, +def get_user_pool(user_pool_id: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetUserPoolResult: """ Resource Type definition for AWS::Cognito::UserPool """ __args__ = dict() - __args__['id'] = id + __args__['userPoolId'] = user_pool_id opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) __ret__ = pulumi.runtime.invoke('aws-native:cognito:getUserPool', __args__, opts=opts, typ=GetUserPoolResult).value @@ -303,8 +294,6 @@ def get_user_pool(id: Optional[str] = None, email_configuration=pulumi.get(__ret__, 'email_configuration'), email_verification_message=pulumi.get(__ret__, 'email_verification_message'), email_verification_subject=pulumi.get(__ret__, 'email_verification_subject'), - enabled_mfas=pulumi.get(__ret__, 'enabled_mfas'), - id=pulumi.get(__ret__, 'id'), lambda_config=pulumi.get(__ret__, 'lambda_config'), mfa_configuration=pulumi.get(__ret__, 'mfa_configuration'), policies=pulumi.get(__ret__, 'policies'), @@ -316,6 +305,7 @@ def get_user_pool(id: Optional[str] = None, sms_verification_message=pulumi.get(__ret__, 'sms_verification_message'), user_attribute_update_settings=pulumi.get(__ret__, 'user_attribute_update_settings'), user_pool_add_ons=pulumi.get(__ret__, 'user_pool_add_ons'), + user_pool_id=pulumi.get(__ret__, 'user_pool_id'), user_pool_name=pulumi.get(__ret__, 'user_pool_name'), user_pool_tags=pulumi.get(__ret__, 'user_pool_tags'), username_attributes=pulumi.get(__ret__, 'username_attributes'), @@ -324,7 +314,7 @@ def get_user_pool(id: Optional[str] = None, @_utilities.lift_output_func(get_user_pool) -def get_user_pool_output(id: Optional[pulumi.Input[str]] = None, +def get_user_pool_output(user_pool_id: Optional[pulumi.Input[str]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetUserPoolResult]: """ Resource Type definition for AWS::Cognito::UserPool diff --git a/sdk/python/pulumi_aws_native/cognito/get_user_pool_group.py b/sdk/python/pulumi_aws_native/cognito/get_user_pool_group.py index 47e54d468d..78a2e97284 100644 --- a/sdk/python/pulumi_aws_native/cognito/get_user_pool_group.py +++ b/sdk/python/pulumi_aws_native/cognito/get_user_pool_group.py @@ -18,15 +18,12 @@ @pulumi.output_type class GetUserPoolGroupResult: - def __init__(__self__, description=None, id=None, precedence=None, role_arn=None): + def __init__(__self__, description=None, precedence=None, role_arn=None): if description and not isinstance(description, str): raise TypeError("Expected argument 'description' to be a str") pulumi.set(__self__, "description", description) - if id and not isinstance(id, str): - raise TypeError("Expected argument 'id' to be a str") - pulumi.set(__self__, "id", id) - if precedence and not isinstance(precedence, float): - raise TypeError("Expected argument 'precedence' to be a float") + if precedence and not isinstance(precedence, int): + raise TypeError("Expected argument 'precedence' to be a int") pulumi.set(__self__, "precedence", precedence) if role_arn and not isinstance(role_arn, str): raise TypeError("Expected argument 'role_arn' to be a str") @@ -39,12 +36,7 @@ def description(self) -> Optional[str]: @property @pulumi.getter - def id(self) -> Optional[str]: - return pulumi.get(self, "id") - - @property - @pulumi.getter - def precedence(self) -> Optional[float]: + def precedence(self) -> Optional[int]: return pulumi.get(self, "precedence") @property @@ -60,30 +52,31 @@ def __await__(self): yield self return GetUserPoolGroupResult( description=self.description, - id=self.id, precedence=self.precedence, role_arn=self.role_arn) -def get_user_pool_group(id: Optional[str] = None, +def get_user_pool_group(group_name: Optional[str] = None, + user_pool_id: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetUserPoolGroupResult: """ Resource Type definition for AWS::Cognito::UserPoolGroup """ __args__ = dict() - __args__['id'] = id + __args__['groupName'] = group_name + __args__['userPoolId'] = user_pool_id opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) __ret__ = pulumi.runtime.invoke('aws-native:cognito:getUserPoolGroup', __args__, opts=opts, typ=GetUserPoolGroupResult).value return AwaitableGetUserPoolGroupResult( description=pulumi.get(__ret__, 'description'), - id=pulumi.get(__ret__, 'id'), precedence=pulumi.get(__ret__, 'precedence'), role_arn=pulumi.get(__ret__, 'role_arn')) @_utilities.lift_output_func(get_user_pool_group) -def get_user_pool_group_output(id: Optional[pulumi.Input[str]] = None, +def get_user_pool_group_output(group_name: Optional[pulumi.Input[str]] = None, + user_pool_id: Optional[pulumi.Input[str]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetUserPoolGroupResult]: """ Resource Type definition for AWS::Cognito::UserPoolGroup diff --git a/sdk/python/pulumi_aws_native/cognito/identity_pool.py b/sdk/python/pulumi_aws_native/cognito/identity_pool.py index 8726f11f76..b4c7569303 100644 --- a/sdk/python/pulumi_aws_native/cognito/identity_pool.py +++ b/sdk/python/pulumi_aws_native/cognito/identity_pool.py @@ -23,14 +23,12 @@ def __init__(__self__, *, cognito_streams: Optional[pulumi.Input['IdentityPoolCognitoStreamsArgs']] = None, developer_provider_name: Optional[pulumi.Input[str]] = None, identity_pool_name: Optional[pulumi.Input[str]] = None, - identity_pool_tags: Optional[pulumi.Input[Sequence[pulumi.Input['IdentityPoolTagArgs']]]] = None, open_id_connect_provider_arns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, push_sync: Optional[pulumi.Input['IdentityPoolPushSyncArgs']] = None, saml_provider_arns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, supported_login_providers: Optional[Any] = None): """ The set of arguments for constructing a IdentityPool resource. - :param pulumi.Input[Sequence[pulumi.Input['IdentityPoolTagArgs']]] identity_pool_tags: An array of key-value pairs to apply to this resource. """ IdentityPoolArgs._configure( lambda key, value: pulumi.set(__self__, key, value), @@ -41,7 +39,6 @@ def __init__(__self__, *, cognito_streams=cognito_streams, developer_provider_name=developer_provider_name, identity_pool_name=identity_pool_name, - identity_pool_tags=identity_pool_tags, open_id_connect_provider_arns=open_id_connect_provider_arns, push_sync=push_sync, saml_provider_arns=saml_provider_arns, @@ -57,7 +54,6 @@ def _configure( cognito_streams: Optional[pulumi.Input['IdentityPoolCognitoStreamsArgs']] = None, developer_provider_name: Optional[pulumi.Input[str]] = None, identity_pool_name: Optional[pulumi.Input[str]] = None, - identity_pool_tags: Optional[pulumi.Input[Sequence[pulumi.Input['IdentityPoolTagArgs']]]] = None, open_id_connect_provider_arns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, push_sync: Optional[pulumi.Input['IdentityPoolPushSyncArgs']] = None, saml_provider_arns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, @@ -76,8 +72,6 @@ def _configure( _setter("developer_provider_name", developer_provider_name) if identity_pool_name is not None: _setter("identity_pool_name", identity_pool_name) - if identity_pool_tags is not None: - _setter("identity_pool_tags", identity_pool_tags) if open_id_connect_provider_arns is not None: _setter("open_id_connect_provider_arns", open_id_connect_provider_arns) if push_sync is not None: @@ -150,18 +144,6 @@ def identity_pool_name(self) -> Optional[pulumi.Input[str]]: def identity_pool_name(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "identity_pool_name", value) - @property - @pulumi.getter(name="identityPoolTags") - def identity_pool_tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['IdentityPoolTagArgs']]]]: - """ - An array of key-value pairs to apply to this resource. - """ - return pulumi.get(self, "identity_pool_tags") - - @identity_pool_tags.setter - def identity_pool_tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['IdentityPoolTagArgs']]]]): - pulumi.set(self, "identity_pool_tags", value) - @property @pulumi.getter(name="openIdConnectProviderArns") def open_id_connect_provider_arns(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: @@ -211,7 +193,6 @@ def __init__(__self__, cognito_streams: Optional[pulumi.Input[pulumi.InputType['IdentityPoolCognitoStreamsArgs']]] = None, developer_provider_name: Optional[pulumi.Input[str]] = None, identity_pool_name: Optional[pulumi.Input[str]] = None, - identity_pool_tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['IdentityPoolTagArgs']]]]] = None, open_id_connect_provider_arns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, push_sync: Optional[pulumi.Input[pulumi.InputType['IdentityPoolPushSyncArgs']]] = None, saml_provider_arns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, @@ -222,7 +203,6 @@ 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[pulumi.InputType['IdentityPoolTagArgs']]]] identity_pool_tags: An array of key-value pairs to apply to this resource. """ ... @overload @@ -259,7 +239,6 @@ def _internal_init(__self__, cognito_streams: Optional[pulumi.Input[pulumi.InputType['IdentityPoolCognitoStreamsArgs']]] = None, developer_provider_name: Optional[pulumi.Input[str]] = None, identity_pool_name: Optional[pulumi.Input[str]] = None, - identity_pool_tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['IdentityPoolTagArgs']]]]] = None, open_id_connect_provider_arns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, push_sync: Optional[pulumi.Input[pulumi.InputType['IdentityPoolPushSyncArgs']]] = None, saml_provider_arns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, @@ -287,7 +266,6 @@ def _setter(key, value): __props__.__dict__["cognito_streams"] = cognito_streams __props__.__dict__["developer_provider_name"] = developer_provider_name __props__.__dict__["identity_pool_name"] = identity_pool_name - __props__.__dict__["identity_pool_tags"] = identity_pool_tags __props__.__dict__["open_id_connect_provider_arns"] = open_id_connect_provider_arns if push_sync is not None and not isinstance(push_sync, IdentityPoolPushSyncArgs): push_sync = push_sync or {} @@ -327,7 +305,6 @@ def get(resource_name: str, __props__.__dict__["cognito_streams"] = None __props__.__dict__["developer_provider_name"] = None __props__.__dict__["identity_pool_name"] = None - __props__.__dict__["identity_pool_tags"] = None __props__.__dict__["name"] = None __props__.__dict__["open_id_connect_provider_arns"] = None __props__.__dict__["push_sync"] = None @@ -370,14 +347,6 @@ def developer_provider_name(self) -> pulumi.Output[Optional[str]]: def identity_pool_name(self) -> pulumi.Output[Optional[str]]: return pulumi.get(self, "identity_pool_name") - @property - @pulumi.getter(name="identityPoolTags") - def identity_pool_tags(self) -> pulumi.Output[Optional[Sequence['outputs.IdentityPoolTag']]]: - """ - An array of key-value pairs to apply to this resource. - """ - return pulumi.get(self, "identity_pool_tags") - @property @pulumi.getter def name(self) -> pulumi.Output[str]: diff --git a/sdk/python/pulumi_aws_native/cognito/outputs.py b/sdk/python/pulumi_aws_native/cognito/outputs.py index b277c7da31..c53011942b 100644 --- a/sdk/python/pulumi_aws_native/cognito/outputs.py +++ b/sdk/python/pulumi_aws_native/cognito/outputs.py @@ -14,7 +14,6 @@ 'IdentityPoolCognitoIdentityProvider', 'IdentityPoolCognitoStreams', 'IdentityPoolPushSync', - 'IdentityPoolTag', 'LogDeliveryConfigurationCloudWatchLogsConfiguration', 'LogDeliveryConfigurationLogConfiguration', 'UserPoolAccountRecoverySetting', @@ -75,8 +74,8 @@ def get(self, key: str, default = None) -> Any: return super().get(key, default) def __init__(__self__, *, - client_id: str, - provider_name: str, + client_id: Optional[str] = None, + provider_name: Optional[str] = None, server_side_token_check: Optional[bool] = None): IdentityPoolCognitoIdentityProvider._configure( lambda key, value: pulumi.set(__self__, key, value), @@ -87,23 +86,25 @@ def __init__(__self__, *, @staticmethod def _configure( _setter: Callable[[Any, Any], None], - client_id: str, - provider_name: str, + client_id: Optional[str] = None, + provider_name: Optional[str] = None, server_side_token_check: Optional[bool] = None, opts: Optional[pulumi.ResourceOptions]=None): - _setter("client_id", client_id) - _setter("provider_name", provider_name) + if client_id is not None: + _setter("client_id", client_id) + if provider_name is not None: + _setter("provider_name", provider_name) if server_side_token_check is not None: _setter("server_side_token_check", server_side_token_check) @property @pulumi.getter(name="clientId") - def client_id(self) -> str: + def client_id(self) -> Optional[str]: return pulumi.get(self, "client_id") @property @pulumi.getter(name="providerName") - def provider_name(self) -> str: + def provider_name(self) -> Optional[str]: return pulumi.get(self, "provider_name") @property @@ -226,50 +227,6 @@ def role_arn(self) -> Optional[str]: return pulumi.get(self, "role_arn") -@pulumi.output_type -class IdentityPoolTag(dict): - """ - A key-value pair to associate with a resource. - """ - def __init__(__self__, *, - key: str, - value: str): - """ - A key-value pair to associate with a resource. - :param str key: The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. - :param str value: The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. - """ - IdentityPoolTag._configure( - lambda key, value: pulumi.set(__self__, key, value), - key=key, - value=value, - ) - @staticmethod - def _configure( - _setter: Callable[[Any, Any], None], - key: str, - value: str, - opts: Optional[pulumi.ResourceOptions]=None): - _setter("key", key) - _setter("value", value) - - @property - @pulumi.getter - def key(self) -> str: - """ - The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. - """ - return pulumi.get(self, "key") - - @property - @pulumi.getter - def value(self) -> str: - """ - The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. - """ - return pulumi.get(self, "value") - - @pulumi.output_type class LogDeliveryConfigurationCloudWatchLogsConfiguration(dict): @staticmethod diff --git a/sdk/python/pulumi_aws_native/cognito/user_pool.py b/sdk/python/pulumi_aws_native/cognito/user_pool.py index e7c7cc1710..63db30d5f9 100644 --- a/sdk/python/pulumi_aws_native/cognito/user_pool.py +++ b/sdk/python/pulumi_aws_native/cognito/user_pool.py @@ -364,12 +364,7 @@ def verification_message_template(self, value: Optional[pulumi.Input['UserPoolVe pulumi.set(self, "verification_message_template", value) -warnings.warn("""UserPool is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.""", DeprecationWarning) - - class UserPool(pulumi.CustomResource): - warnings.warn("""UserPool is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.""", DeprecationWarning) - @overload def __init__(__self__, resource_name: str, @@ -458,7 +453,6 @@ def _internal_init(__self__, username_configuration: Optional[pulumi.Input[pulumi.InputType['UserPoolUsernameConfigurationArgs']]] = None, verification_message_template: Optional[pulumi.Input[pulumi.InputType['UserPoolVerificationMessageTemplateArgs']]] = None, __props__=None): - pulumi.log.warn("""UserPool is deprecated: UserPool is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.""") opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) if not isinstance(opts, pulumi.ResourceOptions): raise TypeError('Expected resource options to be a ResourceOptions instance') @@ -549,6 +543,7 @@ def _setter(key, value): __props__.__dict__["arn"] = None __props__.__dict__["provider_name"] = None __props__.__dict__["provider_url"] = None + __props__.__dict__["user_pool_id"] = None super(UserPool, __self__).__init__( 'aws-native:cognito:UserPool', resource_name, @@ -593,6 +588,7 @@ def get(resource_name: str, __props__.__dict__["sms_verification_message"] = None __props__.__dict__["user_attribute_update_settings"] = None __props__.__dict__["user_pool_add_ons"] = None + __props__.__dict__["user_pool_id"] = None __props__.__dict__["user_pool_name"] = None __props__.__dict__["user_pool_tags"] = None __props__.__dict__["username_attributes"] = None @@ -710,6 +706,11 @@ def user_attribute_update_settings(self) -> pulumi.Output[Optional['outputs.User def user_pool_add_ons(self) -> pulumi.Output[Optional['outputs.UserPoolAddOns']]: return pulumi.get(self, "user_pool_add_ons") + @property + @pulumi.getter(name="userPoolId") + def user_pool_id(self) -> pulumi.Output[str]: + return pulumi.get(self, "user_pool_id") + @property @pulumi.getter(name="userPoolName") def user_pool_name(self) -> pulumi.Output[Optional[str]]: diff --git a/sdk/python/pulumi_aws_native/cognito/user_pool_group.py b/sdk/python/pulumi_aws_native/cognito/user_pool_group.py index 0b83717b39..fc2b392e2b 100644 --- a/sdk/python/pulumi_aws_native/cognito/user_pool_group.py +++ b/sdk/python/pulumi_aws_native/cognito/user_pool_group.py @@ -17,7 +17,7 @@ def __init__(__self__, *, user_pool_id: pulumi.Input[str], description: Optional[pulumi.Input[str]] = None, group_name: Optional[pulumi.Input[str]] = None, - precedence: Optional[pulumi.Input[float]] = None, + precedence: Optional[pulumi.Input[int]] = None, role_arn: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a UserPoolGroup resource. @@ -36,7 +36,7 @@ def _configure( user_pool_id: pulumi.Input[str], description: Optional[pulumi.Input[str]] = None, group_name: Optional[pulumi.Input[str]] = None, - precedence: Optional[pulumi.Input[float]] = None, + precedence: Optional[pulumi.Input[int]] = None, role_arn: Optional[pulumi.Input[str]] = None, opts: Optional[pulumi.ResourceOptions]=None): _setter("user_pool_id", user_pool_id) @@ -78,11 +78,11 @@ def group_name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter - def precedence(self) -> Optional[pulumi.Input[float]]: + def precedence(self) -> Optional[pulumi.Input[int]]: return pulumi.get(self, "precedence") @precedence.setter - def precedence(self, value: Optional[pulumi.Input[float]]): + def precedence(self, value: Optional[pulumi.Input[int]]): pulumi.set(self, "precedence", value) @property @@ -95,19 +95,14 @@ def role_arn(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "role_arn", value) -warnings.warn("""UserPoolGroup is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.""", DeprecationWarning) - - class UserPoolGroup(pulumi.CustomResource): - warnings.warn("""UserPoolGroup is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.""", DeprecationWarning) - @overload def __init__(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, description: Optional[pulumi.Input[str]] = None, group_name: Optional[pulumi.Input[str]] = None, - precedence: Optional[pulumi.Input[float]] = None, + precedence: Optional[pulumi.Input[int]] = None, role_arn: Optional[pulumi.Input[str]] = None, user_pool_id: Optional[pulumi.Input[str]] = None, __props__=None): @@ -147,11 +142,10 @@ def _internal_init(__self__, opts: Optional[pulumi.ResourceOptions] = None, description: Optional[pulumi.Input[str]] = None, group_name: Optional[pulumi.Input[str]] = None, - precedence: Optional[pulumi.Input[float]] = None, + precedence: Optional[pulumi.Input[int]] = None, role_arn: Optional[pulumi.Input[str]] = None, user_pool_id: Optional[pulumi.Input[str]] = None, __props__=None): - pulumi.log.warn("""UserPoolGroup is deprecated: UserPoolGroup is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.""") opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) if not isinstance(opts, pulumi.ResourceOptions): raise TypeError('Expected resource options to be a ResourceOptions instance') @@ -210,7 +204,7 @@ def group_name(self) -> pulumi.Output[Optional[str]]: @property @pulumi.getter - def precedence(self) -> pulumi.Output[Optional[float]]: + def precedence(self) -> pulumi.Output[Optional[int]]: return pulumi.get(self, "precedence") @property diff --git a/sdk/python/pulumi_aws_native/connect/_enums.py b/sdk/python/pulumi_aws_native/connect/_enums.py index 6c35f7267e..2350b7932c 100644 --- a/sdk/python/pulumi_aws_native/connect/_enums.py +++ b/sdk/python/pulumi_aws_native/connect/_enums.py @@ -5,8 +5,6 @@ from enum import Enum __all__ = [ - 'ContactFlowModuleState', - 'ContactFlowModuleStatus', 'ContactFlowState', 'ContactFlowType', 'EvaluationFormNumericQuestionPropertyValueAutomationLabel', @@ -40,22 +38,6 @@ ] -class ContactFlowModuleState(str, Enum): - """ - The state of the contact flow module. - """ - ACTIVE = "ACTIVE" - ARCHIVED = "ARCHIVED" - - -class ContactFlowModuleStatus(str, Enum): - """ - The status of the contact flow module. - """ - PUBLISHED = "PUBLISHED" - SAVED = "SAVED" - - class ContactFlowState(str, Enum): """ The state of the contact flow. diff --git a/sdk/python/pulumi_aws_native/connect/contact_flow_module.py b/sdk/python/pulumi_aws_native/connect/contact_flow_module.py index 5eac1fbd34..cc9aa4a1b6 100644 --- a/sdk/python/pulumi_aws_native/connect/contact_flow_module.py +++ b/sdk/python/pulumi_aws_native/connect/contact_flow_module.py @@ -9,7 +9,6 @@ from typing import Any, Callable, Mapping, Optional, Sequence, Union, overload from .. import _utilities from . import outputs -from ._enums import * from ._inputs import * __all__ = ['ContactFlowModuleArgs', 'ContactFlowModule'] @@ -21,7 +20,7 @@ def __init__(__self__, *, instance_arn: pulumi.Input[str], description: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, - state: Optional[pulumi.Input['ContactFlowModuleState']] = None, + state: Optional[pulumi.Input[str]] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input['ContactFlowModuleTagArgs']]]] = None): """ The set of arguments for constructing a ContactFlowModule resource. @@ -29,7 +28,7 @@ def __init__(__self__, *, :param pulumi.Input[str] instance_arn: The identifier of the Amazon Connect instance (ARN). :param pulumi.Input[str] description: The description of the contact flow module. :param pulumi.Input[str] name: The name of the contact flow module. - :param pulumi.Input['ContactFlowModuleState'] state: The state of the contact flow module. + :param pulumi.Input[str] state: The state of the contact flow module. :param pulumi.Input[Sequence[pulumi.Input['ContactFlowModuleTagArgs']]] tags: One or more tags. """ ContactFlowModuleArgs._configure( @@ -48,7 +47,7 @@ def _configure( instance_arn: pulumi.Input[str], description: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, - state: Optional[pulumi.Input['ContactFlowModuleState']] = None, + state: Optional[pulumi.Input[str]] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input['ContactFlowModuleTagArgs']]]] = None, opts: Optional[pulumi.ResourceOptions]=None): _setter("content", content) @@ -112,14 +111,14 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter - def state(self) -> Optional[pulumi.Input['ContactFlowModuleState']]: + def state(self) -> Optional[pulumi.Input[str]]: """ The state of the contact flow module. """ return pulumi.get(self, "state") @state.setter - def state(self, value: Optional[pulumi.Input['ContactFlowModuleState']]): + def state(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "state", value) @property @@ -144,7 +143,7 @@ def __init__(__self__, description: Optional[pulumi.Input[str]] = None, instance_arn: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, - state: Optional[pulumi.Input['ContactFlowModuleState']] = None, + state: Optional[pulumi.Input[str]] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ContactFlowModuleTagArgs']]]]] = None, __props__=None): """ @@ -156,7 +155,7 @@ def __init__(__self__, :param pulumi.Input[str] description: The description of the contact flow module. :param pulumi.Input[str] instance_arn: The identifier of the Amazon Connect instance (ARN). :param pulumi.Input[str] name: The name of the contact flow module. - :param pulumi.Input['ContactFlowModuleState'] state: The state of the contact flow module. + :param pulumi.Input[str] state: The state of the contact flow module. :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ContactFlowModuleTagArgs']]]] tags: One or more tags. """ ... @@ -191,7 +190,7 @@ def _internal_init(__self__, description: Optional[pulumi.Input[str]] = None, instance_arn: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, - state: Optional[pulumi.Input['ContactFlowModuleState']] = None, + state: Optional[pulumi.Input[str]] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ContactFlowModuleTagArgs']]]]] = None, __props__=None): opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) @@ -288,7 +287,7 @@ def name(self) -> pulumi.Output[str]: @property @pulumi.getter - def state(self) -> pulumi.Output[Optional['ContactFlowModuleState']]: + def state(self) -> pulumi.Output[Optional[str]]: """ The state of the contact flow module. """ @@ -296,7 +295,7 @@ def state(self) -> pulumi.Output[Optional['ContactFlowModuleState']]: @property @pulumi.getter - def status(self) -> pulumi.Output['ContactFlowModuleStatus']: + def status(self) -> pulumi.Output[str]: """ The status of the contact flow module. """ diff --git a/sdk/python/pulumi_aws_native/connect/get_contact_flow_module.py b/sdk/python/pulumi_aws_native/connect/get_contact_flow_module.py index f9a10765db..c07a391e5d 100644 --- a/sdk/python/pulumi_aws_native/connect/get_contact_flow_module.py +++ b/sdk/python/pulumi_aws_native/connect/get_contact_flow_module.py @@ -9,7 +9,6 @@ from typing import Any, Callable, Mapping, Optional, Sequence, Union, overload from .. import _utilities from . import outputs -from ._enums import * __all__ = [ 'GetContactFlowModuleResult', @@ -88,7 +87,7 @@ def name(self) -> Optional[str]: @property @pulumi.getter - def state(self) -> Optional['ContactFlowModuleState']: + def state(self) -> Optional[str]: """ The state of the contact flow module. """ @@ -96,7 +95,7 @@ def state(self) -> Optional['ContactFlowModuleState']: @property @pulumi.getter - def status(self) -> Optional['ContactFlowModuleStatus']: + def status(self) -> Optional[str]: """ The status of the contact flow module. """ diff --git a/sdk/python/pulumi_aws_native/customerprofiles/_enums.py b/sdk/python/pulumi_aws_native/customerprofiles/_enums.py index 724e85889c..c4f5f5215d 100644 --- a/sdk/python/pulumi_aws_native/customerprofiles/_enums.py +++ b/sdk/python/pulumi_aws_native/customerprofiles/_enums.py @@ -8,6 +8,10 @@ 'CalculatedAttributeDefinitionRangeUnit', 'CalculatedAttributeDefinitionStatistic', 'CalculatedAttributeDefinitionThresholdOperator', + 'DomainAttributeTypesSelectorAttributeMatchingModel', + 'DomainConflictResolutionConflictResolvingModel', + 'DomainJobScheduleDayOfTheWeek', + 'DomainRuleBasedMatchingStatus', 'EventStreamState', 'EventStreamStatus', 'IntegrationConnectorType', @@ -56,6 +60,41 @@ class CalculatedAttributeDefinitionThresholdOperator(str, Enum): NOT_EQUAL_TO = "NOT_EQUAL_TO" +class DomainAttributeTypesSelectorAttributeMatchingModel(str, Enum): + """ + Configures the AttributeMatchingModel, you can either choose ONE_TO_ONE or MANY_TO_MANY. + """ + ONE_TO_ONE = "ONE_TO_ONE" + MANY_TO_MANY = "MANY_TO_MANY" + + +class DomainConflictResolutionConflictResolvingModel(str, Enum): + """ + How the auto-merging process should resolve conflicts between different profiles. + """ + RECENCY = "RECENCY" + SOURCE = "SOURCE" + + +class DomainJobScheduleDayOfTheWeek(str, Enum): + """ + The day when the Identity Resolution Job should run every week. + """ + SUNDAY = "SUNDAY" + MONDAY = "MONDAY" + TUESDAY = "TUESDAY" + WEDNESDAY = "WEDNESDAY" + THURSDAY = "THURSDAY" + FRIDAY = "FRIDAY" + SATURDAY = "SATURDAY" + + +class DomainRuleBasedMatchingStatus(str, Enum): + PENDING = "PENDING" + IN_PROGRESS = "IN_PROGRESS" + ACTIVE = "ACTIVE" + + class EventStreamState(str, Enum): """ The operational state of destination stream for export. diff --git a/sdk/python/pulumi_aws_native/customerprofiles/_inputs.py b/sdk/python/pulumi_aws_native/customerprofiles/_inputs.py index 7fd4dfca61..4c28c9dd24 100644 --- a/sdk/python/pulumi_aws_native/customerprofiles/_inputs.py +++ b/sdk/python/pulumi_aws_native/customerprofiles/_inputs.py @@ -17,6 +17,16 @@ 'CalculatedAttributeDefinitionRangeArgs', 'CalculatedAttributeDefinitionTagArgs', 'CalculatedAttributeDefinitionThresholdArgs', + 'DomainAttributeTypesSelectorArgs', + 'DomainAutoMergingArgs', + 'DomainConflictResolutionArgs', + 'DomainConsolidationArgs', + 'DomainExportingConfigArgs', + 'DomainJobScheduleArgs', + 'DomainMatchingRuleArgs', + 'DomainMatchingArgs', + 'DomainRuleBasedMatchingArgs', + 'DomainS3ExportingConfigArgs', 'DomainTagArgs', 'EventStreamTagArgs', 'IntegrationConnectorOperatorArgs', @@ -300,6 +310,624 @@ def value(self, value: pulumi.Input[str]): pulumi.set(self, "value", value) +@pulumi.input_type +class DomainAttributeTypesSelectorArgs: + def __init__(__self__, *, + attribute_matching_model: pulumi.Input['DomainAttributeTypesSelectorAttributeMatchingModel'], + address: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + email_address: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + phone_number: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): + """ + Configures information about the AttributeTypesSelector where the rule-based identity resolution uses to match profiles. + :param pulumi.Input['DomainAttributeTypesSelectorAttributeMatchingModel'] attribute_matching_model: Configures the AttributeMatchingModel, you can either choose ONE_TO_ONE or MANY_TO_MANY. + :param pulumi.Input[Sequence[pulumi.Input[str]]] address: The Address type. You can choose from Address, BusinessAddress, MaillingAddress, and ShippingAddress. You only can use the Address type in the MatchingRule. For example, if you want to match profile based on BusinessAddress.City or MaillingAddress.City, you need to choose the BusinessAddress and the MaillingAddress to represent the Address type and specify the Address.City on the matching rule. + :param pulumi.Input[Sequence[pulumi.Input[str]]] email_address: The Email type. You can choose from EmailAddress, BusinessEmailAddress and PersonalEmailAddress. You only can use the EmailAddress type in the MatchingRule. For example, if you want to match profile based on PersonalEmailAddress or BusinessEmailAddress, you need to choose the PersonalEmailAddress and the BusinessEmailAddress to represent the EmailAddress type and only specify the EmailAddress on the matching rule. + :param pulumi.Input[Sequence[pulumi.Input[str]]] phone_number: The PhoneNumber type. You can choose from PhoneNumber, HomePhoneNumber, and MobilePhoneNumber. You only can use the PhoneNumber type in the MatchingRule. For example, if you want to match a profile based on Phone or HomePhone, you need to choose the Phone and the HomePhone to represent the PhoneNumber type and only specify the PhoneNumber on the matching rule. + """ + DomainAttributeTypesSelectorArgs._configure( + lambda key, value: pulumi.set(__self__, key, value), + attribute_matching_model=attribute_matching_model, + address=address, + email_address=email_address, + phone_number=phone_number, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + attribute_matching_model: pulumi.Input['DomainAttributeTypesSelectorAttributeMatchingModel'], + address: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + email_address: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + phone_number: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + opts: Optional[pulumi.ResourceOptions]=None): + _setter("attribute_matching_model", attribute_matching_model) + if address is not None: + _setter("address", address) + if email_address is not None: + _setter("email_address", email_address) + if phone_number is not None: + _setter("phone_number", phone_number) + + @property + @pulumi.getter(name="attributeMatchingModel") + def attribute_matching_model(self) -> pulumi.Input['DomainAttributeTypesSelectorAttributeMatchingModel']: + """ + Configures the AttributeMatchingModel, you can either choose ONE_TO_ONE or MANY_TO_MANY. + """ + return pulumi.get(self, "attribute_matching_model") + + @attribute_matching_model.setter + def attribute_matching_model(self, value: pulumi.Input['DomainAttributeTypesSelectorAttributeMatchingModel']): + pulumi.set(self, "attribute_matching_model", value) + + @property + @pulumi.getter + def address(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + """ + The Address type. You can choose from Address, BusinessAddress, MaillingAddress, and ShippingAddress. You only can use the Address type in the MatchingRule. For example, if you want to match profile based on BusinessAddress.City or MaillingAddress.City, you need to choose the BusinessAddress and the MaillingAddress to represent the Address type and specify the Address.City on the matching rule. + """ + return pulumi.get(self, "address") + + @address.setter + def address(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "address", value) + + @property + @pulumi.getter(name="emailAddress") + def email_address(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + """ + The Email type. You can choose from EmailAddress, BusinessEmailAddress and PersonalEmailAddress. You only can use the EmailAddress type in the MatchingRule. For example, if you want to match profile based on PersonalEmailAddress or BusinessEmailAddress, you need to choose the PersonalEmailAddress and the BusinessEmailAddress to represent the EmailAddress type and only specify the EmailAddress on the matching rule. + """ + return pulumi.get(self, "email_address") + + @email_address.setter + def email_address(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "email_address", value) + + @property + @pulumi.getter(name="phoneNumber") + def phone_number(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + """ + The PhoneNumber type. You can choose from PhoneNumber, HomePhoneNumber, and MobilePhoneNumber. You only can use the PhoneNumber type in the MatchingRule. For example, if you want to match a profile based on Phone or HomePhone, you need to choose the Phone and the HomePhone to represent the PhoneNumber type and only specify the PhoneNumber on the matching rule. + """ + return pulumi.get(self, "phone_number") + + @phone_number.setter + def phone_number(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "phone_number", value) + + +@pulumi.input_type +class DomainAutoMergingArgs: + def __init__(__self__, *, + enabled: pulumi.Input[bool], + conflict_resolution: Optional[pulumi.Input['DomainConflictResolutionArgs']] = None, + consolidation: Optional[pulumi.Input['DomainConsolidationArgs']] = None, + min_allowed_confidence_score_for_merging: Optional[pulumi.Input[float]] = None): + """ + Configuration information about the auto-merging process. + :param pulumi.Input[bool] enabled: The flag that enables the auto-merging of duplicate profiles. + :param pulumi.Input[float] min_allowed_confidence_score_for_merging: A number between 0 and 1 that represents the minimum confidence score required for profiles within a matching group to be merged during the auto-merge process. A higher score means higher similarity required to merge profiles. + """ + DomainAutoMergingArgs._configure( + lambda key, value: pulumi.set(__self__, key, value), + enabled=enabled, + conflict_resolution=conflict_resolution, + consolidation=consolidation, + min_allowed_confidence_score_for_merging=min_allowed_confidence_score_for_merging, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + enabled: pulumi.Input[bool], + conflict_resolution: Optional[pulumi.Input['DomainConflictResolutionArgs']] = None, + consolidation: Optional[pulumi.Input['DomainConsolidationArgs']] = None, + min_allowed_confidence_score_for_merging: Optional[pulumi.Input[float]] = None, + opts: Optional[pulumi.ResourceOptions]=None): + _setter("enabled", enabled) + if conflict_resolution is not None: + _setter("conflict_resolution", conflict_resolution) + if consolidation is not None: + _setter("consolidation", consolidation) + if min_allowed_confidence_score_for_merging is not None: + _setter("min_allowed_confidence_score_for_merging", min_allowed_confidence_score_for_merging) + + @property + @pulumi.getter + def enabled(self) -> pulumi.Input[bool]: + """ + The flag that enables the auto-merging of duplicate profiles. + """ + return pulumi.get(self, "enabled") + + @enabled.setter + def enabled(self, value: pulumi.Input[bool]): + pulumi.set(self, "enabled", value) + + @property + @pulumi.getter(name="conflictResolution") + def conflict_resolution(self) -> Optional[pulumi.Input['DomainConflictResolutionArgs']]: + return pulumi.get(self, "conflict_resolution") + + @conflict_resolution.setter + def conflict_resolution(self, value: Optional[pulumi.Input['DomainConflictResolutionArgs']]): + pulumi.set(self, "conflict_resolution", value) + + @property + @pulumi.getter + def consolidation(self) -> Optional[pulumi.Input['DomainConsolidationArgs']]: + return pulumi.get(self, "consolidation") + + @consolidation.setter + def consolidation(self, value: Optional[pulumi.Input['DomainConsolidationArgs']]): + pulumi.set(self, "consolidation", value) + + @property + @pulumi.getter(name="minAllowedConfidenceScoreForMerging") + def min_allowed_confidence_score_for_merging(self) -> Optional[pulumi.Input[float]]: + """ + A number between 0 and 1 that represents the minimum confidence score required for profiles within a matching group to be merged during the auto-merge process. A higher score means higher similarity required to merge profiles. + """ + return pulumi.get(self, "min_allowed_confidence_score_for_merging") + + @min_allowed_confidence_score_for_merging.setter + def min_allowed_confidence_score_for_merging(self, value: Optional[pulumi.Input[float]]): + pulumi.set(self, "min_allowed_confidence_score_for_merging", value) + + +@pulumi.input_type +class DomainConflictResolutionArgs: + def __init__(__self__, *, + conflict_resolving_model: pulumi.Input['DomainConflictResolutionConflictResolvingModel'], + source_name: Optional[pulumi.Input[str]] = None): + """ + How the auto-merging process should resolve conflicts between different profiles. For example, if Profile A and Profile B have the same FirstName and LastName (and that is the matching criteria), which EmailAddress should be used? + :param pulumi.Input['DomainConflictResolutionConflictResolvingModel'] conflict_resolving_model: How the auto-merging process should resolve conflicts between different profiles. + :param pulumi.Input[str] source_name: The ObjectType name that is used to resolve profile merging conflicts when choosing SOURCE as the ConflictResolvingModel. + """ + DomainConflictResolutionArgs._configure( + lambda key, value: pulumi.set(__self__, key, value), + conflict_resolving_model=conflict_resolving_model, + source_name=source_name, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + conflict_resolving_model: pulumi.Input['DomainConflictResolutionConflictResolvingModel'], + source_name: Optional[pulumi.Input[str]] = None, + opts: Optional[pulumi.ResourceOptions]=None): + _setter("conflict_resolving_model", conflict_resolving_model) + if source_name is not None: + _setter("source_name", source_name) + + @property + @pulumi.getter(name="conflictResolvingModel") + def conflict_resolving_model(self) -> pulumi.Input['DomainConflictResolutionConflictResolvingModel']: + """ + How the auto-merging process should resolve conflicts between different profiles. + """ + return pulumi.get(self, "conflict_resolving_model") + + @conflict_resolving_model.setter + def conflict_resolving_model(self, value: pulumi.Input['DomainConflictResolutionConflictResolvingModel']): + pulumi.set(self, "conflict_resolving_model", value) + + @property + @pulumi.getter(name="sourceName") + def source_name(self) -> Optional[pulumi.Input[str]]: + """ + The ObjectType name that is used to resolve profile merging conflicts when choosing SOURCE as the ConflictResolvingModel. + """ + return pulumi.get(self, "source_name") + + @source_name.setter + def source_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "source_name", value) + + +@pulumi.input_type +class DomainConsolidationArgs: + def __init__(__self__, *, + matching_attributes_list: pulumi.Input[Sequence[pulumi.Input[Sequence[pulumi.Input[str]]]]]): + """ + A list of matching attributes that represent matching criteria. If two profiles meet at least one of the requirements in the matching attributes list, they will be merged. + :param pulumi.Input[Sequence[pulumi.Input[Sequence[pulumi.Input[str]]]]] matching_attributes_list: A list of matching criteria. + """ + DomainConsolidationArgs._configure( + lambda key, value: pulumi.set(__self__, key, value), + matching_attributes_list=matching_attributes_list, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + matching_attributes_list: pulumi.Input[Sequence[pulumi.Input[Sequence[pulumi.Input[str]]]]], + opts: Optional[pulumi.ResourceOptions]=None): + _setter("matching_attributes_list", matching_attributes_list) + + @property + @pulumi.getter(name="matchingAttributesList") + def matching_attributes_list(self) -> pulumi.Input[Sequence[pulumi.Input[Sequence[pulumi.Input[str]]]]]: + """ + A list of matching criteria. + """ + return pulumi.get(self, "matching_attributes_list") + + @matching_attributes_list.setter + def matching_attributes_list(self, value: pulumi.Input[Sequence[pulumi.Input[Sequence[pulumi.Input[str]]]]]): + pulumi.set(self, "matching_attributes_list", value) + + +@pulumi.input_type +class DomainExportingConfigArgs: + def __init__(__self__, *, + s3_exporting: Optional[pulumi.Input['DomainS3ExportingConfigArgs']] = None): + """ + Configuration information for exporting Identity Resolution results, for example, to an S3 bucket. + """ + DomainExportingConfigArgs._configure( + lambda key, value: pulumi.set(__self__, key, value), + s3_exporting=s3_exporting, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + s3_exporting: Optional[pulumi.Input['DomainS3ExportingConfigArgs']] = None, + opts: Optional[pulumi.ResourceOptions]=None): + if s3_exporting is not None: + _setter("s3_exporting", s3_exporting) + + @property + @pulumi.getter(name="s3Exporting") + def s3_exporting(self) -> Optional[pulumi.Input['DomainS3ExportingConfigArgs']]: + return pulumi.get(self, "s3_exporting") + + @s3_exporting.setter + def s3_exporting(self, value: Optional[pulumi.Input['DomainS3ExportingConfigArgs']]): + pulumi.set(self, "s3_exporting", value) + + +@pulumi.input_type +class DomainJobScheduleArgs: + def __init__(__self__, *, + day_of_the_week: pulumi.Input['DomainJobScheduleDayOfTheWeek'], + time: pulumi.Input[str]): + """ + The day and time when do you want to start the Identity Resolution Job every week. + :param pulumi.Input['DomainJobScheduleDayOfTheWeek'] day_of_the_week: The day when the Identity Resolution Job should run every week. + :param pulumi.Input[str] time: The time when the Identity Resolution Job should run every week. + """ + DomainJobScheduleArgs._configure( + lambda key, value: pulumi.set(__self__, key, value), + day_of_the_week=day_of_the_week, + time=time, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + day_of_the_week: pulumi.Input['DomainJobScheduleDayOfTheWeek'], + time: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions]=None): + _setter("day_of_the_week", day_of_the_week) + _setter("time", time) + + @property + @pulumi.getter(name="dayOfTheWeek") + def day_of_the_week(self) -> pulumi.Input['DomainJobScheduleDayOfTheWeek']: + """ + The day when the Identity Resolution Job should run every week. + """ + return pulumi.get(self, "day_of_the_week") + + @day_of_the_week.setter + def day_of_the_week(self, value: pulumi.Input['DomainJobScheduleDayOfTheWeek']): + pulumi.set(self, "day_of_the_week", value) + + @property + @pulumi.getter + def time(self) -> pulumi.Input[str]: + """ + The time when the Identity Resolution Job should run every week. + """ + return pulumi.get(self, "time") + + @time.setter + def time(self, value: pulumi.Input[str]): + pulumi.set(self, "time", value) + + +@pulumi.input_type +class DomainMatchingRuleArgs: + def __init__(__self__, *, + rule: pulumi.Input[Sequence[pulumi.Input[str]]]): + """ + Specifies how does the rule-based matching process should match profiles. + """ + DomainMatchingRuleArgs._configure( + lambda key, value: pulumi.set(__self__, key, value), + rule=rule, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + rule: pulumi.Input[Sequence[pulumi.Input[str]]], + opts: Optional[pulumi.ResourceOptions]=None): + _setter("rule", rule) + + @property + @pulumi.getter + def rule(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: + return pulumi.get(self, "rule") + + @rule.setter + def rule(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): + pulumi.set(self, "rule", value) + + +@pulumi.input_type +class DomainMatchingArgs: + def __init__(__self__, *, + enabled: pulumi.Input[bool], + auto_merging: Optional[pulumi.Input['DomainAutoMergingArgs']] = None, + exporting_config: Optional[pulumi.Input['DomainExportingConfigArgs']] = None, + job_schedule: Optional[pulumi.Input['DomainJobScheduleArgs']] = None): + """ + The process of matching duplicate profiles. If Matching = true, Amazon Connect Customer Profiles starts a weekly batch process called Identity Resolution Job. If you do not specify a date and time for Identity Resolution Job to run, by default it runs every Saturday at 12AM UTC to detect duplicate profiles in your domains. After the Identity Resolution Job completes, use the GetMatches API to return and review the results. Or, if you have configured ExportingConfig in the MatchingRequest, you can download the results from S3. + :param pulumi.Input[bool] enabled: The flag that enables the matching process of duplicate profiles. + """ + DomainMatchingArgs._configure( + lambda key, value: pulumi.set(__self__, key, value), + enabled=enabled, + auto_merging=auto_merging, + exporting_config=exporting_config, + job_schedule=job_schedule, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + enabled: pulumi.Input[bool], + auto_merging: Optional[pulumi.Input['DomainAutoMergingArgs']] = None, + exporting_config: Optional[pulumi.Input['DomainExportingConfigArgs']] = None, + job_schedule: Optional[pulumi.Input['DomainJobScheduleArgs']] = None, + opts: Optional[pulumi.ResourceOptions]=None): + _setter("enabled", enabled) + if auto_merging is not None: + _setter("auto_merging", auto_merging) + if exporting_config is not None: + _setter("exporting_config", exporting_config) + if job_schedule is not None: + _setter("job_schedule", job_schedule) + + @property + @pulumi.getter + def enabled(self) -> pulumi.Input[bool]: + """ + The flag that enables the matching process of duplicate profiles. + """ + return pulumi.get(self, "enabled") + + @enabled.setter + def enabled(self, value: pulumi.Input[bool]): + pulumi.set(self, "enabled", value) + + @property + @pulumi.getter(name="autoMerging") + def auto_merging(self) -> Optional[pulumi.Input['DomainAutoMergingArgs']]: + return pulumi.get(self, "auto_merging") + + @auto_merging.setter + def auto_merging(self, value: Optional[pulumi.Input['DomainAutoMergingArgs']]): + pulumi.set(self, "auto_merging", value) + + @property + @pulumi.getter(name="exportingConfig") + def exporting_config(self) -> Optional[pulumi.Input['DomainExportingConfigArgs']]: + return pulumi.get(self, "exporting_config") + + @exporting_config.setter + def exporting_config(self, value: Optional[pulumi.Input['DomainExportingConfigArgs']]): + pulumi.set(self, "exporting_config", value) + + @property + @pulumi.getter(name="jobSchedule") + def job_schedule(self) -> Optional[pulumi.Input['DomainJobScheduleArgs']]: + return pulumi.get(self, "job_schedule") + + @job_schedule.setter + def job_schedule(self, value: Optional[pulumi.Input['DomainJobScheduleArgs']]): + pulumi.set(self, "job_schedule", value) + + +@pulumi.input_type +class DomainRuleBasedMatchingArgs: + def __init__(__self__, *, + enabled: pulumi.Input[bool], + attribute_types_selector: Optional[pulumi.Input['DomainAttributeTypesSelectorArgs']] = None, + conflict_resolution: Optional[pulumi.Input['DomainConflictResolutionArgs']] = None, + exporting_config: Optional[pulumi.Input['DomainExportingConfigArgs']] = None, + matching_rules: Optional[pulumi.Input[Sequence[pulumi.Input['DomainMatchingRuleArgs']]]] = None, + max_allowed_rule_level_for_matching: Optional[pulumi.Input[int]] = None, + max_allowed_rule_level_for_merging: Optional[pulumi.Input[int]] = None, + status: Optional[pulumi.Input['DomainRuleBasedMatchingStatus']] = None): + """ + The process of matching duplicate profiles using the Rule-Based matching. If RuleBasedMatching = true, Amazon Connect Customer Profiles will start to match and merge your profiles according to your configuration in the RuleBasedMatchingRequest. You can use the ListRuleBasedMatches and GetSimilarProfiles API to return and review the results. Also, if you have configured ExportingConfig in the RuleBasedMatchingRequest, you can download the results from S3. + :param pulumi.Input[bool] enabled: The flag that enables the rule-based matching process of duplicate profiles. + :param pulumi.Input[Sequence[pulumi.Input['DomainMatchingRuleArgs']]] matching_rules: Configures how the rule-based matching process should match profiles. You can have up to 15 MatchingRule in the MatchingRules. + :param pulumi.Input[int] max_allowed_rule_level_for_matching: Indicates the maximum allowed rule level for matching. + :param pulumi.Input[int] max_allowed_rule_level_for_merging: Indicates the maximum allowed rule level for merging. + """ + DomainRuleBasedMatchingArgs._configure( + lambda key, value: pulumi.set(__self__, key, value), + enabled=enabled, + attribute_types_selector=attribute_types_selector, + conflict_resolution=conflict_resolution, + exporting_config=exporting_config, + matching_rules=matching_rules, + max_allowed_rule_level_for_matching=max_allowed_rule_level_for_matching, + max_allowed_rule_level_for_merging=max_allowed_rule_level_for_merging, + status=status, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + enabled: pulumi.Input[bool], + attribute_types_selector: Optional[pulumi.Input['DomainAttributeTypesSelectorArgs']] = None, + conflict_resolution: Optional[pulumi.Input['DomainConflictResolutionArgs']] = None, + exporting_config: Optional[pulumi.Input['DomainExportingConfigArgs']] = None, + matching_rules: Optional[pulumi.Input[Sequence[pulumi.Input['DomainMatchingRuleArgs']]]] = None, + max_allowed_rule_level_for_matching: Optional[pulumi.Input[int]] = None, + max_allowed_rule_level_for_merging: Optional[pulumi.Input[int]] = None, + status: Optional[pulumi.Input['DomainRuleBasedMatchingStatus']] = None, + opts: Optional[pulumi.ResourceOptions]=None): + _setter("enabled", enabled) + if attribute_types_selector is not None: + _setter("attribute_types_selector", attribute_types_selector) + if conflict_resolution is not None: + _setter("conflict_resolution", conflict_resolution) + if exporting_config is not None: + _setter("exporting_config", exporting_config) + if matching_rules is not None: + _setter("matching_rules", matching_rules) + if max_allowed_rule_level_for_matching is not None: + _setter("max_allowed_rule_level_for_matching", max_allowed_rule_level_for_matching) + if max_allowed_rule_level_for_merging is not None: + _setter("max_allowed_rule_level_for_merging", max_allowed_rule_level_for_merging) + if status is not None: + _setter("status", status) + + @property + @pulumi.getter + def enabled(self) -> pulumi.Input[bool]: + """ + The flag that enables the rule-based matching process of duplicate profiles. + """ + return pulumi.get(self, "enabled") + + @enabled.setter + def enabled(self, value: pulumi.Input[bool]): + pulumi.set(self, "enabled", value) + + @property + @pulumi.getter(name="attributeTypesSelector") + def attribute_types_selector(self) -> Optional[pulumi.Input['DomainAttributeTypesSelectorArgs']]: + return pulumi.get(self, "attribute_types_selector") + + @attribute_types_selector.setter + def attribute_types_selector(self, value: Optional[pulumi.Input['DomainAttributeTypesSelectorArgs']]): + pulumi.set(self, "attribute_types_selector", value) + + @property + @pulumi.getter(name="conflictResolution") + def conflict_resolution(self) -> Optional[pulumi.Input['DomainConflictResolutionArgs']]: + return pulumi.get(self, "conflict_resolution") + + @conflict_resolution.setter + def conflict_resolution(self, value: Optional[pulumi.Input['DomainConflictResolutionArgs']]): + pulumi.set(self, "conflict_resolution", value) + + @property + @pulumi.getter(name="exportingConfig") + def exporting_config(self) -> Optional[pulumi.Input['DomainExportingConfigArgs']]: + return pulumi.get(self, "exporting_config") + + @exporting_config.setter + def exporting_config(self, value: Optional[pulumi.Input['DomainExportingConfigArgs']]): + pulumi.set(self, "exporting_config", value) + + @property + @pulumi.getter(name="matchingRules") + def matching_rules(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['DomainMatchingRuleArgs']]]]: + """ + Configures how the rule-based matching process should match profiles. You can have up to 15 MatchingRule in the MatchingRules. + """ + return pulumi.get(self, "matching_rules") + + @matching_rules.setter + def matching_rules(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['DomainMatchingRuleArgs']]]]): + pulumi.set(self, "matching_rules", value) + + @property + @pulumi.getter(name="maxAllowedRuleLevelForMatching") + def max_allowed_rule_level_for_matching(self) -> Optional[pulumi.Input[int]]: + """ + Indicates the maximum allowed rule level for matching. + """ + return pulumi.get(self, "max_allowed_rule_level_for_matching") + + @max_allowed_rule_level_for_matching.setter + def max_allowed_rule_level_for_matching(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "max_allowed_rule_level_for_matching", value) + + @property + @pulumi.getter(name="maxAllowedRuleLevelForMerging") + def max_allowed_rule_level_for_merging(self) -> Optional[pulumi.Input[int]]: + """ + Indicates the maximum allowed rule level for merging. + """ + return pulumi.get(self, "max_allowed_rule_level_for_merging") + + @max_allowed_rule_level_for_merging.setter + def max_allowed_rule_level_for_merging(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "max_allowed_rule_level_for_merging", value) + + @property + @pulumi.getter + def status(self) -> Optional[pulumi.Input['DomainRuleBasedMatchingStatus']]: + return pulumi.get(self, "status") + + @status.setter + def status(self, value: Optional[pulumi.Input['DomainRuleBasedMatchingStatus']]): + pulumi.set(self, "status", value) + + +@pulumi.input_type +class DomainS3ExportingConfigArgs: + def __init__(__self__, *, + s3_bucket_name: pulumi.Input[str], + s3_key_name: Optional[pulumi.Input[str]] = None): + """ + The S3 location where Identity Resolution Jobs write result files. + :param pulumi.Input[str] s3_bucket_name: The name of the S3 bucket where Identity Resolution Jobs write result files. + :param pulumi.Input[str] s3_key_name: The S3 key name of the location where Identity Resolution Jobs write result files. + """ + DomainS3ExportingConfigArgs._configure( + lambda key, value: pulumi.set(__self__, key, value), + s3_bucket_name=s3_bucket_name, + s3_key_name=s3_key_name, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + s3_bucket_name: pulumi.Input[str], + s3_key_name: Optional[pulumi.Input[str]] = None, + opts: Optional[pulumi.ResourceOptions]=None): + _setter("s3_bucket_name", s3_bucket_name) + if s3_key_name is not None: + _setter("s3_key_name", s3_key_name) + + @property + @pulumi.getter(name="s3BucketName") + def s3_bucket_name(self) -> pulumi.Input[str]: + """ + The name of the S3 bucket where Identity Resolution Jobs write result files. + """ + return pulumi.get(self, "s3_bucket_name") + + @s3_bucket_name.setter + def s3_bucket_name(self, value: pulumi.Input[str]): + pulumi.set(self, "s3_bucket_name", value) + + @property + @pulumi.getter(name="s3KeyName") + def s3_key_name(self) -> Optional[pulumi.Input[str]]: + """ + The S3 key name of the location where Identity Resolution Jobs write result files. + """ + return pulumi.get(self, "s3_key_name") + + @s3_key_name.setter + def s3_key_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "s3_key_name", value) + + @pulumi.input_type class DomainTagArgs: def __init__(__self__, *, diff --git a/sdk/python/pulumi_aws_native/customerprofiles/domain.py b/sdk/python/pulumi_aws_native/customerprofiles/domain.py index 37069ea3f1..2a71c432a0 100644 --- a/sdk/python/pulumi_aws_native/customerprofiles/domain.py +++ b/sdk/python/pulumi_aws_native/customerprofiles/domain.py @@ -9,6 +9,7 @@ from typing import Any, Callable, Mapping, Optional, Sequence, Union, overload from .. import _utilities from . import outputs +from ._enums import * from ._inputs import * __all__ = ['DomainArgs', 'Domain'] @@ -20,6 +21,8 @@ def __init__(__self__, *, default_encryption_key: Optional[pulumi.Input[str]] = None, default_expiration_days: Optional[pulumi.Input[int]] = None, domain_name: Optional[pulumi.Input[str]] = None, + matching: Optional[pulumi.Input['DomainMatchingArgs']] = None, + rule_based_matching: Optional[pulumi.Input['DomainRuleBasedMatchingArgs']] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input['DomainTagArgs']]]] = None): """ The set of arguments for constructing a Domain resource. @@ -35,6 +38,8 @@ def __init__(__self__, *, default_encryption_key=default_encryption_key, default_expiration_days=default_expiration_days, domain_name=domain_name, + matching=matching, + rule_based_matching=rule_based_matching, tags=tags, ) @staticmethod @@ -44,6 +49,8 @@ def _configure( default_encryption_key: Optional[pulumi.Input[str]] = None, default_expiration_days: Optional[pulumi.Input[int]] = None, domain_name: Optional[pulumi.Input[str]] = None, + matching: Optional[pulumi.Input['DomainMatchingArgs']] = None, + rule_based_matching: Optional[pulumi.Input['DomainRuleBasedMatchingArgs']] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input['DomainTagArgs']]]] = None, opts: Optional[pulumi.ResourceOptions]=None): if dead_letter_queue_url is not None: @@ -54,6 +61,10 @@ def _configure( _setter("default_expiration_days", default_expiration_days) if domain_name is not None: _setter("domain_name", domain_name) + if matching is not None: + _setter("matching", matching) + if rule_based_matching is not None: + _setter("rule_based_matching", rule_based_matching) if tags is not None: _setter("tags", tags) @@ -105,6 +116,24 @@ def domain_name(self) -> Optional[pulumi.Input[str]]: def domain_name(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "domain_name", value) + @property + @pulumi.getter + def matching(self) -> Optional[pulumi.Input['DomainMatchingArgs']]: + return pulumi.get(self, "matching") + + @matching.setter + def matching(self, value: Optional[pulumi.Input['DomainMatchingArgs']]): + pulumi.set(self, "matching", value) + + @property + @pulumi.getter(name="ruleBasedMatching") + def rule_based_matching(self) -> Optional[pulumi.Input['DomainRuleBasedMatchingArgs']]: + return pulumi.get(self, "rule_based_matching") + + @rule_based_matching.setter + def rule_based_matching(self, value: Optional[pulumi.Input['DomainRuleBasedMatchingArgs']]): + pulumi.set(self, "rule_based_matching", value) + @property @pulumi.getter def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['DomainTagArgs']]]]: @@ -127,6 +156,8 @@ def __init__(__self__, default_encryption_key: Optional[pulumi.Input[str]] = None, default_expiration_days: Optional[pulumi.Input[int]] = None, domain_name: Optional[pulumi.Input[str]] = None, + matching: Optional[pulumi.Input[pulumi.InputType['DomainMatchingArgs']]] = None, + rule_based_matching: Optional[pulumi.Input[pulumi.InputType['DomainRuleBasedMatchingArgs']]] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['DomainTagArgs']]]]] = None, __props__=None): """ @@ -172,6 +203,8 @@ def _internal_init(__self__, default_encryption_key: Optional[pulumi.Input[str]] = None, default_expiration_days: Optional[pulumi.Input[int]] = None, domain_name: Optional[pulumi.Input[str]] = None, + matching: Optional[pulumi.Input[pulumi.InputType['DomainMatchingArgs']]] = None, + rule_based_matching: Optional[pulumi.Input[pulumi.InputType['DomainRuleBasedMatchingArgs']]] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['DomainTagArgs']]]]] = None, __props__=None): opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) @@ -186,9 +219,22 @@ def _internal_init(__self__, __props__.__dict__["default_encryption_key"] = default_encryption_key __props__.__dict__["default_expiration_days"] = default_expiration_days __props__.__dict__["domain_name"] = domain_name + if matching is not None and not isinstance(matching, DomainMatchingArgs): + matching = matching or {} + def _setter(key, value): + matching[key] = value + DomainMatchingArgs._configure(_setter, **matching) + __props__.__dict__["matching"] = matching + if rule_based_matching is not None and not isinstance(rule_based_matching, DomainRuleBasedMatchingArgs): + rule_based_matching = rule_based_matching or {} + def _setter(key, value): + rule_based_matching[key] = value + DomainRuleBasedMatchingArgs._configure(_setter, **rule_based_matching) + __props__.__dict__["rule_based_matching"] = rule_based_matching __props__.__dict__["tags"] = tags __props__.__dict__["created_at"] = None __props__.__dict__["last_updated_at"] = None + __props__.__dict__["stats"] = None replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["domain_name"]) opts = pulumi.ResourceOptions.merge(opts, replace_on_changes) super(Domain, __self__).__init__( @@ -219,6 +265,9 @@ def get(resource_name: str, __props__.__dict__["default_expiration_days"] = None __props__.__dict__["domain_name"] = None __props__.__dict__["last_updated_at"] = None + __props__.__dict__["matching"] = None + __props__.__dict__["rule_based_matching"] = None + __props__.__dict__["stats"] = None __props__.__dict__["tags"] = None return Domain(resource_name, opts=opts, __props__=__props__) @@ -270,6 +319,21 @@ def last_updated_at(self) -> pulumi.Output[str]: """ return pulumi.get(self, "last_updated_at") + @property + @pulumi.getter + def matching(self) -> pulumi.Output[Optional['outputs.DomainMatching']]: + return pulumi.get(self, "matching") + + @property + @pulumi.getter(name="ruleBasedMatching") + def rule_based_matching(self) -> pulumi.Output[Optional['outputs.DomainRuleBasedMatching']]: + return pulumi.get(self, "rule_based_matching") + + @property + @pulumi.getter + def stats(self) -> pulumi.Output['outputs.DomainStats']: + return pulumi.get(self, "stats") + @property @pulumi.getter def tags(self) -> pulumi.Output[Optional[Sequence['outputs.DomainTag']]]: diff --git a/sdk/python/pulumi_aws_native/customerprofiles/get_domain.py b/sdk/python/pulumi_aws_native/customerprofiles/get_domain.py index c9fc2960e5..82fba05c31 100644 --- a/sdk/python/pulumi_aws_native/customerprofiles/get_domain.py +++ b/sdk/python/pulumi_aws_native/customerprofiles/get_domain.py @@ -9,6 +9,7 @@ from typing import Any, Callable, Mapping, Optional, Sequence, Union, overload from .. import _utilities from . import outputs +from ._enums import * __all__ = [ 'GetDomainResult', @@ -19,7 +20,7 @@ @pulumi.output_type class GetDomainResult: - def __init__(__self__, created_at=None, dead_letter_queue_url=None, default_encryption_key=None, default_expiration_days=None, last_updated_at=None, tags=None): + def __init__(__self__, created_at=None, dead_letter_queue_url=None, default_encryption_key=None, default_expiration_days=None, last_updated_at=None, matching=None, rule_based_matching=None, stats=None, tags=None): if created_at and not isinstance(created_at, str): raise TypeError("Expected argument 'created_at' to be a str") pulumi.set(__self__, "created_at", created_at) @@ -35,6 +36,15 @@ def __init__(__self__, created_at=None, dead_letter_queue_url=None, default_encr if last_updated_at and not isinstance(last_updated_at, str): raise TypeError("Expected argument 'last_updated_at' to be a str") pulumi.set(__self__, "last_updated_at", last_updated_at) + if matching and not isinstance(matching, dict): + raise TypeError("Expected argument 'matching' to be a dict") + pulumi.set(__self__, "matching", matching) + if rule_based_matching and not isinstance(rule_based_matching, dict): + raise TypeError("Expected argument 'rule_based_matching' to be a dict") + pulumi.set(__self__, "rule_based_matching", rule_based_matching) + if stats and not isinstance(stats, dict): + raise TypeError("Expected argument 'stats' to be a dict") + pulumi.set(__self__, "stats", stats) if tags and not isinstance(tags, list): raise TypeError("Expected argument 'tags' to be a list") pulumi.set(__self__, "tags", tags) @@ -79,6 +89,21 @@ def last_updated_at(self) -> Optional[str]: """ return pulumi.get(self, "last_updated_at") + @property + @pulumi.getter + def matching(self) -> Optional['outputs.DomainMatching']: + return pulumi.get(self, "matching") + + @property + @pulumi.getter(name="ruleBasedMatching") + def rule_based_matching(self) -> Optional['outputs.DomainRuleBasedMatching']: + return pulumi.get(self, "rule_based_matching") + + @property + @pulumi.getter + def stats(self) -> Optional['outputs.DomainStats']: + return pulumi.get(self, "stats") + @property @pulumi.getter def tags(self) -> Optional[Sequence['outputs.DomainTag']]: @@ -99,6 +124,9 @@ def __await__(self): default_encryption_key=self.default_encryption_key, default_expiration_days=self.default_expiration_days, last_updated_at=self.last_updated_at, + matching=self.matching, + rule_based_matching=self.rule_based_matching, + stats=self.stats, tags=self.tags) @@ -121,6 +149,9 @@ def get_domain(domain_name: Optional[str] = None, default_encryption_key=pulumi.get(__ret__, 'default_encryption_key'), default_expiration_days=pulumi.get(__ret__, 'default_expiration_days'), last_updated_at=pulumi.get(__ret__, 'last_updated_at'), + matching=pulumi.get(__ret__, 'matching'), + rule_based_matching=pulumi.get(__ret__, 'rule_based_matching'), + stats=pulumi.get(__ret__, 'stats'), tags=pulumi.get(__ret__, 'tags')) diff --git a/sdk/python/pulumi_aws_native/customerprofiles/outputs.py b/sdk/python/pulumi_aws_native/customerprofiles/outputs.py index 0a90672449..415f0e1a96 100644 --- a/sdk/python/pulumi_aws_native/customerprofiles/outputs.py +++ b/sdk/python/pulumi_aws_native/customerprofiles/outputs.py @@ -19,6 +19,17 @@ 'CalculatedAttributeDefinitionTag', 'CalculatedAttributeDefinitionThreshold', 'DestinationDetailsProperties', + 'DomainAttributeTypesSelector', + 'DomainAutoMerging', + 'DomainConflictResolution', + 'DomainConsolidation', + 'DomainExportingConfig', + 'DomainJobSchedule', + 'DomainMatching', + 'DomainMatchingRule', + 'DomainRuleBasedMatching', + 'DomainS3ExportingConfig', + 'DomainStats', 'DomainTag', 'EventStreamTag', 'IntegrationConnectorOperator', @@ -325,6 +336,812 @@ def uri(self) -> str: return pulumi.get(self, "uri") +@pulumi.output_type +class DomainAttributeTypesSelector(dict): + """ + Configures information about the AttributeTypesSelector where the rule-based identity resolution uses to match profiles. + """ + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "attributeMatchingModel": + suggest = "attribute_matching_model" + elif key == "emailAddress": + suggest = "email_address" + elif key == "phoneNumber": + suggest = "phone_number" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in DomainAttributeTypesSelector. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + DomainAttributeTypesSelector.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + DomainAttributeTypesSelector.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + attribute_matching_model: 'DomainAttributeTypesSelectorAttributeMatchingModel', + address: Optional[Sequence[str]] = None, + email_address: Optional[Sequence[str]] = None, + phone_number: Optional[Sequence[str]] = None): + """ + Configures information about the AttributeTypesSelector where the rule-based identity resolution uses to match profiles. + :param 'DomainAttributeTypesSelectorAttributeMatchingModel' attribute_matching_model: Configures the AttributeMatchingModel, you can either choose ONE_TO_ONE or MANY_TO_MANY. + :param Sequence[str] address: The Address type. You can choose from Address, BusinessAddress, MaillingAddress, and ShippingAddress. You only can use the Address type in the MatchingRule. For example, if you want to match profile based on BusinessAddress.City or MaillingAddress.City, you need to choose the BusinessAddress and the MaillingAddress to represent the Address type and specify the Address.City on the matching rule. + :param Sequence[str] email_address: The Email type. You can choose from EmailAddress, BusinessEmailAddress and PersonalEmailAddress. You only can use the EmailAddress type in the MatchingRule. For example, if you want to match profile based on PersonalEmailAddress or BusinessEmailAddress, you need to choose the PersonalEmailAddress and the BusinessEmailAddress to represent the EmailAddress type and only specify the EmailAddress on the matching rule. + :param Sequence[str] phone_number: The PhoneNumber type. You can choose from PhoneNumber, HomePhoneNumber, and MobilePhoneNumber. You only can use the PhoneNumber type in the MatchingRule. For example, if you want to match a profile based on Phone or HomePhone, you need to choose the Phone and the HomePhone to represent the PhoneNumber type and only specify the PhoneNumber on the matching rule. + """ + DomainAttributeTypesSelector._configure( + lambda key, value: pulumi.set(__self__, key, value), + attribute_matching_model=attribute_matching_model, + address=address, + email_address=email_address, + phone_number=phone_number, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + attribute_matching_model: 'DomainAttributeTypesSelectorAttributeMatchingModel', + address: Optional[Sequence[str]] = None, + email_address: Optional[Sequence[str]] = None, + phone_number: Optional[Sequence[str]] = None, + opts: Optional[pulumi.ResourceOptions]=None): + _setter("attribute_matching_model", attribute_matching_model) + if address is not None: + _setter("address", address) + if email_address is not None: + _setter("email_address", email_address) + if phone_number is not None: + _setter("phone_number", phone_number) + + @property + @pulumi.getter(name="attributeMatchingModel") + def attribute_matching_model(self) -> 'DomainAttributeTypesSelectorAttributeMatchingModel': + """ + Configures the AttributeMatchingModel, you can either choose ONE_TO_ONE or MANY_TO_MANY. + """ + return pulumi.get(self, "attribute_matching_model") + + @property + @pulumi.getter + def address(self) -> Optional[Sequence[str]]: + """ + The Address type. You can choose from Address, BusinessAddress, MaillingAddress, and ShippingAddress. You only can use the Address type in the MatchingRule. For example, if you want to match profile based on BusinessAddress.City or MaillingAddress.City, you need to choose the BusinessAddress and the MaillingAddress to represent the Address type and specify the Address.City on the matching rule. + """ + return pulumi.get(self, "address") + + @property + @pulumi.getter(name="emailAddress") + def email_address(self) -> Optional[Sequence[str]]: + """ + The Email type. You can choose from EmailAddress, BusinessEmailAddress and PersonalEmailAddress. You only can use the EmailAddress type in the MatchingRule. For example, if you want to match profile based on PersonalEmailAddress or BusinessEmailAddress, you need to choose the PersonalEmailAddress and the BusinessEmailAddress to represent the EmailAddress type and only specify the EmailAddress on the matching rule. + """ + return pulumi.get(self, "email_address") + + @property + @pulumi.getter(name="phoneNumber") + def phone_number(self) -> Optional[Sequence[str]]: + """ + The PhoneNumber type. You can choose from PhoneNumber, HomePhoneNumber, and MobilePhoneNumber. You only can use the PhoneNumber type in the MatchingRule. For example, if you want to match a profile based on Phone or HomePhone, you need to choose the Phone and the HomePhone to represent the PhoneNumber type and only specify the PhoneNumber on the matching rule. + """ + return pulumi.get(self, "phone_number") + + +@pulumi.output_type +class DomainAutoMerging(dict): + """ + Configuration information about the auto-merging process. + """ + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "conflictResolution": + suggest = "conflict_resolution" + elif key == "minAllowedConfidenceScoreForMerging": + suggest = "min_allowed_confidence_score_for_merging" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in DomainAutoMerging. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + DomainAutoMerging.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + DomainAutoMerging.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + enabled: bool, + conflict_resolution: Optional['outputs.DomainConflictResolution'] = None, + consolidation: Optional['outputs.DomainConsolidation'] = None, + min_allowed_confidence_score_for_merging: Optional[float] = None): + """ + Configuration information about the auto-merging process. + :param bool enabled: The flag that enables the auto-merging of duplicate profiles. + :param float min_allowed_confidence_score_for_merging: A number between 0 and 1 that represents the minimum confidence score required for profiles within a matching group to be merged during the auto-merge process. A higher score means higher similarity required to merge profiles. + """ + DomainAutoMerging._configure( + lambda key, value: pulumi.set(__self__, key, value), + enabled=enabled, + conflict_resolution=conflict_resolution, + consolidation=consolidation, + min_allowed_confidence_score_for_merging=min_allowed_confidence_score_for_merging, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + enabled: bool, + conflict_resolution: Optional['outputs.DomainConflictResolution'] = None, + consolidation: Optional['outputs.DomainConsolidation'] = None, + min_allowed_confidence_score_for_merging: Optional[float] = None, + opts: Optional[pulumi.ResourceOptions]=None): + _setter("enabled", enabled) + if conflict_resolution is not None: + _setter("conflict_resolution", conflict_resolution) + if consolidation is not None: + _setter("consolidation", consolidation) + if min_allowed_confidence_score_for_merging is not None: + _setter("min_allowed_confidence_score_for_merging", min_allowed_confidence_score_for_merging) + + @property + @pulumi.getter + def enabled(self) -> bool: + """ + The flag that enables the auto-merging of duplicate profiles. + """ + return pulumi.get(self, "enabled") + + @property + @pulumi.getter(name="conflictResolution") + def conflict_resolution(self) -> Optional['outputs.DomainConflictResolution']: + return pulumi.get(self, "conflict_resolution") + + @property + @pulumi.getter + def consolidation(self) -> Optional['outputs.DomainConsolidation']: + return pulumi.get(self, "consolidation") + + @property + @pulumi.getter(name="minAllowedConfidenceScoreForMerging") + def min_allowed_confidence_score_for_merging(self) -> Optional[float]: + """ + A number between 0 and 1 that represents the minimum confidence score required for profiles within a matching group to be merged during the auto-merge process. A higher score means higher similarity required to merge profiles. + """ + return pulumi.get(self, "min_allowed_confidence_score_for_merging") + + +@pulumi.output_type +class DomainConflictResolution(dict): + """ + How the auto-merging process should resolve conflicts between different profiles. For example, if Profile A and Profile B have the same FirstName and LastName (and that is the matching criteria), which EmailAddress should be used? + """ + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "conflictResolvingModel": + suggest = "conflict_resolving_model" + elif key == "sourceName": + suggest = "source_name" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in DomainConflictResolution. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + DomainConflictResolution.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + DomainConflictResolution.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + conflict_resolving_model: 'DomainConflictResolutionConflictResolvingModel', + source_name: Optional[str] = None): + """ + How the auto-merging process should resolve conflicts between different profiles. For example, if Profile A and Profile B have the same FirstName and LastName (and that is the matching criteria), which EmailAddress should be used? + :param 'DomainConflictResolutionConflictResolvingModel' conflict_resolving_model: How the auto-merging process should resolve conflicts between different profiles. + :param str source_name: The ObjectType name that is used to resolve profile merging conflicts when choosing SOURCE as the ConflictResolvingModel. + """ + DomainConflictResolution._configure( + lambda key, value: pulumi.set(__self__, key, value), + conflict_resolving_model=conflict_resolving_model, + source_name=source_name, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + conflict_resolving_model: 'DomainConflictResolutionConflictResolvingModel', + source_name: Optional[str] = None, + opts: Optional[pulumi.ResourceOptions]=None): + _setter("conflict_resolving_model", conflict_resolving_model) + if source_name is not None: + _setter("source_name", source_name) + + @property + @pulumi.getter(name="conflictResolvingModel") + def conflict_resolving_model(self) -> 'DomainConflictResolutionConflictResolvingModel': + """ + How the auto-merging process should resolve conflicts between different profiles. + """ + return pulumi.get(self, "conflict_resolving_model") + + @property + @pulumi.getter(name="sourceName") + def source_name(self) -> Optional[str]: + """ + The ObjectType name that is used to resolve profile merging conflicts when choosing SOURCE as the ConflictResolvingModel. + """ + return pulumi.get(self, "source_name") + + +@pulumi.output_type +class DomainConsolidation(dict): + """ + A list of matching attributes that represent matching criteria. If two profiles meet at least one of the requirements in the matching attributes list, they will be merged. + """ + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "matchingAttributesList": + suggest = "matching_attributes_list" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in DomainConsolidation. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + DomainConsolidation.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + DomainConsolidation.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + matching_attributes_list: Sequence[Sequence[str]]): + """ + A list of matching attributes that represent matching criteria. If two profiles meet at least one of the requirements in the matching attributes list, they will be merged. + :param Sequence[Sequence[str]] matching_attributes_list: A list of matching criteria. + """ + DomainConsolidation._configure( + lambda key, value: pulumi.set(__self__, key, value), + matching_attributes_list=matching_attributes_list, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + matching_attributes_list: Sequence[Sequence[str]], + opts: Optional[pulumi.ResourceOptions]=None): + _setter("matching_attributes_list", matching_attributes_list) + + @property + @pulumi.getter(name="matchingAttributesList") + def matching_attributes_list(self) -> Sequence[Sequence[str]]: + """ + A list of matching criteria. + """ + return pulumi.get(self, "matching_attributes_list") + + +@pulumi.output_type +class DomainExportingConfig(dict): + """ + Configuration information for exporting Identity Resolution results, for example, to an S3 bucket. + """ + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "s3Exporting": + suggest = "s3_exporting" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in DomainExportingConfig. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + DomainExportingConfig.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + DomainExportingConfig.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + s3_exporting: Optional['outputs.DomainS3ExportingConfig'] = None): + """ + Configuration information for exporting Identity Resolution results, for example, to an S3 bucket. + """ + DomainExportingConfig._configure( + lambda key, value: pulumi.set(__self__, key, value), + s3_exporting=s3_exporting, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + s3_exporting: Optional['outputs.DomainS3ExportingConfig'] = None, + opts: Optional[pulumi.ResourceOptions]=None): + if s3_exporting is not None: + _setter("s3_exporting", s3_exporting) + + @property + @pulumi.getter(name="s3Exporting") + def s3_exporting(self) -> Optional['outputs.DomainS3ExportingConfig']: + return pulumi.get(self, "s3_exporting") + + +@pulumi.output_type +class DomainJobSchedule(dict): + """ + The day and time when do you want to start the Identity Resolution Job every week. + """ + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "dayOfTheWeek": + suggest = "day_of_the_week" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in DomainJobSchedule. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + DomainJobSchedule.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + DomainJobSchedule.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + day_of_the_week: 'DomainJobScheduleDayOfTheWeek', + time: str): + """ + The day and time when do you want to start the Identity Resolution Job every week. + :param 'DomainJobScheduleDayOfTheWeek' day_of_the_week: The day when the Identity Resolution Job should run every week. + :param str time: The time when the Identity Resolution Job should run every week. + """ + DomainJobSchedule._configure( + lambda key, value: pulumi.set(__self__, key, value), + day_of_the_week=day_of_the_week, + time=time, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + day_of_the_week: 'DomainJobScheduleDayOfTheWeek', + time: str, + opts: Optional[pulumi.ResourceOptions]=None): + _setter("day_of_the_week", day_of_the_week) + _setter("time", time) + + @property + @pulumi.getter(name="dayOfTheWeek") + def day_of_the_week(self) -> 'DomainJobScheduleDayOfTheWeek': + """ + The day when the Identity Resolution Job should run every week. + """ + return pulumi.get(self, "day_of_the_week") + + @property + @pulumi.getter + def time(self) -> str: + """ + The time when the Identity Resolution Job should run every week. + """ + return pulumi.get(self, "time") + + +@pulumi.output_type +class DomainMatching(dict): + """ + The process of matching duplicate profiles. If Matching = true, Amazon Connect Customer Profiles starts a weekly batch process called Identity Resolution Job. If you do not specify a date and time for Identity Resolution Job to run, by default it runs every Saturday at 12AM UTC to detect duplicate profiles in your domains. After the Identity Resolution Job completes, use the GetMatches API to return and review the results. Or, if you have configured ExportingConfig in the MatchingRequest, you can download the results from S3. + """ + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "autoMerging": + suggest = "auto_merging" + elif key == "exportingConfig": + suggest = "exporting_config" + elif key == "jobSchedule": + suggest = "job_schedule" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in DomainMatching. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + DomainMatching.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + DomainMatching.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + enabled: bool, + auto_merging: Optional['outputs.DomainAutoMerging'] = None, + exporting_config: Optional['outputs.DomainExportingConfig'] = None, + job_schedule: Optional['outputs.DomainJobSchedule'] = None): + """ + The process of matching duplicate profiles. If Matching = true, Amazon Connect Customer Profiles starts a weekly batch process called Identity Resolution Job. If you do not specify a date and time for Identity Resolution Job to run, by default it runs every Saturday at 12AM UTC to detect duplicate profiles in your domains. After the Identity Resolution Job completes, use the GetMatches API to return and review the results. Or, if you have configured ExportingConfig in the MatchingRequest, you can download the results from S3. + :param bool enabled: The flag that enables the matching process of duplicate profiles. + """ + DomainMatching._configure( + lambda key, value: pulumi.set(__self__, key, value), + enabled=enabled, + auto_merging=auto_merging, + exporting_config=exporting_config, + job_schedule=job_schedule, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + enabled: bool, + auto_merging: Optional['outputs.DomainAutoMerging'] = None, + exporting_config: Optional['outputs.DomainExportingConfig'] = None, + job_schedule: Optional['outputs.DomainJobSchedule'] = None, + opts: Optional[pulumi.ResourceOptions]=None): + _setter("enabled", enabled) + if auto_merging is not None: + _setter("auto_merging", auto_merging) + if exporting_config is not None: + _setter("exporting_config", exporting_config) + if job_schedule is not None: + _setter("job_schedule", job_schedule) + + @property + @pulumi.getter + def enabled(self) -> bool: + """ + The flag that enables the matching process of duplicate profiles. + """ + return pulumi.get(self, "enabled") + + @property + @pulumi.getter(name="autoMerging") + def auto_merging(self) -> Optional['outputs.DomainAutoMerging']: + return pulumi.get(self, "auto_merging") + + @property + @pulumi.getter(name="exportingConfig") + def exporting_config(self) -> Optional['outputs.DomainExportingConfig']: + return pulumi.get(self, "exporting_config") + + @property + @pulumi.getter(name="jobSchedule") + def job_schedule(self) -> Optional['outputs.DomainJobSchedule']: + return pulumi.get(self, "job_schedule") + + +@pulumi.output_type +class DomainMatchingRule(dict): + """ + Specifies how does the rule-based matching process should match profiles. + """ + def __init__(__self__, *, + rule: Sequence[str]): + """ + Specifies how does the rule-based matching process should match profiles. + """ + DomainMatchingRule._configure( + lambda key, value: pulumi.set(__self__, key, value), + rule=rule, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + rule: Sequence[str], + opts: Optional[pulumi.ResourceOptions]=None): + _setter("rule", rule) + + @property + @pulumi.getter + def rule(self) -> Sequence[str]: + return pulumi.get(self, "rule") + + +@pulumi.output_type +class DomainRuleBasedMatching(dict): + """ + The process of matching duplicate profiles using the Rule-Based matching. If RuleBasedMatching = true, Amazon Connect Customer Profiles will start to match and merge your profiles according to your configuration in the RuleBasedMatchingRequest. You can use the ListRuleBasedMatches and GetSimilarProfiles API to return and review the results. Also, if you have configured ExportingConfig in the RuleBasedMatchingRequest, you can download the results from S3. + """ + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "attributeTypesSelector": + suggest = "attribute_types_selector" + elif key == "conflictResolution": + suggest = "conflict_resolution" + elif key == "exportingConfig": + suggest = "exporting_config" + elif key == "matchingRules": + suggest = "matching_rules" + elif key == "maxAllowedRuleLevelForMatching": + suggest = "max_allowed_rule_level_for_matching" + elif key == "maxAllowedRuleLevelForMerging": + suggest = "max_allowed_rule_level_for_merging" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in DomainRuleBasedMatching. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + DomainRuleBasedMatching.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + DomainRuleBasedMatching.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + enabled: bool, + attribute_types_selector: Optional['outputs.DomainAttributeTypesSelector'] = None, + conflict_resolution: Optional['outputs.DomainConflictResolution'] = None, + exporting_config: Optional['outputs.DomainExportingConfig'] = None, + matching_rules: Optional[Sequence['outputs.DomainMatchingRule']] = None, + max_allowed_rule_level_for_matching: Optional[int] = None, + max_allowed_rule_level_for_merging: Optional[int] = None, + status: Optional['DomainRuleBasedMatchingStatus'] = None): + """ + The process of matching duplicate profiles using the Rule-Based matching. If RuleBasedMatching = true, Amazon Connect Customer Profiles will start to match and merge your profiles according to your configuration in the RuleBasedMatchingRequest. You can use the ListRuleBasedMatches and GetSimilarProfiles API to return and review the results. Also, if you have configured ExportingConfig in the RuleBasedMatchingRequest, you can download the results from S3. + :param bool enabled: The flag that enables the rule-based matching process of duplicate profiles. + :param Sequence['DomainMatchingRule'] matching_rules: Configures how the rule-based matching process should match profiles. You can have up to 15 MatchingRule in the MatchingRules. + :param int max_allowed_rule_level_for_matching: Indicates the maximum allowed rule level for matching. + :param int max_allowed_rule_level_for_merging: Indicates the maximum allowed rule level for merging. + """ + DomainRuleBasedMatching._configure( + lambda key, value: pulumi.set(__self__, key, value), + enabled=enabled, + attribute_types_selector=attribute_types_selector, + conflict_resolution=conflict_resolution, + exporting_config=exporting_config, + matching_rules=matching_rules, + max_allowed_rule_level_for_matching=max_allowed_rule_level_for_matching, + max_allowed_rule_level_for_merging=max_allowed_rule_level_for_merging, + status=status, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + enabled: bool, + attribute_types_selector: Optional['outputs.DomainAttributeTypesSelector'] = None, + conflict_resolution: Optional['outputs.DomainConflictResolution'] = None, + exporting_config: Optional['outputs.DomainExportingConfig'] = None, + matching_rules: Optional[Sequence['outputs.DomainMatchingRule']] = None, + max_allowed_rule_level_for_matching: Optional[int] = None, + max_allowed_rule_level_for_merging: Optional[int] = None, + status: Optional['DomainRuleBasedMatchingStatus'] = None, + opts: Optional[pulumi.ResourceOptions]=None): + _setter("enabled", enabled) + if attribute_types_selector is not None: + _setter("attribute_types_selector", attribute_types_selector) + if conflict_resolution is not None: + _setter("conflict_resolution", conflict_resolution) + if exporting_config is not None: + _setter("exporting_config", exporting_config) + if matching_rules is not None: + _setter("matching_rules", matching_rules) + if max_allowed_rule_level_for_matching is not None: + _setter("max_allowed_rule_level_for_matching", max_allowed_rule_level_for_matching) + if max_allowed_rule_level_for_merging is not None: + _setter("max_allowed_rule_level_for_merging", max_allowed_rule_level_for_merging) + if status is not None: + _setter("status", status) + + @property + @pulumi.getter + def enabled(self) -> bool: + """ + The flag that enables the rule-based matching process of duplicate profiles. + """ + return pulumi.get(self, "enabled") + + @property + @pulumi.getter(name="attributeTypesSelector") + def attribute_types_selector(self) -> Optional['outputs.DomainAttributeTypesSelector']: + return pulumi.get(self, "attribute_types_selector") + + @property + @pulumi.getter(name="conflictResolution") + def conflict_resolution(self) -> Optional['outputs.DomainConflictResolution']: + return pulumi.get(self, "conflict_resolution") + + @property + @pulumi.getter(name="exportingConfig") + def exporting_config(self) -> Optional['outputs.DomainExportingConfig']: + return pulumi.get(self, "exporting_config") + + @property + @pulumi.getter(name="matchingRules") + def matching_rules(self) -> Optional[Sequence['outputs.DomainMatchingRule']]: + """ + Configures how the rule-based matching process should match profiles. You can have up to 15 MatchingRule in the MatchingRules. + """ + return pulumi.get(self, "matching_rules") + + @property + @pulumi.getter(name="maxAllowedRuleLevelForMatching") + def max_allowed_rule_level_for_matching(self) -> Optional[int]: + """ + Indicates the maximum allowed rule level for matching. + """ + return pulumi.get(self, "max_allowed_rule_level_for_matching") + + @property + @pulumi.getter(name="maxAllowedRuleLevelForMerging") + def max_allowed_rule_level_for_merging(self) -> Optional[int]: + """ + Indicates the maximum allowed rule level for merging. + """ + return pulumi.get(self, "max_allowed_rule_level_for_merging") + + @property + @pulumi.getter + def status(self) -> Optional['DomainRuleBasedMatchingStatus']: + return pulumi.get(self, "status") + + +@pulumi.output_type +class DomainS3ExportingConfig(dict): + """ + The S3 location where Identity Resolution Jobs write result files. + """ + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "s3BucketName": + suggest = "s3_bucket_name" + elif key == "s3KeyName": + suggest = "s3_key_name" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in DomainS3ExportingConfig. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + DomainS3ExportingConfig.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + DomainS3ExportingConfig.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + s3_bucket_name: str, + s3_key_name: Optional[str] = None): + """ + The S3 location where Identity Resolution Jobs write result files. + :param str s3_bucket_name: The name of the S3 bucket where Identity Resolution Jobs write result files. + :param str s3_key_name: The S3 key name of the location where Identity Resolution Jobs write result files. + """ + DomainS3ExportingConfig._configure( + lambda key, value: pulumi.set(__self__, key, value), + s3_bucket_name=s3_bucket_name, + s3_key_name=s3_key_name, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + s3_bucket_name: str, + s3_key_name: Optional[str] = None, + opts: Optional[pulumi.ResourceOptions]=None): + _setter("s3_bucket_name", s3_bucket_name) + if s3_key_name is not None: + _setter("s3_key_name", s3_key_name) + + @property + @pulumi.getter(name="s3BucketName") + def s3_bucket_name(self) -> str: + """ + The name of the S3 bucket where Identity Resolution Jobs write result files. + """ + return pulumi.get(self, "s3_bucket_name") + + @property + @pulumi.getter(name="s3KeyName") + def s3_key_name(self) -> Optional[str]: + """ + The S3 key name of the location where Identity Resolution Jobs write result files. + """ + return pulumi.get(self, "s3_key_name") + + +@pulumi.output_type +class DomainStats(dict): + """ + Usage-specific statistics about the domain. + """ + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "meteringProfileCount": + suggest = "metering_profile_count" + elif key == "objectCount": + suggest = "object_count" + elif key == "profileCount": + suggest = "profile_count" + elif key == "totalSize": + suggest = "total_size" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in DomainStats. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + DomainStats.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + DomainStats.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + metering_profile_count: Optional[float] = None, + object_count: Optional[float] = None, + profile_count: Optional[float] = None, + total_size: Optional[float] = None): + """ + Usage-specific statistics about the domain. + :param float metering_profile_count: The number of profiles that you are currently paying for in the domain. If you have more than 100 objects associated with a single profile, that profile counts as two profiles. If you have more than 200 objects, that profile counts as three, and so on. + :param float object_count: The total number of objects in domain. + :param float profile_count: The total number of profiles currently in the domain. + :param float total_size: The total size, in bytes, of all objects in the domain. + """ + DomainStats._configure( + lambda key, value: pulumi.set(__self__, key, value), + metering_profile_count=metering_profile_count, + object_count=object_count, + profile_count=profile_count, + total_size=total_size, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + metering_profile_count: Optional[float] = None, + object_count: Optional[float] = None, + profile_count: Optional[float] = None, + total_size: Optional[float] = None, + opts: Optional[pulumi.ResourceOptions]=None): + if metering_profile_count is not None: + _setter("metering_profile_count", metering_profile_count) + if object_count is not None: + _setter("object_count", object_count) + if profile_count is not None: + _setter("profile_count", profile_count) + if total_size is not None: + _setter("total_size", total_size) + + @property + @pulumi.getter(name="meteringProfileCount") + def metering_profile_count(self) -> Optional[float]: + """ + The number of profiles that you are currently paying for in the domain. If you have more than 100 objects associated with a single profile, that profile counts as two profiles. If you have more than 200 objects, that profile counts as three, and so on. + """ + return pulumi.get(self, "metering_profile_count") + + @property + @pulumi.getter(name="objectCount") + def object_count(self) -> Optional[float]: + """ + The total number of objects in domain. + """ + return pulumi.get(self, "object_count") + + @property + @pulumi.getter(name="profileCount") + def profile_count(self) -> Optional[float]: + """ + The total number of profiles currently in the domain. + """ + return pulumi.get(self, "profile_count") + + @property + @pulumi.getter(name="totalSize") + def total_size(self) -> Optional[float]: + """ + The total size, in bytes, of all objects in the domain. + """ + return pulumi.get(self, "total_size") + + @pulumi.output_type class DomainTag(dict): def __init__(__self__, *, diff --git a/sdk/python/pulumi_aws_native/ec2/get_subnet.py b/sdk/python/pulumi_aws_native/ec2/get_subnet.py index 024be83b62..2b46dc9833 100644 --- a/sdk/python/pulumi_aws_native/ec2/get_subnet.py +++ b/sdk/python/pulumi_aws_native/ec2/get_subnet.py @@ -19,19 +19,25 @@ @pulumi.output_type class GetSubnetResult: - def __init__(__self__, assign_ipv6_address_on_creation=None, enable_dns64=None, ipv6_cidr_block=None, ipv6_cidr_blocks=None, map_public_ip_on_launch=None, network_acl_association_id=None, private_dns_name_options_on_launch=None, subnet_id=None, tags=None): + def __init__(__self__, assign_ipv6_address_on_creation=None, enable_dns64=None, ipv4_netmask_length=None, ipv6_cidr_block=None, ipv6_cidr_blocks=None, ipv6_netmask_length=None, map_public_ip_on_launch=None, network_acl_association_id=None, private_dns_name_options_on_launch=None, subnet_id=None, tags=None): if assign_ipv6_address_on_creation and not isinstance(assign_ipv6_address_on_creation, bool): raise TypeError("Expected argument 'assign_ipv6_address_on_creation' to be a bool") pulumi.set(__self__, "assign_ipv6_address_on_creation", assign_ipv6_address_on_creation) if enable_dns64 and not isinstance(enable_dns64, bool): raise TypeError("Expected argument 'enable_dns64' to be a bool") pulumi.set(__self__, "enable_dns64", enable_dns64) + if ipv4_netmask_length and not isinstance(ipv4_netmask_length, int): + raise TypeError("Expected argument 'ipv4_netmask_length' to be a int") + pulumi.set(__self__, "ipv4_netmask_length", ipv4_netmask_length) if ipv6_cidr_block and not isinstance(ipv6_cidr_block, str): raise TypeError("Expected argument 'ipv6_cidr_block' to be a str") pulumi.set(__self__, "ipv6_cidr_block", ipv6_cidr_block) if ipv6_cidr_blocks and not isinstance(ipv6_cidr_blocks, list): raise TypeError("Expected argument 'ipv6_cidr_blocks' to be a list") pulumi.set(__self__, "ipv6_cidr_blocks", ipv6_cidr_blocks) + if ipv6_netmask_length and not isinstance(ipv6_netmask_length, int): + raise TypeError("Expected argument 'ipv6_netmask_length' to be a int") + pulumi.set(__self__, "ipv6_netmask_length", ipv6_netmask_length) if map_public_ip_on_launch and not isinstance(map_public_ip_on_launch, bool): raise TypeError("Expected argument 'map_public_ip_on_launch' to be a bool") pulumi.set(__self__, "map_public_ip_on_launch", map_public_ip_on_launch) @@ -58,6 +64,14 @@ def assign_ipv6_address_on_creation(self) -> Optional[bool]: def enable_dns64(self) -> Optional[bool]: return pulumi.get(self, "enable_dns64") + @property + @pulumi.getter(name="ipv4NetmaskLength") + def ipv4_netmask_length(self) -> Optional[int]: + """ + The netmask length of the IPv4 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool + """ + return pulumi.get(self, "ipv4_netmask_length") + @property @pulumi.getter(name="ipv6CidrBlock") def ipv6_cidr_block(self) -> Optional[str]: @@ -68,6 +82,14 @@ def ipv6_cidr_block(self) -> Optional[str]: def ipv6_cidr_blocks(self) -> Optional[Sequence[str]]: return pulumi.get(self, "ipv6_cidr_blocks") + @property + @pulumi.getter(name="ipv6NetmaskLength") + def ipv6_netmask_length(self) -> Optional[int]: + """ + The netmask length of the IPv6 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool + """ + return pulumi.get(self, "ipv6_netmask_length") + @property @pulumi.getter(name="mapPublicIpOnLaunch") def map_public_ip_on_launch(self) -> Optional[bool]: @@ -102,8 +124,10 @@ def __await__(self): return GetSubnetResult( assign_ipv6_address_on_creation=self.assign_ipv6_address_on_creation, enable_dns64=self.enable_dns64, + ipv4_netmask_length=self.ipv4_netmask_length, ipv6_cidr_block=self.ipv6_cidr_block, ipv6_cidr_blocks=self.ipv6_cidr_blocks, + ipv6_netmask_length=self.ipv6_netmask_length, map_public_ip_on_launch=self.map_public_ip_on_launch, network_acl_association_id=self.network_acl_association_id, private_dns_name_options_on_launch=self.private_dns_name_options_on_launch, @@ -124,8 +148,10 @@ def get_subnet(subnet_id: Optional[str] = None, return AwaitableGetSubnetResult( assign_ipv6_address_on_creation=pulumi.get(__ret__, 'assign_ipv6_address_on_creation'), enable_dns64=pulumi.get(__ret__, 'enable_dns64'), + ipv4_netmask_length=pulumi.get(__ret__, 'ipv4_netmask_length'), ipv6_cidr_block=pulumi.get(__ret__, 'ipv6_cidr_block'), ipv6_cidr_blocks=pulumi.get(__ret__, 'ipv6_cidr_blocks'), + ipv6_netmask_length=pulumi.get(__ret__, 'ipv6_netmask_length'), map_public_ip_on_launch=pulumi.get(__ret__, 'map_public_ip_on_launch'), network_acl_association_id=pulumi.get(__ret__, 'network_acl_association_id'), private_dns_name_options_on_launch=pulumi.get(__ret__, 'private_dns_name_options_on_launch'), diff --git a/sdk/python/pulumi_aws_native/ec2/subnet.py b/sdk/python/pulumi_aws_native/ec2/subnet.py index b66cf4e584..bb66115a07 100644 --- a/sdk/python/pulumi_aws_native/ec2/subnet.py +++ b/sdk/python/pulumi_aws_native/ec2/subnet.py @@ -22,14 +22,18 @@ def __init__(__self__, *, availability_zone_id: Optional[pulumi.Input[str]] = None, cidr_block: Optional[pulumi.Input[str]] = None, enable_dns64: Optional[pulumi.Input[bool]] = None, + ipv4_netmask_length: Optional[pulumi.Input[int]] = None, ipv6_cidr_block: Optional[pulumi.Input[str]] = None, ipv6_native: Optional[pulumi.Input[bool]] = None, + ipv6_netmask_length: Optional[pulumi.Input[int]] = None, map_public_ip_on_launch: Optional[pulumi.Input[bool]] = None, outpost_arn: Optional[pulumi.Input[str]] = None, private_dns_name_options_on_launch: Optional[pulumi.Input['PrivateDnsNameOptionsOnLaunchPropertiesArgs']] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input['SubnetTagArgs']]]] = None): """ The set of arguments for constructing a Subnet resource. + :param pulumi.Input[int] ipv4_netmask_length: The netmask length of the IPv4 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool + :param pulumi.Input[int] ipv6_netmask_length: The netmask length of the IPv6 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool """ SubnetArgs._configure( lambda key, value: pulumi.set(__self__, key, value), @@ -39,8 +43,10 @@ def __init__(__self__, *, availability_zone_id=availability_zone_id, cidr_block=cidr_block, enable_dns64=enable_dns64, + ipv4_netmask_length=ipv4_netmask_length, ipv6_cidr_block=ipv6_cidr_block, ipv6_native=ipv6_native, + ipv6_netmask_length=ipv6_netmask_length, map_public_ip_on_launch=map_public_ip_on_launch, outpost_arn=outpost_arn, private_dns_name_options_on_launch=private_dns_name_options_on_launch, @@ -55,8 +61,10 @@ def _configure( availability_zone_id: Optional[pulumi.Input[str]] = None, cidr_block: Optional[pulumi.Input[str]] = None, enable_dns64: Optional[pulumi.Input[bool]] = None, + ipv4_netmask_length: Optional[pulumi.Input[int]] = None, ipv6_cidr_block: Optional[pulumi.Input[str]] = None, ipv6_native: Optional[pulumi.Input[bool]] = None, + ipv6_netmask_length: Optional[pulumi.Input[int]] = None, map_public_ip_on_launch: Optional[pulumi.Input[bool]] = None, outpost_arn: Optional[pulumi.Input[str]] = None, private_dns_name_options_on_launch: Optional[pulumi.Input['PrivateDnsNameOptionsOnLaunchPropertiesArgs']] = None, @@ -73,10 +81,14 @@ def _configure( _setter("cidr_block", cidr_block) if enable_dns64 is not None: _setter("enable_dns64", enable_dns64) + if ipv4_netmask_length is not None: + _setter("ipv4_netmask_length", ipv4_netmask_length) if ipv6_cidr_block is not None: _setter("ipv6_cidr_block", ipv6_cidr_block) if ipv6_native is not None: _setter("ipv6_native", ipv6_native) + if ipv6_netmask_length is not None: + _setter("ipv6_netmask_length", ipv6_netmask_length) if map_public_ip_on_launch is not None: _setter("map_public_ip_on_launch", map_public_ip_on_launch) if outpost_arn is not None: @@ -140,6 +152,18 @@ def enable_dns64(self) -> Optional[pulumi.Input[bool]]: def enable_dns64(self, value: Optional[pulumi.Input[bool]]): pulumi.set(self, "enable_dns64", value) + @property + @pulumi.getter(name="ipv4NetmaskLength") + def ipv4_netmask_length(self) -> Optional[pulumi.Input[int]]: + """ + The netmask length of the IPv4 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool + """ + return pulumi.get(self, "ipv4_netmask_length") + + @ipv4_netmask_length.setter + def ipv4_netmask_length(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "ipv4_netmask_length", value) + @property @pulumi.getter(name="ipv6CidrBlock") def ipv6_cidr_block(self) -> Optional[pulumi.Input[str]]: @@ -158,6 +182,18 @@ def ipv6_native(self) -> Optional[pulumi.Input[bool]]: def ipv6_native(self, value: Optional[pulumi.Input[bool]]): pulumi.set(self, "ipv6_native", value) + @property + @pulumi.getter(name="ipv6NetmaskLength") + def ipv6_netmask_length(self) -> Optional[pulumi.Input[int]]: + """ + The netmask length of the IPv6 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool + """ + return pulumi.get(self, "ipv6_netmask_length") + + @ipv6_netmask_length.setter + def ipv6_netmask_length(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "ipv6_netmask_length", value) + @property @pulumi.getter(name="mapPublicIpOnLaunch") def map_public_ip_on_launch(self) -> Optional[pulumi.Input[bool]]: @@ -205,8 +241,10 @@ def __init__(__self__, availability_zone_id: Optional[pulumi.Input[str]] = None, cidr_block: Optional[pulumi.Input[str]] = None, enable_dns64: Optional[pulumi.Input[bool]] = None, + ipv4_netmask_length: Optional[pulumi.Input[int]] = None, ipv6_cidr_block: Optional[pulumi.Input[str]] = None, ipv6_native: Optional[pulumi.Input[bool]] = None, + ipv6_netmask_length: Optional[pulumi.Input[int]] = None, map_public_ip_on_launch: Optional[pulumi.Input[bool]] = None, outpost_arn: Optional[pulumi.Input[str]] = None, private_dns_name_options_on_launch: Optional[pulumi.Input[pulumi.InputType['PrivateDnsNameOptionsOnLaunchPropertiesArgs']]] = None, @@ -218,6 +256,8 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[int] ipv4_netmask_length: The netmask length of the IPv4 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool + :param pulumi.Input[int] ipv6_netmask_length: The netmask length of the IPv6 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool """ ... @overload @@ -252,8 +292,10 @@ def _internal_init(__self__, availability_zone_id: Optional[pulumi.Input[str]] = None, cidr_block: Optional[pulumi.Input[str]] = None, enable_dns64: Optional[pulumi.Input[bool]] = None, + ipv4_netmask_length: Optional[pulumi.Input[int]] = None, ipv6_cidr_block: Optional[pulumi.Input[str]] = None, ipv6_native: Optional[pulumi.Input[bool]] = None, + ipv6_netmask_length: Optional[pulumi.Input[int]] = None, map_public_ip_on_launch: Optional[pulumi.Input[bool]] = None, outpost_arn: Optional[pulumi.Input[str]] = None, private_dns_name_options_on_launch: Optional[pulumi.Input[pulumi.InputType['PrivateDnsNameOptionsOnLaunchPropertiesArgs']]] = None, @@ -273,8 +315,10 @@ def _internal_init(__self__, __props__.__dict__["availability_zone_id"] = availability_zone_id __props__.__dict__["cidr_block"] = cidr_block __props__.__dict__["enable_dns64"] = enable_dns64 + __props__.__dict__["ipv4_netmask_length"] = ipv4_netmask_length __props__.__dict__["ipv6_cidr_block"] = ipv6_cidr_block __props__.__dict__["ipv6_native"] = ipv6_native + __props__.__dict__["ipv6_netmask_length"] = ipv6_netmask_length __props__.__dict__["map_public_ip_on_launch"] = map_public_ip_on_launch __props__.__dict__["outpost_arn"] = outpost_arn if private_dns_name_options_on_launch is not None and not isinstance(private_dns_name_options_on_launch, PrivateDnsNameOptionsOnLaunchPropertiesArgs): @@ -319,9 +363,11 @@ def get(resource_name: str, __props__.__dict__["availability_zone_id"] = None __props__.__dict__["cidr_block"] = None __props__.__dict__["enable_dns64"] = None + __props__.__dict__["ipv4_netmask_length"] = None __props__.__dict__["ipv6_cidr_block"] = None __props__.__dict__["ipv6_cidr_blocks"] = None __props__.__dict__["ipv6_native"] = None + __props__.__dict__["ipv6_netmask_length"] = None __props__.__dict__["map_public_ip_on_launch"] = None __props__.__dict__["network_acl_association_id"] = None __props__.__dict__["outpost_arn"] = None @@ -356,6 +402,14 @@ def cidr_block(self) -> pulumi.Output[Optional[str]]: def enable_dns64(self) -> pulumi.Output[Optional[bool]]: return pulumi.get(self, "enable_dns64") + @property + @pulumi.getter(name="ipv4NetmaskLength") + def ipv4_netmask_length(self) -> pulumi.Output[Optional[int]]: + """ + The netmask length of the IPv4 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool + """ + return pulumi.get(self, "ipv4_netmask_length") + @property @pulumi.getter(name="ipv6CidrBlock") def ipv6_cidr_block(self) -> pulumi.Output[Optional[str]]: @@ -371,6 +425,14 @@ def ipv6_cidr_blocks(self) -> pulumi.Output[Sequence[str]]: def ipv6_native(self) -> pulumi.Output[Optional[bool]]: return pulumi.get(self, "ipv6_native") + @property + @pulumi.getter(name="ipv6NetmaskLength") + def ipv6_netmask_length(self) -> pulumi.Output[Optional[int]]: + """ + The netmask length of the IPv6 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool + """ + return pulumi.get(self, "ipv6_netmask_length") + @property @pulumi.getter(name="mapPublicIpOnLaunch") def map_public_ip_on_launch(self) -> pulumi.Output[Optional[bool]]: diff --git a/sdk/python/pulumi_aws_native/entityresolution/__init__.py b/sdk/python/pulumi_aws_native/entityresolution/__init__.py index 4b68c38217..784a360733 100644 --- a/sdk/python/pulumi_aws_native/entityresolution/__init__.py +++ b/sdk/python/pulumi_aws_native/entityresolution/__init__.py @@ -6,8 +6,10 @@ import typing # Export this package's modules as members: from ._enums import * +from .get_id_mapping_workflow import * from .get_matching_workflow import * from .get_schema_mapping import * +from .id_mapping_workflow import * from .matching_workflow import * from .schema_mapping import * from ._inputs import * diff --git a/sdk/python/pulumi_aws_native/entityresolution/_enums.py b/sdk/python/pulumi_aws_native/entityresolution/_enums.py index dc8ce0a611..d3ae5d3a3d 100644 --- a/sdk/python/pulumi_aws_native/entityresolution/_enums.py +++ b/sdk/python/pulumi_aws_native/entityresolution/_enums.py @@ -5,12 +5,17 @@ from enum import Enum __all__ = [ + 'IdMappingWorkflowIdMappingTechniquesIdMappingType', 'MatchingWorkflowResolutionTechniquesResolutionType', 'MatchingWorkflowRuleBasedPropertiesAttributeMatchingModel', 'SchemaMappingSchemaAttributeType', ] +class IdMappingWorkflowIdMappingTechniquesIdMappingType(str, Enum): + PROVIDER = "PROVIDER" + + class MatchingWorkflowResolutionTechniquesResolutionType(str, Enum): RULE_MATCHING = "RULE_MATCHING" ML_MATCHING = "ML_MATCHING" diff --git a/sdk/python/pulumi_aws_native/entityresolution/_inputs.py b/sdk/python/pulumi_aws_native/entityresolution/_inputs.py index 6640e8337d..7e16794c7b 100644 --- a/sdk/python/pulumi_aws_native/entityresolution/_inputs.py +++ b/sdk/python/pulumi_aws_native/entityresolution/_inputs.py @@ -11,6 +11,12 @@ from ._enums import * __all__ = [ + 'IdMappingWorkflowIdMappingTechniquesArgs', + 'IdMappingWorkflowInputSourceArgs', + 'IdMappingWorkflowIntermediateSourceConfigurationArgs', + 'IdMappingWorkflowOutputSourceArgs', + 'IdMappingWorkflowProviderPropertiesArgs', + 'IdMappingWorkflowTagArgs', 'MatchingWorkflowInputSourceArgs', 'MatchingWorkflowIntermediateSourceConfigurationArgs', 'MatchingWorkflowOutputAttributeArgs', @@ -24,6 +30,278 @@ 'SchemaMappingTagArgs', ] +@pulumi.input_type +class IdMappingWorkflowIdMappingTechniquesArgs: + def __init__(__self__, *, + id_mapping_type: Optional[pulumi.Input['IdMappingWorkflowIdMappingTechniquesIdMappingType']] = None, + provider_properties: Optional[pulumi.Input['IdMappingWorkflowProviderPropertiesArgs']] = None): + IdMappingWorkflowIdMappingTechniquesArgs._configure( + lambda key, value: pulumi.set(__self__, key, value), + id_mapping_type=id_mapping_type, + provider_properties=provider_properties, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + id_mapping_type: Optional[pulumi.Input['IdMappingWorkflowIdMappingTechniquesIdMappingType']] = None, + provider_properties: Optional[pulumi.Input['IdMappingWorkflowProviderPropertiesArgs']] = None, + opts: Optional[pulumi.ResourceOptions]=None): + if id_mapping_type is not None: + _setter("id_mapping_type", id_mapping_type) + if provider_properties is not None: + _setter("provider_properties", provider_properties) + + @property + @pulumi.getter(name="idMappingType") + def id_mapping_type(self) -> Optional[pulumi.Input['IdMappingWorkflowIdMappingTechniquesIdMappingType']]: + return pulumi.get(self, "id_mapping_type") + + @id_mapping_type.setter + def id_mapping_type(self, value: Optional[pulumi.Input['IdMappingWorkflowIdMappingTechniquesIdMappingType']]): + pulumi.set(self, "id_mapping_type", value) + + @property + @pulumi.getter(name="providerProperties") + def provider_properties(self) -> Optional[pulumi.Input['IdMappingWorkflowProviderPropertiesArgs']]: + return pulumi.get(self, "provider_properties") + + @provider_properties.setter + def provider_properties(self, value: Optional[pulumi.Input['IdMappingWorkflowProviderPropertiesArgs']]): + pulumi.set(self, "provider_properties", value) + + +@pulumi.input_type +class IdMappingWorkflowInputSourceArgs: + def __init__(__self__, *, + input_source_arn: pulumi.Input[str], + schema_arn: pulumi.Input[str]): + """ + :param pulumi.Input[str] input_source_arn: An Glue table ARN for the input source table + """ + IdMappingWorkflowInputSourceArgs._configure( + lambda key, value: pulumi.set(__self__, key, value), + input_source_arn=input_source_arn, + schema_arn=schema_arn, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + input_source_arn: pulumi.Input[str], + schema_arn: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions]=None): + _setter("input_source_arn", input_source_arn) + _setter("schema_arn", schema_arn) + + @property + @pulumi.getter(name="inputSourceArn") + def input_source_arn(self) -> pulumi.Input[str]: + """ + An Glue table ARN for the input source table + """ + return pulumi.get(self, "input_source_arn") + + @input_source_arn.setter + def input_source_arn(self, value: pulumi.Input[str]): + pulumi.set(self, "input_source_arn", value) + + @property + @pulumi.getter(name="schemaArn") + def schema_arn(self) -> pulumi.Input[str]: + return pulumi.get(self, "schema_arn") + + @schema_arn.setter + def schema_arn(self, value: pulumi.Input[str]): + pulumi.set(self, "schema_arn", value) + + +@pulumi.input_type +class IdMappingWorkflowIntermediateSourceConfigurationArgs: + def __init__(__self__, *, + intermediate_s3_path: pulumi.Input[str]): + """ + :param pulumi.Input[str] intermediate_s3_path: The s3 path that would be used to stage the intermediate data being generated during workflow execution. + """ + IdMappingWorkflowIntermediateSourceConfigurationArgs._configure( + lambda key, value: pulumi.set(__self__, key, value), + intermediate_s3_path=intermediate_s3_path, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + intermediate_s3_path: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions]=None): + _setter("intermediate_s3_path", intermediate_s3_path) + + @property + @pulumi.getter(name="intermediateS3Path") + def intermediate_s3_path(self) -> pulumi.Input[str]: + """ + The s3 path that would be used to stage the intermediate data being generated during workflow execution. + """ + return pulumi.get(self, "intermediate_s3_path") + + @intermediate_s3_path.setter + def intermediate_s3_path(self, value: pulumi.Input[str]): + pulumi.set(self, "intermediate_s3_path", value) + + +@pulumi.input_type +class IdMappingWorkflowOutputSourceArgs: + def __init__(__self__, *, + output_s3_path: pulumi.Input[str], + kms_arn: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] output_s3_path: The S3 path to which Entity Resolution will write the output table + """ + IdMappingWorkflowOutputSourceArgs._configure( + lambda key, value: pulumi.set(__self__, key, value), + output_s3_path=output_s3_path, + kms_arn=kms_arn, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + output_s3_path: pulumi.Input[str], + kms_arn: Optional[pulumi.Input[str]] = None, + opts: Optional[pulumi.ResourceOptions]=None): + _setter("output_s3_path", output_s3_path) + if kms_arn is not None: + _setter("kms_arn", kms_arn) + + @property + @pulumi.getter(name="outputS3Path") + def output_s3_path(self) -> pulumi.Input[str]: + """ + The S3 path to which Entity Resolution will write the output table + """ + return pulumi.get(self, "output_s3_path") + + @output_s3_path.setter + def output_s3_path(self, value: pulumi.Input[str]): + pulumi.set(self, "output_s3_path", value) + + @property + @pulumi.getter(name="kmsArn") + def kms_arn(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "kms_arn") + + @kms_arn.setter + def kms_arn(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "kms_arn", value) + + +@pulumi.input_type +class IdMappingWorkflowProviderPropertiesArgs: + def __init__(__self__, *, + provider_service_arn: pulumi.Input[str], + intermediate_source_configuration: Optional[pulumi.Input['IdMappingWorkflowIntermediateSourceConfigurationArgs']] = None, + provider_configuration: Optional[Any] = None): + """ + :param pulumi.Input[str] provider_service_arn: Arn of the Provider Service being used. + :param Any provider_configuration: Additional Provider configuration that would be required for the provider service. The Configuration must be in JSON string format + """ + IdMappingWorkflowProviderPropertiesArgs._configure( + lambda key, value: pulumi.set(__self__, key, value), + provider_service_arn=provider_service_arn, + intermediate_source_configuration=intermediate_source_configuration, + provider_configuration=provider_configuration, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + provider_service_arn: pulumi.Input[str], + intermediate_source_configuration: Optional[pulumi.Input['IdMappingWorkflowIntermediateSourceConfigurationArgs']] = None, + provider_configuration: Optional[Any] = None, + opts: Optional[pulumi.ResourceOptions]=None): + _setter("provider_service_arn", provider_service_arn) + if intermediate_source_configuration is not None: + _setter("intermediate_source_configuration", intermediate_source_configuration) + if provider_configuration is not None: + _setter("provider_configuration", provider_configuration) + + @property + @pulumi.getter(name="providerServiceArn") + def provider_service_arn(self) -> pulumi.Input[str]: + """ + Arn of the Provider Service being used. + """ + return pulumi.get(self, "provider_service_arn") + + @provider_service_arn.setter + def provider_service_arn(self, value: pulumi.Input[str]): + pulumi.set(self, "provider_service_arn", value) + + @property + @pulumi.getter(name="intermediateSourceConfiguration") + def intermediate_source_configuration(self) -> Optional[pulumi.Input['IdMappingWorkflowIntermediateSourceConfigurationArgs']]: + return pulumi.get(self, "intermediate_source_configuration") + + @intermediate_source_configuration.setter + def intermediate_source_configuration(self, value: Optional[pulumi.Input['IdMappingWorkflowIntermediateSourceConfigurationArgs']]): + pulumi.set(self, "intermediate_source_configuration", value) + + @property + @pulumi.getter(name="providerConfiguration") + def provider_configuration(self) -> Optional[Any]: + """ + Additional Provider configuration that would be required for the provider service. The Configuration must be in JSON string format + """ + return pulumi.get(self, "provider_configuration") + + @provider_configuration.setter + def provider_configuration(self, value: Optional[Any]): + pulumi.set(self, "provider_configuration", value) + + +@pulumi.input_type +class IdMappingWorkflowTagArgs: + def __init__(__self__, *, + key: pulumi.Input[str], + value: pulumi.Input[str]): + """ + A key-value pair to associate with a resource + :param pulumi.Input[str] key: The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. + :param pulumi.Input[str] value: The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. + """ + IdMappingWorkflowTagArgs._configure( + lambda key, value: pulumi.set(__self__, key, value), + key=key, + value=value, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + key: pulumi.Input[str], + value: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions]=None): + _setter("key", key) + _setter("value", value) + + @property + @pulumi.getter + def key(self) -> pulumi.Input[str]: + """ + The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. + """ + return pulumi.get(self, "key") + + @key.setter + def key(self, value: pulumi.Input[str]): + pulumi.set(self, "key", value) + + @property + @pulumi.getter + def value(self) -> pulumi.Input[str]: + """ + The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. + """ + return pulumi.get(self, "value") + + @value.setter + def value(self, value: pulumi.Input[str]): + pulumi.set(self, "value", value) + + @pulumi.input_type class MatchingWorkflowInputSourceArgs: def __init__(__self__, *, diff --git a/sdk/python/pulumi_aws_native/entityresolution/get_id_mapping_workflow.py b/sdk/python/pulumi_aws_native/entityresolution/get_id_mapping_workflow.py new file mode 100644 index 0000000000..a42d73a117 --- /dev/null +++ b/sdk/python/pulumi_aws_native/entityresolution/get_id_mapping_workflow.py @@ -0,0 +1,152 @@ +# coding=utf-8 +# *** WARNING: this file was generated by the Pulumi SDK Generator. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import copy +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Callable, Mapping, Optional, Sequence, Union, overload +from .. import _utilities +from . import outputs +from ._enums import * + +__all__ = [ + 'GetIdMappingWorkflowResult', + 'AwaitableGetIdMappingWorkflowResult', + 'get_id_mapping_workflow', + 'get_id_mapping_workflow_output', +] + +@pulumi.output_type +class GetIdMappingWorkflowResult: + def __init__(__self__, created_at=None, description=None, id_mapping_techniques=None, input_source_config=None, output_source_config=None, role_arn=None, tags=None, updated_at=None, workflow_arn=None): + if created_at and not isinstance(created_at, str): + raise TypeError("Expected argument 'created_at' to be a str") + pulumi.set(__self__, "created_at", created_at) + if description and not isinstance(description, str): + raise TypeError("Expected argument 'description' to be a str") + pulumi.set(__self__, "description", description) + if id_mapping_techniques and not isinstance(id_mapping_techniques, dict): + raise TypeError("Expected argument 'id_mapping_techniques' to be a dict") + pulumi.set(__self__, "id_mapping_techniques", id_mapping_techniques) + if input_source_config and not isinstance(input_source_config, list): + raise TypeError("Expected argument 'input_source_config' to be a list") + pulumi.set(__self__, "input_source_config", input_source_config) + if output_source_config and not isinstance(output_source_config, list): + raise TypeError("Expected argument 'output_source_config' to be a list") + pulumi.set(__self__, "output_source_config", output_source_config) + if role_arn and not isinstance(role_arn, str): + raise TypeError("Expected argument 'role_arn' to be a str") + pulumi.set(__self__, "role_arn", role_arn) + if tags and not isinstance(tags, list): + raise TypeError("Expected argument 'tags' to be a list") + pulumi.set(__self__, "tags", tags) + if updated_at and not isinstance(updated_at, str): + raise TypeError("Expected argument 'updated_at' to be a str") + pulumi.set(__self__, "updated_at", updated_at) + if workflow_arn and not isinstance(workflow_arn, str): + raise TypeError("Expected argument 'workflow_arn' to be a str") + pulumi.set(__self__, "workflow_arn", workflow_arn) + + @property + @pulumi.getter(name="createdAt") + def created_at(self) -> Optional[str]: + return pulumi.get(self, "created_at") + + @property + @pulumi.getter + def description(self) -> Optional[str]: + """ + The description of the IdMappingWorkflow + """ + return pulumi.get(self, "description") + + @property + @pulumi.getter(name="idMappingTechniques") + def id_mapping_techniques(self) -> Optional['outputs.IdMappingWorkflowIdMappingTechniques']: + return pulumi.get(self, "id_mapping_techniques") + + @property + @pulumi.getter(name="inputSourceConfig") + def input_source_config(self) -> Optional[Sequence['outputs.IdMappingWorkflowInputSource']]: + return pulumi.get(self, "input_source_config") + + @property + @pulumi.getter(name="outputSourceConfig") + def output_source_config(self) -> Optional[Sequence['outputs.IdMappingWorkflowOutputSource']]: + return pulumi.get(self, "output_source_config") + + @property + @pulumi.getter(name="roleArn") + def role_arn(self) -> Optional[str]: + return pulumi.get(self, "role_arn") + + @property + @pulumi.getter + def tags(self) -> Optional[Sequence['outputs.IdMappingWorkflowTag']]: + return pulumi.get(self, "tags") + + @property + @pulumi.getter(name="updatedAt") + def updated_at(self) -> Optional[str]: + return pulumi.get(self, "updated_at") + + @property + @pulumi.getter(name="workflowArn") + def workflow_arn(self) -> Optional[str]: + return pulumi.get(self, "workflow_arn") + + +class AwaitableGetIdMappingWorkflowResult(GetIdMappingWorkflowResult): + # pylint: disable=using-constant-test + def __await__(self): + if False: + yield self + return GetIdMappingWorkflowResult( + created_at=self.created_at, + description=self.description, + id_mapping_techniques=self.id_mapping_techniques, + input_source_config=self.input_source_config, + output_source_config=self.output_source_config, + role_arn=self.role_arn, + tags=self.tags, + updated_at=self.updated_at, + workflow_arn=self.workflow_arn) + + +def get_id_mapping_workflow(workflow_name: Optional[str] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetIdMappingWorkflowResult: + """ + IdMappingWorkflow defined in AWS Entity Resolution service + + + :param str workflow_name: The name of the IdMappingWorkflow + """ + __args__ = dict() + __args__['workflowName'] = workflow_name + opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) + __ret__ = pulumi.runtime.invoke('aws-native:entityresolution:getIdMappingWorkflow', __args__, opts=opts, typ=GetIdMappingWorkflowResult).value + + return AwaitableGetIdMappingWorkflowResult( + created_at=pulumi.get(__ret__, 'created_at'), + description=pulumi.get(__ret__, 'description'), + id_mapping_techniques=pulumi.get(__ret__, 'id_mapping_techniques'), + input_source_config=pulumi.get(__ret__, 'input_source_config'), + output_source_config=pulumi.get(__ret__, 'output_source_config'), + role_arn=pulumi.get(__ret__, 'role_arn'), + tags=pulumi.get(__ret__, 'tags'), + updated_at=pulumi.get(__ret__, 'updated_at'), + workflow_arn=pulumi.get(__ret__, 'workflow_arn')) + + +@_utilities.lift_output_func(get_id_mapping_workflow) +def get_id_mapping_workflow_output(workflow_name: Optional[pulumi.Input[str]] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetIdMappingWorkflowResult]: + """ + IdMappingWorkflow defined in AWS Entity Resolution service + + + :param str workflow_name: The name of the IdMappingWorkflow + """ + ... diff --git a/sdk/python/pulumi_aws_native/entityresolution/id_mapping_workflow.py b/sdk/python/pulumi_aws_native/entityresolution/id_mapping_workflow.py new file mode 100644 index 0000000000..d6e3b0b8a7 --- /dev/null +++ b/sdk/python/pulumi_aws_native/entityresolution/id_mapping_workflow.py @@ -0,0 +1,314 @@ +# coding=utf-8 +# *** WARNING: this file was generated by the Pulumi SDK Generator. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import copy +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Callable, Mapping, Optional, Sequence, Union, overload +from .. import _utilities +from . import outputs +from ._enums import * +from ._inputs import * + +__all__ = ['IdMappingWorkflowArgs', 'IdMappingWorkflow'] + +@pulumi.input_type +class IdMappingWorkflowArgs: + def __init__(__self__, *, + id_mapping_techniques: pulumi.Input['IdMappingWorkflowIdMappingTechniquesArgs'], + input_source_config: pulumi.Input[Sequence[pulumi.Input['IdMappingWorkflowInputSourceArgs']]], + output_source_config: pulumi.Input[Sequence[pulumi.Input['IdMappingWorkflowOutputSourceArgs']]], + role_arn: pulumi.Input[str], + workflow_name: pulumi.Input[str], + description: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Sequence[pulumi.Input['IdMappingWorkflowTagArgs']]]] = None): + """ + The set of arguments for constructing a IdMappingWorkflow resource. + :param pulumi.Input[str] workflow_name: The name of the IdMappingWorkflow + :param pulumi.Input[str] description: The description of the IdMappingWorkflow + """ + IdMappingWorkflowArgs._configure( + lambda key, value: pulumi.set(__self__, key, value), + id_mapping_techniques=id_mapping_techniques, + input_source_config=input_source_config, + output_source_config=output_source_config, + role_arn=role_arn, + workflow_name=workflow_name, + description=description, + tags=tags, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + id_mapping_techniques: pulumi.Input['IdMappingWorkflowIdMappingTechniquesArgs'], + input_source_config: pulumi.Input[Sequence[pulumi.Input['IdMappingWorkflowInputSourceArgs']]], + output_source_config: pulumi.Input[Sequence[pulumi.Input['IdMappingWorkflowOutputSourceArgs']]], + role_arn: pulumi.Input[str], + workflow_name: pulumi.Input[str], + description: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Sequence[pulumi.Input['IdMappingWorkflowTagArgs']]]] = None, + opts: Optional[pulumi.ResourceOptions]=None): + _setter("id_mapping_techniques", id_mapping_techniques) + _setter("input_source_config", input_source_config) + _setter("output_source_config", output_source_config) + _setter("role_arn", role_arn) + _setter("workflow_name", workflow_name) + if description is not None: + _setter("description", description) + if tags is not None: + _setter("tags", tags) + + @property + @pulumi.getter(name="idMappingTechniques") + def id_mapping_techniques(self) -> pulumi.Input['IdMappingWorkflowIdMappingTechniquesArgs']: + return pulumi.get(self, "id_mapping_techniques") + + @id_mapping_techniques.setter + def id_mapping_techniques(self, value: pulumi.Input['IdMappingWorkflowIdMappingTechniquesArgs']): + pulumi.set(self, "id_mapping_techniques", value) + + @property + @pulumi.getter(name="inputSourceConfig") + def input_source_config(self) -> pulumi.Input[Sequence[pulumi.Input['IdMappingWorkflowInputSourceArgs']]]: + return pulumi.get(self, "input_source_config") + + @input_source_config.setter + def input_source_config(self, value: pulumi.Input[Sequence[pulumi.Input['IdMappingWorkflowInputSourceArgs']]]): + pulumi.set(self, "input_source_config", value) + + @property + @pulumi.getter(name="outputSourceConfig") + def output_source_config(self) -> pulumi.Input[Sequence[pulumi.Input['IdMappingWorkflowOutputSourceArgs']]]: + return pulumi.get(self, "output_source_config") + + @output_source_config.setter + def output_source_config(self, value: pulumi.Input[Sequence[pulumi.Input['IdMappingWorkflowOutputSourceArgs']]]): + pulumi.set(self, "output_source_config", 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="workflowName") + def workflow_name(self) -> pulumi.Input[str]: + """ + The name of the IdMappingWorkflow + """ + return pulumi.get(self, "workflow_name") + + @workflow_name.setter + def workflow_name(self, value: pulumi.Input[str]): + pulumi.set(self, "workflow_name", value) + + @property + @pulumi.getter + def description(self) -> Optional[pulumi.Input[str]]: + """ + The description of the IdMappingWorkflow + """ + return pulumi.get(self, "description") + + @description.setter + def description(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "description", value) + + @property + @pulumi.getter + def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['IdMappingWorkflowTagArgs']]]]: + return pulumi.get(self, "tags") + + @tags.setter + def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['IdMappingWorkflowTagArgs']]]]): + pulumi.set(self, "tags", value) + + +class IdMappingWorkflow(pulumi.CustomResource): + @overload + def __init__(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + description: Optional[pulumi.Input[str]] = None, + id_mapping_techniques: Optional[pulumi.Input[pulumi.InputType['IdMappingWorkflowIdMappingTechniquesArgs']]] = None, + input_source_config: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['IdMappingWorkflowInputSourceArgs']]]]] = None, + output_source_config: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['IdMappingWorkflowOutputSourceArgs']]]]] = None, + role_arn: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['IdMappingWorkflowTagArgs']]]]] = None, + workflow_name: Optional[pulumi.Input[str]] = None, + __props__=None): + """ + IdMappingWorkflow defined in AWS Entity Resolution service + + :param str resource_name: The name of the resource. + :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[str] description: The description of the IdMappingWorkflow + :param pulumi.Input[str] workflow_name: The name of the IdMappingWorkflow + """ + ... + @overload + def __init__(__self__, + resource_name: str, + args: IdMappingWorkflowArgs, + opts: Optional[pulumi.ResourceOptions] = None): + """ + IdMappingWorkflow defined in AWS Entity Resolution service + + :param str resource_name: The name of the resource. + :param IdMappingWorkflowArgs 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(IdMappingWorkflowArgs, pulumi.ResourceOptions, *args, **kwargs) + if resource_args is not None: + __self__._internal_init(resource_name, opts, **resource_args.__dict__) + else: + kwargs = kwargs or {} + def _setter(key, value): + kwargs[key] = value + IdMappingWorkflowArgs._configure(_setter, **kwargs) + __self__._internal_init(resource_name, *args, **kwargs) + + def _internal_init(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + description: Optional[pulumi.Input[str]] = None, + id_mapping_techniques: Optional[pulumi.Input[pulumi.InputType['IdMappingWorkflowIdMappingTechniquesArgs']]] = None, + input_source_config: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['IdMappingWorkflowInputSourceArgs']]]]] = None, + output_source_config: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['IdMappingWorkflowOutputSourceArgs']]]]] = None, + role_arn: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['IdMappingWorkflowTagArgs']]]]] = None, + workflow_name: Optional[pulumi.Input[str]] = None, + __props__=None): + opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) + if not isinstance(opts, pulumi.ResourceOptions): + raise TypeError('Expected resource options to be a ResourceOptions instance') + if opts.id is None: + if __props__ is not None: + raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource') + __props__ = IdMappingWorkflowArgs.__new__(IdMappingWorkflowArgs) + + __props__.__dict__["description"] = description + if id_mapping_techniques is not None and not isinstance(id_mapping_techniques, IdMappingWorkflowIdMappingTechniquesArgs): + id_mapping_techniques = id_mapping_techniques or {} + def _setter(key, value): + id_mapping_techniques[key] = value + IdMappingWorkflowIdMappingTechniquesArgs._configure(_setter, **id_mapping_techniques) + if id_mapping_techniques is None and not opts.urn: + raise TypeError("Missing required property 'id_mapping_techniques'") + __props__.__dict__["id_mapping_techniques"] = id_mapping_techniques + if input_source_config is None and not opts.urn: + raise TypeError("Missing required property 'input_source_config'") + __props__.__dict__["input_source_config"] = input_source_config + if output_source_config is None and not opts.urn: + raise TypeError("Missing required property 'output_source_config'") + __props__.__dict__["output_source_config"] = output_source_config + if role_arn is None and not opts.urn: + raise TypeError("Missing required property 'role_arn'") + __props__.__dict__["role_arn"] = role_arn + __props__.__dict__["tags"] = tags + if workflow_name is None and not opts.urn: + raise TypeError("Missing required property 'workflow_name'") + __props__.__dict__["workflow_name"] = workflow_name + __props__.__dict__["created_at"] = None + __props__.__dict__["updated_at"] = None + __props__.__dict__["workflow_arn"] = None + replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["workflow_name"]) + opts = pulumi.ResourceOptions.merge(opts, replace_on_changes) + super(IdMappingWorkflow, __self__).__init__( + 'aws-native:entityresolution:IdMappingWorkflow', + resource_name, + __props__, + opts) + + @staticmethod + def get(resource_name: str, + id: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions] = None) -> 'IdMappingWorkflow': + """ + Get an existing IdMappingWorkflow 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__ = IdMappingWorkflowArgs.__new__(IdMappingWorkflowArgs) + + __props__.__dict__["created_at"] = None + __props__.__dict__["description"] = None + __props__.__dict__["id_mapping_techniques"] = None + __props__.__dict__["input_source_config"] = None + __props__.__dict__["output_source_config"] = None + __props__.__dict__["role_arn"] = None + __props__.__dict__["tags"] = None + __props__.__dict__["updated_at"] = None + __props__.__dict__["workflow_arn"] = None + __props__.__dict__["workflow_name"] = None + return IdMappingWorkflow(resource_name, opts=opts, __props__=__props__) + + @property + @pulumi.getter(name="createdAt") + def created_at(self) -> pulumi.Output[str]: + return pulumi.get(self, "created_at") + + @property + @pulumi.getter + def description(self) -> pulumi.Output[Optional[str]]: + """ + The description of the IdMappingWorkflow + """ + return pulumi.get(self, "description") + + @property + @pulumi.getter(name="idMappingTechniques") + def id_mapping_techniques(self) -> pulumi.Output['outputs.IdMappingWorkflowIdMappingTechniques']: + return pulumi.get(self, "id_mapping_techniques") + + @property + @pulumi.getter(name="inputSourceConfig") + def input_source_config(self) -> pulumi.Output[Sequence['outputs.IdMappingWorkflowInputSource']]: + return pulumi.get(self, "input_source_config") + + @property + @pulumi.getter(name="outputSourceConfig") + def output_source_config(self) -> pulumi.Output[Sequence['outputs.IdMappingWorkflowOutputSource']]: + return pulumi.get(self, "output_source_config") + + @property + @pulumi.getter(name="roleArn") + def role_arn(self) -> pulumi.Output[str]: + return pulumi.get(self, "role_arn") + + @property + @pulumi.getter + def tags(self) -> pulumi.Output[Optional[Sequence['outputs.IdMappingWorkflowTag']]]: + return pulumi.get(self, "tags") + + @property + @pulumi.getter(name="updatedAt") + def updated_at(self) -> pulumi.Output[str]: + return pulumi.get(self, "updated_at") + + @property + @pulumi.getter(name="workflowArn") + def workflow_arn(self) -> pulumi.Output[str]: + return pulumi.get(self, "workflow_arn") + + @property + @pulumi.getter(name="workflowName") + def workflow_name(self) -> pulumi.Output[str]: + """ + The name of the IdMappingWorkflow + """ + return pulumi.get(self, "workflow_name") + diff --git a/sdk/python/pulumi_aws_native/entityresolution/outputs.py b/sdk/python/pulumi_aws_native/entityresolution/outputs.py index 99d1859045..e0379c2075 100644 --- a/sdk/python/pulumi_aws_native/entityresolution/outputs.py +++ b/sdk/python/pulumi_aws_native/entityresolution/outputs.py @@ -12,6 +12,12 @@ from ._enums import * __all__ = [ + 'IdMappingWorkflowIdMappingTechniques', + 'IdMappingWorkflowInputSource', + 'IdMappingWorkflowIntermediateSourceConfiguration', + 'IdMappingWorkflowOutputSource', + 'IdMappingWorkflowProviderProperties', + 'IdMappingWorkflowTag', 'MatchingWorkflowInputSource', 'MatchingWorkflowIntermediateSourceConfiguration', 'MatchingWorkflowOutputAttribute', @@ -25,6 +31,328 @@ 'SchemaMappingTag', ] +@pulumi.output_type +class IdMappingWorkflowIdMappingTechniques(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "idMappingType": + suggest = "id_mapping_type" + elif key == "providerProperties": + suggest = "provider_properties" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in IdMappingWorkflowIdMappingTechniques. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + IdMappingWorkflowIdMappingTechniques.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + IdMappingWorkflowIdMappingTechniques.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + id_mapping_type: Optional['IdMappingWorkflowIdMappingTechniquesIdMappingType'] = None, + provider_properties: Optional['outputs.IdMappingWorkflowProviderProperties'] = None): + IdMappingWorkflowIdMappingTechniques._configure( + lambda key, value: pulumi.set(__self__, key, value), + id_mapping_type=id_mapping_type, + provider_properties=provider_properties, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + id_mapping_type: Optional['IdMappingWorkflowIdMappingTechniquesIdMappingType'] = None, + provider_properties: Optional['outputs.IdMappingWorkflowProviderProperties'] = None, + opts: Optional[pulumi.ResourceOptions]=None): + if id_mapping_type is not None: + _setter("id_mapping_type", id_mapping_type) + if provider_properties is not None: + _setter("provider_properties", provider_properties) + + @property + @pulumi.getter(name="idMappingType") + def id_mapping_type(self) -> Optional['IdMappingWorkflowIdMappingTechniquesIdMappingType']: + return pulumi.get(self, "id_mapping_type") + + @property + @pulumi.getter(name="providerProperties") + def provider_properties(self) -> Optional['outputs.IdMappingWorkflowProviderProperties']: + return pulumi.get(self, "provider_properties") + + +@pulumi.output_type +class IdMappingWorkflowInputSource(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "inputSourceArn": + suggest = "input_source_arn" + elif key == "schemaArn": + suggest = "schema_arn" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in IdMappingWorkflowInputSource. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + IdMappingWorkflowInputSource.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + IdMappingWorkflowInputSource.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + input_source_arn: str, + schema_arn: str): + """ + :param str input_source_arn: An Glue table ARN for the input source table + """ + IdMappingWorkflowInputSource._configure( + lambda key, value: pulumi.set(__self__, key, value), + input_source_arn=input_source_arn, + schema_arn=schema_arn, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + input_source_arn: str, + schema_arn: str, + opts: Optional[pulumi.ResourceOptions]=None): + _setter("input_source_arn", input_source_arn) + _setter("schema_arn", schema_arn) + + @property + @pulumi.getter(name="inputSourceArn") + def input_source_arn(self) -> str: + """ + An Glue table ARN for the input source table + """ + return pulumi.get(self, "input_source_arn") + + @property + @pulumi.getter(name="schemaArn") + def schema_arn(self) -> str: + return pulumi.get(self, "schema_arn") + + +@pulumi.output_type +class IdMappingWorkflowIntermediateSourceConfiguration(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "intermediateS3Path": + suggest = "intermediate_s3_path" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in IdMappingWorkflowIntermediateSourceConfiguration. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + IdMappingWorkflowIntermediateSourceConfiguration.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + IdMappingWorkflowIntermediateSourceConfiguration.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + intermediate_s3_path: str): + """ + :param str intermediate_s3_path: The s3 path that would be used to stage the intermediate data being generated during workflow execution. + """ + IdMappingWorkflowIntermediateSourceConfiguration._configure( + lambda key, value: pulumi.set(__self__, key, value), + intermediate_s3_path=intermediate_s3_path, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + intermediate_s3_path: str, + opts: Optional[pulumi.ResourceOptions]=None): + _setter("intermediate_s3_path", intermediate_s3_path) + + @property + @pulumi.getter(name="intermediateS3Path") + def intermediate_s3_path(self) -> str: + """ + The s3 path that would be used to stage the intermediate data being generated during workflow execution. + """ + return pulumi.get(self, "intermediate_s3_path") + + +@pulumi.output_type +class IdMappingWorkflowOutputSource(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "outputS3Path": + suggest = "output_s3_path" + elif key == "kmsArn": + suggest = "kms_arn" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in IdMappingWorkflowOutputSource. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + IdMappingWorkflowOutputSource.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + IdMappingWorkflowOutputSource.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + output_s3_path: str, + kms_arn: Optional[str] = None): + """ + :param str output_s3_path: The S3 path to which Entity Resolution will write the output table + """ + IdMappingWorkflowOutputSource._configure( + lambda key, value: pulumi.set(__self__, key, value), + output_s3_path=output_s3_path, + kms_arn=kms_arn, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + output_s3_path: str, + kms_arn: Optional[str] = None, + opts: Optional[pulumi.ResourceOptions]=None): + _setter("output_s3_path", output_s3_path) + if kms_arn is not None: + _setter("kms_arn", kms_arn) + + @property + @pulumi.getter(name="outputS3Path") + def output_s3_path(self) -> str: + """ + The S3 path to which Entity Resolution will write the output table + """ + return pulumi.get(self, "output_s3_path") + + @property + @pulumi.getter(name="kmsArn") + def kms_arn(self) -> Optional[str]: + return pulumi.get(self, "kms_arn") + + +@pulumi.output_type +class IdMappingWorkflowProviderProperties(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "providerServiceArn": + suggest = "provider_service_arn" + elif key == "intermediateSourceConfiguration": + suggest = "intermediate_source_configuration" + elif key == "providerConfiguration": + suggest = "provider_configuration" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in IdMappingWorkflowProviderProperties. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + IdMappingWorkflowProviderProperties.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + IdMappingWorkflowProviderProperties.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + provider_service_arn: str, + intermediate_source_configuration: Optional['outputs.IdMappingWorkflowIntermediateSourceConfiguration'] = None, + provider_configuration: Optional[Any] = None): + """ + :param str provider_service_arn: Arn of the Provider Service being used. + :param Any provider_configuration: Additional Provider configuration that would be required for the provider service. The Configuration must be in JSON string format + """ + IdMappingWorkflowProviderProperties._configure( + lambda key, value: pulumi.set(__self__, key, value), + provider_service_arn=provider_service_arn, + intermediate_source_configuration=intermediate_source_configuration, + provider_configuration=provider_configuration, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + provider_service_arn: str, + intermediate_source_configuration: Optional['outputs.IdMappingWorkflowIntermediateSourceConfiguration'] = None, + provider_configuration: Optional[Any] = None, + opts: Optional[pulumi.ResourceOptions]=None): + _setter("provider_service_arn", provider_service_arn) + if intermediate_source_configuration is not None: + _setter("intermediate_source_configuration", intermediate_source_configuration) + if provider_configuration is not None: + _setter("provider_configuration", provider_configuration) + + @property + @pulumi.getter(name="providerServiceArn") + def provider_service_arn(self) -> str: + """ + Arn of the Provider Service being used. + """ + return pulumi.get(self, "provider_service_arn") + + @property + @pulumi.getter(name="intermediateSourceConfiguration") + def intermediate_source_configuration(self) -> Optional['outputs.IdMappingWorkflowIntermediateSourceConfiguration']: + return pulumi.get(self, "intermediate_source_configuration") + + @property + @pulumi.getter(name="providerConfiguration") + def provider_configuration(self) -> Optional[Any]: + """ + Additional Provider configuration that would be required for the provider service. The Configuration must be in JSON string format + """ + return pulumi.get(self, "provider_configuration") + + +@pulumi.output_type +class IdMappingWorkflowTag(dict): + """ + A key-value pair to associate with a resource + """ + def __init__(__self__, *, + key: str, + value: str): + """ + A key-value pair to associate with a resource + :param str key: The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. + :param str value: The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. + """ + IdMappingWorkflowTag._configure( + lambda key, value: pulumi.set(__self__, key, value), + key=key, + value=value, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + key: str, + value: str, + opts: Optional[pulumi.ResourceOptions]=None): + _setter("key", key) + _setter("value", value) + + @property + @pulumi.getter + def key(self) -> str: + """ + The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. + """ + return pulumi.get(self, "key") + + @property + @pulumi.getter + def value(self) -> str: + """ + The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. + """ + return pulumi.get(self, "value") + + @pulumi.output_type class MatchingWorkflowInputSource(dict): @staticmethod diff --git a/sdk/python/pulumi_aws_native/events/_enums.py b/sdk/python/pulumi_aws_native/events/_enums.py index d930d0a7e2..cca4b2576b 100644 --- a/sdk/python/pulumi_aws_native/events/_enums.py +++ b/sdk/python/pulumi_aws_native/events/_enums.py @@ -10,7 +10,6 @@ 'ConnectionOAuthParametersHttpMethod', 'EndpointReplicationState', 'EndpointState', - 'RuleState', ] @@ -48,11 +47,3 @@ class EndpointState(str, Enum): DELETING = "DELETING" CREATE_FAILED = "CREATE_FAILED" UPDATE_FAILED = "UPDATE_FAILED" - - -class RuleState(str, Enum): - """ - The state of the rule. - """ - DISABLED = "DISABLED" - ENABLED = "ENABLED" diff --git a/sdk/python/pulumi_aws_native/events/_inputs.py b/sdk/python/pulumi_aws_native/events/_inputs.py index c7a947cfb0..9794e457e0 100644 --- a/sdk/python/pulumi_aws_native/events/_inputs.py +++ b/sdk/python/pulumi_aws_native/events/_inputs.py @@ -1346,7 +1346,6 @@ def __init__(__self__, *, db_user: Optional[pulumi.Input[str]] = None, secret_manager_arn: Optional[pulumi.Input[str]] = None, sql: Optional[pulumi.Input[str]] = None, - sqls: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, statement_name: Optional[pulumi.Input[str]] = None, with_event: Optional[pulumi.Input[bool]] = None): RuleRedshiftDataParametersArgs._configure( @@ -1355,7 +1354,6 @@ def __init__(__self__, *, db_user=db_user, secret_manager_arn=secret_manager_arn, sql=sql, - sqls=sqls, statement_name=statement_name, with_event=with_event, ) @@ -1366,7 +1364,6 @@ def _configure( db_user: Optional[pulumi.Input[str]] = None, secret_manager_arn: Optional[pulumi.Input[str]] = None, sql: Optional[pulumi.Input[str]] = None, - sqls: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, statement_name: Optional[pulumi.Input[str]] = None, with_event: Optional[pulumi.Input[bool]] = None, opts: Optional[pulumi.ResourceOptions]=None): @@ -1377,8 +1374,6 @@ def _configure( _setter("secret_manager_arn", secret_manager_arn) if sql is not None: _setter("sql", sql) - if sqls is not None: - _setter("sqls", sqls) if statement_name is not None: _setter("statement_name", statement_name) if with_event is not None: @@ -1420,15 +1415,6 @@ def sql(self) -> Optional[pulumi.Input[str]]: def sql(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "sql", value) - @property - @pulumi.getter - def sqls(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - return pulumi.get(self, "sqls") - - @sqls.setter - def sqls(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): - pulumi.set(self, "sqls", value) - @property @pulumi.getter(name="statementName") def statement_name(self) -> Optional[pulumi.Input[str]]: diff --git a/sdk/python/pulumi_aws_native/events/get_rule.py b/sdk/python/pulumi_aws_native/events/get_rule.py index af60a9c541..7b91eb5818 100644 --- a/sdk/python/pulumi_aws_native/events/get_rule.py +++ b/sdk/python/pulumi_aws_native/events/get_rule.py @@ -9,7 +9,6 @@ from typing import Any, Callable, Mapping, Optional, Sequence, Union, overload from .. import _utilities from . import outputs -from ._enums import * __all__ = [ 'GetRuleResult', @@ -20,19 +19,19 @@ @pulumi.output_type class GetRuleResult: - def __init__(__self__, arn=None, description=None, event_bus_name=None, event_pattern=None, role_arn=None, schedule_expression=None, state=None, targets=None): + def __init__(__self__, arn=None, description=None, event_pattern=None, id=None, role_arn=None, schedule_expression=None, state=None, targets=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 event_bus_name and not isinstance(event_bus_name, str): - raise TypeError("Expected argument 'event_bus_name' to be a str") - pulumi.set(__self__, "event_bus_name", event_bus_name) - if event_pattern and not isinstance(event_pattern, str): - raise TypeError("Expected argument 'event_pattern' to be a str") + if event_pattern and not isinstance(event_pattern, dict): + raise TypeError("Expected argument 'event_pattern' to be a dict") pulumi.set(__self__, "event_pattern", event_pattern) + if id and not isinstance(id, str): + raise TypeError("Expected argument 'id' to be a str") + pulumi.set(__self__, "id", id) if role_arn and not isinstance(role_arn, str): raise TypeError("Expected argument 'role_arn' to be a str") pulumi.set(__self__, "role_arn", role_arn) @@ -49,66 +48,41 @@ def __init__(__self__, arn=None, description=None, event_bus_name=None, event_pa @property @pulumi.getter def arn(self) -> Optional[str]: - """ - The ARN of the rule, such as arn:aws:events:us-east-2:123456789012:rule/example. - """ return pulumi.get(self, "arn") @property @pulumi.getter def description(self) -> Optional[str]: - """ - The description of the rule. - """ return pulumi.get(self, "description") - @property - @pulumi.getter(name="eventBusName") - def event_bus_name(self) -> Optional[str]: - """ - The name or ARN of the event bus associated with the rule. If you omit this, the default event bus is used. - """ - return pulumi.get(self, "event_bus_name") - @property @pulumi.getter(name="eventPattern") - def event_pattern(self) -> Optional[str]: - """ - The event pattern of the rule. For more information, see Events and Event Patterns in the Amazon EventBridge User Guide. - """ + def event_pattern(self) -> Optional[Any]: return pulumi.get(self, "event_pattern") + @property + @pulumi.getter + def id(self) -> Optional[str]: + return pulumi.get(self, "id") + @property @pulumi.getter(name="roleArn") def role_arn(self) -> Optional[str]: - """ - The Amazon Resource Name (ARN) of the role that is used for target invocation. - """ return pulumi.get(self, "role_arn") @property @pulumi.getter(name="scheduleExpression") def schedule_expression(self) -> Optional[str]: - """ - The scheduling expression. For example, "cron(0 20 * * ? *)", "rate(5 minutes)". For more information, see Creating an Amazon EventBridge rule that runs on a schedule. - """ return pulumi.get(self, "schedule_expression") @property @pulumi.getter - def state(self) -> Optional['RuleState']: - """ - The state of the rule. - """ + def state(self) -> Optional[str]: return pulumi.get(self, "state") @property @pulumi.getter def targets(self) -> Optional[Sequence['outputs.RuleTarget']]: - """ - Adds the specified targets to the specified rule, or updates the targets if they are already associated with the rule. - Targets are the resources that are invoked when a rule is triggered. - """ return pulumi.get(self, "targets") @@ -120,32 +94,29 @@ def __await__(self): return GetRuleResult( arn=self.arn, description=self.description, - event_bus_name=self.event_bus_name, event_pattern=self.event_pattern, + id=self.id, role_arn=self.role_arn, schedule_expression=self.schedule_expression, state=self.state, targets=self.targets) -def get_rule(arn: Optional[str] = None, +def get_rule(id: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetRuleResult: """ Resource Type definition for AWS::Events::Rule - - - :param str arn: The ARN of the rule, such as arn:aws:events:us-east-2:123456789012:rule/example. """ __args__ = dict() - __args__['arn'] = arn + __args__['id'] = id opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) __ret__ = pulumi.runtime.invoke('aws-native:events:getRule', __args__, opts=opts, typ=GetRuleResult).value return AwaitableGetRuleResult( arn=pulumi.get(__ret__, 'arn'), description=pulumi.get(__ret__, 'description'), - event_bus_name=pulumi.get(__ret__, 'event_bus_name'), event_pattern=pulumi.get(__ret__, 'event_pattern'), + id=pulumi.get(__ret__, 'id'), role_arn=pulumi.get(__ret__, 'role_arn'), schedule_expression=pulumi.get(__ret__, 'schedule_expression'), state=pulumi.get(__ret__, 'state'), @@ -153,12 +124,9 @@ def get_rule(arn: Optional[str] = None, @_utilities.lift_output_func(get_rule) -def get_rule_output(arn: Optional[pulumi.Input[str]] = None, +def get_rule_output(id: Optional[pulumi.Input[str]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetRuleResult]: """ Resource Type definition for AWS::Events::Rule - - - :param str arn: The ARN of the rule, such as arn:aws:events:us-east-2:123456789012:rule/example. """ ... diff --git a/sdk/python/pulumi_aws_native/events/outputs.py b/sdk/python/pulumi_aws_native/events/outputs.py index 1cb984b742..b8b2530b4d 100644 --- a/sdk/python/pulumi_aws_native/events/outputs.py +++ b/sdk/python/pulumi_aws_native/events/outputs.py @@ -1437,7 +1437,6 @@ def __init__(__self__, *, db_user: Optional[str] = None, secret_manager_arn: Optional[str] = None, sql: Optional[str] = None, - sqls: Optional[Sequence[str]] = None, statement_name: Optional[str] = None, with_event: Optional[bool] = None): RuleRedshiftDataParameters._configure( @@ -1446,7 +1445,6 @@ def __init__(__self__, *, db_user=db_user, secret_manager_arn=secret_manager_arn, sql=sql, - sqls=sqls, statement_name=statement_name, with_event=with_event, ) @@ -1457,7 +1455,6 @@ def _configure( db_user: Optional[str] = None, secret_manager_arn: Optional[str] = None, sql: Optional[str] = None, - sqls: Optional[Sequence[str]] = None, statement_name: Optional[str] = None, with_event: Optional[bool] = None, opts: Optional[pulumi.ResourceOptions]=None): @@ -1468,8 +1465,6 @@ def _configure( _setter("secret_manager_arn", secret_manager_arn) if sql is not None: _setter("sql", sql) - if sqls is not None: - _setter("sqls", sqls) if statement_name is not None: _setter("statement_name", statement_name) if with_event is not None: @@ -1495,11 +1490,6 @@ def secret_manager_arn(self) -> Optional[str]: def sql(self) -> Optional[str]: return pulumi.get(self, "sql") - @property - @pulumi.getter - def sqls(self) -> Optional[Sequence[str]]: - return pulumi.get(self, "sqls") - @property @pulumi.getter(name="statementName") def statement_name(self) -> Optional[str]: diff --git a/sdk/python/pulumi_aws_native/events/rule.py b/sdk/python/pulumi_aws_native/events/rule.py index e885b995f4..a84bf28ba0 100644 --- a/sdk/python/pulumi_aws_native/events/rule.py +++ b/sdk/python/pulumi_aws_native/events/rule.py @@ -9,7 +9,6 @@ from typing import Any, Callable, Mapping, Optional, Sequence, Union, overload from .. import _utilities from . import outputs -from ._enums import * from ._inputs import * __all__ = ['RuleArgs', 'Rule'] @@ -19,23 +18,14 @@ class RuleArgs: def __init__(__self__, *, description: Optional[pulumi.Input[str]] = None, event_bus_name: Optional[pulumi.Input[str]] = None, - event_pattern: Optional[pulumi.Input[str]] = None, + event_pattern: Optional[Any] = None, name: Optional[pulumi.Input[str]] = None, role_arn: Optional[pulumi.Input[str]] = None, schedule_expression: Optional[pulumi.Input[str]] = None, - state: Optional[pulumi.Input['RuleState']] = None, + state: Optional[pulumi.Input[str]] = None, targets: Optional[pulumi.Input[Sequence[pulumi.Input['RuleTargetArgs']]]] = None): """ The set of arguments for constructing a Rule resource. - :param pulumi.Input[str] description: The description of the rule. - :param pulumi.Input[str] event_bus_name: The name or ARN of the event bus associated with the rule. If you omit this, the default event bus is used. - :param pulumi.Input[str] event_pattern: The event pattern of the rule. For more information, see Events and Event Patterns in the Amazon EventBridge User Guide. - :param pulumi.Input[str] name: The name of the rule. - :param pulumi.Input[str] role_arn: The Amazon Resource Name (ARN) of the role that is used for target invocation. - :param pulumi.Input[str] schedule_expression: The scheduling expression. For example, "cron(0 20 * * ? *)", "rate(5 minutes)". For more information, see Creating an Amazon EventBridge rule that runs on a schedule. - :param pulumi.Input['RuleState'] state: The state of the rule. - :param pulumi.Input[Sequence[pulumi.Input['RuleTargetArgs']]] targets: Adds the specified targets to the specified rule, or updates the targets if they are already associated with the rule. - Targets are the resources that are invoked when a rule is triggered. """ RuleArgs._configure( lambda key, value: pulumi.set(__self__, key, value), @@ -53,11 +43,11 @@ def _configure( _setter: Callable[[Any, Any], None], description: Optional[pulumi.Input[str]] = None, event_bus_name: Optional[pulumi.Input[str]] = None, - event_pattern: Optional[pulumi.Input[str]] = None, + event_pattern: Optional[Any] = None, name: Optional[pulumi.Input[str]] = None, role_arn: Optional[pulumi.Input[str]] = None, schedule_expression: Optional[pulumi.Input[str]] = None, - state: Optional[pulumi.Input['RuleState']] = None, + state: Optional[pulumi.Input[str]] = None, targets: Optional[pulumi.Input[Sequence[pulumi.Input['RuleTargetArgs']]]] = None, opts: Optional[pulumi.ResourceOptions]=None): if description is not None: @@ -80,9 +70,6 @@ def _configure( @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - The description of the rule. - """ return pulumi.get(self, "description") @description.setter @@ -92,9 +79,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="eventBusName") def event_bus_name(self) -> Optional[pulumi.Input[str]]: - """ - The name or ARN of the event bus associated with the rule. If you omit this, the default event bus is used. - """ return pulumi.get(self, "event_bus_name") @event_bus_name.setter @@ -103,22 +87,16 @@ def event_bus_name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="eventPattern") - def event_pattern(self) -> Optional[pulumi.Input[str]]: - """ - The event pattern of the rule. For more information, see Events and Event Patterns in the Amazon EventBridge User Guide. - """ + def event_pattern(self) -> Optional[Any]: return pulumi.get(self, "event_pattern") @event_pattern.setter - def event_pattern(self, value: Optional[pulumi.Input[str]]): + def event_pattern(self, value: Optional[Any]): pulumi.set(self, "event_pattern", value) @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The name of the rule. - """ return pulumi.get(self, "name") @name.setter @@ -128,9 +106,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="roleArn") def role_arn(self) -> Optional[pulumi.Input[str]]: - """ - The Amazon Resource Name (ARN) of the role that is used for target invocation. - """ return pulumi.get(self, "role_arn") @role_arn.setter @@ -140,9 +115,6 @@ def role_arn(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="scheduleExpression") def schedule_expression(self) -> Optional[pulumi.Input[str]]: - """ - The scheduling expression. For example, "cron(0 20 * * ? *)", "rate(5 minutes)". For more information, see Creating an Amazon EventBridge rule that runs on a schedule. - """ return pulumi.get(self, "schedule_expression") @schedule_expression.setter @@ -151,23 +123,16 @@ def schedule_expression(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter - def state(self) -> Optional[pulumi.Input['RuleState']]: - """ - The state of the rule. - """ + def state(self) -> Optional[pulumi.Input[str]]: return pulumi.get(self, "state") @state.setter - def state(self, value: Optional[pulumi.Input['RuleState']]): + def state(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "state", value) @property @pulumi.getter def targets(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['RuleTargetArgs']]]]: - """ - Adds the specified targets to the specified rule, or updates the targets if they are already associated with the rule. - Targets are the resources that are invoked when a rule is triggered. - """ return pulumi.get(self, "targets") @targets.setter @@ -182,11 +147,11 @@ def __init__(__self__, opts: Optional[pulumi.ResourceOptions] = None, description: Optional[pulumi.Input[str]] = None, event_bus_name: Optional[pulumi.Input[str]] = None, - event_pattern: Optional[pulumi.Input[str]] = None, + event_pattern: Optional[Any] = None, name: Optional[pulumi.Input[str]] = None, role_arn: Optional[pulumi.Input[str]] = None, schedule_expression: Optional[pulumi.Input[str]] = None, - state: Optional[pulumi.Input['RuleState']] = None, + state: Optional[pulumi.Input[str]] = None, targets: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['RuleTargetArgs']]]]] = None, __props__=None): """ @@ -194,15 +159,6 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] description: The description of the rule. - :param pulumi.Input[str] event_bus_name: The name or ARN of the event bus associated with the rule. If you omit this, the default event bus is used. - :param pulumi.Input[str] event_pattern: The event pattern of the rule. For more information, see Events and Event Patterns in the Amazon EventBridge User Guide. - :param pulumi.Input[str] name: The name of the rule. - :param pulumi.Input[str] role_arn: The Amazon Resource Name (ARN) of the role that is used for target invocation. - :param pulumi.Input[str] schedule_expression: The scheduling expression. For example, "cron(0 20 * * ? *)", "rate(5 minutes)". For more information, see Creating an Amazon EventBridge rule that runs on a schedule. - :param pulumi.Input['RuleState'] state: The state of the rule. - :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['RuleTargetArgs']]]] targets: Adds the specified targets to the specified rule, or updates the targets if they are already associated with the rule. - Targets are the resources that are invoked when a rule is triggered. """ ... @overload @@ -234,11 +190,11 @@ def _internal_init(__self__, opts: Optional[pulumi.ResourceOptions] = None, description: Optional[pulumi.Input[str]] = None, event_bus_name: Optional[pulumi.Input[str]] = None, - event_pattern: Optional[pulumi.Input[str]] = None, + event_pattern: Optional[Any] = None, name: Optional[pulumi.Input[str]] = None, role_arn: Optional[pulumi.Input[str]] = None, schedule_expression: Optional[pulumi.Input[str]] = None, - state: Optional[pulumi.Input['RuleState']] = None, + state: Optional[pulumi.Input[str]] = None, targets: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['RuleTargetArgs']]]]] = None, __props__=None): opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) @@ -258,7 +214,7 @@ def _internal_init(__self__, __props__.__dict__["state"] = state __props__.__dict__["targets"] = targets __props__.__dict__["arn"] = None - replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["name"]) + replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["event_bus_name", "name"]) opts = pulumi.ResourceOptions.merge(opts, replace_on_changes) super(Rule, __self__).__init__( 'aws-native:events:Rule', @@ -296,73 +252,45 @@ def get(resource_name: str, @property @pulumi.getter def arn(self) -> pulumi.Output[str]: - """ - The ARN of the rule, such as arn:aws:events:us-east-2:123456789012:rule/example. - """ return pulumi.get(self, "arn") @property @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: - """ - The description of the rule. - """ return pulumi.get(self, "description") @property @pulumi.getter(name="eventBusName") def event_bus_name(self) -> pulumi.Output[Optional[str]]: - """ - The name or ARN of the event bus associated with the rule. If you omit this, the default event bus is used. - """ return pulumi.get(self, "event_bus_name") @property @pulumi.getter(name="eventPattern") - def event_pattern(self) -> pulumi.Output[Optional[str]]: - """ - The event pattern of the rule. For more information, see Events and Event Patterns in the Amazon EventBridge User Guide. - """ + def event_pattern(self) -> pulumi.Output[Optional[Any]]: return pulumi.get(self, "event_pattern") @property @pulumi.getter def name(self) -> pulumi.Output[Optional[str]]: - """ - The name of the rule. - """ return pulumi.get(self, "name") @property @pulumi.getter(name="roleArn") def role_arn(self) -> pulumi.Output[Optional[str]]: - """ - The Amazon Resource Name (ARN) of the role that is used for target invocation. - """ return pulumi.get(self, "role_arn") @property @pulumi.getter(name="scheduleExpression") def schedule_expression(self) -> pulumi.Output[Optional[str]]: - """ - The scheduling expression. For example, "cron(0 20 * * ? *)", "rate(5 minutes)". For more information, see Creating an Amazon EventBridge rule that runs on a schedule. - """ return pulumi.get(self, "schedule_expression") @property @pulumi.getter - def state(self) -> pulumi.Output[Optional['RuleState']]: - """ - The state of the rule. - """ + def state(self) -> pulumi.Output[Optional[str]]: return pulumi.get(self, "state") @property @pulumi.getter def targets(self) -> pulumi.Output[Optional[Sequence['outputs.RuleTarget']]]: - """ - Adds the specified targets to the specified rule, or updates the targets if they are already associated with the rule. - Targets are the resources that are invoked when a rule is triggered. - """ return pulumi.get(self, "targets") diff --git a/sdk/python/pulumi_aws_native/gamelift/_enums.py b/sdk/python/pulumi_aws_native/gamelift/_enums.py index 798d84c6a9..304df7e357 100644 --- a/sdk/python/pulumi_aws_native/gamelift/_enums.py +++ b/sdk/python/pulumi_aws_native/gamelift/_enums.py @@ -9,6 +9,7 @@ 'BuildOperatingSystem', 'FleetCertificateConfigurationCertificateType', 'FleetComputeType', + 'FleetInstanceRoleCredentialsProvider', 'FleetIpPermissionProtocol', 'FleetNewGameSessionProtectionPolicy', 'FleetType', @@ -50,6 +51,13 @@ class FleetComputeType(str, Enum): ANYWHERE = "ANYWHERE" +class FleetInstanceRoleCredentialsProvider(str, Enum): + """ + Credentials provider implementation that loads credentials from the Amazon EC2 Instance Metadata Service. + """ + SHARED_CREDENTIAL_FILE = "SHARED_CREDENTIAL_FILE" + + class FleetIpPermissionProtocol(str, Enum): """ The network communication protocol used by the fleet. diff --git a/sdk/python/pulumi_aws_native/gamelift/fleet.py b/sdk/python/pulumi_aws_native/gamelift/fleet.py index 5899a6fe02..e865015223 100644 --- a/sdk/python/pulumi_aws_native/gamelift/fleet.py +++ b/sdk/python/pulumi_aws_native/gamelift/fleet.py @@ -27,6 +27,7 @@ def __init__(__self__, *, ec2_instance_type: Optional[pulumi.Input[str]] = None, fleet_type: Optional[pulumi.Input['FleetType']] = None, instance_role_arn: Optional[pulumi.Input[str]] = None, + instance_role_credentials_provider: Optional[pulumi.Input['FleetInstanceRoleCredentialsProvider']] = None, locations: Optional[pulumi.Input[Sequence[pulumi.Input['FleetLocationConfigurationArgs']]]] = None, log_paths: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, max_size: Optional[pulumi.Input[int]] = None, @@ -53,6 +54,7 @@ def __init__(__self__, *, :param pulumi.Input[str] ec2_instance_type: The name of an EC2 instance type that is supported in Amazon GameLift. A fleet instance type determines the computing resources of each instance in the fleet, including CPU, memory, storage, and networking capacity. Amazon GameLift supports the following EC2 instance types. See Amazon EC2 Instance Types for detailed descriptions. :param pulumi.Input['FleetType'] fleet_type: Indicates whether to use On-Demand instances or Spot instances for this fleet. If empty, the default is ON_DEMAND. Both categories of instances use identical hardware and configurations based on the instance type selected for this fleet. :param pulumi.Input[str] instance_role_arn: A unique identifier for an AWS IAM role that manages access to your AWS services. With an instance role ARN set, any application that runs on an instance in this fleet can assume the role, including install scripts, server processes, and daemons (background processes). Create a role or look up a role's ARN from the IAM dashboard in the AWS Management Console. + :param pulumi.Input['FleetInstanceRoleCredentialsProvider'] instance_role_credentials_provider: Credentials provider implementation that loads credentials from the Amazon EC2 Instance Metadata Service. :param pulumi.Input[Sequence[pulumi.Input[str]]] log_paths: This parameter is no longer used. When hosting a custom game build, specify where Amazon GameLift should store log files using the Amazon GameLift server API call ProcessReady() :param pulumi.Input[int] max_size: [DEPRECATED] The maximum value that is allowed for the fleet's instance count. When creating a new fleet, GameLift automatically sets this value to "1". Once the fleet is active, you can change this value. :param pulumi.Input[Sequence[pulumi.Input[str]]] metric_groups: The name of an Amazon CloudWatch metric group. A metric group aggregates the metrics for all fleets in the group. Specify a string containing the metric group name. You can use an existing name or use a new name to create a new metric group. Currently, this parameter can have only one string. @@ -83,6 +85,7 @@ def __init__(__self__, *, ec2_instance_type=ec2_instance_type, fleet_type=fleet_type, instance_role_arn=instance_role_arn, + instance_role_credentials_provider=instance_role_credentials_provider, locations=locations, log_paths=log_paths, max_size=max_size, @@ -111,6 +114,7 @@ def _configure( ec2_instance_type: Optional[pulumi.Input[str]] = None, fleet_type: Optional[pulumi.Input['FleetType']] = None, instance_role_arn: Optional[pulumi.Input[str]] = None, + instance_role_credentials_provider: Optional[pulumi.Input['FleetInstanceRoleCredentialsProvider']] = None, locations: Optional[pulumi.Input[Sequence[pulumi.Input['FleetLocationConfigurationArgs']]]] = None, log_paths: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, max_size: Optional[pulumi.Input[int]] = None, @@ -146,6 +150,8 @@ def _configure( _setter("fleet_type", fleet_type) if instance_role_arn is not None: _setter("instance_role_arn", instance_role_arn) + if instance_role_credentials_provider is not None: + _setter("instance_role_credentials_provider", instance_role_credentials_provider) if locations is not None: _setter("locations", locations) if log_paths is not None: @@ -295,6 +301,18 @@ def instance_role_arn(self) -> Optional[pulumi.Input[str]]: def instance_role_arn(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "instance_role_arn", value) + @property + @pulumi.getter(name="instanceRoleCredentialsProvider") + def instance_role_credentials_provider(self) -> Optional[pulumi.Input['FleetInstanceRoleCredentialsProvider']]: + """ + Credentials provider implementation that loads credentials from the Amazon EC2 Instance Metadata Service. + """ + return pulumi.get(self, "instance_role_credentials_provider") + + @instance_role_credentials_provider.setter + def instance_role_credentials_provider(self, value: Optional[pulumi.Input['FleetInstanceRoleCredentialsProvider']]): + pulumi.set(self, "instance_role_credentials_provider", value) + @property @pulumi.getter def locations(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['FleetLocationConfigurationArgs']]]]: @@ -480,6 +498,7 @@ def __init__(__self__, ec2_instance_type: Optional[pulumi.Input[str]] = None, fleet_type: Optional[pulumi.Input['FleetType']] = None, instance_role_arn: Optional[pulumi.Input[str]] = None, + instance_role_credentials_provider: Optional[pulumi.Input['FleetInstanceRoleCredentialsProvider']] = None, locations: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['FleetLocationConfigurationArgs']]]]] = None, log_paths: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, max_size: Optional[pulumi.Input[int]] = None, @@ -510,6 +529,7 @@ def __init__(__self__, :param pulumi.Input[str] ec2_instance_type: The name of an EC2 instance type that is supported in Amazon GameLift. A fleet instance type determines the computing resources of each instance in the fleet, including CPU, memory, storage, and networking capacity. Amazon GameLift supports the following EC2 instance types. See Amazon EC2 Instance Types for detailed descriptions. :param pulumi.Input['FleetType'] fleet_type: Indicates whether to use On-Demand instances or Spot instances for this fleet. If empty, the default is ON_DEMAND. Both categories of instances use identical hardware and configurations based on the instance type selected for this fleet. :param pulumi.Input[str] instance_role_arn: A unique identifier for an AWS IAM role that manages access to your AWS services. With an instance role ARN set, any application that runs on an instance in this fleet can assume the role, including install scripts, server processes, and daemons (background processes). Create a role or look up a role's ARN from the IAM dashboard in the AWS Management Console. + :param pulumi.Input['FleetInstanceRoleCredentialsProvider'] instance_role_credentials_provider: Credentials provider implementation that loads credentials from the Amazon EC2 Instance Metadata Service. :param pulumi.Input[Sequence[pulumi.Input[str]]] log_paths: This parameter is no longer used. When hosting a custom game build, specify where Amazon GameLift should store log files using the Amazon GameLift server API call ProcessReady() :param pulumi.Input[int] max_size: [DEPRECATED] The maximum value that is allowed for the fleet's instance count. When creating a new fleet, GameLift automatically sets this value to "1". Once the fleet is active, you can change this value. :param pulumi.Input[Sequence[pulumi.Input[str]]] metric_groups: The name of an Amazon CloudWatch metric group. A metric group aggregates the metrics for all fleets in the group. Specify a string containing the metric group name. You can use an existing name or use a new name to create a new metric group. Currently, this parameter can have only one string. @@ -566,6 +586,7 @@ def _internal_init(__self__, ec2_instance_type: Optional[pulumi.Input[str]] = None, fleet_type: Optional[pulumi.Input['FleetType']] = None, instance_role_arn: Optional[pulumi.Input[str]] = None, + instance_role_credentials_provider: Optional[pulumi.Input['FleetInstanceRoleCredentialsProvider']] = None, locations: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['FleetLocationConfigurationArgs']]]]] = None, log_paths: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, max_size: Optional[pulumi.Input[int]] = None, @@ -609,6 +630,7 @@ def _setter(key, value): __props__.__dict__["ec2_instance_type"] = ec2_instance_type __props__.__dict__["fleet_type"] = fleet_type __props__.__dict__["instance_role_arn"] = instance_role_arn + __props__.__dict__["instance_role_credentials_provider"] = instance_role_credentials_provider __props__.__dict__["locations"] = locations __props__.__dict__["log_paths"] = log_paths __props__.__dict__["max_size"] = max_size @@ -634,7 +656,7 @@ def _setter(key, value): __props__.__dict__["server_launch_parameters"] = server_launch_parameters __props__.__dict__["server_launch_path"] = server_launch_path __props__.__dict__["fleet_id"] = None - replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["build_id", "certificate_configuration", "compute_type", "ec2_instance_type", "fleet_type", "instance_role_arn", "log_paths[*]", "peer_vpc_aws_account_id", "peer_vpc_id", "script_id", "server_launch_parameters", "server_launch_path"]) + replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["build_id", "certificate_configuration", "compute_type", "ec2_instance_type", "fleet_type", "instance_role_arn", "instance_role_credentials_provider", "log_paths[*]", "peer_vpc_aws_account_id", "peer_vpc_id", "script_id", "server_launch_parameters", "server_launch_path"]) opts = pulumi.ResourceOptions.merge(opts, replace_on_changes) super(Fleet, __self__).__init__( 'aws-native:gamelift:Fleet', @@ -669,6 +691,7 @@ def get(resource_name: str, __props__.__dict__["fleet_id"] = None __props__.__dict__["fleet_type"] = None __props__.__dict__["instance_role_arn"] = None + __props__.__dict__["instance_role_credentials_provider"] = None __props__.__dict__["locations"] = None __props__.__dict__["log_paths"] = None __props__.__dict__["max_size"] = None @@ -773,6 +796,14 @@ def instance_role_arn(self) -> pulumi.Output[Optional[str]]: """ return pulumi.get(self, "instance_role_arn") + @property + @pulumi.getter(name="instanceRoleCredentialsProvider") + def instance_role_credentials_provider(self) -> pulumi.Output[Optional['FleetInstanceRoleCredentialsProvider']]: + """ + Credentials provider implementation that loads credentials from the Amazon EC2 Instance Metadata Service. + """ + return pulumi.get(self, "instance_role_credentials_provider") + @property @pulumi.getter def locations(self) -> pulumi.Output[Optional[Sequence['outputs.FleetLocationConfiguration']]]: diff --git a/sdk/python/pulumi_aws_native/iam/_inputs.py b/sdk/python/pulumi_aws_native/iam/_inputs.py index 01e88c9db3..0fff2b1ef5 100644 --- a/sdk/python/pulumi_aws_native/iam/_inputs.py +++ b/sdk/python/pulumi_aws_native/iam/_inputs.py @@ -25,8 +25,12 @@ @pulumi.input_type class GroupPolicyArgs: def __init__(__self__, *, - policy_document: Any, + policy_document: pulumi.Input[str], policy_name: pulumi.Input[str]): + """ + :param pulumi.Input[str] policy_document: The policy document. + :param pulumi.Input[str] policy_name: The friendly name (not ARN) identifying the policy. + """ GroupPolicyArgs._configure( lambda key, value: pulumi.set(__self__, key, value), policy_document=policy_document, @@ -35,7 +39,7 @@ def __init__(__self__, *, @staticmethod def _configure( _setter: Callable[[Any, Any], None], - policy_document: Any, + policy_document: pulumi.Input[str], policy_name: pulumi.Input[str], opts: Optional[pulumi.ResourceOptions]=None): _setter("policy_document", policy_document) @@ -43,16 +47,22 @@ def _configure( @property @pulumi.getter(name="policyDocument") - def policy_document(self) -> Any: + def policy_document(self) -> pulumi.Input[str]: + """ + The policy document. + """ return pulumi.get(self, "policy_document") @policy_document.setter - def policy_document(self, value: Any): + def policy_document(self, value: pulumi.Input[str]): pulumi.set(self, "policy_document", value) @property @pulumi.getter(name="policyName") def policy_name(self) -> pulumi.Input[str]: + """ + The friendly name (not ARN) identifying the policy. + """ return pulumi.get(self, "policy_name") @policy_name.setter diff --git a/sdk/python/pulumi_aws_native/iam/get_group.py b/sdk/python/pulumi_aws_native/iam/get_group.py index 34b8442368..abcfe58f52 100644 --- a/sdk/python/pulumi_aws_native/iam/get_group.py +++ b/sdk/python/pulumi_aws_native/iam/get_group.py @@ -19,13 +19,10 @@ @pulumi.output_type class GetGroupResult: - def __init__(__self__, arn=None, id=None, managed_policy_arns=None, path=None, policies=None): + def __init__(__self__, arn=None, managed_policy_arns=None, path=None, policies=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 managed_policy_arns and not isinstance(managed_policy_arns, list): raise TypeError("Expected argument 'managed_policy_arns' to be a list") pulumi.set(__self__, "managed_policy_arns", managed_policy_arns) @@ -39,26 +36,33 @@ def __init__(__self__, arn=None, id=None, managed_policy_arns=None, path=None, p @property @pulumi.getter def arn(self) -> Optional[str]: + """ + The Arn of the group to create + """ return pulumi.get(self, "arn") - @property - @pulumi.getter - def id(self) -> Optional[str]: - return pulumi.get(self, "id") - @property @pulumi.getter(name="managedPolicyArns") def managed_policy_arns(self) -> Optional[Sequence[str]]: + """ + A list of Amazon Resource Names (ARNs) of the IAM managed policies that you want to attach to the role. + """ return pulumi.get(self, "managed_policy_arns") @property @pulumi.getter def path(self) -> Optional[str]: + """ + The path to the group + """ return pulumi.get(self, "path") @property @pulumi.getter def policies(self) -> Optional[Sequence['outputs.GroupPolicy']]: + """ + Adds or updates an inline policy document that is embedded in the specified IAM group + """ return pulumi.get(self, "policies") @@ -69,34 +73,38 @@ def __await__(self): yield self return GetGroupResult( arn=self.arn, - id=self.id, managed_policy_arns=self.managed_policy_arns, path=self.path, policies=self.policies) -def get_group(id: Optional[str] = None, +def get_group(group_name: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetGroupResult: """ Resource Type definition for AWS::IAM::Group + + + :param str group_name: The name of the group to create """ __args__ = dict() - __args__['id'] = id + __args__['groupName'] = group_name opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) __ret__ = pulumi.runtime.invoke('aws-native:iam:getGroup', __args__, opts=opts, typ=GetGroupResult).value return AwaitableGetGroupResult( arn=pulumi.get(__ret__, 'arn'), - id=pulumi.get(__ret__, 'id'), managed_policy_arns=pulumi.get(__ret__, 'managed_policy_arns'), path=pulumi.get(__ret__, 'path'), policies=pulumi.get(__ret__, 'policies')) @_utilities.lift_output_func(get_group) -def get_group_output(id: Optional[pulumi.Input[str]] = None, +def get_group_output(group_name: Optional[pulumi.Input[str]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetGroupResult]: """ Resource Type definition for AWS::IAM::Group + + + :param str group_name: The name of the group to create """ ... diff --git a/sdk/python/pulumi_aws_native/iam/group.py b/sdk/python/pulumi_aws_native/iam/group.py index c8750ef55b..488a8cb096 100644 --- a/sdk/python/pulumi_aws_native/iam/group.py +++ b/sdk/python/pulumi_aws_native/iam/group.py @@ -22,6 +22,10 @@ def __init__(__self__, *, policies: Optional[pulumi.Input[Sequence[pulumi.Input['GroupPolicyArgs']]]] = None): """ The set of arguments for constructing a Group resource. + :param pulumi.Input[str] group_name: The name of the group to create + :param pulumi.Input[Sequence[pulumi.Input[str]]] managed_policy_arns: A list of Amazon Resource Names (ARNs) of the IAM managed policies that you want to attach to the role. + :param pulumi.Input[str] path: The path to the group + :param pulumi.Input[Sequence[pulumi.Input['GroupPolicyArgs']]] policies: Adds or updates an inline policy document that is embedded in the specified IAM group """ GroupArgs._configure( lambda key, value: pulumi.set(__self__, key, value), @@ -50,6 +54,9 @@ def _configure( @property @pulumi.getter(name="groupName") def group_name(self) -> Optional[pulumi.Input[str]]: + """ + The name of the group to create + """ return pulumi.get(self, "group_name") @group_name.setter @@ -59,6 +66,9 @@ def group_name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="managedPolicyArns") def managed_policy_arns(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + """ + A list of Amazon Resource Names (ARNs) of the IAM managed policies that you want to attach to the role. + """ return pulumi.get(self, "managed_policy_arns") @managed_policy_arns.setter @@ -68,6 +78,9 @@ def managed_policy_arns(self, value: Optional[pulumi.Input[Sequence[pulumi.Input @property @pulumi.getter def path(self) -> Optional[pulumi.Input[str]]: + """ + The path to the group + """ return pulumi.get(self, "path") @path.setter @@ -77,6 +90,9 @@ def path(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def policies(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['GroupPolicyArgs']]]]: + """ + Adds or updates an inline policy document that is embedded in the specified IAM group + """ return pulumi.get(self, "policies") @policies.setter @@ -84,12 +100,7 @@ def policies(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['GroupPoli pulumi.set(self, "policies", value) -warnings.warn("""Group is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.""", DeprecationWarning) - - class Group(pulumi.CustomResource): - warnings.warn("""Group is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.""", DeprecationWarning) - @overload def __init__(__self__, resource_name: str, @@ -104,6 +115,10 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[str] group_name: The name of the group to create + :param pulumi.Input[Sequence[pulumi.Input[str]]] managed_policy_arns: A list of Amazon Resource Names (ARNs) of the IAM managed policies that you want to attach to the role. + :param pulumi.Input[str] path: The path to the group + :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['GroupPolicyArgs']]]] policies: Adds or updates an inline policy document that is embedded in the specified IAM group """ ... @overload @@ -138,7 +153,6 @@ def _internal_init(__self__, path: Optional[pulumi.Input[str]] = None, policies: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['GroupPolicyArgs']]]]] = None, __props__=None): - pulumi.log.warn("""Group is deprecated: Group is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.""") opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) if not isinstance(opts, pulumi.ResourceOptions): raise TypeError('Expected resource options to be a ResourceOptions instance') @@ -186,25 +200,40 @@ def get(resource_name: str, @property @pulumi.getter def arn(self) -> pulumi.Output[str]: + """ + The Arn of the group to create + """ return pulumi.get(self, "arn") @property @pulumi.getter(name="groupName") def group_name(self) -> pulumi.Output[Optional[str]]: + """ + The name of the group to create + """ return pulumi.get(self, "group_name") @property @pulumi.getter(name="managedPolicyArns") def managed_policy_arns(self) -> pulumi.Output[Optional[Sequence[str]]]: + """ + A list of Amazon Resource Names (ARNs) of the IAM managed policies that you want to attach to the role. + """ return pulumi.get(self, "managed_policy_arns") @property @pulumi.getter def path(self) -> pulumi.Output[Optional[str]]: + """ + The path to the group + """ return pulumi.get(self, "path") @property @pulumi.getter def policies(self) -> pulumi.Output[Optional[Sequence['outputs.GroupPolicy']]]: + """ + Adds or updates an inline policy document that is embedded in the specified IAM group + """ return pulumi.get(self, "policies") diff --git a/sdk/python/pulumi_aws_native/iam/outputs.py b/sdk/python/pulumi_aws_native/iam/outputs.py index 8cfd97d1a4..e5de64ca75 100644 --- a/sdk/python/pulumi_aws_native/iam/outputs.py +++ b/sdk/python/pulumi_aws_native/iam/outputs.py @@ -44,8 +44,12 @@ def get(self, key: str, default = None) -> Any: return super().get(key, default) def __init__(__self__, *, - policy_document: Any, + policy_document: str, policy_name: str): + """ + :param str policy_document: The policy document. + :param str policy_name: The friendly name (not ARN) identifying the policy. + """ GroupPolicy._configure( lambda key, value: pulumi.set(__self__, key, value), policy_document=policy_document, @@ -54,7 +58,7 @@ def __init__(__self__, *, @staticmethod def _configure( _setter: Callable[[Any, Any], None], - policy_document: Any, + policy_document: str, policy_name: str, opts: Optional[pulumi.ResourceOptions]=None): _setter("policy_document", policy_document) @@ -62,12 +66,18 @@ def _configure( @property @pulumi.getter(name="policyDocument") - def policy_document(self) -> Any: + def policy_document(self) -> str: + """ + The policy document. + """ return pulumi.get(self, "policy_document") @property @pulumi.getter(name="policyName") def policy_name(self) -> str: + """ + The friendly name (not ARN) identifying the policy. + """ return pulumi.get(self, "policy_name") diff --git a/sdk/python/pulumi_aws_native/iot/_inputs.py b/sdk/python/pulumi_aws_native/iot/_inputs.py index 8ae4e45f45..f03a4c73ad 100644 --- a/sdk/python/pulumi_aws_native/iot/_inputs.py +++ b/sdk/python/pulumi_aws_native/iot/_inputs.py @@ -44,6 +44,7 @@ 'MitigationActionTagArgs', 'MitigationActionUpdateCaCertificateParamsArgs', 'MitigationActionUpdateDeviceCertificateParamsArgs', + 'PolicyTagArgs', 'PresignedUrlConfigPropertiesArgs', 'ProvisioningTemplateProvisioningHookArgs', 'ProvisioningTemplateTagArgs', @@ -1787,6 +1788,44 @@ def action(self, value: pulumi.Input['MitigationActionUpdateDeviceCertificatePar pulumi.set(self, "action", value) +@pulumi.input_type +class PolicyTagArgs: + def __init__(__self__, *, + key: pulumi.Input[str], + value: pulumi.Input[str]): + PolicyTagArgs._configure( + lambda key, value: pulumi.set(__self__, key, value), + key=key, + value=value, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + key: pulumi.Input[str], + value: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions]=None): + _setter("key", key) + _setter("value", value) + + @property + @pulumi.getter + def key(self) -> pulumi.Input[str]: + return pulumi.get(self, "key") + + @key.setter + def key(self, value: pulumi.Input[str]): + pulumi.set(self, "key", value) + + @property + @pulumi.getter + def value(self) -> pulumi.Input[str]: + return pulumi.get(self, "value") + + @value.setter + def value(self, value: pulumi.Input[str]): + pulumi.set(self, "value", value) + + @pulumi.input_type class PresignedUrlConfigPropertiesArgs: def __init__(__self__, *, diff --git a/sdk/python/pulumi_aws_native/iot/get_job_template.py b/sdk/python/pulumi_aws_native/iot/get_job_template.py index 1a43e4d630..83d304405c 100644 --- a/sdk/python/pulumi_aws_native/iot/get_job_template.py +++ b/sdk/python/pulumi_aws_native/iot/get_job_template.py @@ -8,8 +8,6 @@ import pulumi.runtime from typing import Any, Callable, Mapping, Optional, Sequence, Union, overload from .. import _utilities -from . import outputs -from ._enums import * __all__ = [ 'GetJobTemplateResult', @@ -20,40 +18,16 @@ @pulumi.output_type class GetJobTemplateResult: - def __init__(__self__, arn=None, destination_package_versions=None, job_executions_retry_config=None, maintenance_windows=None): + def __init__(__self__, arn=None): if arn and not isinstance(arn, str): raise TypeError("Expected argument 'arn' to be a str") pulumi.set(__self__, "arn", arn) - if destination_package_versions and not isinstance(destination_package_versions, list): - raise TypeError("Expected argument 'destination_package_versions' to be a list") - pulumi.set(__self__, "destination_package_versions", destination_package_versions) - if job_executions_retry_config and not isinstance(job_executions_retry_config, dict): - raise TypeError("Expected argument 'job_executions_retry_config' to be a dict") - pulumi.set(__self__, "job_executions_retry_config", job_executions_retry_config) - if maintenance_windows and not isinstance(maintenance_windows, list): - raise TypeError("Expected argument 'maintenance_windows' to be a list") - pulumi.set(__self__, "maintenance_windows", maintenance_windows) @property @pulumi.getter def arn(self) -> Optional[str]: return pulumi.get(self, "arn") - @property - @pulumi.getter(name="destinationPackageVersions") - def destination_package_versions(self) -> Optional[Sequence[str]]: - return pulumi.get(self, "destination_package_versions") - - @property - @pulumi.getter(name="jobExecutionsRetryConfig") - def job_executions_retry_config(self) -> Optional['outputs.JobExecutionsRetryConfigProperties']: - return pulumi.get(self, "job_executions_retry_config") - - @property - @pulumi.getter(name="maintenanceWindows") - def maintenance_windows(self) -> Optional[Sequence['outputs.JobTemplateMaintenanceWindow']]: - return pulumi.get(self, "maintenance_windows") - class AwaitableGetJobTemplateResult(GetJobTemplateResult): # pylint: disable=using-constant-test @@ -61,10 +35,7 @@ def __await__(self): if False: yield self return GetJobTemplateResult( - arn=self.arn, - destination_package_versions=self.destination_package_versions, - job_executions_retry_config=self.job_executions_retry_config, - maintenance_windows=self.maintenance_windows) + arn=self.arn) def get_job_template(job_template_id: Optional[str] = None, @@ -78,10 +49,7 @@ def get_job_template(job_template_id: Optional[str] = None, __ret__ = pulumi.runtime.invoke('aws-native:iot:getJobTemplate', __args__, opts=opts, typ=GetJobTemplateResult).value return AwaitableGetJobTemplateResult( - arn=pulumi.get(__ret__, 'arn'), - destination_package_versions=pulumi.get(__ret__, 'destination_package_versions'), - job_executions_retry_config=pulumi.get(__ret__, 'job_executions_retry_config'), - maintenance_windows=pulumi.get(__ret__, 'maintenance_windows')) + arn=pulumi.get(__ret__, 'arn')) @_utilities.lift_output_func(get_job_template) diff --git a/sdk/python/pulumi_aws_native/iot/get_policy.py b/sdk/python/pulumi_aws_native/iot/get_policy.py index efd0d6cf79..74621840ae 100644 --- a/sdk/python/pulumi_aws_native/iot/get_policy.py +++ b/sdk/python/pulumi_aws_native/iot/get_policy.py @@ -8,6 +8,7 @@ import pulumi.runtime from typing import Any, Callable, Mapping, Optional, Sequence, Union, overload from .. import _utilities +from . import outputs __all__ = [ 'GetPolicyResult', @@ -18,7 +19,7 @@ @pulumi.output_type class GetPolicyResult: - def __init__(__self__, arn=None, id=None, policy_document=None): + def __init__(__self__, arn=None, id=None, policy_document=None, tags=None): if arn and not isinstance(arn, str): raise TypeError("Expected argument 'arn' to be a str") pulumi.set(__self__, "arn", arn) @@ -28,6 +29,9 @@ def __init__(__self__, arn=None, id=None, policy_document=None): if policy_document and not isinstance(policy_document, dict): raise TypeError("Expected argument 'policy_document' to be a dict") pulumi.set(__self__, "policy_document", policy_document) + if tags and not isinstance(tags, list): + raise TypeError("Expected argument 'tags' to be a list") + pulumi.set(__self__, "tags", tags) @property @pulumi.getter @@ -44,6 +48,11 @@ def id(self) -> Optional[str]: def policy_document(self) -> Optional[Any]: return pulumi.get(self, "policy_document") + @property + @pulumi.getter + def tags(self) -> Optional[Sequence['outputs.PolicyTag']]: + return pulumi.get(self, "tags") + class AwaitableGetPolicyResult(GetPolicyResult): # pylint: disable=using-constant-test @@ -53,7 +62,8 @@ def __await__(self): return GetPolicyResult( arn=self.arn, id=self.id, - policy_document=self.policy_document) + policy_document=self.policy_document, + tags=self.tags) def get_policy(id: Optional[str] = None, @@ -69,7 +79,8 @@ def get_policy(id: Optional[str] = None, return AwaitableGetPolicyResult( arn=pulumi.get(__ret__, 'arn'), id=pulumi.get(__ret__, 'id'), - policy_document=pulumi.get(__ret__, 'policy_document')) + policy_document=pulumi.get(__ret__, 'policy_document'), + tags=pulumi.get(__ret__, 'tags')) @_utilities.lift_output_func(get_policy) diff --git a/sdk/python/pulumi_aws_native/iot/job_template.py b/sdk/python/pulumi_aws_native/iot/job_template.py index aace69e8d9..4c511bacdc 100644 --- a/sdk/python/pulumi_aws_native/iot/job_template.py +++ b/sdk/python/pulumi_aws_native/iot/job_template.py @@ -372,7 +372,7 @@ def _setter(key, value): TimeoutConfigPropertiesArgs._configure(_setter, **timeout_config) __props__.__dict__["timeout_config"] = timeout_config __props__.__dict__["arn"] = None - replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["abort_config", "description", "document", "document_source", "job_arn", "job_executions_rollout_config", "job_template_id", "presigned_url_config", "tags[*]", "timeout_config"]) + replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["abort_config", "description", "destination_package_versions[*]", "document", "document_source", "job_arn", "job_executions_retry_config", "job_executions_rollout_config", "job_template_id", "maintenance_windows[*]", "presigned_url_config", "tags[*]", "timeout_config"]) opts = pulumi.ResourceOptions.merge(opts, replace_on_changes) super(JobTemplate, __self__).__init__( 'aws-native:iot:JobTemplate', diff --git a/sdk/python/pulumi_aws_native/iot/outputs.py b/sdk/python/pulumi_aws_native/iot/outputs.py index 34e916228a..3b92b1b875 100644 --- a/sdk/python/pulumi_aws_native/iot/outputs.py +++ b/sdk/python/pulumi_aws_native/iot/outputs.py @@ -46,6 +46,7 @@ 'MitigationActionTag', 'MitigationActionUpdateCaCertificateParams', 'MitigationActionUpdateDeviceCertificateParams', + 'PolicyTag', 'PresignedUrlConfigProperties', 'ProvisioningTemplateProvisioningHook', 'ProvisioningTemplateTag', @@ -1999,6 +2000,36 @@ def action(self) -> 'MitigationActionUpdateDeviceCertificateParamsAction': return pulumi.get(self, "action") +@pulumi.output_type +class PolicyTag(dict): + def __init__(__self__, *, + key: str, + value: str): + PolicyTag._configure( + lambda key, value: pulumi.set(__self__, key, value), + key=key, + value=value, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + key: str, + value: str, + opts: Optional[pulumi.ResourceOptions]=None): + _setter("key", key) + _setter("value", value) + + @property + @pulumi.getter + def key(self) -> str: + return pulumi.get(self, "key") + + @property + @pulumi.getter + def value(self) -> str: + return pulumi.get(self, "value") + + @pulumi.output_type class PresignedUrlConfigProperties(dict): """ diff --git a/sdk/python/pulumi_aws_native/iot/policy.py b/sdk/python/pulumi_aws_native/iot/policy.py index 1f3c542194..7d6b60a1d7 100644 --- a/sdk/python/pulumi_aws_native/iot/policy.py +++ b/sdk/python/pulumi_aws_native/iot/policy.py @@ -8,6 +8,8 @@ import pulumi.runtime from typing import Any, Callable, Mapping, Optional, Sequence, Union, overload from .. import _utilities +from . import outputs +from ._inputs import * __all__ = ['PolicyArgs', 'Policy'] @@ -15,7 +17,8 @@ class PolicyArgs: def __init__(__self__, *, policy_document: Any, - policy_name: Optional[pulumi.Input[str]] = None): + policy_name: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Sequence[pulumi.Input['PolicyTagArgs']]]] = None): """ The set of arguments for constructing a Policy resource. """ @@ -23,16 +26,20 @@ def __init__(__self__, *, lambda key, value: pulumi.set(__self__, key, value), policy_document=policy_document, policy_name=policy_name, + tags=tags, ) @staticmethod def _configure( _setter: Callable[[Any, Any], None], policy_document: Any, policy_name: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Sequence[pulumi.Input['PolicyTagArgs']]]] = None, opts: Optional[pulumi.ResourceOptions]=None): _setter("policy_document", policy_document) if policy_name is not None: _setter("policy_name", policy_name) + if tags is not None: + _setter("tags", tags) @property @pulumi.getter(name="policyDocument") @@ -52,6 +59,15 @@ def policy_name(self) -> Optional[pulumi.Input[str]]: def policy_name(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "policy_name", value) + @property + @pulumi.getter + def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['PolicyTagArgs']]]]: + return pulumi.get(self, "tags") + + @tags.setter + def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['PolicyTagArgs']]]]): + pulumi.set(self, "tags", value) + class Policy(pulumi.CustomResource): @overload @@ -60,6 +76,7 @@ def __init__(__self__, opts: Optional[pulumi.ResourceOptions] = None, policy_document: Optional[Any] = None, policy_name: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['PolicyTagArgs']]]]] = None, __props__=None): """ Resource Type definition for AWS::IoT::Policy @@ -97,6 +114,7 @@ def _internal_init(__self__, opts: Optional[pulumi.ResourceOptions] = None, policy_document: Optional[Any] = None, policy_name: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['PolicyTagArgs']]]]] = None, __props__=None): opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) if not isinstance(opts, pulumi.ResourceOptions): @@ -110,6 +128,7 @@ def _internal_init(__self__, raise TypeError("Missing required property 'policy_document'") __props__.__dict__["policy_document"] = policy_document __props__.__dict__["policy_name"] = policy_name + __props__.__dict__["tags"] = tags __props__.__dict__["arn"] = None replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["policy_name"]) opts = pulumi.ResourceOptions.merge(opts, replace_on_changes) @@ -138,6 +157,7 @@ def get(resource_name: str, __props__.__dict__["arn"] = None __props__.__dict__["policy_document"] = None __props__.__dict__["policy_name"] = None + __props__.__dict__["tags"] = None return Policy(resource_name, opts=opts, __props__=__props__) @property @@ -155,3 +175,8 @@ def policy_document(self) -> pulumi.Output[Any]: def policy_name(self) -> pulumi.Output[Optional[str]]: return pulumi.get(self, "policy_name") + @property + @pulumi.getter + def tags(self) -> pulumi.Output[Optional[Sequence['outputs.PolicyTag']]]: + return pulumi.get(self, "tags") + diff --git a/sdk/python/pulumi_aws_native/lambda_/function.py b/sdk/python/pulumi_aws_native/lambda_/function.py index 037b5c9632..b767052efb 100644 --- a/sdk/python/pulumi_aws_native/lambda_/function.py +++ b/sdk/python/pulumi_aws_native/lambda_/function.py @@ -33,6 +33,7 @@ def __init__(__self__, *, layers: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, memory_size: Optional[pulumi.Input[int]] = None, package_type: Optional[pulumi.Input['FunctionPackageType']] = None, + policy: Optional[Any] = None, reserved_concurrent_executions: Optional[pulumi.Input[int]] = None, runtime: Optional[pulumi.Input[str]] = None, runtime_management_config: Optional[pulumi.Input['FunctionRuntimeManagementConfigArgs']] = None, @@ -58,6 +59,7 @@ def __init__(__self__, *, :param pulumi.Input[Sequence[pulumi.Input[str]]] layers: A list of function layers to add to the function's execution environment. Specify each layer by its ARN, including the version. :param pulumi.Input[int] memory_size: The amount of memory that your function has access to. Increasing the function's memory also increases its CPU allocation. The default value is 128 MB. The value must be a multiple of 64 MB. :param pulumi.Input['FunctionPackageType'] package_type: PackageType. + :param Any policy: The resource policy of your function :param pulumi.Input[int] reserved_concurrent_executions: The number of simultaneous executions to reserve for the function. :param pulumi.Input[str] runtime: The identifier of the function's runtime. :param pulumi.Input['FunctionRuntimeManagementConfigArgs'] runtime_management_config: RuntimeManagementConfig @@ -85,6 +87,7 @@ def __init__(__self__, *, layers=layers, memory_size=memory_size, package_type=package_type, + policy=policy, reserved_concurrent_executions=reserved_concurrent_executions, runtime=runtime, runtime_management_config=runtime_management_config, @@ -113,6 +116,7 @@ def _configure( layers: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, memory_size: Optional[pulumi.Input[int]] = None, package_type: Optional[pulumi.Input['FunctionPackageType']] = None, + policy: Optional[Any] = None, reserved_concurrent_executions: Optional[pulumi.Input[int]] = None, runtime: Optional[pulumi.Input[str]] = None, runtime_management_config: Optional[pulumi.Input['FunctionRuntimeManagementConfigArgs']] = None, @@ -152,6 +156,8 @@ def _configure( _setter("memory_size", memory_size) if package_type is not None: _setter("package_type", package_type) + if policy is not None: + _setter("policy", policy) if reserved_concurrent_executions is not None: _setter("reserved_concurrent_executions", reserved_concurrent_executions) if runtime is not None: @@ -358,6 +364,18 @@ def package_type(self) -> Optional[pulumi.Input['FunctionPackageType']]: def package_type(self, value: Optional[pulumi.Input['FunctionPackageType']]): pulumi.set(self, "package_type", value) + @property + @pulumi.getter + def policy(self) -> Optional[Any]: + """ + The resource policy of your function + """ + return pulumi.get(self, "policy") + + @policy.setter + def policy(self, value: Optional[Any]): + pulumi.set(self, "policy", value) + @property @pulumi.getter(name="reservedConcurrentExecutions") def reserved_concurrent_executions(self) -> Optional[pulumi.Input[int]]: @@ -475,6 +493,7 @@ def __init__(__self__, layers: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, memory_size: Optional[pulumi.Input[int]] = None, package_type: Optional[pulumi.Input['FunctionPackageType']] = None, + policy: Optional[Any] = None, reserved_concurrent_executions: Optional[pulumi.Input[int]] = None, role: Optional[pulumi.Input[str]] = None, runtime: Optional[pulumi.Input[str]] = None, @@ -504,6 +523,7 @@ def __init__(__self__, :param pulumi.Input[Sequence[pulumi.Input[str]]] layers: A list of function layers to add to the function's execution environment. Specify each layer by its ARN, including the version. :param pulumi.Input[int] memory_size: The amount of memory that your function has access to. Increasing the function's memory also increases its CPU allocation. The default value is 128 MB. The value must be a multiple of 64 MB. :param pulumi.Input['FunctionPackageType'] package_type: PackageType. + :param Any policy: The resource policy of your function :param pulumi.Input[int] reserved_concurrent_executions: The number of simultaneous executions to reserve for the function. :param pulumi.Input[str] role: The Amazon Resource Name (ARN) of the function's execution role. :param pulumi.Input[str] runtime: The identifier of the function's runtime. @@ -557,6 +577,7 @@ def _internal_init(__self__, layers: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, memory_size: Optional[pulumi.Input[int]] = None, package_type: Optional[pulumi.Input['FunctionPackageType']] = None, + policy: Optional[Any] = None, reserved_concurrent_executions: Optional[pulumi.Input[int]] = None, role: Optional[pulumi.Input[str]] = None, runtime: Optional[pulumi.Input[str]] = None, @@ -617,6 +638,7 @@ def _setter(key, value): __props__.__dict__["layers"] = layers __props__.__dict__["memory_size"] = memory_size __props__.__dict__["package_type"] = package_type + __props__.__dict__["policy"] = policy __props__.__dict__["reserved_concurrent_executions"] = reserved_concurrent_executions if role is None and not opts.urn: raise TypeError("Missing required property 'role'") @@ -690,6 +712,7 @@ def get(resource_name: str, __props__.__dict__["layers"] = None __props__.__dict__["memory_size"] = None __props__.__dict__["package_type"] = None + __props__.__dict__["policy"] = None __props__.__dict__["reserved_concurrent_executions"] = None __props__.__dict__["role"] = None __props__.__dict__["runtime"] = None @@ -827,6 +850,14 @@ def package_type(self) -> pulumi.Output[Optional['FunctionPackageType']]: """ return pulumi.get(self, "package_type") + @property + @pulumi.getter + def policy(self) -> pulumi.Output[Optional[Any]]: + """ + The resource policy of your function + """ + return pulumi.get(self, "policy") + @property @pulumi.getter(name="reservedConcurrentExecutions") def reserved_concurrent_executions(self) -> pulumi.Output[Optional[int]]: diff --git a/sdk/python/pulumi_aws_native/msk/__init__.py b/sdk/python/pulumi_aws_native/msk/__init__.py index 77b26bc028..f2dfafffc2 100644 --- a/sdk/python/pulumi_aws_native/msk/__init__.py +++ b/sdk/python/pulumi_aws_native/msk/__init__.py @@ -14,8 +14,10 @@ from .get_cluster import * from .get_cluster_policy import * from .get_configuration import * +from .get_replicator import * from .get_serverless_cluster import * from .get_vpc_connection import * +from .replicator import * from .serverless_cluster import * from .vpc_connection import * from ._inputs import * diff --git a/sdk/python/pulumi_aws_native/msk/_enums.py b/sdk/python/pulumi_aws_native/msk/_enums.py index de9a6a8958..a0a1de213c 100644 --- a/sdk/python/pulumi_aws_native/msk/_enums.py +++ b/sdk/python/pulumi_aws_native/msk/_enums.py @@ -8,6 +8,7 @@ 'ClusterEncryptionInTransitClientBroker', 'ClusterEnhancedMonitoring', 'ClusterStorageMode', + 'ReplicatorReplicationInfoTargetCompressionType', 'VpcConnectionAuthentication', ] @@ -30,6 +31,17 @@ class ClusterStorageMode(str, Enum): TIERED = "TIERED" +class ReplicatorReplicationInfoTargetCompressionType(str, Enum): + """ + The type of compression to use writing records to target Kafka cluster. + """ + NONE = "NONE" + GZIP = "GZIP" + SNAPPY = "SNAPPY" + LZ4 = "LZ4" + ZSTD = "ZSTD" + + class VpcConnectionAuthentication(str, Enum): """ The type of private link authentication diff --git a/sdk/python/pulumi_aws_native/msk/_inputs.py b/sdk/python/pulumi_aws_native/msk/_inputs.py index 3f5e06e170..f1bb9cce46 100644 --- a/sdk/python/pulumi_aws_native/msk/_inputs.py +++ b/sdk/python/pulumi_aws_native/msk/_inputs.py @@ -43,6 +43,13 @@ 'ClusterVpcConnectivityTlsArgs', 'ClusterVpcConnectivityArgs', 'ConfigurationLatestRevisionArgs', + 'ReplicatorAmazonMskClusterArgs', + 'ReplicatorConsumerGroupReplicationArgs', + 'ReplicatorKafkaClusterClientVpcConfigArgs', + 'ReplicatorKafkaClusterArgs', + 'ReplicatorReplicationInfoArgs', + 'ReplicatorTagArgs', + 'ReplicatorTopicReplicationArgs', 'ServerlessClusterClientAuthenticationArgs', 'ServerlessClusterIamArgs', 'ServerlessClusterSaslArgs', @@ -1228,6 +1235,464 @@ def revision(self, value: Optional[pulumi.Input[int]]): pulumi.set(self, "revision", value) +@pulumi.input_type +class ReplicatorAmazonMskClusterArgs: + def __init__(__self__, *, + msk_cluster_arn: pulumi.Input[str]): + """ + Details of an Amazon MSK cluster. + :param pulumi.Input[str] msk_cluster_arn: The ARN of an Amazon MSK cluster. + """ + ReplicatorAmazonMskClusterArgs._configure( + lambda key, value: pulumi.set(__self__, key, value), + msk_cluster_arn=msk_cluster_arn, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + msk_cluster_arn: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions]=None): + _setter("msk_cluster_arn", msk_cluster_arn) + + @property + @pulumi.getter(name="mskClusterArn") + def msk_cluster_arn(self) -> pulumi.Input[str]: + """ + The ARN of an Amazon MSK cluster. + """ + return pulumi.get(self, "msk_cluster_arn") + + @msk_cluster_arn.setter + def msk_cluster_arn(self, value: pulumi.Input[str]): + pulumi.set(self, "msk_cluster_arn", value) + + +@pulumi.input_type +class ReplicatorConsumerGroupReplicationArgs: + def __init__(__self__, *, + consumer_groups_to_replicate: pulumi.Input[Sequence[pulumi.Input[str]]], + consumer_groups_to_exclude: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + detect_and_copy_new_consumer_groups: Optional[pulumi.Input[bool]] = None, + synchronise_consumer_group_offsets: Optional[pulumi.Input[bool]] = None): + """ + Configuration relating to consumer group replication. + :param pulumi.Input[Sequence[pulumi.Input[str]]] consumer_groups_to_replicate: List of regular expression patterns indicating the consumer groups to copy. + :param pulumi.Input[Sequence[pulumi.Input[str]]] consumer_groups_to_exclude: List of regular expression patterns indicating the consumer groups that should not be replicated. + :param pulumi.Input[bool] detect_and_copy_new_consumer_groups: Whether to periodically check for new consumer groups. + :param pulumi.Input[bool] synchronise_consumer_group_offsets: Whether to periodically write the translated offsets to __consumer_offsets topic in target cluster. + """ + ReplicatorConsumerGroupReplicationArgs._configure( + lambda key, value: pulumi.set(__self__, key, value), + consumer_groups_to_replicate=consumer_groups_to_replicate, + consumer_groups_to_exclude=consumer_groups_to_exclude, + detect_and_copy_new_consumer_groups=detect_and_copy_new_consumer_groups, + synchronise_consumer_group_offsets=synchronise_consumer_group_offsets, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + consumer_groups_to_replicate: pulumi.Input[Sequence[pulumi.Input[str]]], + consumer_groups_to_exclude: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + detect_and_copy_new_consumer_groups: Optional[pulumi.Input[bool]] = None, + synchronise_consumer_group_offsets: Optional[pulumi.Input[bool]] = None, + opts: Optional[pulumi.ResourceOptions]=None): + _setter("consumer_groups_to_replicate", consumer_groups_to_replicate) + if consumer_groups_to_exclude is not None: + _setter("consumer_groups_to_exclude", consumer_groups_to_exclude) + if detect_and_copy_new_consumer_groups is not None: + _setter("detect_and_copy_new_consumer_groups", detect_and_copy_new_consumer_groups) + if synchronise_consumer_group_offsets is not None: + _setter("synchronise_consumer_group_offsets", synchronise_consumer_group_offsets) + + @property + @pulumi.getter(name="consumerGroupsToReplicate") + def consumer_groups_to_replicate(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: + """ + List of regular expression patterns indicating the consumer groups to copy. + """ + return pulumi.get(self, "consumer_groups_to_replicate") + + @consumer_groups_to_replicate.setter + def consumer_groups_to_replicate(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): + pulumi.set(self, "consumer_groups_to_replicate", value) + + @property + @pulumi.getter(name="consumerGroupsToExclude") + def consumer_groups_to_exclude(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + """ + List of regular expression patterns indicating the consumer groups that should not be replicated. + """ + return pulumi.get(self, "consumer_groups_to_exclude") + + @consumer_groups_to_exclude.setter + def consumer_groups_to_exclude(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "consumer_groups_to_exclude", value) + + @property + @pulumi.getter(name="detectAndCopyNewConsumerGroups") + def detect_and_copy_new_consumer_groups(self) -> Optional[pulumi.Input[bool]]: + """ + Whether to periodically check for new consumer groups. + """ + return pulumi.get(self, "detect_and_copy_new_consumer_groups") + + @detect_and_copy_new_consumer_groups.setter + def detect_and_copy_new_consumer_groups(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "detect_and_copy_new_consumer_groups", value) + + @property + @pulumi.getter(name="synchroniseConsumerGroupOffsets") + def synchronise_consumer_group_offsets(self) -> Optional[pulumi.Input[bool]]: + """ + Whether to periodically write the translated offsets to __consumer_offsets topic in target cluster. + """ + return pulumi.get(self, "synchronise_consumer_group_offsets") + + @synchronise_consumer_group_offsets.setter + def synchronise_consumer_group_offsets(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "synchronise_consumer_group_offsets", value) + + +@pulumi.input_type +class ReplicatorKafkaClusterClientVpcConfigArgs: + def __init__(__self__, *, + subnet_ids: pulumi.Input[Sequence[pulumi.Input[str]]], + security_group_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): + """ + Details of an Amazon VPC which has network connectivity to the Kafka cluster. + :param pulumi.Input[Sequence[pulumi.Input[str]]] subnet_ids: The list of subnets to connect to in the virtual private cloud (VPC). AWS creates elastic network interfaces inside these subnets. + :param pulumi.Input[Sequence[pulumi.Input[str]]] security_group_ids: The AWS security groups to associate with the elastic network interfaces in order to specify what the replicator has access to. If a security group is not specified, the default security group associated with the VPC is used. + """ + ReplicatorKafkaClusterClientVpcConfigArgs._configure( + lambda key, value: pulumi.set(__self__, key, value), + subnet_ids=subnet_ids, + security_group_ids=security_group_ids, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + subnet_ids: pulumi.Input[Sequence[pulumi.Input[str]]], + security_group_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + opts: Optional[pulumi.ResourceOptions]=None): + _setter("subnet_ids", subnet_ids) + if security_group_ids is not None: + _setter("security_group_ids", security_group_ids) + + @property + @pulumi.getter(name="subnetIds") + def subnet_ids(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: + """ + The list of subnets to connect to in the virtual private cloud (VPC). AWS creates elastic network interfaces inside these subnets. + """ + return pulumi.get(self, "subnet_ids") + + @subnet_ids.setter + def subnet_ids(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): + pulumi.set(self, "subnet_ids", value) + + @property + @pulumi.getter(name="securityGroupIds") + def security_group_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + """ + The AWS security groups to associate with the elastic network interfaces in order to specify what the replicator has access to. If a security group is not specified, the default security group associated with the VPC is used. + """ + return pulumi.get(self, "security_group_ids") + + @security_group_ids.setter + def security_group_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "security_group_ids", value) + + +@pulumi.input_type +class ReplicatorKafkaClusterArgs: + def __init__(__self__, *, + amazon_msk_cluster: pulumi.Input['ReplicatorAmazonMskClusterArgs'], + vpc_config: pulumi.Input['ReplicatorKafkaClusterClientVpcConfigArgs']): + """ + Details of a Kafka cluster for replication. + :param pulumi.Input['ReplicatorAmazonMskClusterArgs'] amazon_msk_cluster: Details of an Amazon MSK cluster. Exactly one of AmazonMskCluster is required. + :param pulumi.Input['ReplicatorKafkaClusterClientVpcConfigArgs'] vpc_config: Details of an Amazon VPC which has network connectivity to the Apache Kafka cluster. + """ + ReplicatorKafkaClusterArgs._configure( + lambda key, value: pulumi.set(__self__, key, value), + amazon_msk_cluster=amazon_msk_cluster, + vpc_config=vpc_config, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + amazon_msk_cluster: pulumi.Input['ReplicatorAmazonMskClusterArgs'], + vpc_config: pulumi.Input['ReplicatorKafkaClusterClientVpcConfigArgs'], + opts: Optional[pulumi.ResourceOptions]=None): + _setter("amazon_msk_cluster", amazon_msk_cluster) + _setter("vpc_config", vpc_config) + + @property + @pulumi.getter(name="amazonMskCluster") + def amazon_msk_cluster(self) -> pulumi.Input['ReplicatorAmazonMskClusterArgs']: + """ + Details of an Amazon MSK cluster. Exactly one of AmazonMskCluster is required. + """ + return pulumi.get(self, "amazon_msk_cluster") + + @amazon_msk_cluster.setter + def amazon_msk_cluster(self, value: pulumi.Input['ReplicatorAmazonMskClusterArgs']): + pulumi.set(self, "amazon_msk_cluster", value) + + @property + @pulumi.getter(name="vpcConfig") + def vpc_config(self) -> pulumi.Input['ReplicatorKafkaClusterClientVpcConfigArgs']: + """ + Details of an Amazon VPC which has network connectivity to the Apache Kafka cluster. + """ + return pulumi.get(self, "vpc_config") + + @vpc_config.setter + def vpc_config(self, value: pulumi.Input['ReplicatorKafkaClusterClientVpcConfigArgs']): + pulumi.set(self, "vpc_config", value) + + +@pulumi.input_type +class ReplicatorReplicationInfoArgs: + def __init__(__self__, *, + consumer_group_replication: pulumi.Input['ReplicatorConsumerGroupReplicationArgs'], + source_kafka_cluster_arn: pulumi.Input[str], + target_compression_type: pulumi.Input['ReplicatorReplicationInfoTargetCompressionType'], + target_kafka_cluster_arn: pulumi.Input[str], + topic_replication: pulumi.Input['ReplicatorTopicReplicationArgs']): + """ + Specifies configuration for replication between a source and target Kafka cluster. + :param pulumi.Input['ReplicatorConsumerGroupReplicationArgs'] consumer_group_replication: Configuration relating to consumer group replication. + :param pulumi.Input[str] source_kafka_cluster_arn: Amazon Resource Name of the source Kafka cluster. + :param pulumi.Input['ReplicatorReplicationInfoTargetCompressionType'] target_compression_type: The type of compression to use writing records to target Kafka cluster. + :param pulumi.Input[str] target_kafka_cluster_arn: Amazon Resource Name of the target Kafka cluster. + :param pulumi.Input['ReplicatorTopicReplicationArgs'] topic_replication: Configuration relating to topic replication. + """ + ReplicatorReplicationInfoArgs._configure( + lambda key, value: pulumi.set(__self__, key, value), + consumer_group_replication=consumer_group_replication, + source_kafka_cluster_arn=source_kafka_cluster_arn, + target_compression_type=target_compression_type, + target_kafka_cluster_arn=target_kafka_cluster_arn, + topic_replication=topic_replication, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + consumer_group_replication: pulumi.Input['ReplicatorConsumerGroupReplicationArgs'], + source_kafka_cluster_arn: pulumi.Input[str], + target_compression_type: pulumi.Input['ReplicatorReplicationInfoTargetCompressionType'], + target_kafka_cluster_arn: pulumi.Input[str], + topic_replication: pulumi.Input['ReplicatorTopicReplicationArgs'], + opts: Optional[pulumi.ResourceOptions]=None): + _setter("consumer_group_replication", consumer_group_replication) + _setter("source_kafka_cluster_arn", source_kafka_cluster_arn) + _setter("target_compression_type", target_compression_type) + _setter("target_kafka_cluster_arn", target_kafka_cluster_arn) + _setter("topic_replication", topic_replication) + + @property + @pulumi.getter(name="consumerGroupReplication") + def consumer_group_replication(self) -> pulumi.Input['ReplicatorConsumerGroupReplicationArgs']: + """ + Configuration relating to consumer group replication. + """ + return pulumi.get(self, "consumer_group_replication") + + @consumer_group_replication.setter + def consumer_group_replication(self, value: pulumi.Input['ReplicatorConsumerGroupReplicationArgs']): + pulumi.set(self, "consumer_group_replication", value) + + @property + @pulumi.getter(name="sourceKafkaClusterArn") + def source_kafka_cluster_arn(self) -> pulumi.Input[str]: + """ + Amazon Resource Name of the source Kafka cluster. + """ + return pulumi.get(self, "source_kafka_cluster_arn") + + @source_kafka_cluster_arn.setter + def source_kafka_cluster_arn(self, value: pulumi.Input[str]): + pulumi.set(self, "source_kafka_cluster_arn", value) + + @property + @pulumi.getter(name="targetCompressionType") + def target_compression_type(self) -> pulumi.Input['ReplicatorReplicationInfoTargetCompressionType']: + """ + The type of compression to use writing records to target Kafka cluster. + """ + return pulumi.get(self, "target_compression_type") + + @target_compression_type.setter + def target_compression_type(self, value: pulumi.Input['ReplicatorReplicationInfoTargetCompressionType']): + pulumi.set(self, "target_compression_type", value) + + @property + @pulumi.getter(name="targetKafkaClusterArn") + def target_kafka_cluster_arn(self) -> pulumi.Input[str]: + """ + Amazon Resource Name of the target Kafka cluster. + """ + return pulumi.get(self, "target_kafka_cluster_arn") + + @target_kafka_cluster_arn.setter + def target_kafka_cluster_arn(self, value: pulumi.Input[str]): + pulumi.set(self, "target_kafka_cluster_arn", value) + + @property + @pulumi.getter(name="topicReplication") + def topic_replication(self) -> pulumi.Input['ReplicatorTopicReplicationArgs']: + """ + Configuration relating to topic replication. + """ + return pulumi.get(self, "topic_replication") + + @topic_replication.setter + def topic_replication(self, value: pulumi.Input['ReplicatorTopicReplicationArgs']): + pulumi.set(self, "topic_replication", value) + + +@pulumi.input_type +class ReplicatorTagArgs: + def __init__(__self__, *, + key: pulumi.Input[str], + value: pulumi.Input[str]): + ReplicatorTagArgs._configure( + lambda key, value: pulumi.set(__self__, key, value), + key=key, + value=value, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + key: pulumi.Input[str], + value: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions]=None): + _setter("key", key) + _setter("value", value) + + @property + @pulumi.getter + def key(self) -> pulumi.Input[str]: + return pulumi.get(self, "key") + + @key.setter + def key(self, value: pulumi.Input[str]): + pulumi.set(self, "key", value) + + @property + @pulumi.getter + def value(self) -> pulumi.Input[str]: + return pulumi.get(self, "value") + + @value.setter + def value(self, value: pulumi.Input[str]): + pulumi.set(self, "value", value) + + +@pulumi.input_type +class ReplicatorTopicReplicationArgs: + def __init__(__self__, *, + topics_to_replicate: pulumi.Input[Sequence[pulumi.Input[str]]], + copy_access_control_lists_for_topics: Optional[pulumi.Input[bool]] = None, + copy_topic_configurations: Optional[pulumi.Input[bool]] = None, + detect_and_copy_new_topics: Optional[pulumi.Input[bool]] = None, + topics_to_exclude: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): + """ + :param pulumi.Input[Sequence[pulumi.Input[str]]] topics_to_replicate: List of regular expression patterns indicating the topics to copy. + :param pulumi.Input[bool] copy_access_control_lists_for_topics: Whether to periodically configure remote topic ACLs to match their corresponding upstream topics. + :param pulumi.Input[bool] copy_topic_configurations: Whether to periodically configure remote topics to match their corresponding upstream topics. + :param pulumi.Input[bool] detect_and_copy_new_topics: Whether to periodically check for new topics and partitions. + :param pulumi.Input[Sequence[pulumi.Input[str]]] topics_to_exclude: List of regular expression patterns indicating the topics that should not be replicated. + """ + ReplicatorTopicReplicationArgs._configure( + lambda key, value: pulumi.set(__self__, key, value), + topics_to_replicate=topics_to_replicate, + copy_access_control_lists_for_topics=copy_access_control_lists_for_topics, + copy_topic_configurations=copy_topic_configurations, + detect_and_copy_new_topics=detect_and_copy_new_topics, + topics_to_exclude=topics_to_exclude, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + topics_to_replicate: pulumi.Input[Sequence[pulumi.Input[str]]], + copy_access_control_lists_for_topics: Optional[pulumi.Input[bool]] = None, + copy_topic_configurations: Optional[pulumi.Input[bool]] = None, + detect_and_copy_new_topics: Optional[pulumi.Input[bool]] = None, + topics_to_exclude: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + opts: Optional[pulumi.ResourceOptions]=None): + _setter("topics_to_replicate", topics_to_replicate) + if copy_access_control_lists_for_topics is not None: + _setter("copy_access_control_lists_for_topics", copy_access_control_lists_for_topics) + if copy_topic_configurations is not None: + _setter("copy_topic_configurations", copy_topic_configurations) + if detect_and_copy_new_topics is not None: + _setter("detect_and_copy_new_topics", detect_and_copy_new_topics) + if topics_to_exclude is not None: + _setter("topics_to_exclude", topics_to_exclude) + + @property + @pulumi.getter(name="topicsToReplicate") + def topics_to_replicate(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: + """ + List of regular expression patterns indicating the topics to copy. + """ + return pulumi.get(self, "topics_to_replicate") + + @topics_to_replicate.setter + def topics_to_replicate(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): + pulumi.set(self, "topics_to_replicate", value) + + @property + @pulumi.getter(name="copyAccessControlListsForTopics") + def copy_access_control_lists_for_topics(self) -> Optional[pulumi.Input[bool]]: + """ + Whether to periodically configure remote topic ACLs to match their corresponding upstream topics. + """ + return pulumi.get(self, "copy_access_control_lists_for_topics") + + @copy_access_control_lists_for_topics.setter + def copy_access_control_lists_for_topics(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "copy_access_control_lists_for_topics", value) + + @property + @pulumi.getter(name="copyTopicConfigurations") + def copy_topic_configurations(self) -> Optional[pulumi.Input[bool]]: + """ + Whether to periodically configure remote topics to match their corresponding upstream topics. + """ + return pulumi.get(self, "copy_topic_configurations") + + @copy_topic_configurations.setter + def copy_topic_configurations(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "copy_topic_configurations", value) + + @property + @pulumi.getter(name="detectAndCopyNewTopics") + def detect_and_copy_new_topics(self) -> Optional[pulumi.Input[bool]]: + """ + Whether to periodically check for new topics and partitions. + """ + return pulumi.get(self, "detect_and_copy_new_topics") + + @detect_and_copy_new_topics.setter + def detect_and_copy_new_topics(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "detect_and_copy_new_topics", value) + + @property + @pulumi.getter(name="topicsToExclude") + def topics_to_exclude(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + """ + List of regular expression patterns indicating the topics that should not be replicated. + """ + return pulumi.get(self, "topics_to_exclude") + + @topics_to_exclude.setter + def topics_to_exclude(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "topics_to_exclude", value) + + @pulumi.input_type class ServerlessClusterClientAuthenticationArgs: def __init__(__self__, *, diff --git a/sdk/python/pulumi_aws_native/msk/get_replicator.py b/sdk/python/pulumi_aws_native/msk/get_replicator.py new file mode 100644 index 0000000000..7cc4aadc81 --- /dev/null +++ b/sdk/python/pulumi_aws_native/msk/get_replicator.py @@ -0,0 +1,111 @@ +# coding=utf-8 +# *** WARNING: this file was generated by the Pulumi SDK Generator. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import copy +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Callable, Mapping, Optional, Sequence, Union, overload +from .. import _utilities +from . import outputs +from ._enums import * + +__all__ = [ + 'GetReplicatorResult', + 'AwaitableGetReplicatorResult', + 'get_replicator', + 'get_replicator_output', +] + +@pulumi.output_type +class GetReplicatorResult: + def __init__(__self__, current_version=None, replication_info_list=None, replicator_arn=None, tags=None): + if current_version and not isinstance(current_version, str): + raise TypeError("Expected argument 'current_version' to be a str") + pulumi.set(__self__, "current_version", current_version) + if replication_info_list and not isinstance(replication_info_list, list): + raise TypeError("Expected argument 'replication_info_list' to be a list") + pulumi.set(__self__, "replication_info_list", replication_info_list) + if replicator_arn and not isinstance(replicator_arn, str): + raise TypeError("Expected argument 'replicator_arn' to be a str") + pulumi.set(__self__, "replicator_arn", replicator_arn) + if tags and not isinstance(tags, list): + raise TypeError("Expected argument 'tags' to be a list") + pulumi.set(__self__, "tags", tags) + + @property + @pulumi.getter(name="currentVersion") + def current_version(self) -> Optional[str]: + """ + The current version of the MSK replicator. + """ + return pulumi.get(self, "current_version") + + @property + @pulumi.getter(name="replicationInfoList") + def replication_info_list(self) -> Optional[Sequence['outputs.ReplicatorReplicationInfo']]: + """ + A list of replication configurations, where each configuration targets a given source cluster to target cluster replication flow. + """ + return pulumi.get(self, "replication_info_list") + + @property + @pulumi.getter(name="replicatorArn") + def replicator_arn(self) -> Optional[str]: + """ + Amazon Resource Name for the created replicator. + """ + return pulumi.get(self, "replicator_arn") + + @property + @pulumi.getter + def tags(self) -> Optional[Sequence['outputs.ReplicatorTag']]: + """ + A collection of tags associated with a resource + """ + return pulumi.get(self, "tags") + + +class AwaitableGetReplicatorResult(GetReplicatorResult): + # pylint: disable=using-constant-test + def __await__(self): + if False: + yield self + return GetReplicatorResult( + current_version=self.current_version, + replication_info_list=self.replication_info_list, + replicator_arn=self.replicator_arn, + tags=self.tags) + + +def get_replicator(replicator_arn: Optional[str] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetReplicatorResult: + """ + Resource Type definition for AWS::MSK::Replicator + + + :param str replicator_arn: Amazon Resource Name for the created replicator. + """ + __args__ = dict() + __args__['replicatorArn'] = replicator_arn + opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) + __ret__ = pulumi.runtime.invoke('aws-native:msk:getReplicator', __args__, opts=opts, typ=GetReplicatorResult).value + + return AwaitableGetReplicatorResult( + current_version=pulumi.get(__ret__, 'current_version'), + replication_info_list=pulumi.get(__ret__, 'replication_info_list'), + replicator_arn=pulumi.get(__ret__, 'replicator_arn'), + tags=pulumi.get(__ret__, 'tags')) + + +@_utilities.lift_output_func(get_replicator) +def get_replicator_output(replicator_arn: Optional[pulumi.Input[str]] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetReplicatorResult]: + """ + Resource Type definition for AWS::MSK::Replicator + + + :param str replicator_arn: Amazon Resource Name for the created replicator. + """ + ... diff --git a/sdk/python/pulumi_aws_native/msk/outputs.py b/sdk/python/pulumi_aws_native/msk/outputs.py index ae26d99aa3..d5ac57f69f 100644 --- a/sdk/python/pulumi_aws_native/msk/outputs.py +++ b/sdk/python/pulumi_aws_native/msk/outputs.py @@ -44,6 +44,13 @@ 'ClusterVpcConnectivityScram', 'ClusterVpcConnectivityTls', 'ConfigurationLatestRevision', + 'ReplicatorAmazonMskCluster', + 'ReplicatorConsumerGroupReplication', + 'ReplicatorKafkaCluster', + 'ReplicatorKafkaClusterClientVpcConfig', + 'ReplicatorReplicationInfo', + 'ReplicatorTag', + 'ReplicatorTopicReplication', 'ServerlessClusterClientAuthentication', 'ServerlessClusterIam', 'ServerlessClusterSasl', @@ -1323,6 +1330,523 @@ def revision(self) -> Optional[int]: return pulumi.get(self, "revision") +@pulumi.output_type +class ReplicatorAmazonMskCluster(dict): + """ + Details of an Amazon MSK cluster. + """ + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "mskClusterArn": + suggest = "msk_cluster_arn" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in ReplicatorAmazonMskCluster. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + ReplicatorAmazonMskCluster.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + ReplicatorAmazonMskCluster.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + msk_cluster_arn: str): + """ + Details of an Amazon MSK cluster. + :param str msk_cluster_arn: The ARN of an Amazon MSK cluster. + """ + ReplicatorAmazonMskCluster._configure( + lambda key, value: pulumi.set(__self__, key, value), + msk_cluster_arn=msk_cluster_arn, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + msk_cluster_arn: str, + opts: Optional[pulumi.ResourceOptions]=None): + _setter("msk_cluster_arn", msk_cluster_arn) + + @property + @pulumi.getter(name="mskClusterArn") + def msk_cluster_arn(self) -> str: + """ + The ARN of an Amazon MSK cluster. + """ + return pulumi.get(self, "msk_cluster_arn") + + +@pulumi.output_type +class ReplicatorConsumerGroupReplication(dict): + """ + Configuration relating to consumer group replication. + """ + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "consumerGroupsToReplicate": + suggest = "consumer_groups_to_replicate" + elif key == "consumerGroupsToExclude": + suggest = "consumer_groups_to_exclude" + elif key == "detectAndCopyNewConsumerGroups": + suggest = "detect_and_copy_new_consumer_groups" + elif key == "synchroniseConsumerGroupOffsets": + suggest = "synchronise_consumer_group_offsets" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in ReplicatorConsumerGroupReplication. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + ReplicatorConsumerGroupReplication.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + ReplicatorConsumerGroupReplication.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + consumer_groups_to_replicate: Sequence[str], + consumer_groups_to_exclude: Optional[Sequence[str]] = None, + detect_and_copy_new_consumer_groups: Optional[bool] = None, + synchronise_consumer_group_offsets: Optional[bool] = None): + """ + Configuration relating to consumer group replication. + :param Sequence[str] consumer_groups_to_replicate: List of regular expression patterns indicating the consumer groups to copy. + :param Sequence[str] consumer_groups_to_exclude: List of regular expression patterns indicating the consumer groups that should not be replicated. + :param bool detect_and_copy_new_consumer_groups: Whether to periodically check for new consumer groups. + :param bool synchronise_consumer_group_offsets: Whether to periodically write the translated offsets to __consumer_offsets topic in target cluster. + """ + ReplicatorConsumerGroupReplication._configure( + lambda key, value: pulumi.set(__self__, key, value), + consumer_groups_to_replicate=consumer_groups_to_replicate, + consumer_groups_to_exclude=consumer_groups_to_exclude, + detect_and_copy_new_consumer_groups=detect_and_copy_new_consumer_groups, + synchronise_consumer_group_offsets=synchronise_consumer_group_offsets, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + consumer_groups_to_replicate: Sequence[str], + consumer_groups_to_exclude: Optional[Sequence[str]] = None, + detect_and_copy_new_consumer_groups: Optional[bool] = None, + synchronise_consumer_group_offsets: Optional[bool] = None, + opts: Optional[pulumi.ResourceOptions]=None): + _setter("consumer_groups_to_replicate", consumer_groups_to_replicate) + if consumer_groups_to_exclude is not None: + _setter("consumer_groups_to_exclude", consumer_groups_to_exclude) + if detect_and_copy_new_consumer_groups is not None: + _setter("detect_and_copy_new_consumer_groups", detect_and_copy_new_consumer_groups) + if synchronise_consumer_group_offsets is not None: + _setter("synchronise_consumer_group_offsets", synchronise_consumer_group_offsets) + + @property + @pulumi.getter(name="consumerGroupsToReplicate") + def consumer_groups_to_replicate(self) -> Sequence[str]: + """ + List of regular expression patterns indicating the consumer groups to copy. + """ + return pulumi.get(self, "consumer_groups_to_replicate") + + @property + @pulumi.getter(name="consumerGroupsToExclude") + def consumer_groups_to_exclude(self) -> Optional[Sequence[str]]: + """ + List of regular expression patterns indicating the consumer groups that should not be replicated. + """ + return pulumi.get(self, "consumer_groups_to_exclude") + + @property + @pulumi.getter(name="detectAndCopyNewConsumerGroups") + def detect_and_copy_new_consumer_groups(self) -> Optional[bool]: + """ + Whether to periodically check for new consumer groups. + """ + return pulumi.get(self, "detect_and_copy_new_consumer_groups") + + @property + @pulumi.getter(name="synchroniseConsumerGroupOffsets") + def synchronise_consumer_group_offsets(self) -> Optional[bool]: + """ + Whether to periodically write the translated offsets to __consumer_offsets topic in target cluster. + """ + return pulumi.get(self, "synchronise_consumer_group_offsets") + + +@pulumi.output_type +class ReplicatorKafkaCluster(dict): + """ + Details of a Kafka cluster for replication. + """ + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "amazonMskCluster": + suggest = "amazon_msk_cluster" + elif key == "vpcConfig": + suggest = "vpc_config" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in ReplicatorKafkaCluster. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + ReplicatorKafkaCluster.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + ReplicatorKafkaCluster.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + amazon_msk_cluster: 'outputs.ReplicatorAmazonMskCluster', + vpc_config: 'outputs.ReplicatorKafkaClusterClientVpcConfig'): + """ + Details of a Kafka cluster for replication. + :param 'ReplicatorAmazonMskCluster' amazon_msk_cluster: Details of an Amazon MSK cluster. Exactly one of AmazonMskCluster is required. + :param 'ReplicatorKafkaClusterClientVpcConfig' vpc_config: Details of an Amazon VPC which has network connectivity to the Apache Kafka cluster. + """ + ReplicatorKafkaCluster._configure( + lambda key, value: pulumi.set(__self__, key, value), + amazon_msk_cluster=amazon_msk_cluster, + vpc_config=vpc_config, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + amazon_msk_cluster: 'outputs.ReplicatorAmazonMskCluster', + vpc_config: 'outputs.ReplicatorKafkaClusterClientVpcConfig', + opts: Optional[pulumi.ResourceOptions]=None): + _setter("amazon_msk_cluster", amazon_msk_cluster) + _setter("vpc_config", vpc_config) + + @property + @pulumi.getter(name="amazonMskCluster") + def amazon_msk_cluster(self) -> 'outputs.ReplicatorAmazonMskCluster': + """ + Details of an Amazon MSK cluster. Exactly one of AmazonMskCluster is required. + """ + return pulumi.get(self, "amazon_msk_cluster") + + @property + @pulumi.getter(name="vpcConfig") + def vpc_config(self) -> 'outputs.ReplicatorKafkaClusterClientVpcConfig': + """ + Details of an Amazon VPC which has network connectivity to the Apache Kafka cluster. + """ + return pulumi.get(self, "vpc_config") + + +@pulumi.output_type +class ReplicatorKafkaClusterClientVpcConfig(dict): + """ + Details of an Amazon VPC which has network connectivity to the Kafka cluster. + """ + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "subnetIds": + suggest = "subnet_ids" + elif key == "securityGroupIds": + suggest = "security_group_ids" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in ReplicatorKafkaClusterClientVpcConfig. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + ReplicatorKafkaClusterClientVpcConfig.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + ReplicatorKafkaClusterClientVpcConfig.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + subnet_ids: Sequence[str], + security_group_ids: Optional[Sequence[str]] = None): + """ + Details of an Amazon VPC which has network connectivity to the Kafka cluster. + :param Sequence[str] subnet_ids: The list of subnets to connect to in the virtual private cloud (VPC). AWS creates elastic network interfaces inside these subnets. + :param Sequence[str] security_group_ids: The AWS security groups to associate with the elastic network interfaces in order to specify what the replicator has access to. If a security group is not specified, the default security group associated with the VPC is used. + """ + ReplicatorKafkaClusterClientVpcConfig._configure( + lambda key, value: pulumi.set(__self__, key, value), + subnet_ids=subnet_ids, + security_group_ids=security_group_ids, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + subnet_ids: Sequence[str], + security_group_ids: Optional[Sequence[str]] = None, + opts: Optional[pulumi.ResourceOptions]=None): + _setter("subnet_ids", subnet_ids) + if security_group_ids is not None: + _setter("security_group_ids", security_group_ids) + + @property + @pulumi.getter(name="subnetIds") + def subnet_ids(self) -> Sequence[str]: + """ + The list of subnets to connect to in the virtual private cloud (VPC). AWS creates elastic network interfaces inside these subnets. + """ + return pulumi.get(self, "subnet_ids") + + @property + @pulumi.getter(name="securityGroupIds") + def security_group_ids(self) -> Optional[Sequence[str]]: + """ + The AWS security groups to associate with the elastic network interfaces in order to specify what the replicator has access to. If a security group is not specified, the default security group associated with the VPC is used. + """ + return pulumi.get(self, "security_group_ids") + + +@pulumi.output_type +class ReplicatorReplicationInfo(dict): + """ + Specifies configuration for replication between a source and target Kafka cluster. + """ + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "consumerGroupReplication": + suggest = "consumer_group_replication" + elif key == "sourceKafkaClusterArn": + suggest = "source_kafka_cluster_arn" + elif key == "targetCompressionType": + suggest = "target_compression_type" + elif key == "targetKafkaClusterArn": + suggest = "target_kafka_cluster_arn" + elif key == "topicReplication": + suggest = "topic_replication" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in ReplicatorReplicationInfo. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + ReplicatorReplicationInfo.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + ReplicatorReplicationInfo.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + consumer_group_replication: 'outputs.ReplicatorConsumerGroupReplication', + source_kafka_cluster_arn: str, + target_compression_type: 'ReplicatorReplicationInfoTargetCompressionType', + target_kafka_cluster_arn: str, + topic_replication: 'outputs.ReplicatorTopicReplication'): + """ + Specifies configuration for replication between a source and target Kafka cluster. + :param 'ReplicatorConsumerGroupReplication' consumer_group_replication: Configuration relating to consumer group replication. + :param str source_kafka_cluster_arn: Amazon Resource Name of the source Kafka cluster. + :param 'ReplicatorReplicationInfoTargetCompressionType' target_compression_type: The type of compression to use writing records to target Kafka cluster. + :param str target_kafka_cluster_arn: Amazon Resource Name of the target Kafka cluster. + :param 'ReplicatorTopicReplication' topic_replication: Configuration relating to topic replication. + """ + ReplicatorReplicationInfo._configure( + lambda key, value: pulumi.set(__self__, key, value), + consumer_group_replication=consumer_group_replication, + source_kafka_cluster_arn=source_kafka_cluster_arn, + target_compression_type=target_compression_type, + target_kafka_cluster_arn=target_kafka_cluster_arn, + topic_replication=topic_replication, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + consumer_group_replication: 'outputs.ReplicatorConsumerGroupReplication', + source_kafka_cluster_arn: str, + target_compression_type: 'ReplicatorReplicationInfoTargetCompressionType', + target_kafka_cluster_arn: str, + topic_replication: 'outputs.ReplicatorTopicReplication', + opts: Optional[pulumi.ResourceOptions]=None): + _setter("consumer_group_replication", consumer_group_replication) + _setter("source_kafka_cluster_arn", source_kafka_cluster_arn) + _setter("target_compression_type", target_compression_type) + _setter("target_kafka_cluster_arn", target_kafka_cluster_arn) + _setter("topic_replication", topic_replication) + + @property + @pulumi.getter(name="consumerGroupReplication") + def consumer_group_replication(self) -> 'outputs.ReplicatorConsumerGroupReplication': + """ + Configuration relating to consumer group replication. + """ + return pulumi.get(self, "consumer_group_replication") + + @property + @pulumi.getter(name="sourceKafkaClusterArn") + def source_kafka_cluster_arn(self) -> str: + """ + Amazon Resource Name of the source Kafka cluster. + """ + return pulumi.get(self, "source_kafka_cluster_arn") + + @property + @pulumi.getter(name="targetCompressionType") + def target_compression_type(self) -> 'ReplicatorReplicationInfoTargetCompressionType': + """ + The type of compression to use writing records to target Kafka cluster. + """ + return pulumi.get(self, "target_compression_type") + + @property + @pulumi.getter(name="targetKafkaClusterArn") + def target_kafka_cluster_arn(self) -> str: + """ + Amazon Resource Name of the target Kafka cluster. + """ + return pulumi.get(self, "target_kafka_cluster_arn") + + @property + @pulumi.getter(name="topicReplication") + def topic_replication(self) -> 'outputs.ReplicatorTopicReplication': + """ + Configuration relating to topic replication. + """ + return pulumi.get(self, "topic_replication") + + +@pulumi.output_type +class ReplicatorTag(dict): + def __init__(__self__, *, + key: str, + value: str): + ReplicatorTag._configure( + lambda key, value: pulumi.set(__self__, key, value), + key=key, + value=value, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + key: str, + value: str, + opts: Optional[pulumi.ResourceOptions]=None): + _setter("key", key) + _setter("value", value) + + @property + @pulumi.getter + def key(self) -> str: + return pulumi.get(self, "key") + + @property + @pulumi.getter + def value(self) -> str: + return pulumi.get(self, "value") + + +@pulumi.output_type +class ReplicatorTopicReplication(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "topicsToReplicate": + suggest = "topics_to_replicate" + elif key == "copyAccessControlListsForTopics": + suggest = "copy_access_control_lists_for_topics" + elif key == "copyTopicConfigurations": + suggest = "copy_topic_configurations" + elif key == "detectAndCopyNewTopics": + suggest = "detect_and_copy_new_topics" + elif key == "topicsToExclude": + suggest = "topics_to_exclude" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in ReplicatorTopicReplication. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + ReplicatorTopicReplication.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + ReplicatorTopicReplication.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + topics_to_replicate: Sequence[str], + copy_access_control_lists_for_topics: Optional[bool] = None, + copy_topic_configurations: Optional[bool] = None, + detect_and_copy_new_topics: Optional[bool] = None, + topics_to_exclude: Optional[Sequence[str]] = None): + """ + :param Sequence[str] topics_to_replicate: List of regular expression patterns indicating the topics to copy. + :param bool copy_access_control_lists_for_topics: Whether to periodically configure remote topic ACLs to match their corresponding upstream topics. + :param bool copy_topic_configurations: Whether to periodically configure remote topics to match their corresponding upstream topics. + :param bool detect_and_copy_new_topics: Whether to periodically check for new topics and partitions. + :param Sequence[str] topics_to_exclude: List of regular expression patterns indicating the topics that should not be replicated. + """ + ReplicatorTopicReplication._configure( + lambda key, value: pulumi.set(__self__, key, value), + topics_to_replicate=topics_to_replicate, + copy_access_control_lists_for_topics=copy_access_control_lists_for_topics, + copy_topic_configurations=copy_topic_configurations, + detect_and_copy_new_topics=detect_and_copy_new_topics, + topics_to_exclude=topics_to_exclude, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + topics_to_replicate: Sequence[str], + copy_access_control_lists_for_topics: Optional[bool] = None, + copy_topic_configurations: Optional[bool] = None, + detect_and_copy_new_topics: Optional[bool] = None, + topics_to_exclude: Optional[Sequence[str]] = None, + opts: Optional[pulumi.ResourceOptions]=None): + _setter("topics_to_replicate", topics_to_replicate) + if copy_access_control_lists_for_topics is not None: + _setter("copy_access_control_lists_for_topics", copy_access_control_lists_for_topics) + if copy_topic_configurations is not None: + _setter("copy_topic_configurations", copy_topic_configurations) + if detect_and_copy_new_topics is not None: + _setter("detect_and_copy_new_topics", detect_and_copy_new_topics) + if topics_to_exclude is not None: + _setter("topics_to_exclude", topics_to_exclude) + + @property + @pulumi.getter(name="topicsToReplicate") + def topics_to_replicate(self) -> Sequence[str]: + """ + List of regular expression patterns indicating the topics to copy. + """ + return pulumi.get(self, "topics_to_replicate") + + @property + @pulumi.getter(name="copyAccessControlListsForTopics") + def copy_access_control_lists_for_topics(self) -> Optional[bool]: + """ + Whether to periodically configure remote topic ACLs to match their corresponding upstream topics. + """ + return pulumi.get(self, "copy_access_control_lists_for_topics") + + @property + @pulumi.getter(name="copyTopicConfigurations") + def copy_topic_configurations(self) -> Optional[bool]: + """ + Whether to periodically configure remote topics to match their corresponding upstream topics. + """ + return pulumi.get(self, "copy_topic_configurations") + + @property + @pulumi.getter(name="detectAndCopyNewTopics") + def detect_and_copy_new_topics(self) -> Optional[bool]: + """ + Whether to periodically check for new topics and partitions. + """ + return pulumi.get(self, "detect_and_copy_new_topics") + + @property + @pulumi.getter(name="topicsToExclude") + def topics_to_exclude(self) -> Optional[Sequence[str]]: + """ + List of regular expression patterns indicating the topics that should not be replicated. + """ + return pulumi.get(self, "topics_to_exclude") + + @pulumi.output_type class ServerlessClusterClientAuthentication(dict): def __init__(__self__, *, diff --git a/sdk/python/pulumi_aws_native/msk/replicator.py b/sdk/python/pulumi_aws_native/msk/replicator.py new file mode 100644 index 0000000000..a7af7eb496 --- /dev/null +++ b/sdk/python/pulumi_aws_native/msk/replicator.py @@ -0,0 +1,336 @@ +# coding=utf-8 +# *** WARNING: this file was generated by the Pulumi SDK Generator. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import copy +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Callable, Mapping, Optional, Sequence, Union, overload +from .. import _utilities +from . import outputs +from ._enums import * +from ._inputs import * + +__all__ = ['ReplicatorArgs', 'Replicator'] + +@pulumi.input_type +class ReplicatorArgs: + def __init__(__self__, *, + kafka_clusters: pulumi.Input[Sequence[pulumi.Input['ReplicatorKafkaClusterArgs']]], + replication_info_list: pulumi.Input[Sequence[pulumi.Input['ReplicatorReplicationInfoArgs']]], + service_execution_role_arn: pulumi.Input[str], + current_version: Optional[pulumi.Input[str]] = None, + description: Optional[pulumi.Input[str]] = None, + replicator_name: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Sequence[pulumi.Input['ReplicatorTagArgs']]]] = None): + """ + The set of arguments for constructing a Replicator resource. + :param pulumi.Input[Sequence[pulumi.Input['ReplicatorKafkaClusterArgs']]] kafka_clusters: Specifies a list of Kafka clusters which are targets of the replicator. + :param pulumi.Input[Sequence[pulumi.Input['ReplicatorReplicationInfoArgs']]] replication_info_list: A list of replication configurations, where each configuration targets a given source cluster to target cluster replication flow. + :param pulumi.Input[str] service_execution_role_arn: The Amazon Resource Name (ARN) of the IAM role used by the replicator to access external resources. + :param pulumi.Input[str] current_version: The current version of the MSK replicator. + :param pulumi.Input[str] description: A summary description of the replicator. + :param pulumi.Input[str] replicator_name: The name of the replicator. + :param pulumi.Input[Sequence[pulumi.Input['ReplicatorTagArgs']]] tags: A collection of tags associated with a resource + """ + ReplicatorArgs._configure( + lambda key, value: pulumi.set(__self__, key, value), + kafka_clusters=kafka_clusters, + replication_info_list=replication_info_list, + service_execution_role_arn=service_execution_role_arn, + current_version=current_version, + description=description, + replicator_name=replicator_name, + tags=tags, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + kafka_clusters: pulumi.Input[Sequence[pulumi.Input['ReplicatorKafkaClusterArgs']]], + replication_info_list: pulumi.Input[Sequence[pulumi.Input['ReplicatorReplicationInfoArgs']]], + service_execution_role_arn: pulumi.Input[str], + current_version: Optional[pulumi.Input[str]] = None, + description: Optional[pulumi.Input[str]] = None, + replicator_name: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Sequence[pulumi.Input['ReplicatorTagArgs']]]] = None, + opts: Optional[pulumi.ResourceOptions]=None): + _setter("kafka_clusters", kafka_clusters) + _setter("replication_info_list", replication_info_list) + _setter("service_execution_role_arn", service_execution_role_arn) + if current_version is not None: + _setter("current_version", current_version) + if description is not None: + _setter("description", description) + if replicator_name is not None: + _setter("replicator_name", replicator_name) + if tags is not None: + _setter("tags", tags) + + @property + @pulumi.getter(name="kafkaClusters") + def kafka_clusters(self) -> pulumi.Input[Sequence[pulumi.Input['ReplicatorKafkaClusterArgs']]]: + """ + Specifies a list of Kafka clusters which are targets of the replicator. + """ + return pulumi.get(self, "kafka_clusters") + + @kafka_clusters.setter + def kafka_clusters(self, value: pulumi.Input[Sequence[pulumi.Input['ReplicatorKafkaClusterArgs']]]): + pulumi.set(self, "kafka_clusters", value) + + @property + @pulumi.getter(name="replicationInfoList") + def replication_info_list(self) -> pulumi.Input[Sequence[pulumi.Input['ReplicatorReplicationInfoArgs']]]: + """ + A list of replication configurations, where each configuration targets a given source cluster to target cluster replication flow. + """ + return pulumi.get(self, "replication_info_list") + + @replication_info_list.setter + def replication_info_list(self, value: pulumi.Input[Sequence[pulumi.Input['ReplicatorReplicationInfoArgs']]]): + pulumi.set(self, "replication_info_list", value) + + @property + @pulumi.getter(name="serviceExecutionRoleArn") + def service_execution_role_arn(self) -> pulumi.Input[str]: + """ + The Amazon Resource Name (ARN) of the IAM role used by the replicator to access external resources. + """ + return pulumi.get(self, "service_execution_role_arn") + + @service_execution_role_arn.setter + def service_execution_role_arn(self, value: pulumi.Input[str]): + pulumi.set(self, "service_execution_role_arn", value) + + @property + @pulumi.getter(name="currentVersion") + def current_version(self) -> Optional[pulumi.Input[str]]: + """ + The current version of the MSK replicator. + """ + return pulumi.get(self, "current_version") + + @current_version.setter + def current_version(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "current_version", value) + + @property + @pulumi.getter + def description(self) -> Optional[pulumi.Input[str]]: + """ + A summary description of the replicator. + """ + return pulumi.get(self, "description") + + @description.setter + def description(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "description", value) + + @property + @pulumi.getter(name="replicatorName") + def replicator_name(self) -> Optional[pulumi.Input[str]]: + """ + The name of the replicator. + """ + return pulumi.get(self, "replicator_name") + + @replicator_name.setter + def replicator_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "replicator_name", value) + + @property + @pulumi.getter + def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ReplicatorTagArgs']]]]: + """ + A collection of tags associated with a resource + """ + return pulumi.get(self, "tags") + + @tags.setter + def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ReplicatorTagArgs']]]]): + pulumi.set(self, "tags", value) + + +class Replicator(pulumi.CustomResource): + @overload + def __init__(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + current_version: Optional[pulumi.Input[str]] = None, + description: Optional[pulumi.Input[str]] = None, + kafka_clusters: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ReplicatorKafkaClusterArgs']]]]] = None, + replication_info_list: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ReplicatorReplicationInfoArgs']]]]] = None, + replicator_name: Optional[pulumi.Input[str]] = None, + service_execution_role_arn: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ReplicatorTagArgs']]]]] = None, + __props__=None): + """ + Resource Type definition for AWS::MSK::Replicator + + :param str resource_name: The name of the resource. + :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[str] current_version: The current version of the MSK replicator. + :param pulumi.Input[str] description: A summary description of the replicator. + :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ReplicatorKafkaClusterArgs']]]] kafka_clusters: Specifies a list of Kafka clusters which are targets of the replicator. + :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ReplicatorReplicationInfoArgs']]]] replication_info_list: A list of replication configurations, where each configuration targets a given source cluster to target cluster replication flow. + :param pulumi.Input[str] replicator_name: The name of the replicator. + :param pulumi.Input[str] service_execution_role_arn: The Amazon Resource Name (ARN) of the IAM role used by the replicator to access external resources. + :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ReplicatorTagArgs']]]] tags: A collection of tags associated with a resource + """ + ... + @overload + def __init__(__self__, + resource_name: str, + args: ReplicatorArgs, + opts: Optional[pulumi.ResourceOptions] = None): + """ + Resource Type definition for AWS::MSK::Replicator + + :param str resource_name: The name of the resource. + :param ReplicatorArgs 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(ReplicatorArgs, pulumi.ResourceOptions, *args, **kwargs) + if resource_args is not None: + __self__._internal_init(resource_name, opts, **resource_args.__dict__) + else: + kwargs = kwargs or {} + def _setter(key, value): + kwargs[key] = value + ReplicatorArgs._configure(_setter, **kwargs) + __self__._internal_init(resource_name, *args, **kwargs) + + def _internal_init(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + current_version: Optional[pulumi.Input[str]] = None, + description: Optional[pulumi.Input[str]] = None, + kafka_clusters: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ReplicatorKafkaClusterArgs']]]]] = None, + replication_info_list: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ReplicatorReplicationInfoArgs']]]]] = None, + replicator_name: Optional[pulumi.Input[str]] = None, + service_execution_role_arn: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ReplicatorTagArgs']]]]] = 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__ = ReplicatorArgs.__new__(ReplicatorArgs) + + __props__.__dict__["current_version"] = current_version + __props__.__dict__["description"] = description + if kafka_clusters is None and not opts.urn: + raise TypeError("Missing required property 'kafka_clusters'") + __props__.__dict__["kafka_clusters"] = kafka_clusters + if replication_info_list is None and not opts.urn: + raise TypeError("Missing required property 'replication_info_list'") + __props__.__dict__["replication_info_list"] = replication_info_list + __props__.__dict__["replicator_name"] = replicator_name + if service_execution_role_arn is None and not opts.urn: + raise TypeError("Missing required property 'service_execution_role_arn'") + __props__.__dict__["service_execution_role_arn"] = service_execution_role_arn + __props__.__dict__["tags"] = tags + __props__.__dict__["replicator_arn"] = None + replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["description", "kafka_clusters[*]", "replicator_name", "service_execution_role_arn"]) + opts = pulumi.ResourceOptions.merge(opts, replace_on_changes) + super(Replicator, __self__).__init__( + 'aws-native:msk:Replicator', + resource_name, + __props__, + opts) + + @staticmethod + def get(resource_name: str, + id: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions] = None) -> 'Replicator': + """ + Get an existing Replicator 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__ = ReplicatorArgs.__new__(ReplicatorArgs) + + __props__.__dict__["current_version"] = None + __props__.__dict__["description"] = None + __props__.__dict__["kafka_clusters"] = None + __props__.__dict__["replication_info_list"] = None + __props__.__dict__["replicator_arn"] = None + __props__.__dict__["replicator_name"] = None + __props__.__dict__["service_execution_role_arn"] = None + __props__.__dict__["tags"] = None + return Replicator(resource_name, opts=opts, __props__=__props__) + + @property + @pulumi.getter(name="currentVersion") + def current_version(self) -> pulumi.Output[Optional[str]]: + """ + The current version of the MSK replicator. + """ + return pulumi.get(self, "current_version") + + @property + @pulumi.getter + def description(self) -> pulumi.Output[Optional[str]]: + """ + A summary description of the replicator. + """ + return pulumi.get(self, "description") + + @property + @pulumi.getter(name="kafkaClusters") + def kafka_clusters(self) -> pulumi.Output[Sequence['outputs.ReplicatorKafkaCluster']]: + """ + Specifies a list of Kafka clusters which are targets of the replicator. + """ + return pulumi.get(self, "kafka_clusters") + + @property + @pulumi.getter(name="replicationInfoList") + def replication_info_list(self) -> pulumi.Output[Sequence['outputs.ReplicatorReplicationInfo']]: + """ + A list of replication configurations, where each configuration targets a given source cluster to target cluster replication flow. + """ + return pulumi.get(self, "replication_info_list") + + @property + @pulumi.getter(name="replicatorArn") + def replicator_arn(self) -> pulumi.Output[str]: + """ + Amazon Resource Name for the created replicator. + """ + return pulumi.get(self, "replicator_arn") + + @property + @pulumi.getter(name="replicatorName") + def replicator_name(self) -> pulumi.Output[str]: + """ + The name of the replicator. + """ + return pulumi.get(self, "replicator_name") + + @property + @pulumi.getter(name="serviceExecutionRoleArn") + def service_execution_role_arn(self) -> pulumi.Output[str]: + """ + The Amazon Resource Name (ARN) of the IAM role used by the replicator to access external resources. + """ + return pulumi.get(self, "service_execution_role_arn") + + @property + @pulumi.getter + def tags(self) -> pulumi.Output[Optional[Sequence['outputs.ReplicatorTag']]]: + """ + A collection of tags associated with a resource + """ + return pulumi.get(self, "tags") + diff --git a/sdk/python/pulumi_aws_native/quicksight/_enums.py b/sdk/python/pulumi_aws_native/quicksight/_enums.py index e13a8cd19e..b4d5a6c890 100644 --- a/sdk/python/pulumi_aws_native/quicksight/_enums.py +++ b/sdk/python/pulumi_aws_native/quicksight/_enums.py @@ -105,6 +105,7 @@ 'AnalysisTopBottomComputationType', 'AnalysisTopBottomSortOrder', 'AnalysisUrlTargetConfiguration', + 'AnalysisValidationStrategyMode', 'AnalysisValueWhenUnsetOption', 'AnalysisVerticalTextAlignment', 'AnalysisVisibility', @@ -217,6 +218,7 @@ 'DashboardTopBottomSortOrder', 'DashboardUiState', 'DashboardUrlTargetConfiguration', + 'DashboardValidationStrategyMode', 'DashboardValueWhenUnsetOption', 'DashboardVerticalTextAlignment', 'DashboardVisibility', @@ -342,6 +344,7 @@ 'TemplateTopBottomComputationType', 'TemplateTopBottomSortOrder', 'TemplateUrlTargetConfiguration', + 'TemplateValidationStrategyMode', 'TemplateValueWhenUnsetOption', 'TemplateVerticalTextAlignment', 'TemplateVisibility', @@ -1003,6 +1006,11 @@ class AnalysisUrlTargetConfiguration(str, Enum): SAME_TAB = "SAME_TAB" +class AnalysisValidationStrategyMode(str, Enum): + STRICT = "STRICT" + LENIENT = "LENIENT" + + class AnalysisValueWhenUnsetOption(str, Enum): RECOMMENDED_VALUE = "RECOMMENDED_VALUE" NULL = "NULL" @@ -1690,6 +1698,11 @@ class DashboardUrlTargetConfiguration(str, Enum): SAME_TAB = "SAME_TAB" +class DashboardValidationStrategyMode(str, Enum): + STRICT = "STRICT" + LENIENT = "LENIENT" + + class DashboardValueWhenUnsetOption(str, Enum): RECOMMENDED_VALUE = "RECOMMENDED_VALUE" NULL = "NULL" @@ -2491,6 +2504,11 @@ class TemplateUrlTargetConfiguration(str, Enum): SAME_TAB = "SAME_TAB" +class TemplateValidationStrategyMode(str, Enum): + STRICT = "STRICT" + LENIENT = "LENIENT" + + class TemplateValueWhenUnsetOption(str, Enum): RECOMMENDED_VALUE = "RECOMMENDED_VALUE" NULL = "NULL" diff --git a/sdk/python/pulumi_aws_native/quicksight/_inputs.py b/sdk/python/pulumi_aws_native/quicksight/_inputs.py index d4c221a293..039020787d 100644 --- a/sdk/python/pulumi_aws_native/quicksight/_inputs.py +++ b/sdk/python/pulumi_aws_native/quicksight/_inputs.py @@ -456,6 +456,7 @@ 'AnalysisTrendArrowOptionsArgs', 'AnalysisUnaggregatedFieldArgs', 'AnalysisUniqueValuesComputationArgs', + 'AnalysisValidationStrategyArgs', 'AnalysisVisibleRangeOptionsArgs', 'AnalysisVisualCustomActionOperationArgs', 'AnalysisVisualCustomActionArgs', @@ -931,6 +932,7 @@ 'DashboardTrendArrowOptionsArgs', 'DashboardUnaggregatedFieldArgs', 'DashboardUniqueValuesComputationArgs', + 'DashboardValidationStrategyArgs', 'DashboardVersionDefinitionArgs', 'DashboardVisibleRangeOptionsArgs', 'DashboardVisualAxisSortOptionArgs', @@ -1456,6 +1458,7 @@ 'TemplateTrendArrowOptionsArgs', 'TemplateUnaggregatedFieldArgs', 'TemplateUniqueValuesComputationArgs', + 'TemplateValidationStrategyArgs', 'TemplateVersionDefinitionArgs', 'TemplateVisibleRangeOptionsArgs', 'TemplateVisualCustomActionOperationArgs', @@ -26933,6 +26936,31 @@ def name(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "name", value) +@pulumi.input_type +class AnalysisValidationStrategyArgs: + def __init__(__self__, *, + mode: pulumi.Input['AnalysisValidationStrategyMode']): + AnalysisValidationStrategyArgs._configure( + lambda key, value: pulumi.set(__self__, key, value), + mode=mode, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + mode: pulumi.Input['AnalysisValidationStrategyMode'], + opts: Optional[pulumi.ResourceOptions]=None): + _setter("mode", mode) + + @property + @pulumi.getter + def mode(self) -> pulumi.Input['AnalysisValidationStrategyMode']: + return pulumi.get(self, "mode") + + @mode.setter + def mode(self, value: pulumi.Input['AnalysisValidationStrategyMode']): + pulumi.set(self, "mode", value) + + @pulumi.input_type class AnalysisVisibleRangeOptionsArgs: def __init__(__self__, *, @@ -54109,6 +54137,31 @@ def name(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "name", value) +@pulumi.input_type +class DashboardValidationStrategyArgs: + def __init__(__self__, *, + mode: pulumi.Input['DashboardValidationStrategyMode']): + DashboardValidationStrategyArgs._configure( + lambda key, value: pulumi.set(__self__, key, value), + mode=mode, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + mode: pulumi.Input['DashboardValidationStrategyMode'], + opts: Optional[pulumi.ResourceOptions]=None): + _setter("mode", mode) + + @property + @pulumi.getter + def mode(self) -> pulumi.Input['DashboardValidationStrategyMode']: + return pulumi.get(self, "mode") + + @mode.setter + def mode(self, value: pulumi.Input['DashboardValidationStrategyMode']): + pulumi.set(self, "mode", value) + + @pulumi.input_type class DashboardVersionDefinitionArgs: def __init__(__self__, *, @@ -84310,6 +84363,31 @@ def name(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "name", value) +@pulumi.input_type +class TemplateValidationStrategyArgs: + def __init__(__self__, *, + mode: pulumi.Input['TemplateValidationStrategyMode']): + TemplateValidationStrategyArgs._configure( + lambda key, value: pulumi.set(__self__, key, value), + mode=mode, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + mode: pulumi.Input['TemplateValidationStrategyMode'], + opts: Optional[pulumi.ResourceOptions]=None): + _setter("mode", mode) + + @property + @pulumi.getter + def mode(self) -> pulumi.Input['TemplateValidationStrategyMode']: + return pulumi.get(self, "mode") + + @mode.setter + def mode(self, value: pulumi.Input['TemplateValidationStrategyMode']): + pulumi.set(self, "mode", value) + + @pulumi.input_type class TemplateVersionDefinitionArgs: def __init__(__self__, *, diff --git a/sdk/python/pulumi_aws_native/quicksight/analysis.py b/sdk/python/pulumi_aws_native/quicksight/analysis.py index 3e5d1f6f37..e8d531b024 100644 --- a/sdk/python/pulumi_aws_native/quicksight/analysis.py +++ b/sdk/python/pulumi_aws_native/quicksight/analysis.py @@ -26,7 +26,8 @@ def __init__(__self__, *, source_entity: Optional[pulumi.Input['AnalysisSourceEntityArgs']] = None, status: Optional[pulumi.Input['AnalysisResourceStatus']] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input['AnalysisTagArgs']]]] = None, - theme_arn: Optional[pulumi.Input[str]] = None): + theme_arn: Optional[pulumi.Input[str]] = None, + validation_strategy: Optional[pulumi.Input['AnalysisValidationStrategyArgs']] = None): """ The set of arguments for constructing a Analysis resource. """ @@ -42,6 +43,7 @@ def __init__(__self__, *, status=status, tags=tags, theme_arn=theme_arn, + validation_strategy=validation_strategy, ) @staticmethod def _configure( @@ -56,6 +58,7 @@ def _configure( status: Optional[pulumi.Input['AnalysisResourceStatus']] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input['AnalysisTagArgs']]]] = None, theme_arn: Optional[pulumi.Input[str]] = None, + validation_strategy: Optional[pulumi.Input['AnalysisValidationStrategyArgs']] = None, opts: Optional[pulumi.ResourceOptions]=None): _setter("analysis_id", analysis_id) _setter("aws_account_id", aws_account_id) @@ -75,6 +78,8 @@ def _configure( _setter("tags", tags) if theme_arn is not None: _setter("theme_arn", theme_arn) + if validation_strategy is not None: + _setter("validation_strategy", validation_strategy) @property @pulumi.getter(name="analysisId") @@ -166,6 +171,15 @@ def theme_arn(self) -> Optional[pulumi.Input[str]]: def theme_arn(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "theme_arn", value) + @property + @pulumi.getter(name="validationStrategy") + def validation_strategy(self) -> Optional[pulumi.Input['AnalysisValidationStrategyArgs']]: + return pulumi.get(self, "validation_strategy") + + @validation_strategy.setter + def validation_strategy(self, value: Optional[pulumi.Input['AnalysisValidationStrategyArgs']]): + pulumi.set(self, "validation_strategy", value) + class Analysis(pulumi.CustomResource): @overload @@ -182,6 +196,7 @@ def __init__(__self__, status: Optional[pulumi.Input['AnalysisResourceStatus']] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['AnalysisTagArgs']]]]] = None, theme_arn: Optional[pulumi.Input[str]] = None, + validation_strategy: Optional[pulumi.Input[pulumi.InputType['AnalysisValidationStrategyArgs']]] = None, __props__=None): """ Definition of the AWS::QuickSight::Analysis Resource Type. @@ -227,6 +242,7 @@ def _internal_init(__self__, status: Optional[pulumi.Input['AnalysisResourceStatus']] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['AnalysisTagArgs']]]]] = None, theme_arn: Optional[pulumi.Input[str]] = None, + validation_strategy: Optional[pulumi.Input[pulumi.InputType['AnalysisValidationStrategyArgs']]] = None, __props__=None): opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) if not isinstance(opts, pulumi.ResourceOptions): @@ -265,6 +281,12 @@ def _setter(key, value): __props__.__dict__["status"] = status __props__.__dict__["tags"] = tags __props__.__dict__["theme_arn"] = theme_arn + if validation_strategy is not None and not isinstance(validation_strategy, AnalysisValidationStrategyArgs): + validation_strategy = validation_strategy or {} + def _setter(key, value): + validation_strategy[key] = value + AnalysisValidationStrategyArgs._configure(_setter, **validation_strategy) + __props__.__dict__["validation_strategy"] = validation_strategy __props__.__dict__["arn"] = None __props__.__dict__["created_time"] = None __props__.__dict__["data_set_arns"] = None @@ -311,6 +333,7 @@ def get(resource_name: str, __props__.__dict__["status"] = None __props__.__dict__["tags"] = None __props__.__dict__["theme_arn"] = None + __props__.__dict__["validation_strategy"] = None return Analysis(resource_name, opts=opts, __props__=__props__) @property @@ -393,3 +416,8 @@ def tags(self) -> pulumi.Output[Optional[Sequence['outputs.AnalysisTag']]]: def theme_arn(self) -> pulumi.Output[Optional[str]]: return pulumi.get(self, "theme_arn") + @property + @pulumi.getter(name="validationStrategy") + def validation_strategy(self) -> pulumi.Output[Optional['outputs.AnalysisValidationStrategy']]: + return pulumi.get(self, "validation_strategy") + diff --git a/sdk/python/pulumi_aws_native/quicksight/dashboard.py b/sdk/python/pulumi_aws_native/quicksight/dashboard.py index 4438b13774..eed4d76f0b 100644 --- a/sdk/python/pulumi_aws_native/quicksight/dashboard.py +++ b/sdk/python/pulumi_aws_native/quicksight/dashboard.py @@ -27,6 +27,7 @@ def __init__(__self__, *, source_entity: Optional[pulumi.Input['DashboardSourceEntityArgs']] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input['DashboardTagArgs']]]] = None, theme_arn: Optional[pulumi.Input[str]] = None, + validation_strategy: Optional[pulumi.Input['DashboardValidationStrategyArgs']] = None, version_description: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a Dashboard resource. @@ -43,6 +44,7 @@ def __init__(__self__, *, source_entity=source_entity, tags=tags, theme_arn=theme_arn, + validation_strategy=validation_strategy, version_description=version_description, ) @staticmethod @@ -58,6 +60,7 @@ def _configure( source_entity: Optional[pulumi.Input['DashboardSourceEntityArgs']] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input['DashboardTagArgs']]]] = None, theme_arn: Optional[pulumi.Input[str]] = None, + validation_strategy: Optional[pulumi.Input['DashboardValidationStrategyArgs']] = None, version_description: Optional[pulumi.Input[str]] = None, opts: Optional[pulumi.ResourceOptions]=None): _setter("aws_account_id", aws_account_id) @@ -78,6 +81,8 @@ def _configure( _setter("tags", tags) if theme_arn is not None: _setter("theme_arn", theme_arn) + if validation_strategy is not None: + _setter("validation_strategy", validation_strategy) if version_description is not None: _setter("version_description", version_description) @@ -171,6 +176,15 @@ def theme_arn(self) -> Optional[pulumi.Input[str]]: def theme_arn(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "theme_arn", value) + @property + @pulumi.getter(name="validationStrategy") + def validation_strategy(self) -> Optional[pulumi.Input['DashboardValidationStrategyArgs']]: + return pulumi.get(self, "validation_strategy") + + @validation_strategy.setter + def validation_strategy(self, value: Optional[pulumi.Input['DashboardValidationStrategyArgs']]): + pulumi.set(self, "validation_strategy", value) + @property @pulumi.getter(name="versionDescription") def version_description(self) -> Optional[pulumi.Input[str]]: @@ -196,6 +210,7 @@ def __init__(__self__, source_entity: Optional[pulumi.Input[pulumi.InputType['DashboardSourceEntityArgs']]] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['DashboardTagArgs']]]]] = None, theme_arn: Optional[pulumi.Input[str]] = None, + validation_strategy: Optional[pulumi.Input[pulumi.InputType['DashboardValidationStrategyArgs']]] = None, version_description: Optional[pulumi.Input[str]] = None, __props__=None): """ @@ -242,6 +257,7 @@ def _internal_init(__self__, source_entity: Optional[pulumi.Input[pulumi.InputType['DashboardSourceEntityArgs']]] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['DashboardTagArgs']]]]] = None, theme_arn: Optional[pulumi.Input[str]] = None, + validation_strategy: Optional[pulumi.Input[pulumi.InputType['DashboardValidationStrategyArgs']]] = None, version_description: Optional[pulumi.Input[str]] = None, __props__=None): opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) @@ -286,6 +302,12 @@ def _setter(key, value): __props__.__dict__["source_entity"] = source_entity __props__.__dict__["tags"] = tags __props__.__dict__["theme_arn"] = theme_arn + if validation_strategy is not None and not isinstance(validation_strategy, DashboardValidationStrategyArgs): + validation_strategy = validation_strategy or {} + def _setter(key, value): + validation_strategy[key] = value + DashboardValidationStrategyArgs._configure(_setter, **validation_strategy) + __props__.__dict__["validation_strategy"] = validation_strategy __props__.__dict__["version_description"] = version_description __props__.__dict__["arn"] = None __props__.__dict__["created_time"] = None @@ -330,6 +352,7 @@ def get(resource_name: str, __props__.__dict__["source_entity"] = None __props__.__dict__["tags"] = None __props__.__dict__["theme_arn"] = None + __props__.__dict__["validation_strategy"] = None __props__.__dict__["version"] = None __props__.__dict__["version_description"] = None return Dashboard(resource_name, opts=opts, __props__=__props__) @@ -404,6 +427,11 @@ def tags(self) -> pulumi.Output[Optional[Sequence['outputs.DashboardTag']]]: def theme_arn(self) -> pulumi.Output[Optional[str]]: return pulumi.get(self, "theme_arn") + @property + @pulumi.getter(name="validationStrategy") + def validation_strategy(self) -> pulumi.Output[Optional['outputs.DashboardValidationStrategy']]: + return pulumi.get(self, "validation_strategy") + @property @pulumi.getter def version(self) -> pulumi.Output['outputs.DashboardVersion']: diff --git a/sdk/python/pulumi_aws_native/quicksight/outputs.py b/sdk/python/pulumi_aws_native/quicksight/outputs.py index 6e6d53585d..743f9dddc1 100644 --- a/sdk/python/pulumi_aws_native/quicksight/outputs.py +++ b/sdk/python/pulumi_aws_native/quicksight/outputs.py @@ -460,6 +460,7 @@ 'AnalysisTrendArrowOptions', 'AnalysisUnaggregatedField', 'AnalysisUniqueValuesComputation', + 'AnalysisValidationStrategy', 'AnalysisVisibleRangeOptions', 'AnalysisVisual', 'AnalysisVisualCustomAction', @@ -938,6 +939,7 @@ 'DashboardTrendArrowOptions', 'DashboardUnaggregatedField', 'DashboardUniqueValuesComputation', + 'DashboardValidationStrategy', 'DashboardVersion', 'DashboardVersionDefinition', 'DashboardVisibleRangeOptions', @@ -1468,6 +1470,7 @@ 'TemplateTrendArrowOptions', 'TemplateUnaggregatedField', 'TemplateUniqueValuesComputation', + 'TemplateValidationStrategy', 'TemplateVersion', 'TemplateVersionDefinition', 'TemplateVisibleRangeOptions', @@ -28855,6 +28858,27 @@ def name(self) -> Optional[str]: return pulumi.get(self, "name") +@pulumi.output_type +class AnalysisValidationStrategy(dict): + def __init__(__self__, *, + mode: 'AnalysisValidationStrategyMode'): + AnalysisValidationStrategy._configure( + lambda key, value: pulumi.set(__self__, key, value), + mode=mode, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + mode: 'AnalysisValidationStrategyMode', + opts: Optional[pulumi.ResourceOptions]=None): + _setter("mode", mode) + + @property + @pulumi.getter + def mode(self) -> 'AnalysisValidationStrategyMode': + return pulumi.get(self, "mode") + + @pulumi.output_type class AnalysisVisibleRangeOptions(dict): @staticmethod @@ -58119,6 +58143,27 @@ def name(self) -> Optional[str]: return pulumi.get(self, "name") +@pulumi.output_type +class DashboardValidationStrategy(dict): + def __init__(__self__, *, + mode: 'DashboardValidationStrategyMode'): + DashboardValidationStrategy._configure( + lambda key, value: pulumi.set(__self__, key, value), + mode=mode, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + mode: 'DashboardValidationStrategyMode', + opts: Optional[pulumi.ResourceOptions]=None): + _setter("mode", mode) + + @property + @pulumi.getter + def mode(self) -> 'DashboardValidationStrategyMode': + return pulumi.get(self, "mode") + + @pulumi.output_type class DashboardVersion(dict): @staticmethod @@ -90800,6 +90845,27 @@ def name(self) -> Optional[str]: return pulumi.get(self, "name") +@pulumi.output_type +class TemplateValidationStrategy(dict): + def __init__(__self__, *, + mode: 'TemplateValidationStrategyMode'): + TemplateValidationStrategy._configure( + lambda key, value: pulumi.set(__self__, key, value), + mode=mode, + ) + @staticmethod + def _configure( + _setter: Callable[[Any, Any], None], + mode: 'TemplateValidationStrategyMode', + opts: Optional[pulumi.ResourceOptions]=None): + _setter("mode", mode) + + @property + @pulumi.getter + def mode(self) -> 'TemplateValidationStrategyMode': + return pulumi.get(self, "mode") + + @pulumi.output_type class TemplateVersion(dict): @staticmethod diff --git a/sdk/python/pulumi_aws_native/quicksight/template.py b/sdk/python/pulumi_aws_native/quicksight/template.py index d0988f6408..b4781bc1dd 100644 --- a/sdk/python/pulumi_aws_native/quicksight/template.py +++ b/sdk/python/pulumi_aws_native/quicksight/template.py @@ -24,6 +24,7 @@ def __init__(__self__, *, permissions: Optional[pulumi.Input[Sequence[pulumi.Input['TemplateResourcePermissionArgs']]]] = None, source_entity: Optional[pulumi.Input['TemplateSourceEntityArgs']] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input['TemplateTagArgs']]]] = None, + validation_strategy: Optional[pulumi.Input['TemplateValidationStrategyArgs']] = None, version_description: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a Template resource. @@ -37,6 +38,7 @@ def __init__(__self__, *, permissions=permissions, source_entity=source_entity, tags=tags, + validation_strategy=validation_strategy, version_description=version_description, ) @staticmethod @@ -49,6 +51,7 @@ def _configure( permissions: Optional[pulumi.Input[Sequence[pulumi.Input['TemplateResourcePermissionArgs']]]] = None, source_entity: Optional[pulumi.Input['TemplateSourceEntityArgs']] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input['TemplateTagArgs']]]] = None, + validation_strategy: Optional[pulumi.Input['TemplateValidationStrategyArgs']] = None, version_description: Optional[pulumi.Input[str]] = None, opts: Optional[pulumi.ResourceOptions]=None): _setter("aws_account_id", aws_account_id) @@ -63,6 +66,8 @@ def _configure( _setter("source_entity", source_entity) if tags is not None: _setter("tags", tags) + if validation_strategy is not None: + _setter("validation_strategy", validation_strategy) if version_description is not None: _setter("version_description", version_description) @@ -129,6 +134,15 @@ def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['TemplateTagArgs'] def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['TemplateTagArgs']]]]): pulumi.set(self, "tags", value) + @property + @pulumi.getter(name="validationStrategy") + def validation_strategy(self) -> Optional[pulumi.Input['TemplateValidationStrategyArgs']]: + return pulumi.get(self, "validation_strategy") + + @validation_strategy.setter + def validation_strategy(self, value: Optional[pulumi.Input['TemplateValidationStrategyArgs']]): + pulumi.set(self, "validation_strategy", value) + @property @pulumi.getter(name="versionDescription") def version_description(self) -> Optional[pulumi.Input[str]]: @@ -151,6 +165,7 @@ def __init__(__self__, source_entity: Optional[pulumi.Input[pulumi.InputType['TemplateSourceEntityArgs']]] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['TemplateTagArgs']]]]] = None, template_id: Optional[pulumi.Input[str]] = None, + validation_strategy: Optional[pulumi.Input[pulumi.InputType['TemplateValidationStrategyArgs']]] = None, version_description: Optional[pulumi.Input[str]] = None, __props__=None): """ @@ -194,6 +209,7 @@ def _internal_init(__self__, source_entity: Optional[pulumi.Input[pulumi.InputType['TemplateSourceEntityArgs']]] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['TemplateTagArgs']]]]] = None, template_id: Optional[pulumi.Input[str]] = None, + validation_strategy: Optional[pulumi.Input[pulumi.InputType['TemplateValidationStrategyArgs']]] = None, version_description: Optional[pulumi.Input[str]] = None, __props__=None): opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) @@ -225,6 +241,12 @@ def _setter(key, value): if template_id is None and not opts.urn: raise TypeError("Missing required property 'template_id'") __props__.__dict__["template_id"] = template_id + if validation_strategy is not None and not isinstance(validation_strategy, TemplateValidationStrategyArgs): + validation_strategy = validation_strategy or {} + def _setter(key, value): + validation_strategy[key] = value + TemplateValidationStrategyArgs._configure(_setter, **validation_strategy) + __props__.__dict__["validation_strategy"] = validation_strategy __props__.__dict__["version_description"] = version_description __props__.__dict__["arn"] = None __props__.__dict__["created_time"] = None @@ -264,6 +286,7 @@ def get(resource_name: str, __props__.__dict__["source_entity"] = None __props__.__dict__["tags"] = None __props__.__dict__["template_id"] = None + __props__.__dict__["validation_strategy"] = None __props__.__dict__["version"] = None __props__.__dict__["version_description"] = None return Template(resource_name, opts=opts, __props__=__props__) @@ -318,6 +341,11 @@ def tags(self) -> pulumi.Output[Optional[Sequence['outputs.TemplateTag']]]: def template_id(self) -> pulumi.Output[str]: return pulumi.get(self, "template_id") + @property + @pulumi.getter(name="validationStrategy") + def validation_strategy(self) -> pulumi.Output[Optional['outputs.TemplateValidationStrategy']]: + return pulumi.get(self, "validation_strategy") + @property @pulumi.getter def version(self) -> pulumi.Output['outputs.TemplateVersion']: diff --git a/sdk/python/pulumi_aws_native/s3/_enums.py b/sdk/python/pulumi_aws_native/s3/_enums.py index f0630cbb04..4f6d592d28 100644 --- a/sdk/python/pulumi_aws_native/s3/_enums.py +++ b/sdk/python/pulumi_aws_native/s3/_enums.py @@ -6,31 +6,6 @@ __all__ = [ 'AccessPointNetworkOrigin', - 'BucketAccelerateConfigurationAccelerationStatus', - 'BucketAccessControl', - 'BucketCorsRuleAllowedMethodsItem', - 'BucketDefaultRetentionMode', - 'BucketDeleteMarkerReplicationStatus', - 'BucketDestinationFormat', - 'BucketIntelligentTieringConfigurationStatus', - 'BucketInventoryConfigurationIncludedObjectVersions', - 'BucketInventoryConfigurationOptionalFieldsItem', - 'BucketInventoryConfigurationScheduleFrequency', - 'BucketMetricsStatus', - 'BucketNoncurrentVersionTransitionStorageClass', - 'BucketOwnershipControlsRuleObjectOwnership', - 'BucketRedirectAllRequestsToProtocol', - 'BucketRedirectRuleProtocol', - 'BucketReplicaModificationsStatus', - 'BucketReplicationDestinationStorageClass', - 'BucketReplicationRuleStatus', - 'BucketReplicationTimeStatus', - 'BucketRuleStatus', - 'BucketServerSideEncryptionByDefaultSseAlgorithm', - 'BucketSseKmsEncryptedObjectsStatus', - 'BucketTieringAccessTier', - 'BucketTransitionStorageClass', - 'BucketVersioningConfigurationStatus', 'MultiRegionAccessPointPolicyPolicyStatusPropertiesIsPublic', 'StorageLensS3BucketDestinationFormat', 'StorageLensS3BucketDestinationOutputSchemaVersion', @@ -45,215 +20,6 @@ class AccessPointNetworkOrigin(str, Enum): VPC = "VPC" -class BucketAccelerateConfigurationAccelerationStatus(str, Enum): - """ - Configures the transfer acceleration state for an Amazon S3 bucket. - """ - ENABLED = "Enabled" - SUSPENDED = "Suspended" - - -class BucketAccessControl(str, Enum): - """ - A canned access control list (ACL) that grants predefined permissions to the bucket. - """ - AUTHENTICATED_READ = "AuthenticatedRead" - AWS_EXEC_READ = "AwsExecRead" - BUCKET_OWNER_FULL_CONTROL = "BucketOwnerFullControl" - BUCKET_OWNER_READ = "BucketOwnerRead" - LOG_DELIVERY_WRITE = "LogDeliveryWrite" - PRIVATE = "Private" - PUBLIC_READ = "PublicRead" - PUBLIC_READ_WRITE = "PublicReadWrite" - - -class BucketCorsRuleAllowedMethodsItem(str, Enum): - GET = "GET" - PUT = "PUT" - HEAD = "HEAD" - POST = "POST" - DELETE = "DELETE" - - -class BucketDefaultRetentionMode(str, Enum): - COMPLIANCE = "COMPLIANCE" - GOVERNANCE = "GOVERNANCE" - - -class BucketDeleteMarkerReplicationStatus(str, Enum): - DISABLED = "Disabled" - ENABLED = "Enabled" - - -class BucketDestinationFormat(str, Enum): - """ - Specifies the file format used when exporting data to Amazon S3. - """ - CSV = "CSV" - ORC = "ORC" - PARQUET = "Parquet" - - -class BucketIntelligentTieringConfigurationStatus(str, Enum): - """ - Specifies the status of the configuration. - """ - DISABLED = "Disabled" - ENABLED = "Enabled" - - -class BucketInventoryConfigurationIncludedObjectVersions(str, Enum): - """ - Object versions to include in the inventory list. - """ - ALL = "All" - CURRENT = "Current" - - -class BucketInventoryConfigurationOptionalFieldsItem(str, Enum): - SIZE = "Size" - LAST_MODIFIED_DATE = "LastModifiedDate" - STORAGE_CLASS = "StorageClass" - E_TAG = "ETag" - IS_MULTIPART_UPLOADED = "IsMultipartUploaded" - REPLICATION_STATUS = "ReplicationStatus" - ENCRYPTION_STATUS = "EncryptionStatus" - OBJECT_LOCK_RETAIN_UNTIL_DATE = "ObjectLockRetainUntilDate" - OBJECT_LOCK_MODE = "ObjectLockMode" - OBJECT_LOCK_LEGAL_HOLD_STATUS = "ObjectLockLegalHoldStatus" - INTELLIGENT_TIERING_ACCESS_TIER = "IntelligentTieringAccessTier" - BUCKET_KEY_STATUS = "BucketKeyStatus" - - -class BucketInventoryConfigurationScheduleFrequency(str, Enum): - """ - Specifies the schedule for generating inventory results. - """ - DAILY = "Daily" - WEEKLY = "Weekly" - - -class BucketMetricsStatus(str, Enum): - DISABLED = "Disabled" - ENABLED = "Enabled" - - -class BucketNoncurrentVersionTransitionStorageClass(str, Enum): - """ - The class of storage used to store the object. - """ - DEEP_ARCHIVE = "DEEP_ARCHIVE" - GLACIER = "GLACIER" - GLACIER_IR = "GLACIER_IR" - INTELLIGENT_TIERING = "INTELLIGENT_TIERING" - ONEZONE_IA = "ONEZONE_IA" - STANDARD_IA = "STANDARD_IA" - - -class BucketOwnershipControlsRuleObjectOwnership(str, Enum): - """ - Specifies an object ownership rule. - """ - OBJECT_WRITER = "ObjectWriter" - BUCKET_OWNER_PREFERRED = "BucketOwnerPreferred" - BUCKET_OWNER_ENFORCED = "BucketOwnerEnforced" - - -class BucketRedirectAllRequestsToProtocol(str, Enum): - """ - Protocol to use when redirecting requests. The default is the protocol that is used in the original request. - """ - HTTP = "http" - HTTPS = "https" - - -class BucketRedirectRuleProtocol(str, Enum): - """ - Protocol to use when redirecting requests. The default is the protocol that is used in the original request. - """ - HTTP = "http" - HTTPS = "https" - - -class BucketReplicaModificationsStatus(str, Enum): - """ - Specifies whether Amazon S3 replicates modifications on replicas. - """ - ENABLED = "Enabled" - DISABLED = "Disabled" - - -class BucketReplicationDestinationStorageClass(str, Enum): - """ - The storage class to use when replicating objects, such as S3 Standard or reduced redundancy. - """ - DEEP_ARCHIVE = "DEEP_ARCHIVE" - GLACIER = "GLACIER" - GLACIER_IR = "GLACIER_IR" - INTELLIGENT_TIERING = "INTELLIGENT_TIERING" - ONEZONE_IA = "ONEZONE_IA" - REDUCED_REDUNDANCY = "REDUCED_REDUNDANCY" - STANDARD = "STANDARD" - STANDARD_IA = "STANDARD_IA" - - -class BucketReplicationRuleStatus(str, Enum): - """ - Specifies whether the rule is enabled. - """ - DISABLED = "Disabled" - ENABLED = "Enabled" - - -class BucketReplicationTimeStatus(str, Enum): - DISABLED = "Disabled" - ENABLED = "Enabled" - - -class BucketRuleStatus(str, Enum): - ENABLED = "Enabled" - DISABLED = "Disabled" - - -class BucketServerSideEncryptionByDefaultSseAlgorithm(str, Enum): - AWSKMS = "aws:kms" - AES256 = "AES256" - AWSKMSDSSE = "aws:kms:dsse" - - -class BucketSseKmsEncryptedObjectsStatus(str, Enum): - """ - Specifies whether Amazon S3 replicates objects created with server-side encryption using a customer master key (CMK) stored in AWS Key Management Service. - """ - DISABLED = "Disabled" - ENABLED = "Enabled" - - -class BucketTieringAccessTier(str, Enum): - """ - S3 Intelligent-Tiering access tier. See Storage class for automatically optimizing frequently and infrequently accessed objects for a list of access tiers in the S3 Intelligent-Tiering storage class. - """ - ARCHIVE_ACCESS = "ARCHIVE_ACCESS" - DEEP_ARCHIVE_ACCESS = "DEEP_ARCHIVE_ACCESS" - - -class BucketTransitionStorageClass(str, Enum): - DEEP_ARCHIVE = "DEEP_ARCHIVE" - GLACIER = "GLACIER" - GLACIER_IR = "GLACIER_IR" - INTELLIGENT_TIERING = "INTELLIGENT_TIERING" - ONEZONE_IA = "ONEZONE_IA" - STANDARD_IA = "STANDARD_IA" - - -class BucketVersioningConfigurationStatus(str, Enum): - """ - The versioning state of the bucket. - """ - ENABLED = "Enabled" - SUSPENDED = "Suspended" - - class MultiRegionAccessPointPolicyPolicyStatusPropertiesIsPublic(str, Enum): """ Specifies whether the policy is public or not. diff --git a/sdk/python/pulumi_aws_native/s3/_inputs.py b/sdk/python/pulumi_aws_native/s3/_inputs.py index 4070bf9293..77a3df5230 100644 --- a/sdk/python/pulumi_aws_native/s3/_inputs.py +++ b/sdk/python/pulumi_aws_native/s3/_inputs.py @@ -224,10 +224,6 @@ def vpc_id(self, value: Optional[pulumi.Input[str]]): class BucketAbortIncompleteMultipartUploadArgs: def __init__(__self__, *, days_after_initiation: pulumi.Input[int]): - """ - Specifies the days since the initiation of an incomplete multipart upload that Amazon S3 will wait before permanently removing all parts of the upload. - :param pulumi.Input[int] days_after_initiation: Specifies the number of days after which Amazon S3 aborts an incomplete multipart upload. - """ BucketAbortIncompleteMultipartUploadArgs._configure( lambda key, value: pulumi.set(__self__, key, value), days_after_initiation=days_after_initiation, @@ -242,9 +238,6 @@ def _configure( @property @pulumi.getter(name="daysAfterInitiation") def days_after_initiation(self) -> pulumi.Input[int]: - """ - Specifies the number of days after which Amazon S3 aborts an incomplete multipart upload. - """ return pulumi.get(self, "days_after_initiation") @days_after_initiation.setter @@ -255,10 +248,7 @@ def days_after_initiation(self, value: pulumi.Input[int]): @pulumi.input_type class BucketAccelerateConfigurationArgs: def __init__(__self__, *, - acceleration_status: pulumi.Input['BucketAccelerateConfigurationAccelerationStatus']): - """ - :param pulumi.Input['BucketAccelerateConfigurationAccelerationStatus'] acceleration_status: Configures the transfer acceleration state for an Amazon S3 bucket. - """ + acceleration_status: pulumi.Input[str]): BucketAccelerateConfigurationArgs._configure( lambda key, value: pulumi.set(__self__, key, value), acceleration_status=acceleration_status, @@ -266,20 +256,17 @@ def __init__(__self__, *, @staticmethod def _configure( _setter: Callable[[Any, Any], None], - acceleration_status: pulumi.Input['BucketAccelerateConfigurationAccelerationStatus'], + acceleration_status: pulumi.Input[str], opts: Optional[pulumi.ResourceOptions]=None): _setter("acceleration_status", acceleration_status) @property @pulumi.getter(name="accelerationStatus") - def acceleration_status(self) -> pulumi.Input['BucketAccelerateConfigurationAccelerationStatus']: - """ - Configures the transfer acceleration state for an Amazon S3 bucket. - """ + def acceleration_status(self) -> pulumi.Input[str]: return pulumi.get(self, "acceleration_status") @acceleration_status.setter - def acceleration_status(self, value: pulumi.Input['BucketAccelerateConfigurationAccelerationStatus']): + def acceleration_status(self, value: pulumi.Input[str]): pulumi.set(self, "acceleration_status", value) @@ -287,9 +274,6 @@ def acceleration_status(self, value: pulumi.Input['BucketAccelerateConfiguration class BucketAccessControlTranslationArgs: def __init__(__self__, *, owner: pulumi.Input[str]): - """ - Specify this only in a cross-account scenario (where source and destination bucket owners are not the same), and you want to change replica ownership to the AWS account that owns the destination bucket. If this is not specified in the replication configuration, the replicas are owned by same AWS account that owns the source object. - """ BucketAccessControlTranslationArgs._configure( lambda key, value: pulumi.set(__self__, key, value), owner=owner, @@ -318,11 +302,6 @@ def __init__(__self__, *, storage_class_analysis: pulumi.Input['BucketStorageClassAnalysisArgs'], prefix: Optional[pulumi.Input[str]] = None, tag_filters: Optional[pulumi.Input[Sequence[pulumi.Input['BucketTagFilterArgs']]]] = None): - """ - Specifies the configuration and any analyses for the analytics filter of an Amazon S3 bucket. - :param pulumi.Input[str] id: The ID that identifies the analytics configuration. - :param pulumi.Input[str] prefix: The prefix that an object must have to be included in the analytics results. - """ BucketAnalyticsConfigurationArgs._configure( lambda key, value: pulumi.set(__self__, key, value), id=id, @@ -348,9 +327,6 @@ def _configure( @property @pulumi.getter def id(self) -> pulumi.Input[str]: - """ - The ID that identifies the analytics configuration. - """ return pulumi.get(self, "id") @id.setter @@ -369,9 +345,6 @@ def storage_class_analysis(self, value: pulumi.Input['BucketStorageClassAnalysis @property @pulumi.getter def prefix(self) -> Optional[pulumi.Input[str]]: - """ - The prefix that an object must have to be included in the analytics results. - """ return pulumi.get(self, "prefix") @prefix.setter @@ -416,21 +389,12 @@ def cors_rules(self, value: pulumi.Input[Sequence[pulumi.Input['BucketCorsRuleAr @pulumi.input_type class BucketCorsRuleArgs: def __init__(__self__, *, - allowed_methods: pulumi.Input[Sequence[pulumi.Input['BucketCorsRuleAllowedMethodsItem']]], + allowed_methods: pulumi.Input[Sequence[pulumi.Input[str]]], allowed_origins: pulumi.Input[Sequence[pulumi.Input[str]]], allowed_headers: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, exposed_headers: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, id: Optional[pulumi.Input[str]] = None, max_age: Optional[pulumi.Input[int]] = None): - """ - A set of origins and methods (cross-origin access that you want to allow). You can add up to 100 rules to the configuration. - :param pulumi.Input[Sequence[pulumi.Input['BucketCorsRuleAllowedMethodsItem']]] allowed_methods: An HTTP method that you allow the origin to execute. - :param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_origins: One or more origins you want customers to be able to access the bucket from. - :param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_headers: Headers that are specified in the Access-Control-Request-Headers header. - :param pulumi.Input[Sequence[pulumi.Input[str]]] exposed_headers: One or more headers in the response that you want customers to be able to access from their applications (for example, from a JavaScript XMLHttpRequest object). - :param pulumi.Input[str] id: A unique identifier for this rule. - :param pulumi.Input[int] max_age: The time in seconds that your browser is to cache the preflight response for the specified resource. - """ BucketCorsRuleArgs._configure( lambda key, value: pulumi.set(__self__, key, value), allowed_methods=allowed_methods, @@ -443,7 +407,7 @@ def __init__(__self__, *, @staticmethod def _configure( _setter: Callable[[Any, Any], None], - allowed_methods: pulumi.Input[Sequence[pulumi.Input['BucketCorsRuleAllowedMethodsItem']]], + allowed_methods: pulumi.Input[Sequence[pulumi.Input[str]]], allowed_origins: pulumi.Input[Sequence[pulumi.Input[str]]], allowed_headers: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, exposed_headers: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, @@ -463,22 +427,16 @@ def _configure( @property @pulumi.getter(name="allowedMethods") - def allowed_methods(self) -> pulumi.Input[Sequence[pulumi.Input['BucketCorsRuleAllowedMethodsItem']]]: - """ - An HTTP method that you allow the origin to execute. - """ + def allowed_methods(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: return pulumi.get(self, "allowed_methods") @allowed_methods.setter - def allowed_methods(self, value: pulumi.Input[Sequence[pulumi.Input['BucketCorsRuleAllowedMethodsItem']]]): + def allowed_methods(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): pulumi.set(self, "allowed_methods", value) @property @pulumi.getter(name="allowedOrigins") def allowed_origins(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: - """ - One or more origins you want customers to be able to access the bucket from. - """ return pulumi.get(self, "allowed_origins") @allowed_origins.setter @@ -488,9 +446,6 @@ def allowed_origins(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): @property @pulumi.getter(name="allowedHeaders") def allowed_headers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - Headers that are specified in the Access-Control-Request-Headers header. - """ return pulumi.get(self, "allowed_headers") @allowed_headers.setter @@ -500,9 +455,6 @@ def allowed_headers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str @property @pulumi.getter(name="exposedHeaders") def exposed_headers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - One or more headers in the response that you want customers to be able to access from their applications (for example, from a JavaScript XMLHttpRequest object). - """ return pulumi.get(self, "exposed_headers") @exposed_headers.setter @@ -512,9 +464,6 @@ def exposed_headers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str @property @pulumi.getter def id(self) -> Optional[pulumi.Input[str]]: - """ - A unique identifier for this rule. - """ return pulumi.get(self, "id") @id.setter @@ -524,9 +473,6 @@ def id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="maxAge") def max_age(self) -> Optional[pulumi.Input[int]]: - """ - The time in seconds that your browser is to cache the preflight response for the specified resource. - """ return pulumi.get(self, "max_age") @max_age.setter @@ -539,10 +485,6 @@ class BucketDataExportArgs: def __init__(__self__, *, destination: pulumi.Input['BucketDestinationArgs'], output_schema_version: pulumi.Input[str]): - """ - Specifies how data related to the storage class analysis for an Amazon S3 bucket should be exported. - :param pulumi.Input[str] output_schema_version: The version of the output schema to use when exporting data. - """ BucketDataExportArgs._configure( lambda key, value: pulumi.set(__self__, key, value), destination=destination, @@ -569,9 +511,6 @@ def destination(self, value: pulumi.Input['BucketDestinationArgs']): @property @pulumi.getter(name="outputSchemaVersion") def output_schema_version(self) -> pulumi.Input[str]: - """ - The version of the output schema to use when exporting data. - """ return pulumi.get(self, "output_schema_version") @output_schema_version.setter @@ -583,11 +522,8 @@ def output_schema_version(self, value: pulumi.Input[str]): class BucketDefaultRetentionArgs: def __init__(__self__, *, days: Optional[pulumi.Input[int]] = None, - mode: Optional[pulumi.Input['BucketDefaultRetentionMode']] = None, + mode: Optional[pulumi.Input[str]] = None, years: Optional[pulumi.Input[int]] = None): - """ - The default retention period that you want to apply to new objects placed in the specified bucket. - """ BucketDefaultRetentionArgs._configure( lambda key, value: pulumi.set(__self__, key, value), days=days, @@ -598,7 +534,7 @@ def __init__(__self__, *, def _configure( _setter: Callable[[Any, Any], None], days: Optional[pulumi.Input[int]] = None, - mode: Optional[pulumi.Input['BucketDefaultRetentionMode']] = None, + mode: Optional[pulumi.Input[str]] = None, years: Optional[pulumi.Input[int]] = None, opts: Optional[pulumi.ResourceOptions]=None): if days is not None: @@ -619,11 +555,11 @@ def days(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter - def mode(self) -> Optional[pulumi.Input['BucketDefaultRetentionMode']]: + def mode(self) -> Optional[pulumi.Input[str]]: return pulumi.get(self, "mode") @mode.setter - def mode(self, value: Optional[pulumi.Input['BucketDefaultRetentionMode']]): + def mode(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "mode", value) @property @@ -639,7 +575,7 @@ def years(self, value: Optional[pulumi.Input[int]]): @pulumi.input_type class BucketDeleteMarkerReplicationArgs: def __init__(__self__, *, - status: Optional[pulumi.Input['BucketDeleteMarkerReplicationStatus']] = None): + status: Optional[pulumi.Input[str]] = None): BucketDeleteMarkerReplicationArgs._configure( lambda key, value: pulumi.set(__self__, key, value), status=status, @@ -647,18 +583,18 @@ def __init__(__self__, *, @staticmethod def _configure( _setter: Callable[[Any, Any], None], - status: Optional[pulumi.Input['BucketDeleteMarkerReplicationStatus']] = None, + status: Optional[pulumi.Input[str]] = None, opts: Optional[pulumi.ResourceOptions]=None): if status is not None: _setter("status", status) @property @pulumi.getter - def status(self) -> Optional[pulumi.Input['BucketDeleteMarkerReplicationStatus']]: + def status(self) -> Optional[pulumi.Input[str]]: return pulumi.get(self, "status") @status.setter - def status(self, value: Optional[pulumi.Input['BucketDeleteMarkerReplicationStatus']]): + def status(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "status", value) @@ -666,16 +602,9 @@ def status(self, value: Optional[pulumi.Input['BucketDeleteMarkerReplicationStat class BucketDestinationArgs: def __init__(__self__, *, bucket_arn: pulumi.Input[str], - format: pulumi.Input['BucketDestinationFormat'], + format: pulumi.Input[str], bucket_account_id: Optional[pulumi.Input[str]] = None, prefix: Optional[pulumi.Input[str]] = None): - """ - Specifies information about where to publish analysis or configuration results for an Amazon S3 bucket and S3 Replication Time Control (S3 RTC). - :param pulumi.Input[str] bucket_arn: The Amazon Resource Name (ARN) of the bucket to which data is exported. - :param pulumi.Input['BucketDestinationFormat'] format: Specifies the file format used when exporting data to Amazon S3. - :param pulumi.Input[str] bucket_account_id: The account ID that owns the destination S3 bucket. - :param pulumi.Input[str] prefix: The prefix to use when exporting data. The prefix is prepended to all results. - """ BucketDestinationArgs._configure( lambda key, value: pulumi.set(__self__, key, value), bucket_arn=bucket_arn, @@ -687,7 +616,7 @@ def __init__(__self__, *, def _configure( _setter: Callable[[Any, Any], None], bucket_arn: pulumi.Input[str], - format: pulumi.Input['BucketDestinationFormat'], + format: pulumi.Input[str], bucket_account_id: Optional[pulumi.Input[str]] = None, prefix: Optional[pulumi.Input[str]] = None, opts: Optional[pulumi.ResourceOptions]=None): @@ -701,9 +630,6 @@ def _configure( @property @pulumi.getter(name="bucketArn") def bucket_arn(self) -> pulumi.Input[str]: - """ - The Amazon Resource Name (ARN) of the bucket to which data is exported. - """ return pulumi.get(self, "bucket_arn") @bucket_arn.setter @@ -712,22 +638,16 @@ def bucket_arn(self, value: pulumi.Input[str]): @property @pulumi.getter - def format(self) -> pulumi.Input['BucketDestinationFormat']: - """ - Specifies the file format used when exporting data to Amazon S3. - """ + def format(self) -> pulumi.Input[str]: return pulumi.get(self, "format") @format.setter - def format(self, value: pulumi.Input['BucketDestinationFormat']): + def format(self, value: pulumi.Input[str]): pulumi.set(self, "format", value) @property @pulumi.getter(name="bucketAccountId") def bucket_account_id(self) -> Optional[pulumi.Input[str]]: - """ - The account ID that owns the destination S3 bucket. - """ return pulumi.get(self, "bucket_account_id") @bucket_account_id.setter @@ -737,9 +657,6 @@ def bucket_account_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def prefix(self) -> Optional[pulumi.Input[str]]: - """ - The prefix to use when exporting data. The prefix is prepended to all results. - """ return pulumi.get(self, "prefix") @prefix.setter @@ -751,10 +668,6 @@ def prefix(self, value: Optional[pulumi.Input[str]]): class BucketEncryptionConfigurationArgs: def __init__(__self__, *, replica_kms_key_id: pulumi.Input[str]): - """ - Specifies encryption-related information for an Amazon S3 bucket that is a destination for replicated objects. - :param pulumi.Input[str] replica_kms_key_id: Specifies the ID (Key ARN or Alias ARN) of the customer managed customer master key (CMK) stored in AWS Key Management Service (KMS) for the destination bucket. - """ BucketEncryptionConfigurationArgs._configure( lambda key, value: pulumi.set(__self__, key, value), replica_kms_key_id=replica_kms_key_id, @@ -769,9 +682,6 @@ def _configure( @property @pulumi.getter(name="replicaKmsKeyId") def replica_kms_key_id(self) -> pulumi.Input[str]: - """ - Specifies the ID (Key ARN or Alias ARN) of the customer managed customer master key (CMK) stored in AWS Key Management Service (KMS) for the destination bucket. - """ return pulumi.get(self, "replica_kms_key_id") @replica_kms_key_id.setter @@ -783,10 +693,6 @@ def replica_kms_key_id(self, value: pulumi.Input[str]): class BucketEncryptionArgs: def __init__(__self__, *, server_side_encryption_configuration: pulumi.Input[Sequence[pulumi.Input['BucketServerSideEncryptionRuleArgs']]]): - """ - Specifies default encryption for a bucket using server-side encryption with either Amazon S3-managed keys (SSE-S3) or AWS KMS-managed keys (SSE-KMS). - :param pulumi.Input[Sequence[pulumi.Input['BucketServerSideEncryptionRuleArgs']]] server_side_encryption_configuration: Specifies the default server-side-encryption configuration. - """ BucketEncryptionArgs._configure( lambda key, value: pulumi.set(__self__, key, value), server_side_encryption_configuration=server_side_encryption_configuration, @@ -801,9 +707,6 @@ def _configure( @property @pulumi.getter(name="serverSideEncryptionConfiguration") def server_side_encryption_configuration(self) -> pulumi.Input[Sequence[pulumi.Input['BucketServerSideEncryptionRuleArgs']]]: - """ - Specifies the default server-side-encryption configuration. - """ return pulumi.get(self, "server_side_encryption_configuration") @server_side_encryption_configuration.setter @@ -814,11 +717,7 @@ def server_side_encryption_configuration(self, value: pulumi.Input[Sequence[pulu @pulumi.input_type class BucketEventBridgeConfigurationArgs: def __init__(__self__, *, - event_bridge_enabled: pulumi.Input[bool]): - """ - Describes the Amazon EventBridge notification configuration for an Amazon S3 bucket. - :param pulumi.Input[bool] event_bridge_enabled: Specifies whether to send notifications to Amazon EventBridge when events occur in an Amazon S3 bucket. - """ + event_bridge_enabled: Optional[pulumi.Input[bool]] = None): BucketEventBridgeConfigurationArgs._configure( lambda key, value: pulumi.set(__self__, key, value), event_bridge_enabled=event_bridge_enabled, @@ -826,20 +725,18 @@ def __init__(__self__, *, @staticmethod def _configure( _setter: Callable[[Any, Any], None], - event_bridge_enabled: pulumi.Input[bool], + event_bridge_enabled: Optional[pulumi.Input[bool]] = None, opts: Optional[pulumi.ResourceOptions]=None): - _setter("event_bridge_enabled", event_bridge_enabled) + if event_bridge_enabled is not None: + _setter("event_bridge_enabled", event_bridge_enabled) @property @pulumi.getter(name="eventBridgeEnabled") - def event_bridge_enabled(self) -> pulumi.Input[bool]: - """ - Specifies whether to send notifications to Amazon EventBridge when events occur in an Amazon S3 bucket. - """ + def event_bridge_enabled(self) -> Optional[pulumi.Input[bool]]: return pulumi.get(self, "event_bridge_enabled") @event_bridge_enabled.setter - def event_bridge_enabled(self, value: pulumi.Input[bool]): + def event_bridge_enabled(self, value: Optional[pulumi.Input[bool]]): pulumi.set(self, "event_bridge_enabled", value) @@ -848,9 +745,6 @@ class BucketFilterRuleArgs: def __init__(__self__, *, name: pulumi.Input[str], value: pulumi.Input[str]): - """ - Specifies the Amazon S3 object key name to filter on and whether to filter on the suffix or prefix of the key name. - """ BucketFilterRuleArgs._configure( lambda key, value: pulumi.set(__self__, key, value), name=name, @@ -888,17 +782,10 @@ def value(self, value: pulumi.Input[str]): class BucketIntelligentTieringConfigurationArgs: def __init__(__self__, *, id: pulumi.Input[str], - status: pulumi.Input['BucketIntelligentTieringConfigurationStatus'], + status: pulumi.Input[str], tierings: pulumi.Input[Sequence[pulumi.Input['BucketTieringArgs']]], prefix: Optional[pulumi.Input[str]] = None, tag_filters: Optional[pulumi.Input[Sequence[pulumi.Input['BucketTagFilterArgs']]]] = None): - """ - :param pulumi.Input[str] id: The ID used to identify the S3 Intelligent-Tiering configuration. - :param pulumi.Input['BucketIntelligentTieringConfigurationStatus'] status: Specifies the status of the configuration. - :param pulumi.Input[Sequence[pulumi.Input['BucketTieringArgs']]] tierings: Specifies a list of S3 Intelligent-Tiering storage class tiers in the configuration. At least one tier must be defined in the list. At most, you can specify two tiers in the list, one for each available AccessTier: ARCHIVE_ACCESS and DEEP_ARCHIVE_ACCESS. - :param pulumi.Input[str] prefix: An object key name prefix that identifies the subset of objects to which the rule applies. - :param pulumi.Input[Sequence[pulumi.Input['BucketTagFilterArgs']]] tag_filters: A container for a key-value pair. - """ BucketIntelligentTieringConfigurationArgs._configure( lambda key, value: pulumi.set(__self__, key, value), id=id, @@ -911,7 +798,7 @@ def __init__(__self__, *, def _configure( _setter: Callable[[Any, Any], None], id: pulumi.Input[str], - status: pulumi.Input['BucketIntelligentTieringConfigurationStatus'], + status: pulumi.Input[str], tierings: pulumi.Input[Sequence[pulumi.Input['BucketTieringArgs']]], prefix: Optional[pulumi.Input[str]] = None, tag_filters: Optional[pulumi.Input[Sequence[pulumi.Input['BucketTagFilterArgs']]]] = None, @@ -927,9 +814,6 @@ def _configure( @property @pulumi.getter def id(self) -> pulumi.Input[str]: - """ - The ID used to identify the S3 Intelligent-Tiering configuration. - """ return pulumi.get(self, "id") @id.setter @@ -938,22 +822,16 @@ def id(self, value: pulumi.Input[str]): @property @pulumi.getter - def status(self) -> pulumi.Input['BucketIntelligentTieringConfigurationStatus']: - """ - Specifies the status of the configuration. - """ + def status(self) -> pulumi.Input[str]: return pulumi.get(self, "status") @status.setter - def status(self, value: pulumi.Input['BucketIntelligentTieringConfigurationStatus']): + def status(self, value: pulumi.Input[str]): pulumi.set(self, "status", value) @property @pulumi.getter def tierings(self) -> pulumi.Input[Sequence[pulumi.Input['BucketTieringArgs']]]: - """ - Specifies a list of S3 Intelligent-Tiering storage class tiers in the configuration. At least one tier must be defined in the list. At most, you can specify two tiers in the list, one for each available AccessTier: ARCHIVE_ACCESS and DEEP_ARCHIVE_ACCESS. - """ return pulumi.get(self, "tierings") @tierings.setter @@ -963,9 +841,6 @@ def tierings(self, value: pulumi.Input[Sequence[pulumi.Input['BucketTieringArgs' @property @pulumi.getter def prefix(self) -> Optional[pulumi.Input[str]]: - """ - An object key name prefix that identifies the subset of objects to which the rule applies. - """ return pulumi.get(self, "prefix") @prefix.setter @@ -975,9 +850,6 @@ def prefix(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="tagFilters") def tag_filters(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['BucketTagFilterArgs']]]]: - """ - A container for a key-value pair. - """ return pulumi.get(self, "tag_filters") @tag_filters.setter @@ -991,18 +863,10 @@ def __init__(__self__, *, destination: pulumi.Input['BucketDestinationArgs'], enabled: pulumi.Input[bool], id: pulumi.Input[str], - included_object_versions: pulumi.Input['BucketInventoryConfigurationIncludedObjectVersions'], - schedule_frequency: pulumi.Input['BucketInventoryConfigurationScheduleFrequency'], - optional_fields: Optional[pulumi.Input[Sequence[pulumi.Input['BucketInventoryConfigurationOptionalFieldsItem']]]] = None, + included_object_versions: pulumi.Input[str], + schedule_frequency: pulumi.Input[str], + optional_fields: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, prefix: Optional[pulumi.Input[str]] = None): - """ - :param pulumi.Input[bool] enabled: Specifies whether the inventory is enabled or disabled. - :param pulumi.Input[str] id: The ID used to identify the inventory configuration. - :param pulumi.Input['BucketInventoryConfigurationIncludedObjectVersions'] included_object_versions: Object versions to include in the inventory list. - :param pulumi.Input['BucketInventoryConfigurationScheduleFrequency'] schedule_frequency: Specifies the schedule for generating inventory results. - :param pulumi.Input[Sequence[pulumi.Input['BucketInventoryConfigurationOptionalFieldsItem']]] optional_fields: Contains the optional fields that are included in the inventory results. - :param pulumi.Input[str] prefix: The prefix that is prepended to all inventory results. - """ BucketInventoryConfigurationArgs._configure( lambda key, value: pulumi.set(__self__, key, value), destination=destination, @@ -1019,9 +883,9 @@ def _configure( destination: pulumi.Input['BucketDestinationArgs'], enabled: pulumi.Input[bool], id: pulumi.Input[str], - included_object_versions: pulumi.Input['BucketInventoryConfigurationIncludedObjectVersions'], - schedule_frequency: pulumi.Input['BucketInventoryConfigurationScheduleFrequency'], - optional_fields: Optional[pulumi.Input[Sequence[pulumi.Input['BucketInventoryConfigurationOptionalFieldsItem']]]] = None, + included_object_versions: pulumi.Input[str], + schedule_frequency: pulumi.Input[str], + optional_fields: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, prefix: Optional[pulumi.Input[str]] = None, opts: Optional[pulumi.ResourceOptions]=None): _setter("destination", destination) @@ -1046,9 +910,6 @@ def destination(self, value: pulumi.Input['BucketDestinationArgs']): @property @pulumi.getter def enabled(self) -> pulumi.Input[bool]: - """ - Specifies whether the inventory is enabled or disabled. - """ return pulumi.get(self, "enabled") @enabled.setter @@ -1058,9 +919,6 @@ def enabled(self, value: pulumi.Input[bool]): @property @pulumi.getter def id(self) -> pulumi.Input[str]: - """ - The ID used to identify the inventory configuration. - """ return pulumi.get(self, "id") @id.setter @@ -1069,46 +927,34 @@ def id(self, value: pulumi.Input[str]): @property @pulumi.getter(name="includedObjectVersions") - def included_object_versions(self) -> pulumi.Input['BucketInventoryConfigurationIncludedObjectVersions']: - """ - Object versions to include in the inventory list. - """ + def included_object_versions(self) -> pulumi.Input[str]: return pulumi.get(self, "included_object_versions") @included_object_versions.setter - def included_object_versions(self, value: pulumi.Input['BucketInventoryConfigurationIncludedObjectVersions']): + def included_object_versions(self, value: pulumi.Input[str]): pulumi.set(self, "included_object_versions", value) @property @pulumi.getter(name="scheduleFrequency") - def schedule_frequency(self) -> pulumi.Input['BucketInventoryConfigurationScheduleFrequency']: - """ - Specifies the schedule for generating inventory results. - """ + def schedule_frequency(self) -> pulumi.Input[str]: return pulumi.get(self, "schedule_frequency") @schedule_frequency.setter - def schedule_frequency(self, value: pulumi.Input['BucketInventoryConfigurationScheduleFrequency']): + def schedule_frequency(self, value: pulumi.Input[str]): pulumi.set(self, "schedule_frequency", value) @property @pulumi.getter(name="optionalFields") - def optional_fields(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['BucketInventoryConfigurationOptionalFieldsItem']]]]: - """ - Contains the optional fields that are included in the inventory results. - """ + def optional_fields(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: return pulumi.get(self, "optional_fields") @optional_fields.setter - def optional_fields(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['BucketInventoryConfigurationOptionalFieldsItem']]]]): + def optional_fields(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): pulumi.set(self, "optional_fields", value) @property @pulumi.getter def prefix(self) -> Optional[pulumi.Input[str]]: - """ - The prefix that is prepended to all inventory results. - """ return pulumi.get(self, "prefix") @prefix.setter @@ -1122,12 +968,6 @@ def __init__(__self__, *, event: pulumi.Input[str], function: pulumi.Input[str], filter: Optional[pulumi.Input['BucketNotificationFilterArgs']] = None): - """ - Describes the AWS Lambda functions to invoke and the events for which to invoke them. - :param pulumi.Input[str] event: The Amazon S3 bucket event for which to invoke the AWS Lambda function. - :param pulumi.Input[str] function: The Amazon Resource Name (ARN) of the AWS Lambda function that Amazon S3 invokes when the specified event type occurs. - :param pulumi.Input['BucketNotificationFilterArgs'] filter: The filtering rules that determine which objects invoke the AWS Lambda function. - """ BucketLambdaConfigurationArgs._configure( lambda key, value: pulumi.set(__self__, key, value), event=event, @@ -1149,9 +989,6 @@ def _configure( @property @pulumi.getter def event(self) -> pulumi.Input[str]: - """ - The Amazon S3 bucket event for which to invoke the AWS Lambda function. - """ return pulumi.get(self, "event") @event.setter @@ -1161,9 +998,6 @@ def event(self, value: pulumi.Input[str]): @property @pulumi.getter def function(self) -> pulumi.Input[str]: - """ - The Amazon Resource Name (ARN) of the AWS Lambda function that Amazon S3 invokes when the specified event type occurs. - """ return pulumi.get(self, "function") @function.setter @@ -1173,9 +1007,6 @@ def function(self, value: pulumi.Input[str]): @property @pulumi.getter def filter(self) -> Optional[pulumi.Input['BucketNotificationFilterArgs']]: - """ - The filtering rules that determine which objects invoke the AWS Lambda function. - """ return pulumi.get(self, "filter") @filter.setter @@ -1187,9 +1018,6 @@ def filter(self, value: Optional[pulumi.Input['BucketNotificationFilterArgs']]): class BucketLifecycleConfigurationArgs: def __init__(__self__, *, rules: pulumi.Input[Sequence[pulumi.Input['BucketRuleArgs']]]): - """ - :param pulumi.Input[Sequence[pulumi.Input['BucketRuleArgs']]] rules: A lifecycle rule for individual objects in an Amazon S3 bucket. - """ BucketLifecycleConfigurationArgs._configure( lambda key, value: pulumi.set(__self__, key, value), rules=rules, @@ -1204,9 +1032,6 @@ def _configure( @property @pulumi.getter def rules(self) -> pulumi.Input[Sequence[pulumi.Input['BucketRuleArgs']]]: - """ - A lifecycle rule for individual objects in an Amazon S3 bucket. - """ return pulumi.get(self, "rules") @rules.setter @@ -1219,9 +1044,6 @@ class BucketLoggingConfigurationArgs: def __init__(__self__, *, destination_bucket_name: Optional[pulumi.Input[str]] = None, log_file_prefix: Optional[pulumi.Input[str]] = None): - """ - :param pulumi.Input[str] destination_bucket_name: The name of an Amazon S3 bucket where Amazon S3 store server access log files. You can store log files in any bucket that you own. By default, logs are stored in the bucket where the LoggingConfiguration property is defined. - """ BucketLoggingConfigurationArgs._configure( lambda key, value: pulumi.set(__self__, key, value), destination_bucket_name=destination_bucket_name, @@ -1241,9 +1063,6 @@ def _configure( @property @pulumi.getter(name="destinationBucketName") def destination_bucket_name(self) -> Optional[pulumi.Input[str]]: - """ - The name of an Amazon S3 bucket where Amazon S3 store server access log files. You can store log files in any bucket that you own. By default, logs are stored in the bucket where the LoggingConfiguration property is defined. - """ return pulumi.get(self, "destination_bucket_name") @destination_bucket_name.setter @@ -1330,7 +1149,7 @@ def tag_filters(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['Bucket @pulumi.input_type class BucketMetricsArgs: def __init__(__self__, *, - status: pulumi.Input['BucketMetricsStatus'], + status: pulumi.Input[str], event_threshold: Optional[pulumi.Input['BucketReplicationTimeValueArgs']] = None): BucketMetricsArgs._configure( lambda key, value: pulumi.set(__self__, key, value), @@ -1340,7 +1159,7 @@ def __init__(__self__, *, @staticmethod def _configure( _setter: Callable[[Any, Any], None], - status: pulumi.Input['BucketMetricsStatus'], + status: pulumi.Input[str], event_threshold: Optional[pulumi.Input['BucketReplicationTimeValueArgs']] = None, opts: Optional[pulumi.ResourceOptions]=None): _setter("status", status) @@ -1349,11 +1168,11 @@ def _configure( @property @pulumi.getter - def status(self) -> pulumi.Input['BucketMetricsStatus']: + def status(self) -> pulumi.Input[str]: return pulumi.get(self, "status") @status.setter - def status(self, value: pulumi.Input['BucketMetricsStatus']): + def status(self, value: pulumi.Input[str]): pulumi.set(self, "status", value) @property @@ -1371,11 +1190,6 @@ class BucketNoncurrentVersionExpirationArgs: def __init__(__self__, *, noncurrent_days: pulumi.Input[int], newer_noncurrent_versions: Optional[pulumi.Input[int]] = None): - """ - Container for the expiration rule that describes when noncurrent objects are expired. If your bucket is versioning-enabled (or versioning is suspended), you can set this action to request that Amazon S3 expire noncurrent object versions at a specific period in the object's lifetime - :param pulumi.Input[int] noncurrent_days: Specified the number of days an object is noncurrent before Amazon S3 can perform the associated action - :param pulumi.Input[int] newer_noncurrent_versions: Specified the number of newer noncurrent and current versions that must exists before performing the associated action - """ BucketNoncurrentVersionExpirationArgs._configure( lambda key, value: pulumi.set(__self__, key, value), noncurrent_days=noncurrent_days, @@ -1394,9 +1208,6 @@ def _configure( @property @pulumi.getter(name="noncurrentDays") def noncurrent_days(self) -> pulumi.Input[int]: - """ - Specified the number of days an object is noncurrent before Amazon S3 can perform the associated action - """ return pulumi.get(self, "noncurrent_days") @noncurrent_days.setter @@ -1406,9 +1217,6 @@ def noncurrent_days(self, value: pulumi.Input[int]): @property @pulumi.getter(name="newerNoncurrentVersions") def newer_noncurrent_versions(self) -> Optional[pulumi.Input[int]]: - """ - Specified the number of newer noncurrent and current versions that must exists before performing the associated action - """ return pulumi.get(self, "newer_noncurrent_versions") @newer_noncurrent_versions.setter @@ -1419,15 +1227,9 @@ def newer_noncurrent_versions(self, value: Optional[pulumi.Input[int]]): @pulumi.input_type class BucketNoncurrentVersionTransitionArgs: def __init__(__self__, *, - storage_class: pulumi.Input['BucketNoncurrentVersionTransitionStorageClass'], + storage_class: pulumi.Input[str], transition_in_days: pulumi.Input[int], newer_noncurrent_versions: Optional[pulumi.Input[int]] = None): - """ - Container for the transition rule that describes when noncurrent objects transition to the STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER_IR, GLACIER, or DEEP_ARCHIVE storage class. If your bucket is versioning-enabled (or versioning is suspended), you can set this action to request that Amazon S3 transition noncurrent object versions to the STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER_IR, GLACIER, or DEEP_ARCHIVE storage class at a specific period in the object's lifetime. - :param pulumi.Input['BucketNoncurrentVersionTransitionStorageClass'] storage_class: The class of storage used to store the object. - :param pulumi.Input[int] transition_in_days: Specifies the number of days an object is noncurrent before Amazon S3 can perform the associated action. - :param pulumi.Input[int] newer_noncurrent_versions: Specified the number of newer noncurrent and current versions that must exists before performing the associated action - """ BucketNoncurrentVersionTransitionArgs._configure( lambda key, value: pulumi.set(__self__, key, value), storage_class=storage_class, @@ -1437,7 +1239,7 @@ def __init__(__self__, *, @staticmethod def _configure( _setter: Callable[[Any, Any], None], - storage_class: pulumi.Input['BucketNoncurrentVersionTransitionStorageClass'], + storage_class: pulumi.Input[str], transition_in_days: pulumi.Input[int], newer_noncurrent_versions: Optional[pulumi.Input[int]] = None, opts: Optional[pulumi.ResourceOptions]=None): @@ -1448,22 +1250,16 @@ def _configure( @property @pulumi.getter(name="storageClass") - def storage_class(self) -> pulumi.Input['BucketNoncurrentVersionTransitionStorageClass']: - """ - The class of storage used to store the object. - """ + def storage_class(self) -> pulumi.Input[str]: return pulumi.get(self, "storage_class") @storage_class.setter - def storage_class(self, value: pulumi.Input['BucketNoncurrentVersionTransitionStorageClass']): + def storage_class(self, value: pulumi.Input[str]): pulumi.set(self, "storage_class", value) @property @pulumi.getter(name="transitionInDays") def transition_in_days(self) -> pulumi.Input[int]: - """ - Specifies the number of days an object is noncurrent before Amazon S3 can perform the associated action. - """ return pulumi.get(self, "transition_in_days") @transition_in_days.setter @@ -1473,9 +1269,6 @@ def transition_in_days(self, value: pulumi.Input[int]): @property @pulumi.getter(name="newerNoncurrentVersions") def newer_noncurrent_versions(self) -> Optional[pulumi.Input[int]]: - """ - Specified the number of newer noncurrent and current versions that must exists before performing the associated action - """ return pulumi.get(self, "newer_noncurrent_versions") @newer_noncurrent_versions.setter @@ -1490,9 +1283,6 @@ def __init__(__self__, *, lambda_configurations: Optional[pulumi.Input[Sequence[pulumi.Input['BucketLambdaConfigurationArgs']]]] = None, queue_configurations: Optional[pulumi.Input[Sequence[pulumi.Input['BucketQueueConfigurationArgs']]]] = None, topic_configurations: Optional[pulumi.Input[Sequence[pulumi.Input['BucketTopicConfigurationArgs']]]] = None): - """ - Describes the notification configuration for an Amazon S3 bucket. - """ BucketNotificationConfigurationArgs._configure( lambda key, value: pulumi.set(__self__, key, value), event_bridge_configuration=event_bridge_configuration, @@ -1558,9 +1348,6 @@ def topic_configurations(self, value: Optional[pulumi.Input[Sequence[pulumi.Inpu class BucketNotificationFilterArgs: def __init__(__self__, *, s3_key: pulumi.Input['BucketS3KeyFilterArgs']): - """ - Specifies object key name filtering rules. - """ BucketNotificationFilterArgs._configure( lambda key, value: pulumi.set(__self__, key, value), s3_key=s3_key, @@ -1626,9 +1413,6 @@ def rule(self, value: Optional[pulumi.Input['BucketObjectLockRuleArgs']]): class BucketObjectLockRuleArgs: def __init__(__self__, *, default_retention: Optional[pulumi.Input['BucketDefaultRetentionArgs']] = None): - """ - The Object Lock rule in place for the specified object. - """ BucketObjectLockRuleArgs._configure( lambda key, value: pulumi.set(__self__, key, value), default_retention=default_retention, @@ -1654,10 +1438,7 @@ def default_retention(self, value: Optional[pulumi.Input['BucketDefaultRetention @pulumi.input_type class BucketOwnershipControlsRuleArgs: def __init__(__self__, *, - object_ownership: Optional[pulumi.Input['BucketOwnershipControlsRuleObjectOwnership']] = None): - """ - :param pulumi.Input['BucketOwnershipControlsRuleObjectOwnership'] object_ownership: Specifies an object ownership rule. - """ + object_ownership: Optional[pulumi.Input[str]] = None): BucketOwnershipControlsRuleArgs._configure( lambda key, value: pulumi.set(__self__, key, value), object_ownership=object_ownership, @@ -1665,21 +1446,18 @@ def __init__(__self__, *, @staticmethod def _configure( _setter: Callable[[Any, Any], None], - object_ownership: Optional[pulumi.Input['BucketOwnershipControlsRuleObjectOwnership']] = None, + object_ownership: Optional[pulumi.Input[str]] = None, opts: Optional[pulumi.ResourceOptions]=None): if object_ownership is not None: _setter("object_ownership", object_ownership) @property @pulumi.getter(name="objectOwnership") - def object_ownership(self) -> Optional[pulumi.Input['BucketOwnershipControlsRuleObjectOwnership']]: - """ - Specifies an object ownership rule. - """ + def object_ownership(self) -> Optional[pulumi.Input[str]]: return pulumi.get(self, "object_ownership") @object_ownership.setter - def object_ownership(self, value: Optional[pulumi.Input['BucketOwnershipControlsRuleObjectOwnership']]): + def object_ownership(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "object_ownership", value) @@ -1715,19 +1493,6 @@ def __init__(__self__, *, block_public_policy: Optional[pulumi.Input[bool]] = None, ignore_public_acls: Optional[pulumi.Input[bool]] = None, restrict_public_buckets: Optional[pulumi.Input[bool]] = None): - """ - Configuration that defines how Amazon S3 handles public access. - :param pulumi.Input[bool] block_public_acls: Specifies whether Amazon S3 should block public access control lists (ACLs) for this bucket and objects in this bucket. Setting this element to TRUE causes the following behavior: - - PUT Bucket acl and PUT Object acl calls fail if the specified ACL is public. - - PUT Object calls fail if the request includes a public ACL. - Enabling this setting doesn't affect existing policies or ACLs. - :param pulumi.Input[bool] block_public_policy: Specifies whether Amazon S3 should block public bucket policies for this bucket. Setting this element to TRUE causes Amazon S3 to reject calls to PUT Bucket policy if the specified bucket policy allows public access. - Enabling this setting doesn't affect existing bucket policies. - :param pulumi.Input[bool] ignore_public_acls: Specifies whether Amazon S3 should ignore public ACLs for this bucket and objects in this bucket. Setting this element to TRUE causes Amazon S3 to ignore all public ACLs on this bucket and objects in this bucket. - Enabling this setting doesn't affect the persistence of any existing ACLs and doesn't prevent new public ACLs from being set. - :param pulumi.Input[bool] restrict_public_buckets: Specifies whether Amazon S3 should restrict public bucket policies for this bucket. Setting this element to TRUE restricts access to this bucket to only AWS services and authorized users within this account if the bucket has a public policy. - Enabling this setting doesn't affect previously stored bucket policies, except that public and cross-account access within any public bucket policy, including non-public delegation to specific accounts, is blocked. - """ BucketPublicAccessBlockConfigurationArgs._configure( lambda key, value: pulumi.set(__self__, key, value), block_public_acls=block_public_acls, @@ -1755,12 +1520,6 @@ def _configure( @property @pulumi.getter(name="blockPublicAcls") def block_public_acls(self) -> Optional[pulumi.Input[bool]]: - """ - Specifies whether Amazon S3 should block public access control lists (ACLs) for this bucket and objects in this bucket. Setting this element to TRUE causes the following behavior: - - PUT Bucket acl and PUT Object acl calls fail if the specified ACL is public. - - PUT Object calls fail if the request includes a public ACL. - Enabling this setting doesn't affect existing policies or ACLs. - """ return pulumi.get(self, "block_public_acls") @block_public_acls.setter @@ -1770,10 +1529,6 @@ def block_public_acls(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="blockPublicPolicy") def block_public_policy(self) -> Optional[pulumi.Input[bool]]: - """ - Specifies whether Amazon S3 should block public bucket policies for this bucket. Setting this element to TRUE causes Amazon S3 to reject calls to PUT Bucket policy if the specified bucket policy allows public access. - Enabling this setting doesn't affect existing bucket policies. - """ return pulumi.get(self, "block_public_policy") @block_public_policy.setter @@ -1783,10 +1538,6 @@ def block_public_policy(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="ignorePublicAcls") def ignore_public_acls(self) -> Optional[pulumi.Input[bool]]: - """ - Specifies whether Amazon S3 should ignore public ACLs for this bucket and objects in this bucket. Setting this element to TRUE causes Amazon S3 to ignore all public ACLs on this bucket and objects in this bucket. - Enabling this setting doesn't affect the persistence of any existing ACLs and doesn't prevent new public ACLs from being set. - """ return pulumi.get(self, "ignore_public_acls") @ignore_public_acls.setter @@ -1796,10 +1547,6 @@ def ignore_public_acls(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="restrictPublicBuckets") def restrict_public_buckets(self) -> Optional[pulumi.Input[bool]]: - """ - Specifies whether Amazon S3 should restrict public bucket policies for this bucket. Setting this element to TRUE restricts access to this bucket to only AWS services and authorized users within this account if the bucket has a public policy. - Enabling this setting doesn't affect previously stored bucket policies, except that public and cross-account access within any public bucket policy, including non-public delegation to specific accounts, is blocked. - """ return pulumi.get(self, "restrict_public_buckets") @restrict_public_buckets.setter @@ -1813,12 +1560,6 @@ def __init__(__self__, *, event: pulumi.Input[str], queue: pulumi.Input[str], filter: Optional[pulumi.Input['BucketNotificationFilterArgs']] = None): - """ - The Amazon Simple Queue Service queues to publish messages to and the events for which to publish messages. - :param pulumi.Input[str] event: The Amazon S3 bucket event about which you want to publish messages to Amazon SQS. - :param pulumi.Input[str] queue: The Amazon Resource Name (ARN) of the Amazon SQS queue to which Amazon S3 publishes a message when it detects events of the specified type. - :param pulumi.Input['BucketNotificationFilterArgs'] filter: The filtering rules that determine which objects trigger notifications. - """ BucketQueueConfigurationArgs._configure( lambda key, value: pulumi.set(__self__, key, value), event=event, @@ -1840,9 +1581,6 @@ def _configure( @property @pulumi.getter def event(self) -> pulumi.Input[str]: - """ - The Amazon S3 bucket event about which you want to publish messages to Amazon SQS. - """ return pulumi.get(self, "event") @event.setter @@ -1852,9 +1590,6 @@ def event(self, value: pulumi.Input[str]): @property @pulumi.getter def queue(self) -> pulumi.Input[str]: - """ - The Amazon Resource Name (ARN) of the Amazon SQS queue to which Amazon S3 publishes a message when it detects events of the specified type. - """ return pulumi.get(self, "queue") @queue.setter @@ -1864,9 +1599,6 @@ def queue(self, value: pulumi.Input[str]): @property @pulumi.getter def filter(self) -> Optional[pulumi.Input['BucketNotificationFilterArgs']]: - """ - The filtering rules that determine which objects trigger notifications. - """ return pulumi.get(self, "filter") @filter.setter @@ -1878,12 +1610,7 @@ def filter(self, value: Optional[pulumi.Input['BucketNotificationFilterArgs']]): class BucketRedirectAllRequestsToArgs: def __init__(__self__, *, host_name: pulumi.Input[str], - protocol: Optional[pulumi.Input['BucketRedirectAllRequestsToProtocol']] = None): - """ - Specifies the redirect behavior of all requests to a website endpoint of an Amazon S3 bucket. - :param pulumi.Input[str] host_name: Name of the host where requests are redirected. - :param pulumi.Input['BucketRedirectAllRequestsToProtocol'] protocol: Protocol to use when redirecting requests. The default is the protocol that is used in the original request. - """ + protocol: Optional[pulumi.Input[str]] = None): BucketRedirectAllRequestsToArgs._configure( lambda key, value: pulumi.set(__self__, key, value), host_name=host_name, @@ -1893,7 +1620,7 @@ def __init__(__self__, *, def _configure( _setter: Callable[[Any, Any], None], host_name: pulumi.Input[str], - protocol: Optional[pulumi.Input['BucketRedirectAllRequestsToProtocol']] = None, + protocol: Optional[pulumi.Input[str]] = None, opts: Optional[pulumi.ResourceOptions]=None): _setter("host_name", host_name) if protocol is not None: @@ -1902,9 +1629,6 @@ def _configure( @property @pulumi.getter(name="hostName") def host_name(self) -> pulumi.Input[str]: - """ - Name of the host where requests are redirected. - """ return pulumi.get(self, "host_name") @host_name.setter @@ -1913,14 +1637,11 @@ def host_name(self, value: pulumi.Input[str]): @property @pulumi.getter - def protocol(self) -> Optional[pulumi.Input['BucketRedirectAllRequestsToProtocol']]: - """ - Protocol to use when redirecting requests. The default is the protocol that is used in the original request. - """ + def protocol(self) -> Optional[pulumi.Input[str]]: return pulumi.get(self, "protocol") @protocol.setter - def protocol(self, value: Optional[pulumi.Input['BucketRedirectAllRequestsToProtocol']]): + def protocol(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "protocol", value) @@ -1929,17 +1650,9 @@ class BucketRedirectRuleArgs: def __init__(__self__, *, host_name: Optional[pulumi.Input[str]] = None, http_redirect_code: Optional[pulumi.Input[str]] = None, - protocol: Optional[pulumi.Input['BucketRedirectRuleProtocol']] = None, + protocol: Optional[pulumi.Input[str]] = None, replace_key_prefix_with: Optional[pulumi.Input[str]] = None, replace_key_with: Optional[pulumi.Input[str]] = None): - """ - Specifies how requests are redirected. In the event of an error, you can specify a different error code to return. - :param pulumi.Input[str] host_name: The host name to use in the redirect request. - :param pulumi.Input[str] http_redirect_code: The HTTP redirect code to use on the response. Not required if one of the siblings is present. - :param pulumi.Input['BucketRedirectRuleProtocol'] protocol: Protocol to use when redirecting requests. The default is the protocol that is used in the original request. - :param pulumi.Input[str] replace_key_prefix_with: The object key prefix to use in the redirect request. - :param pulumi.Input[str] replace_key_with: The specific object key to use in the redirect request.d - """ BucketRedirectRuleArgs._configure( lambda key, value: pulumi.set(__self__, key, value), host_name=host_name, @@ -1953,7 +1666,7 @@ def _configure( _setter: Callable[[Any, Any], None], host_name: Optional[pulumi.Input[str]] = None, http_redirect_code: Optional[pulumi.Input[str]] = None, - protocol: Optional[pulumi.Input['BucketRedirectRuleProtocol']] = None, + protocol: Optional[pulumi.Input[str]] = None, replace_key_prefix_with: Optional[pulumi.Input[str]] = None, replace_key_with: Optional[pulumi.Input[str]] = None, opts: Optional[pulumi.ResourceOptions]=None): @@ -1971,9 +1684,6 @@ def _configure( @property @pulumi.getter(name="hostName") def host_name(self) -> Optional[pulumi.Input[str]]: - """ - The host name to use in the redirect request. - """ return pulumi.get(self, "host_name") @host_name.setter @@ -1983,9 +1693,6 @@ def host_name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="httpRedirectCode") def http_redirect_code(self) -> Optional[pulumi.Input[str]]: - """ - The HTTP redirect code to use on the response. Not required if one of the siblings is present. - """ return pulumi.get(self, "http_redirect_code") @http_redirect_code.setter @@ -1994,22 +1701,16 @@ def http_redirect_code(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter - def protocol(self) -> Optional[pulumi.Input['BucketRedirectRuleProtocol']]: - """ - Protocol to use when redirecting requests. The default is the protocol that is used in the original request. - """ + def protocol(self) -> Optional[pulumi.Input[str]]: return pulumi.get(self, "protocol") @protocol.setter - def protocol(self, value: Optional[pulumi.Input['BucketRedirectRuleProtocol']]): + def protocol(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "protocol", value) @property @pulumi.getter(name="replaceKeyPrefixWith") def replace_key_prefix_with(self) -> Optional[pulumi.Input[str]]: - """ - The object key prefix to use in the redirect request. - """ return pulumi.get(self, "replace_key_prefix_with") @replace_key_prefix_with.setter @@ -2019,9 +1720,6 @@ def replace_key_prefix_with(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="replaceKeyWith") def replace_key_with(self) -> Optional[pulumi.Input[str]]: - """ - The specific object key to use in the redirect request.d - """ return pulumi.get(self, "replace_key_with") @replace_key_with.setter @@ -2032,10 +1730,7 @@ def replace_key_with(self, value: Optional[pulumi.Input[str]]): @pulumi.input_type class BucketReplicaModificationsArgs: def __init__(__self__, *, - status: pulumi.Input['BucketReplicaModificationsStatus']): - """ - :param pulumi.Input['BucketReplicaModificationsStatus'] status: Specifies whether Amazon S3 replicates modifications on replicas. - """ + status: pulumi.Input[str]): BucketReplicaModificationsArgs._configure( lambda key, value: pulumi.set(__self__, key, value), status=status, @@ -2043,20 +1738,17 @@ def __init__(__self__, *, @staticmethod def _configure( _setter: Callable[[Any, Any], None], - status: pulumi.Input['BucketReplicaModificationsStatus'], + status: pulumi.Input[str], opts: Optional[pulumi.ResourceOptions]=None): _setter("status", status) @property @pulumi.getter - def status(self) -> pulumi.Input['BucketReplicaModificationsStatus']: - """ - Specifies whether Amazon S3 replicates modifications on replicas. - """ + def status(self) -> pulumi.Input[str]: return pulumi.get(self, "status") @status.setter - def status(self, value: pulumi.Input['BucketReplicaModificationsStatus']): + def status(self, value: pulumi.Input[str]): pulumi.set(self, "status", value) @@ -2065,11 +1757,6 @@ class BucketReplicationConfigurationArgs: def __init__(__self__, *, role: pulumi.Input[str], rules: pulumi.Input[Sequence[pulumi.Input['BucketReplicationRuleArgs']]]): - """ - A container for replication rules. You can add up to 1,000 rules. The maximum size of a replication configuration is 2 MB. - :param pulumi.Input[str] role: The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that Amazon S3 assumes when replicating objects. - :param pulumi.Input[Sequence[pulumi.Input['BucketReplicationRuleArgs']]] rules: A container for one or more replication rules. - """ BucketReplicationConfigurationArgs._configure( lambda key, value: pulumi.set(__self__, key, value), role=role, @@ -2087,9 +1774,6 @@ def _configure( @property @pulumi.getter def role(self) -> pulumi.Input[str]: - """ - The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that Amazon S3 assumes when replicating objects. - """ return pulumi.get(self, "role") @role.setter @@ -2099,9 +1783,6 @@ def role(self, value: pulumi.Input[str]): @property @pulumi.getter def rules(self) -> pulumi.Input[Sequence[pulumi.Input['BucketReplicationRuleArgs']]]: - """ - A container for one or more replication rules. - """ return pulumi.get(self, "rules") @rules.setter @@ -2118,11 +1799,7 @@ def __init__(__self__, *, encryption_configuration: Optional[pulumi.Input['BucketEncryptionConfigurationArgs']] = None, metrics: Optional[pulumi.Input['BucketMetricsArgs']] = None, replication_time: Optional[pulumi.Input['BucketReplicationTimeArgs']] = None, - storage_class: Optional[pulumi.Input['BucketReplicationDestinationStorageClass']] = None): - """ - Specifies which Amazon S3 bucket to store replicated objects in and their storage class. - :param pulumi.Input['BucketReplicationDestinationStorageClass'] storage_class: The storage class to use when replicating objects, such as S3 Standard or reduced redundancy. - """ + storage_class: Optional[pulumi.Input[str]] = None): BucketReplicationDestinationArgs._configure( lambda key, value: pulumi.set(__self__, key, value), bucket=bucket, @@ -2142,7 +1819,7 @@ def _configure( encryption_configuration: Optional[pulumi.Input['BucketEncryptionConfigurationArgs']] = None, metrics: Optional[pulumi.Input['BucketMetricsArgs']] = None, replication_time: Optional[pulumi.Input['BucketReplicationTimeArgs']] = None, - storage_class: Optional[pulumi.Input['BucketReplicationDestinationStorageClass']] = None, + storage_class: Optional[pulumi.Input[str]] = None, opts: Optional[pulumi.ResourceOptions]=None): _setter("bucket", bucket) if access_control_translation is not None: @@ -2214,14 +1891,11 @@ def replication_time(self, value: Optional[pulumi.Input['BucketReplicationTimeAr @property @pulumi.getter(name="storageClass") - def storage_class(self) -> Optional[pulumi.Input['BucketReplicationDestinationStorageClass']]: - """ - The storage class to use when replicating objects, such as S3 Standard or reduced redundancy. - """ + def storage_class(self) -> Optional[pulumi.Input[str]]: return pulumi.get(self, "storage_class") @storage_class.setter - def storage_class(self, value: Optional[pulumi.Input['BucketReplicationDestinationStorageClass']]): + def storage_class(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "storage_class", value) @@ -2323,19 +1997,13 @@ def tag_filter(self, value: Optional[pulumi.Input['BucketTagFilterArgs']]): class BucketReplicationRuleArgs: def __init__(__self__, *, destination: pulumi.Input['BucketReplicationDestinationArgs'], - status: pulumi.Input['BucketReplicationRuleStatus'], + status: pulumi.Input[str], delete_marker_replication: Optional[pulumi.Input['BucketDeleteMarkerReplicationArgs']] = None, filter: Optional[pulumi.Input['BucketReplicationRuleFilterArgs']] = None, id: Optional[pulumi.Input[str]] = None, prefix: Optional[pulumi.Input[str]] = None, priority: Optional[pulumi.Input[int]] = None, source_selection_criteria: Optional[pulumi.Input['BucketSourceSelectionCriteriaArgs']] = None): - """ - Specifies which Amazon S3 objects to replicate and where to store the replicas. - :param pulumi.Input['BucketReplicationRuleStatus'] status: Specifies whether the rule is enabled. - :param pulumi.Input[str] id: A unique identifier for the rule. - :param pulumi.Input[str] prefix: An object key name prefix that identifies the object or objects to which the rule applies. - """ BucketReplicationRuleArgs._configure( lambda key, value: pulumi.set(__self__, key, value), destination=destination, @@ -2351,7 +2019,7 @@ def __init__(__self__, *, def _configure( _setter: Callable[[Any, Any], None], destination: pulumi.Input['BucketReplicationDestinationArgs'], - status: pulumi.Input['BucketReplicationRuleStatus'], + status: pulumi.Input[str], delete_marker_replication: Optional[pulumi.Input['BucketDeleteMarkerReplicationArgs']] = None, filter: Optional[pulumi.Input['BucketReplicationRuleFilterArgs']] = None, id: Optional[pulumi.Input[str]] = None, @@ -2385,14 +2053,11 @@ def destination(self, value: pulumi.Input['BucketReplicationDestinationArgs']): @property @pulumi.getter - def status(self) -> pulumi.Input['BucketReplicationRuleStatus']: - """ - Specifies whether the rule is enabled. - """ + def status(self) -> pulumi.Input[str]: return pulumi.get(self, "status") @status.setter - def status(self, value: pulumi.Input['BucketReplicationRuleStatus']): + def status(self, value: pulumi.Input[str]): pulumi.set(self, "status", value) @property @@ -2416,9 +2081,6 @@ def filter(self, value: Optional[pulumi.Input['BucketReplicationRuleFilterArgs'] @property @pulumi.getter def id(self) -> Optional[pulumi.Input[str]]: - """ - A unique identifier for the rule. - """ return pulumi.get(self, "id") @id.setter @@ -2428,9 +2090,6 @@ def id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def prefix(self) -> Optional[pulumi.Input[str]]: - """ - An object key name prefix that identifies the object or objects to which the rule applies. - """ return pulumi.get(self, "prefix") @prefix.setter @@ -2484,7 +2143,7 @@ def minutes(self, value: pulumi.Input[int]): @pulumi.input_type class BucketReplicationTimeArgs: def __init__(__self__, *, - status: pulumi.Input['BucketReplicationTimeStatus'], + status: pulumi.Input[str], time: pulumi.Input['BucketReplicationTimeValueArgs']): BucketReplicationTimeArgs._configure( lambda key, value: pulumi.set(__self__, key, value), @@ -2494,7 +2153,7 @@ def __init__(__self__, *, @staticmethod def _configure( _setter: Callable[[Any, Any], None], - status: pulumi.Input['BucketReplicationTimeStatus'], + status: pulumi.Input[str], time: pulumi.Input['BucketReplicationTimeValueArgs'], opts: Optional[pulumi.ResourceOptions]=None): _setter("status", status) @@ -2502,11 +2161,11 @@ def _configure( @property @pulumi.getter - def status(self) -> pulumi.Input['BucketReplicationTimeStatus']: + def status(self) -> pulumi.Input[str]: return pulumi.get(self, "status") @status.setter - def status(self, value: pulumi.Input['BucketReplicationTimeStatus']): + def status(self, value: pulumi.Input[str]): pulumi.set(self, "status", value) @property @@ -2524,11 +2183,6 @@ class BucketRoutingRuleConditionArgs: def __init__(__self__, *, http_error_code_returned_equals: Optional[pulumi.Input[str]] = None, key_prefix_equals: Optional[pulumi.Input[str]] = None): - """ - A container for describing a condition that must be met for the specified redirect to apply.You must specify at least one of HttpErrorCodeReturnedEquals and KeyPrefixEquals - :param pulumi.Input[str] http_error_code_returned_equals: The HTTP error code when the redirect is applied. - :param pulumi.Input[str] key_prefix_equals: The object key name prefix when the redirect is applied. - """ BucketRoutingRuleConditionArgs._configure( lambda key, value: pulumi.set(__self__, key, value), http_error_code_returned_equals=http_error_code_returned_equals, @@ -2548,9 +2202,6 @@ def _configure( @property @pulumi.getter(name="httpErrorCodeReturnedEquals") def http_error_code_returned_equals(self) -> Optional[pulumi.Input[str]]: - """ - The HTTP error code when the redirect is applied. - """ return pulumi.get(self, "http_error_code_returned_equals") @http_error_code_returned_equals.setter @@ -2560,9 +2211,6 @@ def http_error_code_returned_equals(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="keyPrefixEquals") def key_prefix_equals(self) -> Optional[pulumi.Input[str]]: - """ - The object key name prefix when the redirect is applied. - """ return pulumi.get(self, "key_prefix_equals") @key_prefix_equals.setter @@ -2575,10 +2223,6 @@ class BucketRoutingRuleArgs: def __init__(__self__, *, redirect_rule: pulumi.Input['BucketRedirectRuleArgs'], routing_rule_condition: Optional[pulumi.Input['BucketRoutingRuleConditionArgs']] = None): - """ - Specifies the redirect behavior and when a redirect is applied. - :param pulumi.Input['BucketRedirectRuleArgs'] redirect_rule: Container for redirect information. You can redirect requests to another host, to another page, or with another protocol. In the event of an error, you can specify a different error code to return. - """ BucketRoutingRuleArgs._configure( lambda key, value: pulumi.set(__self__, key, value), redirect_rule=redirect_rule, @@ -2597,9 +2241,6 @@ def _configure( @property @pulumi.getter(name="redirectRule") def redirect_rule(self) -> pulumi.Input['BucketRedirectRuleArgs']: - """ - Container for redirect information. You can redirect requests to another host, to another page, or with another protocol. In the event of an error, you can specify a different error code to return. - """ return pulumi.get(self, "redirect_rule") @redirect_rule.setter @@ -2619,7 +2260,7 @@ def routing_rule_condition(self, value: Optional[pulumi.Input['BucketRoutingRule @pulumi.input_type class BucketRuleArgs: def __init__(__self__, *, - status: pulumi.Input['BucketRuleStatus'], + status: pulumi.Input[str], abort_incomplete_multipart_upload: Optional[pulumi.Input['BucketAbortIncompleteMultipartUploadArgs']] = None, expiration_date: Optional[pulumi.Input[str]] = None, expiration_in_days: Optional[pulumi.Input[int]] = None, @@ -2629,15 +2270,12 @@ def __init__(__self__, *, noncurrent_version_expiration_in_days: Optional[pulumi.Input[int]] = None, noncurrent_version_transition: Optional[pulumi.Input['BucketNoncurrentVersionTransitionArgs']] = None, noncurrent_version_transitions: Optional[pulumi.Input[Sequence[pulumi.Input['BucketNoncurrentVersionTransitionArgs']]]] = None, - object_size_greater_than: Optional[pulumi.Input[str]] = None, - object_size_less_than: Optional[pulumi.Input[str]] = None, + object_size_greater_than: Optional[pulumi.Input[int]] = None, + object_size_less_than: Optional[pulumi.Input[int]] = None, prefix: Optional[pulumi.Input[str]] = None, tag_filters: Optional[pulumi.Input[Sequence[pulumi.Input['BucketTagFilterArgs']]]] = None, transition: Optional[pulumi.Input['BucketTransitionArgs']] = None, transitions: Optional[pulumi.Input[Sequence[pulumi.Input['BucketTransitionArgs']]]] = None): - """ - You must specify at least one of the following properties: AbortIncompleteMultipartUpload, ExpirationDate, ExpirationInDays, NoncurrentVersionExpirationInDays, NoncurrentVersionTransition, NoncurrentVersionTransitions, Transition, or Transitions. - """ BucketRuleArgs._configure( lambda key, value: pulumi.set(__self__, key, value), status=status, @@ -2660,7 +2298,7 @@ def __init__(__self__, *, @staticmethod def _configure( _setter: Callable[[Any, Any], None], - status: pulumi.Input['BucketRuleStatus'], + status: pulumi.Input[str], abort_incomplete_multipart_upload: Optional[pulumi.Input['BucketAbortIncompleteMultipartUploadArgs']] = None, expiration_date: Optional[pulumi.Input[str]] = None, expiration_in_days: Optional[pulumi.Input[int]] = None, @@ -2670,8 +2308,8 @@ def _configure( noncurrent_version_expiration_in_days: Optional[pulumi.Input[int]] = None, noncurrent_version_transition: Optional[pulumi.Input['BucketNoncurrentVersionTransitionArgs']] = None, noncurrent_version_transitions: Optional[pulumi.Input[Sequence[pulumi.Input['BucketNoncurrentVersionTransitionArgs']]]] = None, - object_size_greater_than: Optional[pulumi.Input[str]] = None, - object_size_less_than: Optional[pulumi.Input[str]] = None, + object_size_greater_than: Optional[pulumi.Input[int]] = None, + object_size_less_than: Optional[pulumi.Input[int]] = None, prefix: Optional[pulumi.Input[str]] = None, tag_filters: Optional[pulumi.Input[Sequence[pulumi.Input['BucketTagFilterArgs']]]] = None, transition: Optional[pulumi.Input['BucketTransitionArgs']] = None, @@ -2711,11 +2349,11 @@ def _configure( @property @pulumi.getter - def status(self) -> pulumi.Input['BucketRuleStatus']: + def status(self) -> pulumi.Input[str]: return pulumi.get(self, "status") @status.setter - def status(self, value: pulumi.Input['BucketRuleStatus']): + def status(self, value: pulumi.Input[str]): pulumi.set(self, "status", value) @property @@ -2801,20 +2439,20 @@ def noncurrent_version_transitions(self, value: Optional[pulumi.Input[Sequence[p @property @pulumi.getter(name="objectSizeGreaterThan") - def object_size_greater_than(self) -> Optional[pulumi.Input[str]]: + def object_size_greater_than(self) -> Optional[pulumi.Input[int]]: return pulumi.get(self, "object_size_greater_than") @object_size_greater_than.setter - def object_size_greater_than(self, value: Optional[pulumi.Input[str]]): + def object_size_greater_than(self, value: Optional[pulumi.Input[int]]): pulumi.set(self, "object_size_greater_than", value) @property @pulumi.getter(name="objectSizeLessThan") - def object_size_less_than(self) -> Optional[pulumi.Input[str]]: + def object_size_less_than(self) -> Optional[pulumi.Input[int]]: return pulumi.get(self, "object_size_less_than") @object_size_less_than.setter - def object_size_less_than(self, value: Optional[pulumi.Input[str]]): + def object_size_less_than(self, value: Optional[pulumi.Input[int]]): pulumi.set(self, "object_size_less_than", value) @property @@ -2858,9 +2496,6 @@ def transitions(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['Bucket class BucketS3KeyFilterArgs: def __init__(__self__, *, rules: pulumi.Input[Sequence[pulumi.Input['BucketFilterRuleArgs']]]): - """ - A container for object key name prefix and suffix filtering rules. - """ BucketS3KeyFilterArgs._configure( lambda key, value: pulumi.set(__self__, key, value), rules=rules, @@ -2885,12 +2520,8 @@ def rules(self, value: pulumi.Input[Sequence[pulumi.Input['BucketFilterRuleArgs' @pulumi.input_type class BucketServerSideEncryptionByDefaultArgs: def __init__(__self__, *, - sse_algorithm: pulumi.Input['BucketServerSideEncryptionByDefaultSseAlgorithm'], + sse_algorithm: pulumi.Input[str], kms_master_key_id: Optional[pulumi.Input[str]] = None): - """ - Specifies the default server-side encryption to apply to new objects in the bucket. If a PUT Object request doesn't specify any server-side encryption, this default encryption will be applied. - :param pulumi.Input[str] kms_master_key_id: "KMSMasterKeyID" can only be used when you set the value of SSEAlgorithm as aws:kms or aws:kms:dsse. - """ BucketServerSideEncryptionByDefaultArgs._configure( lambda key, value: pulumi.set(__self__, key, value), sse_algorithm=sse_algorithm, @@ -2899,7 +2530,7 @@ def __init__(__self__, *, @staticmethod def _configure( _setter: Callable[[Any, Any], None], - sse_algorithm: pulumi.Input['BucketServerSideEncryptionByDefaultSseAlgorithm'], + sse_algorithm: pulumi.Input[str], kms_master_key_id: Optional[pulumi.Input[str]] = None, opts: Optional[pulumi.ResourceOptions]=None): _setter("sse_algorithm", sse_algorithm) @@ -2908,19 +2539,16 @@ def _configure( @property @pulumi.getter(name="sseAlgorithm") - def sse_algorithm(self) -> pulumi.Input['BucketServerSideEncryptionByDefaultSseAlgorithm']: + def sse_algorithm(self) -> pulumi.Input[str]: return pulumi.get(self, "sse_algorithm") @sse_algorithm.setter - def sse_algorithm(self, value: pulumi.Input['BucketServerSideEncryptionByDefaultSseAlgorithm']): + def sse_algorithm(self, value: pulumi.Input[str]): pulumi.set(self, "sse_algorithm", value) @property @pulumi.getter(name="kmsMasterKeyId") def kms_master_key_id(self) -> Optional[pulumi.Input[str]]: - """ - "KMSMasterKeyID" can only be used when you set the value of SSEAlgorithm as aws:kms or aws:kms:dsse. - """ return pulumi.get(self, "kms_master_key_id") @kms_master_key_id.setter @@ -2933,10 +2561,6 @@ class BucketServerSideEncryptionRuleArgs: def __init__(__self__, *, bucket_key_enabled: Optional[pulumi.Input[bool]] = None, server_side_encryption_by_default: Optional[pulumi.Input['BucketServerSideEncryptionByDefaultArgs']] = None): - """ - Specifies the default server-side encryption configuration. - :param pulumi.Input[bool] bucket_key_enabled: Specifies whether Amazon S3 should use an S3 Bucket Key with server-side encryption using KMS (SSE-KMS) for new objects in the bucket. Existing objects are not affected. Setting the BucketKeyEnabled element to true causes Amazon S3 to use an S3 Bucket Key. By default, S3 Bucket Key is not enabled. - """ BucketServerSideEncryptionRuleArgs._configure( lambda key, value: pulumi.set(__self__, key, value), bucket_key_enabled=bucket_key_enabled, @@ -2956,9 +2580,6 @@ def _configure( @property @pulumi.getter(name="bucketKeyEnabled") def bucket_key_enabled(self) -> Optional[pulumi.Input[bool]]: - """ - Specifies whether Amazon S3 should use an S3 Bucket Key with server-side encryption using KMS (SSE-KMS) for new objects in the bucket. Existing objects are not affected. Setting the BucketKeyEnabled element to true causes Amazon S3 to use an S3 Bucket Key. By default, S3 Bucket Key is not enabled. - """ return pulumi.get(self, "bucket_key_enabled") @bucket_key_enabled.setter @@ -2980,11 +2601,6 @@ class BucketSourceSelectionCriteriaArgs: def __init__(__self__, *, replica_modifications: Optional[pulumi.Input['BucketReplicaModificationsArgs']] = None, sse_kms_encrypted_objects: Optional[pulumi.Input['BucketSseKmsEncryptedObjectsArgs']] = None): - """ - A container that describes additional filters for identifying the source objects that you want to replicate. - :param pulumi.Input['BucketReplicaModificationsArgs'] replica_modifications: A filter that you can specify for selection for modifications on replicas. - :param pulumi.Input['BucketSseKmsEncryptedObjectsArgs'] sse_kms_encrypted_objects: A container for filter information for the selection of Amazon S3 objects encrypted with AWS KMS. - """ BucketSourceSelectionCriteriaArgs._configure( lambda key, value: pulumi.set(__self__, key, value), replica_modifications=replica_modifications, @@ -3004,9 +2620,6 @@ def _configure( @property @pulumi.getter(name="replicaModifications") def replica_modifications(self) -> Optional[pulumi.Input['BucketReplicaModificationsArgs']]: - """ - A filter that you can specify for selection for modifications on replicas. - """ return pulumi.get(self, "replica_modifications") @replica_modifications.setter @@ -3016,9 +2629,6 @@ def replica_modifications(self, value: Optional[pulumi.Input['BucketReplicaModif @property @pulumi.getter(name="sseKmsEncryptedObjects") def sse_kms_encrypted_objects(self) -> Optional[pulumi.Input['BucketSseKmsEncryptedObjectsArgs']]: - """ - A container for filter information for the selection of Amazon S3 objects encrypted with AWS KMS. - """ return pulumi.get(self, "sse_kms_encrypted_objects") @sse_kms_encrypted_objects.setter @@ -3029,11 +2639,7 @@ def sse_kms_encrypted_objects(self, value: Optional[pulumi.Input['BucketSseKmsEn @pulumi.input_type class BucketSseKmsEncryptedObjectsArgs: def __init__(__self__, *, - status: pulumi.Input['BucketSseKmsEncryptedObjectsStatus']): - """ - A container for filter information for the selection of S3 objects encrypted with AWS KMS. - :param pulumi.Input['BucketSseKmsEncryptedObjectsStatus'] status: Specifies whether Amazon S3 replicates objects created with server-side encryption using a customer master key (CMK) stored in AWS Key Management Service. - """ + status: pulumi.Input[str]): BucketSseKmsEncryptedObjectsArgs._configure( lambda key, value: pulumi.set(__self__, key, value), status=status, @@ -3041,20 +2647,17 @@ def __init__(__self__, *, @staticmethod def _configure( _setter: Callable[[Any, Any], None], - status: pulumi.Input['BucketSseKmsEncryptedObjectsStatus'], + status: pulumi.Input[str], opts: Optional[pulumi.ResourceOptions]=None): _setter("status", status) @property @pulumi.getter - def status(self) -> pulumi.Input['BucketSseKmsEncryptedObjectsStatus']: - """ - Specifies whether Amazon S3 replicates objects created with server-side encryption using a customer master key (CMK) stored in AWS Key Management Service. - """ + def status(self) -> pulumi.Input[str]: return pulumi.get(self, "status") @status.setter - def status(self, value: pulumi.Input['BucketSseKmsEncryptedObjectsStatus']): + def status(self, value: pulumi.Input[str]): pulumi.set(self, "status", value) @@ -3062,9 +2665,6 @@ def status(self, value: pulumi.Input['BucketSseKmsEncryptedObjectsStatus']): class BucketStorageClassAnalysisArgs: def __init__(__self__, *, data_export: Optional[pulumi.Input['BucketDataExportArgs']] = None): - """ - Specifies data related to access patterns to be collected and made available to analyze the tradeoffs between different storage classes for an Amazon S3 bucket. - """ BucketStorageClassAnalysisArgs._configure( lambda key, value: pulumi.set(__self__, key, value), data_export=data_export, @@ -3092,9 +2692,6 @@ class BucketTagFilterArgs: def __init__(__self__, *, key: pulumi.Input[str], value: pulumi.Input[str]): - """ - Tags to use to identify a subset of objects for an Amazon S3 bucket. - """ BucketTagFilterArgs._configure( lambda key, value: pulumi.set(__self__, key, value), key=key, @@ -3169,12 +2766,8 @@ def value(self, value: pulumi.Input[str]): @pulumi.input_type class BucketTieringArgs: def __init__(__self__, *, - access_tier: pulumi.Input['BucketTieringAccessTier'], + access_tier: pulumi.Input[str], days: pulumi.Input[int]): - """ - :param pulumi.Input['BucketTieringAccessTier'] access_tier: S3 Intelligent-Tiering access tier. See Storage class for automatically optimizing frequently and infrequently accessed objects for a list of access tiers in the S3 Intelligent-Tiering storage class. - :param pulumi.Input[int] days: The number of consecutive days of no access after which an object will be eligible to be transitioned to the corresponding tier. The minimum number of days specified for Archive Access tier must be at least 90 days and Deep Archive Access tier must be at least 180 days. The maximum can be up to 2 years (730 days). - """ BucketTieringArgs._configure( lambda key, value: pulumi.set(__self__, key, value), access_tier=access_tier, @@ -3183,7 +2776,7 @@ def __init__(__self__, *, @staticmethod def _configure( _setter: Callable[[Any, Any], None], - access_tier: pulumi.Input['BucketTieringAccessTier'], + access_tier: pulumi.Input[str], days: pulumi.Input[int], opts: Optional[pulumi.ResourceOptions]=None): _setter("access_tier", access_tier) @@ -3191,22 +2784,16 @@ def _configure( @property @pulumi.getter(name="accessTier") - def access_tier(self) -> pulumi.Input['BucketTieringAccessTier']: - """ - S3 Intelligent-Tiering access tier. See Storage class for automatically optimizing frequently and infrequently accessed objects for a list of access tiers in the S3 Intelligent-Tiering storage class. - """ + def access_tier(self) -> pulumi.Input[str]: return pulumi.get(self, "access_tier") @access_tier.setter - def access_tier(self, value: pulumi.Input['BucketTieringAccessTier']): + def access_tier(self, value: pulumi.Input[str]): pulumi.set(self, "access_tier", value) @property @pulumi.getter def days(self) -> pulumi.Input[int]: - """ - The number of consecutive days of no access after which an object will be eligible to be transitioned to the corresponding tier. The minimum number of days specified for Archive Access tier must be at least 90 days and Deep Archive Access tier must be at least 180 days. The maximum can be up to 2 years (730 days). - """ return pulumi.get(self, "days") @days.setter @@ -3220,12 +2807,6 @@ def __init__(__self__, *, event: pulumi.Input[str], topic: pulumi.Input[str], filter: Optional[pulumi.Input['BucketNotificationFilterArgs']] = None): - """ - The topic to which notifications are sent and the events for which notifications are generated. - :param pulumi.Input[str] event: The Amazon S3 bucket event about which to send notifications. - :param pulumi.Input[str] topic: The Amazon Resource Name (ARN) of the Amazon SNS topic to which Amazon S3 publishes a message when it detects events of the specified type. - :param pulumi.Input['BucketNotificationFilterArgs'] filter: The filtering rules that determine for which objects to send notifications. - """ BucketTopicConfigurationArgs._configure( lambda key, value: pulumi.set(__self__, key, value), event=event, @@ -3247,9 +2828,6 @@ def _configure( @property @pulumi.getter def event(self) -> pulumi.Input[str]: - """ - The Amazon S3 bucket event about which to send notifications. - """ return pulumi.get(self, "event") @event.setter @@ -3259,9 +2837,6 @@ def event(self, value: pulumi.Input[str]): @property @pulumi.getter def topic(self) -> pulumi.Input[str]: - """ - The Amazon Resource Name (ARN) of the Amazon SNS topic to which Amazon S3 publishes a message when it detects events of the specified type. - """ return pulumi.get(self, "topic") @topic.setter @@ -3271,9 +2846,6 @@ def topic(self, value: pulumi.Input[str]): @property @pulumi.getter def filter(self) -> Optional[pulumi.Input['BucketNotificationFilterArgs']]: - """ - The filtering rules that determine for which objects to send notifications. - """ return pulumi.get(self, "filter") @filter.setter @@ -3284,12 +2856,9 @@ def filter(self, value: Optional[pulumi.Input['BucketNotificationFilterArgs']]): @pulumi.input_type class BucketTransitionArgs: def __init__(__self__, *, - storage_class: pulumi.Input['BucketTransitionStorageClass'], + storage_class: pulumi.Input[str], transition_date: Optional[pulumi.Input[str]] = None, transition_in_days: Optional[pulumi.Input[int]] = None): - """ - You must specify at least one of "TransitionDate" and "TransitionInDays" - """ BucketTransitionArgs._configure( lambda key, value: pulumi.set(__self__, key, value), storage_class=storage_class, @@ -3299,7 +2868,7 @@ def __init__(__self__, *, @staticmethod def _configure( _setter: Callable[[Any, Any], None], - storage_class: pulumi.Input['BucketTransitionStorageClass'], + storage_class: pulumi.Input[str], transition_date: Optional[pulumi.Input[str]] = None, transition_in_days: Optional[pulumi.Input[int]] = None, opts: Optional[pulumi.ResourceOptions]=None): @@ -3311,11 +2880,11 @@ def _configure( @property @pulumi.getter(name="storageClass") - def storage_class(self) -> pulumi.Input['BucketTransitionStorageClass']: + def storage_class(self) -> pulumi.Input[str]: return pulumi.get(self, "storage_class") @storage_class.setter - def storage_class(self, value: pulumi.Input['BucketTransitionStorageClass']): + def storage_class(self, value: pulumi.Input[str]): pulumi.set(self, "storage_class", value) @property @@ -3340,11 +2909,7 @@ def transition_in_days(self, value: Optional[pulumi.Input[int]]): @pulumi.input_type class BucketVersioningConfigurationArgs: def __init__(__self__, *, - status: pulumi.Input['BucketVersioningConfigurationStatus']): - """ - Describes the versioning state of an Amazon S3 bucket. - :param pulumi.Input['BucketVersioningConfigurationStatus'] status: The versioning state of the bucket. - """ + status: pulumi.Input[str]): BucketVersioningConfigurationArgs._configure( lambda key, value: pulumi.set(__self__, key, value), status=status, @@ -3352,20 +2917,17 @@ def __init__(__self__, *, @staticmethod def _configure( _setter: Callable[[Any, Any], None], - status: pulumi.Input['BucketVersioningConfigurationStatus'], + status: pulumi.Input[str], opts: Optional[pulumi.ResourceOptions]=None): _setter("status", status) @property @pulumi.getter - def status(self) -> pulumi.Input['BucketVersioningConfigurationStatus']: - """ - The versioning state of the bucket. - """ + def status(self) -> pulumi.Input[str]: return pulumi.get(self, "status") @status.setter - def status(self, value: pulumi.Input['BucketVersioningConfigurationStatus']): + def status(self, value: pulumi.Input[str]): pulumi.set(self, "status", value) @@ -3376,11 +2938,6 @@ def __init__(__self__, *, index_document: Optional[pulumi.Input[str]] = None, redirect_all_requests_to: Optional[pulumi.Input['BucketRedirectAllRequestsToArgs']] = None, routing_rules: Optional[pulumi.Input[Sequence[pulumi.Input['BucketRoutingRuleArgs']]]] = None): - """ - Specifies website configuration parameters for an Amazon S3 bucket. - :param pulumi.Input[str] error_document: The name of the error document for the website. - :param pulumi.Input[str] index_document: The name of the index document for the website. - """ BucketWebsiteConfigurationArgs._configure( lambda key, value: pulumi.set(__self__, key, value), error_document=error_document, @@ -3408,9 +2965,6 @@ def _configure( @property @pulumi.getter(name="errorDocument") def error_document(self) -> Optional[pulumi.Input[str]]: - """ - The name of the error document for the website. - """ return pulumi.get(self, "error_document") @error_document.setter @@ -3420,9 +2974,6 @@ def error_document(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="indexDocument") def index_document(self) -> Optional[pulumi.Input[str]]: - """ - The name of the index document for the website. - """ return pulumi.get(self, "index_document") @index_document.setter diff --git a/sdk/python/pulumi_aws_native/s3/bucket.py b/sdk/python/pulumi_aws_native/s3/bucket.py index c45858fb5d..42f0c738f2 100644 --- a/sdk/python/pulumi_aws_native/s3/bucket.py +++ b/sdk/python/pulumi_aws_native/s3/bucket.py @@ -9,7 +9,6 @@ from typing import Any, Callable, Mapping, Optional, Sequence, Union, overload from .. import _utilities from . import outputs -from ._enums import * from ._inputs import * __all__ = ['BucketArgs', 'Bucket'] @@ -18,7 +17,7 @@ class BucketArgs: def __init__(__self__, *, accelerate_configuration: Optional[pulumi.Input['BucketAccelerateConfigurationArgs']] = None, - access_control: Optional[pulumi.Input['BucketAccessControl']] = None, + access_control: Optional[pulumi.Input[str]] = None, analytics_configurations: Optional[pulumi.Input[Sequence[pulumi.Input['BucketAnalyticsConfigurationArgs']]]] = None, bucket_encryption: Optional[pulumi.Input['BucketEncryptionArgs']] = None, bucket_name: Optional[pulumi.Input[str]] = None, @@ -39,22 +38,6 @@ def __init__(__self__, *, website_configuration: Optional[pulumi.Input['BucketWebsiteConfigurationArgs']] = None): """ The set of arguments for constructing a Bucket resource. - :param pulumi.Input['BucketAccelerateConfigurationArgs'] accelerate_configuration: Configuration for the transfer acceleration state. - :param pulumi.Input['BucketAccessControl'] access_control: A canned access control list (ACL) that grants predefined permissions to the bucket. - :param pulumi.Input[Sequence[pulumi.Input['BucketAnalyticsConfigurationArgs']]] analytics_configurations: The configuration and any analyses for the analytics filter of an Amazon S3 bucket. - :param pulumi.Input[str] bucket_name: A name for the bucket. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. - :param pulumi.Input['BucketCorsConfigurationArgs'] cors_configuration: Rules that define cross-origin resource sharing of objects in this bucket. - :param pulumi.Input[Sequence[pulumi.Input['BucketIntelligentTieringConfigurationArgs']]] intelligent_tiering_configurations: Specifies the S3 Intelligent-Tiering configuration for an Amazon S3 bucket. - :param pulumi.Input[Sequence[pulumi.Input['BucketInventoryConfigurationArgs']]] inventory_configurations: The inventory configuration for an Amazon S3 bucket. - :param pulumi.Input['BucketLifecycleConfigurationArgs'] lifecycle_configuration: Rules that define how Amazon S3 manages objects during their lifetime. - :param pulumi.Input['BucketLoggingConfigurationArgs'] logging_configuration: Settings that define where logs are stored. - :param pulumi.Input[Sequence[pulumi.Input['BucketMetricsConfigurationArgs']]] metrics_configurations: Settings that define a metrics configuration for the CloudWatch request metrics from the bucket. - :param pulumi.Input['BucketNotificationConfigurationArgs'] notification_configuration: Configuration that defines how Amazon S3 handles bucket notifications. - :param pulumi.Input['BucketObjectLockConfigurationArgs'] object_lock_configuration: Places an Object Lock configuration on the specified bucket. - :param pulumi.Input[bool] object_lock_enabled: Indicates whether this bucket has an Object Lock configuration enabled. - :param pulumi.Input['BucketOwnershipControlsArgs'] ownership_controls: Specifies the container element for object ownership rules. - :param pulumi.Input['BucketReplicationConfigurationArgs'] replication_configuration: Configuration for replicating objects in an S3 bucket. - :param pulumi.Input[Sequence[pulumi.Input['BucketTagArgs']]] tags: An arbitrary set of tags (key-value pairs) for this S3 bucket. """ BucketArgs._configure( lambda key, value: pulumi.set(__self__, key, value), @@ -83,7 +66,7 @@ def __init__(__self__, *, def _configure( _setter: Callable[[Any, Any], None], accelerate_configuration: Optional[pulumi.Input['BucketAccelerateConfigurationArgs']] = None, - access_control: Optional[pulumi.Input['BucketAccessControl']] = None, + access_control: Optional[pulumi.Input[str]] = None, analytics_configurations: Optional[pulumi.Input[Sequence[pulumi.Input['BucketAnalyticsConfigurationArgs']]]] = None, bucket_encryption: Optional[pulumi.Input['BucketEncryptionArgs']] = None, bucket_name: Optional[pulumi.Input[str]] = None, @@ -147,9 +130,6 @@ def _configure( @property @pulumi.getter(name="accelerateConfiguration") def accelerate_configuration(self) -> Optional[pulumi.Input['BucketAccelerateConfigurationArgs']]: - """ - Configuration for the transfer acceleration state. - """ return pulumi.get(self, "accelerate_configuration") @accelerate_configuration.setter @@ -158,22 +138,16 @@ def accelerate_configuration(self, value: Optional[pulumi.Input['BucketAccelerat @property @pulumi.getter(name="accessControl") - def access_control(self) -> Optional[pulumi.Input['BucketAccessControl']]: - """ - A canned access control list (ACL) that grants predefined permissions to the bucket. - """ + def access_control(self) -> Optional[pulumi.Input[str]]: return pulumi.get(self, "access_control") @access_control.setter - def access_control(self, value: Optional[pulumi.Input['BucketAccessControl']]): + def access_control(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "access_control", value) @property @pulumi.getter(name="analyticsConfigurations") def analytics_configurations(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['BucketAnalyticsConfigurationArgs']]]]: - """ - The configuration and any analyses for the analytics filter of an Amazon S3 bucket. - """ return pulumi.get(self, "analytics_configurations") @analytics_configurations.setter @@ -192,9 +166,6 @@ def bucket_encryption(self, value: Optional[pulumi.Input['BucketEncryptionArgs'] @property @pulumi.getter(name="bucketName") def bucket_name(self) -> Optional[pulumi.Input[str]]: - """ - A name for the bucket. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. - """ return pulumi.get(self, "bucket_name") @bucket_name.setter @@ -204,9 +175,6 @@ def bucket_name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="corsConfiguration") def cors_configuration(self) -> Optional[pulumi.Input['BucketCorsConfigurationArgs']]: - """ - Rules that define cross-origin resource sharing of objects in this bucket. - """ return pulumi.get(self, "cors_configuration") @cors_configuration.setter @@ -216,9 +184,6 @@ def cors_configuration(self, value: Optional[pulumi.Input['BucketCorsConfigurati @property @pulumi.getter(name="intelligentTieringConfigurations") def intelligent_tiering_configurations(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['BucketIntelligentTieringConfigurationArgs']]]]: - """ - Specifies the S3 Intelligent-Tiering configuration for an Amazon S3 bucket. - """ return pulumi.get(self, "intelligent_tiering_configurations") @intelligent_tiering_configurations.setter @@ -228,9 +193,6 @@ def intelligent_tiering_configurations(self, value: Optional[pulumi.Input[Sequen @property @pulumi.getter(name="inventoryConfigurations") def inventory_configurations(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['BucketInventoryConfigurationArgs']]]]: - """ - The inventory configuration for an Amazon S3 bucket. - """ return pulumi.get(self, "inventory_configurations") @inventory_configurations.setter @@ -240,9 +202,6 @@ def inventory_configurations(self, value: Optional[pulumi.Input[Sequence[pulumi. @property @pulumi.getter(name="lifecycleConfiguration") def lifecycle_configuration(self) -> Optional[pulumi.Input['BucketLifecycleConfigurationArgs']]: - """ - Rules that define how Amazon S3 manages objects during their lifetime. - """ return pulumi.get(self, "lifecycle_configuration") @lifecycle_configuration.setter @@ -252,9 +211,6 @@ def lifecycle_configuration(self, value: Optional[pulumi.Input['BucketLifecycleC @property @pulumi.getter(name="loggingConfiguration") def logging_configuration(self) -> Optional[pulumi.Input['BucketLoggingConfigurationArgs']]: - """ - Settings that define where logs are stored. - """ return pulumi.get(self, "logging_configuration") @logging_configuration.setter @@ -264,9 +220,6 @@ def logging_configuration(self, value: Optional[pulumi.Input['BucketLoggingConfi @property @pulumi.getter(name="metricsConfigurations") def metrics_configurations(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['BucketMetricsConfigurationArgs']]]]: - """ - Settings that define a metrics configuration for the CloudWatch request metrics from the bucket. - """ return pulumi.get(self, "metrics_configurations") @metrics_configurations.setter @@ -276,9 +229,6 @@ def metrics_configurations(self, value: Optional[pulumi.Input[Sequence[pulumi.In @property @pulumi.getter(name="notificationConfiguration") def notification_configuration(self) -> Optional[pulumi.Input['BucketNotificationConfigurationArgs']]: - """ - Configuration that defines how Amazon S3 handles bucket notifications. - """ return pulumi.get(self, "notification_configuration") @notification_configuration.setter @@ -288,9 +238,6 @@ def notification_configuration(self, value: Optional[pulumi.Input['BucketNotific @property @pulumi.getter(name="objectLockConfiguration") def object_lock_configuration(self) -> Optional[pulumi.Input['BucketObjectLockConfigurationArgs']]: - """ - Places an Object Lock configuration on the specified bucket. - """ return pulumi.get(self, "object_lock_configuration") @object_lock_configuration.setter @@ -300,9 +247,6 @@ def object_lock_configuration(self, value: Optional[pulumi.Input['BucketObjectLo @property @pulumi.getter(name="objectLockEnabled") def object_lock_enabled(self) -> Optional[pulumi.Input[bool]]: - """ - Indicates whether this bucket has an Object Lock configuration enabled. - """ return pulumi.get(self, "object_lock_enabled") @object_lock_enabled.setter @@ -312,9 +256,6 @@ def object_lock_enabled(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="ownershipControls") def ownership_controls(self) -> Optional[pulumi.Input['BucketOwnershipControlsArgs']]: - """ - Specifies the container element for object ownership rules. - """ return pulumi.get(self, "ownership_controls") @ownership_controls.setter @@ -333,9 +274,6 @@ def public_access_block_configuration(self, value: Optional[pulumi.Input['Bucket @property @pulumi.getter(name="replicationConfiguration") def replication_configuration(self) -> Optional[pulumi.Input['BucketReplicationConfigurationArgs']]: - """ - Configuration for replicating objects in an S3 bucket. - """ return pulumi.get(self, "replication_configuration") @replication_configuration.setter @@ -345,9 +283,6 @@ def replication_configuration(self, value: Optional[pulumi.Input['BucketReplicat @property @pulumi.getter def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['BucketTagArgs']]]]: - """ - An arbitrary set of tags (key-value pairs) for this S3 bucket. - """ return pulumi.get(self, "tags") @tags.setter @@ -379,7 +314,7 @@ def __init__(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, accelerate_configuration: Optional[pulumi.Input[pulumi.InputType['BucketAccelerateConfigurationArgs']]] = None, - access_control: Optional[pulumi.Input['BucketAccessControl']] = None, + access_control: Optional[pulumi.Input[str]] = None, analytics_configurations: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['BucketAnalyticsConfigurationArgs']]]]] = None, bucket_encryption: Optional[pulumi.Input[pulumi.InputType['BucketEncryptionArgs']]] = None, bucket_name: Optional[pulumi.Input[str]] = None, @@ -404,22 +339,6 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[pulumi.InputType['BucketAccelerateConfigurationArgs']] accelerate_configuration: Configuration for the transfer acceleration state. - :param pulumi.Input['BucketAccessControl'] access_control: A canned access control list (ACL) that grants predefined permissions to the bucket. - :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['BucketAnalyticsConfigurationArgs']]]] analytics_configurations: The configuration and any analyses for the analytics filter of an Amazon S3 bucket. - :param pulumi.Input[str] bucket_name: A name for the bucket. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. - :param pulumi.Input[pulumi.InputType['BucketCorsConfigurationArgs']] cors_configuration: Rules that define cross-origin resource sharing of objects in this bucket. - :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['BucketIntelligentTieringConfigurationArgs']]]] intelligent_tiering_configurations: Specifies the S3 Intelligent-Tiering configuration for an Amazon S3 bucket. - :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['BucketInventoryConfigurationArgs']]]] inventory_configurations: The inventory configuration for an Amazon S3 bucket. - :param pulumi.Input[pulumi.InputType['BucketLifecycleConfigurationArgs']] lifecycle_configuration: Rules that define how Amazon S3 manages objects during their lifetime. - :param pulumi.Input[pulumi.InputType['BucketLoggingConfigurationArgs']] logging_configuration: Settings that define where logs are stored. - :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['BucketMetricsConfigurationArgs']]]] metrics_configurations: Settings that define a metrics configuration for the CloudWatch request metrics from the bucket. - :param pulumi.Input[pulumi.InputType['BucketNotificationConfigurationArgs']] notification_configuration: Configuration that defines how Amazon S3 handles bucket notifications. - :param pulumi.Input[pulumi.InputType['BucketObjectLockConfigurationArgs']] object_lock_configuration: Places an Object Lock configuration on the specified bucket. - :param pulumi.Input[bool] object_lock_enabled: Indicates whether this bucket has an Object Lock configuration enabled. - :param pulumi.Input[pulumi.InputType['BucketOwnershipControlsArgs']] ownership_controls: Specifies the container element for object ownership rules. - :param pulumi.Input[pulumi.InputType['BucketReplicationConfigurationArgs']] replication_configuration: Configuration for replicating objects in an S3 bucket. - :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['BucketTagArgs']]]] tags: An arbitrary set of tags (key-value pairs) for this S3 bucket. """ ... @overload @@ -450,7 +369,7 @@ def _internal_init(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, accelerate_configuration: Optional[pulumi.Input[pulumi.InputType['BucketAccelerateConfigurationArgs']]] = None, - access_control: Optional[pulumi.Input['BucketAccessControl']] = None, + access_control: Optional[pulumi.Input[str]] = None, analytics_configurations: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['BucketAnalyticsConfigurationArgs']]]]] = None, bucket_encryption: Optional[pulumi.Input[pulumi.InputType['BucketEncryptionArgs']]] = None, bucket_name: Optional[pulumi.Input[str]] = None, @@ -617,33 +536,21 @@ def get(resource_name: str, @property @pulumi.getter(name="accelerateConfiguration") def accelerate_configuration(self) -> pulumi.Output[Optional['outputs.BucketAccelerateConfiguration']]: - """ - Configuration for the transfer acceleration state. - """ return pulumi.get(self, "accelerate_configuration") @property @pulumi.getter(name="accessControl") - def access_control(self) -> pulumi.Output[Optional['BucketAccessControl']]: - """ - A canned access control list (ACL) that grants predefined permissions to the bucket. - """ + def access_control(self) -> pulumi.Output[Optional[str]]: return pulumi.get(self, "access_control") @property @pulumi.getter(name="analyticsConfigurations") def analytics_configurations(self) -> pulumi.Output[Optional[Sequence['outputs.BucketAnalyticsConfiguration']]]: - """ - The configuration and any analyses for the analytics filter of an Amazon S3 bucket. - """ return pulumi.get(self, "analytics_configurations") @property @pulumi.getter def arn(self) -> pulumi.Output[str]: - """ - The Amazon Resource Name (ARN) of the specified bucket. - """ return pulumi.get(self, "arn") @property @@ -654,105 +561,66 @@ def bucket_encryption(self) -> pulumi.Output[Optional['outputs.BucketEncryption' @property @pulumi.getter(name="bucketName") def bucket_name(self) -> pulumi.Output[Optional[str]]: - """ - A name for the bucket. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. - """ return pulumi.get(self, "bucket_name") @property @pulumi.getter(name="corsConfiguration") def cors_configuration(self) -> pulumi.Output[Optional['outputs.BucketCorsConfiguration']]: - """ - Rules that define cross-origin resource sharing of objects in this bucket. - """ return pulumi.get(self, "cors_configuration") @property @pulumi.getter(name="domainName") def domain_name(self) -> pulumi.Output[str]: - """ - The IPv4 DNS name of the specified bucket. - """ return pulumi.get(self, "domain_name") @property @pulumi.getter(name="dualStackDomainName") def dual_stack_domain_name(self) -> pulumi.Output[str]: - """ - The IPv6 DNS name of the specified bucket. For more information about dual-stack endpoints, see [Using Amazon S3 Dual-Stack Endpoints](https://docs.aws.amazon.com/AmazonS3/latest/dev/dual-stack-endpoints.html). - """ return pulumi.get(self, "dual_stack_domain_name") @property @pulumi.getter(name="intelligentTieringConfigurations") def intelligent_tiering_configurations(self) -> pulumi.Output[Optional[Sequence['outputs.BucketIntelligentTieringConfiguration']]]: - """ - Specifies the S3 Intelligent-Tiering configuration for an Amazon S3 bucket. - """ return pulumi.get(self, "intelligent_tiering_configurations") @property @pulumi.getter(name="inventoryConfigurations") def inventory_configurations(self) -> pulumi.Output[Optional[Sequence['outputs.BucketInventoryConfiguration']]]: - """ - The inventory configuration for an Amazon S3 bucket. - """ return pulumi.get(self, "inventory_configurations") @property @pulumi.getter(name="lifecycleConfiguration") def lifecycle_configuration(self) -> pulumi.Output[Optional['outputs.BucketLifecycleConfiguration']]: - """ - Rules that define how Amazon S3 manages objects during their lifetime. - """ return pulumi.get(self, "lifecycle_configuration") @property @pulumi.getter(name="loggingConfiguration") def logging_configuration(self) -> pulumi.Output[Optional['outputs.BucketLoggingConfiguration']]: - """ - Settings that define where logs are stored. - """ return pulumi.get(self, "logging_configuration") @property @pulumi.getter(name="metricsConfigurations") def metrics_configurations(self) -> pulumi.Output[Optional[Sequence['outputs.BucketMetricsConfiguration']]]: - """ - Settings that define a metrics configuration for the CloudWatch request metrics from the bucket. - """ return pulumi.get(self, "metrics_configurations") @property @pulumi.getter(name="notificationConfiguration") def notification_configuration(self) -> pulumi.Output[Optional['outputs.BucketNotificationConfiguration']]: - """ - Configuration that defines how Amazon S3 handles bucket notifications. - """ return pulumi.get(self, "notification_configuration") @property @pulumi.getter(name="objectLockConfiguration") def object_lock_configuration(self) -> pulumi.Output[Optional['outputs.BucketObjectLockConfiguration']]: - """ - Places an Object Lock configuration on the specified bucket. - """ return pulumi.get(self, "object_lock_configuration") @property @pulumi.getter(name="objectLockEnabled") def object_lock_enabled(self) -> pulumi.Output[Optional[bool]]: - """ - Indicates whether this bucket has an Object Lock configuration enabled. - """ return pulumi.get(self, "object_lock_enabled") @property @pulumi.getter(name="ownershipControls") def ownership_controls(self) -> pulumi.Output[Optional['outputs.BucketOwnershipControls']]: - """ - Specifies the container element for object ownership rules. - """ return pulumi.get(self, "ownership_controls") @property @@ -763,25 +631,16 @@ def public_access_block_configuration(self) -> pulumi.Output[Optional['outputs.B @property @pulumi.getter(name="regionalDomainName") def regional_domain_name(self) -> pulumi.Output[str]: - """ - Returns the regional domain name of the specified bucket. - """ return pulumi.get(self, "regional_domain_name") @property @pulumi.getter(name="replicationConfiguration") def replication_configuration(self) -> pulumi.Output[Optional['outputs.BucketReplicationConfiguration']]: - """ - Configuration for replicating objects in an S3 bucket. - """ return pulumi.get(self, "replication_configuration") @property @pulumi.getter def tags(self) -> pulumi.Output[Optional[Sequence['outputs.BucketTag']]]: - """ - An arbitrary set of tags (key-value pairs) for this S3 bucket. - """ return pulumi.get(self, "tags") @property @@ -797,8 +656,5 @@ def website_configuration(self) -> pulumi.Output[Optional['outputs.BucketWebsite @property @pulumi.getter(name="websiteUrl") def website_url(self) -> pulumi.Output[str]: - """ - The Amazon S3 website endpoint for the specified bucket. - """ return pulumi.get(self, "website_url") diff --git a/sdk/python/pulumi_aws_native/s3/get_bucket.py b/sdk/python/pulumi_aws_native/s3/get_bucket.py index e6fdc0cb00..6dcb6d72a4 100644 --- a/sdk/python/pulumi_aws_native/s3/get_bucket.py +++ b/sdk/python/pulumi_aws_native/s3/get_bucket.py @@ -9,7 +9,6 @@ from typing import Any, Callable, Mapping, Optional, Sequence, Union, overload from .. import _utilities from . import outputs -from ._enums import * __all__ = [ 'GetBucketResult', @@ -20,10 +19,13 @@ @pulumi.output_type class GetBucketResult: - def __init__(__self__, accelerate_configuration=None, analytics_configurations=None, arn=None, bucket_encryption=None, cors_configuration=None, domain_name=None, dual_stack_domain_name=None, intelligent_tiering_configurations=None, inventory_configurations=None, lifecycle_configuration=None, logging_configuration=None, metrics_configurations=None, notification_configuration=None, object_lock_configuration=None, ownership_controls=None, public_access_block_configuration=None, regional_domain_name=None, replication_configuration=None, tags=None, versioning_configuration=None, website_configuration=None, website_url=None): + def __init__(__self__, accelerate_configuration=None, access_control=None, analytics_configurations=None, arn=None, bucket_encryption=None, cors_configuration=None, domain_name=None, dual_stack_domain_name=None, id=None, intelligent_tiering_configurations=None, inventory_configurations=None, lifecycle_configuration=None, logging_configuration=None, metrics_configurations=None, notification_configuration=None, object_lock_configuration=None, ownership_controls=None, public_access_block_configuration=None, regional_domain_name=None, replication_configuration=None, tags=None, versioning_configuration=None, website_configuration=None, website_url=None): if accelerate_configuration and not isinstance(accelerate_configuration, dict): raise TypeError("Expected argument 'accelerate_configuration' to be a dict") pulumi.set(__self__, "accelerate_configuration", accelerate_configuration) + if access_control and not isinstance(access_control, str): + raise TypeError("Expected argument 'access_control' to be a str") + pulumi.set(__self__, "access_control", access_control) if analytics_configurations and not isinstance(analytics_configurations, list): raise TypeError("Expected argument 'analytics_configurations' to be a list") pulumi.set(__self__, "analytics_configurations", analytics_configurations) @@ -42,6 +44,9 @@ def __init__(__self__, accelerate_configuration=None, analytics_configurations=N if dual_stack_domain_name and not isinstance(dual_stack_domain_name, str): raise TypeError("Expected argument 'dual_stack_domain_name' to be a str") pulumi.set(__self__, "dual_stack_domain_name", dual_stack_domain_name) + if id and not isinstance(id, str): + raise TypeError("Expected argument 'id' to be a str") + pulumi.set(__self__, "id", id) if intelligent_tiering_configurations and not isinstance(intelligent_tiering_configurations, list): raise TypeError("Expected argument 'intelligent_tiering_configurations' to be a list") pulumi.set(__self__, "intelligent_tiering_configurations", intelligent_tiering_configurations) @@ -91,25 +96,21 @@ def __init__(__self__, accelerate_configuration=None, analytics_configurations=N @property @pulumi.getter(name="accelerateConfiguration") def accelerate_configuration(self) -> Optional['outputs.BucketAccelerateConfiguration']: - """ - Configuration for the transfer acceleration state. - """ return pulumi.get(self, "accelerate_configuration") + @property + @pulumi.getter(name="accessControl") + def access_control(self) -> Optional[str]: + return pulumi.get(self, "access_control") + @property @pulumi.getter(name="analyticsConfigurations") def analytics_configurations(self) -> Optional[Sequence['outputs.BucketAnalyticsConfiguration']]: - """ - The configuration and any analyses for the analytics filter of an Amazon S3 bucket. - """ return pulumi.get(self, "analytics_configurations") @property @pulumi.getter def arn(self) -> Optional[str]: - """ - The Amazon Resource Name (ARN) of the specified bucket. - """ return pulumi.get(self, "arn") @property @@ -120,89 +121,61 @@ def bucket_encryption(self) -> Optional['outputs.BucketEncryption']: @property @pulumi.getter(name="corsConfiguration") def cors_configuration(self) -> Optional['outputs.BucketCorsConfiguration']: - """ - Rules that define cross-origin resource sharing of objects in this bucket. - """ return pulumi.get(self, "cors_configuration") @property @pulumi.getter(name="domainName") def domain_name(self) -> Optional[str]: - """ - The IPv4 DNS name of the specified bucket. - """ return pulumi.get(self, "domain_name") @property @pulumi.getter(name="dualStackDomainName") def dual_stack_domain_name(self) -> Optional[str]: - """ - The IPv6 DNS name of the specified bucket. For more information about dual-stack endpoints, see [Using Amazon S3 Dual-Stack Endpoints](https://docs.aws.amazon.com/AmazonS3/latest/dev/dual-stack-endpoints.html). - """ return pulumi.get(self, "dual_stack_domain_name") + @property + @pulumi.getter + def id(self) -> Optional[str]: + return pulumi.get(self, "id") + @property @pulumi.getter(name="intelligentTieringConfigurations") def intelligent_tiering_configurations(self) -> Optional[Sequence['outputs.BucketIntelligentTieringConfiguration']]: - """ - Specifies the S3 Intelligent-Tiering configuration for an Amazon S3 bucket. - """ return pulumi.get(self, "intelligent_tiering_configurations") @property @pulumi.getter(name="inventoryConfigurations") def inventory_configurations(self) -> Optional[Sequence['outputs.BucketInventoryConfiguration']]: - """ - The inventory configuration for an Amazon S3 bucket. - """ return pulumi.get(self, "inventory_configurations") @property @pulumi.getter(name="lifecycleConfiguration") def lifecycle_configuration(self) -> Optional['outputs.BucketLifecycleConfiguration']: - """ - Rules that define how Amazon S3 manages objects during their lifetime. - """ return pulumi.get(self, "lifecycle_configuration") @property @pulumi.getter(name="loggingConfiguration") def logging_configuration(self) -> Optional['outputs.BucketLoggingConfiguration']: - """ - Settings that define where logs are stored. - """ return pulumi.get(self, "logging_configuration") @property @pulumi.getter(name="metricsConfigurations") def metrics_configurations(self) -> Optional[Sequence['outputs.BucketMetricsConfiguration']]: - """ - Settings that define a metrics configuration for the CloudWatch request metrics from the bucket. - """ return pulumi.get(self, "metrics_configurations") @property @pulumi.getter(name="notificationConfiguration") def notification_configuration(self) -> Optional['outputs.BucketNotificationConfiguration']: - """ - Configuration that defines how Amazon S3 handles bucket notifications. - """ return pulumi.get(self, "notification_configuration") @property @pulumi.getter(name="objectLockConfiguration") def object_lock_configuration(self) -> Optional['outputs.BucketObjectLockConfiguration']: - """ - Places an Object Lock configuration on the specified bucket. - """ return pulumi.get(self, "object_lock_configuration") @property @pulumi.getter(name="ownershipControls") def ownership_controls(self) -> Optional['outputs.BucketOwnershipControls']: - """ - Specifies the container element for object ownership rules. - """ return pulumi.get(self, "ownership_controls") @property @@ -213,25 +186,16 @@ def public_access_block_configuration(self) -> Optional['outputs.BucketPublicAcc @property @pulumi.getter(name="regionalDomainName") def regional_domain_name(self) -> Optional[str]: - """ - Returns the regional domain name of the specified bucket. - """ return pulumi.get(self, "regional_domain_name") @property @pulumi.getter(name="replicationConfiguration") def replication_configuration(self) -> Optional['outputs.BucketReplicationConfiguration']: - """ - Configuration for replicating objects in an S3 bucket. - """ return pulumi.get(self, "replication_configuration") @property @pulumi.getter def tags(self) -> Optional[Sequence['outputs.BucketTag']]: - """ - An arbitrary set of tags (key-value pairs) for this S3 bucket. - """ return pulumi.get(self, "tags") @property @@ -247,9 +211,6 @@ def website_configuration(self) -> Optional['outputs.BucketWebsiteConfiguration' @property @pulumi.getter(name="websiteUrl") def website_url(self) -> Optional[str]: - """ - The Amazon S3 website endpoint for the specified bucket. - """ return pulumi.get(self, "website_url") @@ -260,12 +221,14 @@ def __await__(self): yield self return GetBucketResult( accelerate_configuration=self.accelerate_configuration, + access_control=self.access_control, analytics_configurations=self.analytics_configurations, arn=self.arn, bucket_encryption=self.bucket_encryption, cors_configuration=self.cors_configuration, domain_name=self.domain_name, dual_stack_domain_name=self.dual_stack_domain_name, + id=self.id, intelligent_tiering_configurations=self.intelligent_tiering_configurations, inventory_configurations=self.inventory_configurations, lifecycle_configuration=self.lifecycle_configuration, @@ -283,27 +246,26 @@ def __await__(self): website_url=self.website_url) -def get_bucket(bucket_name: Optional[str] = None, +def get_bucket(id: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetBucketResult: """ Resource Type definition for AWS::S3::Bucket - - - :param str bucket_name: A name for the bucket. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. """ __args__ = dict() - __args__['bucketName'] = bucket_name + __args__['id'] = id opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) __ret__ = pulumi.runtime.invoke('aws-native:s3:getBucket', __args__, opts=opts, typ=GetBucketResult).value return AwaitableGetBucketResult( accelerate_configuration=pulumi.get(__ret__, 'accelerate_configuration'), + access_control=pulumi.get(__ret__, 'access_control'), analytics_configurations=pulumi.get(__ret__, 'analytics_configurations'), arn=pulumi.get(__ret__, 'arn'), bucket_encryption=pulumi.get(__ret__, 'bucket_encryption'), cors_configuration=pulumi.get(__ret__, 'cors_configuration'), domain_name=pulumi.get(__ret__, 'domain_name'), dual_stack_domain_name=pulumi.get(__ret__, 'dual_stack_domain_name'), + id=pulumi.get(__ret__, 'id'), intelligent_tiering_configurations=pulumi.get(__ret__, 'intelligent_tiering_configurations'), inventory_configurations=pulumi.get(__ret__, 'inventory_configurations'), lifecycle_configuration=pulumi.get(__ret__, 'lifecycle_configuration'), @@ -322,12 +284,9 @@ def get_bucket(bucket_name: Optional[str] = None, @_utilities.lift_output_func(get_bucket) -def get_bucket_output(bucket_name: Optional[pulumi.Input[str]] = None, +def get_bucket_output(id: Optional[pulumi.Input[str]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetBucketResult]: """ Resource Type definition for AWS::S3::Bucket - - - :param str bucket_name: A name for the bucket. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. """ ... diff --git a/sdk/python/pulumi_aws_native/s3/outputs.py b/sdk/python/pulumi_aws_native/s3/outputs.py index 0fd3866a90..9d40e409a8 100644 --- a/sdk/python/pulumi_aws_native/s3/outputs.py +++ b/sdk/python/pulumi_aws_native/s3/outputs.py @@ -247,9 +247,6 @@ def vpc_id(self) -> Optional[str]: @pulumi.output_type class BucketAbortIncompleteMultipartUpload(dict): - """ - Specifies the days since the initiation of an incomplete multipart upload that Amazon S3 will wait before permanently removing all parts of the upload. - """ @staticmethod def __key_warning(key: str): suggest = None @@ -269,10 +266,6 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, days_after_initiation: int): - """ - Specifies the days since the initiation of an incomplete multipart upload that Amazon S3 will wait before permanently removing all parts of the upload. - :param int days_after_initiation: Specifies the number of days after which Amazon S3 aborts an incomplete multipart upload. - """ BucketAbortIncompleteMultipartUpload._configure( lambda key, value: pulumi.set(__self__, key, value), days_after_initiation=days_after_initiation, @@ -287,9 +280,6 @@ def _configure( @property @pulumi.getter(name="daysAfterInitiation") def days_after_initiation(self) -> int: - """ - Specifies the number of days after which Amazon S3 aborts an incomplete multipart upload. - """ return pulumi.get(self, "days_after_initiation") @@ -313,10 +303,7 @@ def get(self, key: str, default = None) -> Any: return super().get(key, default) def __init__(__self__, *, - acceleration_status: 'BucketAccelerateConfigurationAccelerationStatus'): - """ - :param 'BucketAccelerateConfigurationAccelerationStatus' acceleration_status: Configures the transfer acceleration state for an Amazon S3 bucket. - """ + acceleration_status: str): BucketAccelerateConfiguration._configure( lambda key, value: pulumi.set(__self__, key, value), acceleration_status=acceleration_status, @@ -324,29 +311,20 @@ def __init__(__self__, *, @staticmethod def _configure( _setter: Callable[[Any, Any], None], - acceleration_status: 'BucketAccelerateConfigurationAccelerationStatus', + acceleration_status: str, opts: Optional[pulumi.ResourceOptions]=None): _setter("acceleration_status", acceleration_status) @property @pulumi.getter(name="accelerationStatus") - def acceleration_status(self) -> 'BucketAccelerateConfigurationAccelerationStatus': - """ - Configures the transfer acceleration state for an Amazon S3 bucket. - """ + def acceleration_status(self) -> str: return pulumi.get(self, "acceleration_status") @pulumi.output_type class BucketAccessControlTranslation(dict): - """ - Specify this only in a cross-account scenario (where source and destination bucket owners are not the same), and you want to change replica ownership to the AWS account that owns the destination bucket. If this is not specified in the replication configuration, the replicas are owned by same AWS account that owns the source object. - """ def __init__(__self__, *, owner: str): - """ - Specify this only in a cross-account scenario (where source and destination bucket owners are not the same), and you want to change replica ownership to the AWS account that owns the destination bucket. If this is not specified in the replication configuration, the replicas are owned by same AWS account that owns the source object. - """ BucketAccessControlTranslation._configure( lambda key, value: pulumi.set(__self__, key, value), owner=owner, @@ -366,9 +344,6 @@ def owner(self) -> str: @pulumi.output_type class BucketAnalyticsConfiguration(dict): - """ - Specifies the configuration and any analyses for the analytics filter of an Amazon S3 bucket. - """ @staticmethod def __key_warning(key: str): suggest = None @@ -393,11 +368,6 @@ def __init__(__self__, *, storage_class_analysis: 'outputs.BucketStorageClassAnalysis', prefix: Optional[str] = None, tag_filters: Optional[Sequence['outputs.BucketTagFilter']] = None): - """ - Specifies the configuration and any analyses for the analytics filter of an Amazon S3 bucket. - :param str id: The ID that identifies the analytics configuration. - :param str prefix: The prefix that an object must have to be included in the analytics results. - """ BucketAnalyticsConfiguration._configure( lambda key, value: pulumi.set(__self__, key, value), id=id, @@ -423,9 +393,6 @@ def _configure( @property @pulumi.getter def id(self) -> str: - """ - The ID that identifies the analytics configuration. - """ return pulumi.get(self, "id") @property @@ -436,9 +403,6 @@ def storage_class_analysis(self) -> 'outputs.BucketStorageClassAnalysis': @property @pulumi.getter def prefix(self) -> Optional[str]: - """ - The prefix that an object must have to be included in the analytics results. - """ return pulumi.get(self, "prefix") @property @@ -487,9 +451,6 @@ def cors_rules(self) -> Sequence['outputs.BucketCorsRule']: @pulumi.output_type class BucketCorsRule(dict): - """ - A set of origins and methods (cross-origin access that you want to allow). You can add up to 100 rules to the configuration. - """ @staticmethod def __key_warning(key: str): suggest = None @@ -516,21 +477,12 @@ def get(self, key: str, default = None) -> Any: return super().get(key, default) def __init__(__self__, *, - allowed_methods: Sequence['BucketCorsRuleAllowedMethodsItem'], + allowed_methods: Sequence[str], allowed_origins: Sequence[str], allowed_headers: Optional[Sequence[str]] = None, exposed_headers: Optional[Sequence[str]] = None, id: Optional[str] = None, max_age: Optional[int] = None): - """ - A set of origins and methods (cross-origin access that you want to allow). You can add up to 100 rules to the configuration. - :param Sequence['BucketCorsRuleAllowedMethodsItem'] allowed_methods: An HTTP method that you allow the origin to execute. - :param Sequence[str] allowed_origins: One or more origins you want customers to be able to access the bucket from. - :param Sequence[str] allowed_headers: Headers that are specified in the Access-Control-Request-Headers header. - :param Sequence[str] exposed_headers: One or more headers in the response that you want customers to be able to access from their applications (for example, from a JavaScript XMLHttpRequest object). - :param str id: A unique identifier for this rule. - :param int max_age: The time in seconds that your browser is to cache the preflight response for the specified resource. - """ BucketCorsRule._configure( lambda key, value: pulumi.set(__self__, key, value), allowed_methods=allowed_methods, @@ -543,7 +495,7 @@ def __init__(__self__, *, @staticmethod def _configure( _setter: Callable[[Any, Any], None], - allowed_methods: Sequence['BucketCorsRuleAllowedMethodsItem'], + allowed_methods: Sequence[str], allowed_origins: Sequence[str], allowed_headers: Optional[Sequence[str]] = None, exposed_headers: Optional[Sequence[str]] = None, @@ -563,58 +515,37 @@ def _configure( @property @pulumi.getter(name="allowedMethods") - def allowed_methods(self) -> Sequence['BucketCorsRuleAllowedMethodsItem']: - """ - An HTTP method that you allow the origin to execute. - """ + def allowed_methods(self) -> Sequence[str]: return pulumi.get(self, "allowed_methods") @property @pulumi.getter(name="allowedOrigins") def allowed_origins(self) -> Sequence[str]: - """ - One or more origins you want customers to be able to access the bucket from. - """ return pulumi.get(self, "allowed_origins") @property @pulumi.getter(name="allowedHeaders") def allowed_headers(self) -> Optional[Sequence[str]]: - """ - Headers that are specified in the Access-Control-Request-Headers header. - """ return pulumi.get(self, "allowed_headers") @property @pulumi.getter(name="exposedHeaders") def exposed_headers(self) -> Optional[Sequence[str]]: - """ - One or more headers in the response that you want customers to be able to access from their applications (for example, from a JavaScript XMLHttpRequest object). - """ return pulumi.get(self, "exposed_headers") @property @pulumi.getter def id(self) -> Optional[str]: - """ - A unique identifier for this rule. - """ return pulumi.get(self, "id") @property @pulumi.getter(name="maxAge") def max_age(self) -> Optional[int]: - """ - The time in seconds that your browser is to cache the preflight response for the specified resource. - """ return pulumi.get(self, "max_age") @pulumi.output_type class BucketDataExport(dict): - """ - Specifies how data related to the storage class analysis for an Amazon S3 bucket should be exported. - """ @staticmethod def __key_warning(key: str): suggest = None @@ -635,10 +566,6 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, destination: 'outputs.BucketDestination', output_schema_version: str): - """ - Specifies how data related to the storage class analysis for an Amazon S3 bucket should be exported. - :param str output_schema_version: The version of the output schema to use when exporting data. - """ BucketDataExport._configure( lambda key, value: pulumi.set(__self__, key, value), destination=destination, @@ -661,24 +588,15 @@ def destination(self) -> 'outputs.BucketDestination': @property @pulumi.getter(name="outputSchemaVersion") def output_schema_version(self) -> str: - """ - The version of the output schema to use when exporting data. - """ return pulumi.get(self, "output_schema_version") @pulumi.output_type class BucketDefaultRetention(dict): - """ - The default retention period that you want to apply to new objects placed in the specified bucket. - """ def __init__(__self__, *, days: Optional[int] = None, - mode: Optional['BucketDefaultRetentionMode'] = None, + mode: Optional[str] = None, years: Optional[int] = None): - """ - The default retention period that you want to apply to new objects placed in the specified bucket. - """ BucketDefaultRetention._configure( lambda key, value: pulumi.set(__self__, key, value), days=days, @@ -689,7 +607,7 @@ def __init__(__self__, *, def _configure( _setter: Callable[[Any, Any], None], days: Optional[int] = None, - mode: Optional['BucketDefaultRetentionMode'] = None, + mode: Optional[str] = None, years: Optional[int] = None, opts: Optional[pulumi.ResourceOptions]=None): if days is not None: @@ -706,7 +624,7 @@ def days(self) -> Optional[int]: @property @pulumi.getter - def mode(self) -> Optional['BucketDefaultRetentionMode']: + def mode(self) -> Optional[str]: return pulumi.get(self, "mode") @property @@ -718,7 +636,7 @@ def years(self) -> Optional[int]: @pulumi.output_type class BucketDeleteMarkerReplication(dict): def __init__(__self__, *, - status: Optional['BucketDeleteMarkerReplicationStatus'] = None): + status: Optional[str] = None): BucketDeleteMarkerReplication._configure( lambda key, value: pulumi.set(__self__, key, value), status=status, @@ -726,22 +644,19 @@ def __init__(__self__, *, @staticmethod def _configure( _setter: Callable[[Any, Any], None], - status: Optional['BucketDeleteMarkerReplicationStatus'] = None, + status: Optional[str] = None, opts: Optional[pulumi.ResourceOptions]=None): if status is not None: _setter("status", status) @property @pulumi.getter - def status(self) -> Optional['BucketDeleteMarkerReplicationStatus']: + def status(self) -> Optional[str]: return pulumi.get(self, "status") @pulumi.output_type class BucketDestination(dict): - """ - Specifies information about where to publish analysis or configuration results for an Amazon S3 bucket and S3 Replication Time Control (S3 RTC). - """ @staticmethod def __key_warning(key: str): suggest = None @@ -763,16 +678,9 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, bucket_arn: str, - format: 'BucketDestinationFormat', + format: str, bucket_account_id: Optional[str] = None, prefix: Optional[str] = None): - """ - Specifies information about where to publish analysis or configuration results for an Amazon S3 bucket and S3 Replication Time Control (S3 RTC). - :param str bucket_arn: The Amazon Resource Name (ARN) of the bucket to which data is exported. - :param 'BucketDestinationFormat' format: Specifies the file format used when exporting data to Amazon S3. - :param str bucket_account_id: The account ID that owns the destination S3 bucket. - :param str prefix: The prefix to use when exporting data. The prefix is prepended to all results. - """ BucketDestination._configure( lambda key, value: pulumi.set(__self__, key, value), bucket_arn=bucket_arn, @@ -784,7 +692,7 @@ def __init__(__self__, *, def _configure( _setter: Callable[[Any, Any], None], bucket_arn: str, - format: 'BucketDestinationFormat', + format: str, bucket_account_id: Optional[str] = None, prefix: Optional[str] = None, opts: Optional[pulumi.ResourceOptions]=None): @@ -798,41 +706,26 @@ def _configure( @property @pulumi.getter(name="bucketArn") def bucket_arn(self) -> str: - """ - The Amazon Resource Name (ARN) of the bucket to which data is exported. - """ return pulumi.get(self, "bucket_arn") @property @pulumi.getter - def format(self) -> 'BucketDestinationFormat': - """ - Specifies the file format used when exporting data to Amazon S3. - """ + def format(self) -> str: return pulumi.get(self, "format") @property @pulumi.getter(name="bucketAccountId") def bucket_account_id(self) -> Optional[str]: - """ - The account ID that owns the destination S3 bucket. - """ return pulumi.get(self, "bucket_account_id") @property @pulumi.getter def prefix(self) -> Optional[str]: - """ - The prefix to use when exporting data. The prefix is prepended to all results. - """ return pulumi.get(self, "prefix") @pulumi.output_type class BucketEncryption(dict): - """ - Specifies default encryption for a bucket using server-side encryption with either Amazon S3-managed keys (SSE-S3) or AWS KMS-managed keys (SSE-KMS). - """ @staticmethod def __key_warning(key: str): suggest = None @@ -852,10 +745,6 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, server_side_encryption_configuration: Sequence['outputs.BucketServerSideEncryptionRule']): - """ - Specifies default encryption for a bucket using server-side encryption with either Amazon S3-managed keys (SSE-S3) or AWS KMS-managed keys (SSE-KMS). - :param Sequence['BucketServerSideEncryptionRule'] server_side_encryption_configuration: Specifies the default server-side-encryption configuration. - """ BucketEncryption._configure( lambda key, value: pulumi.set(__self__, key, value), server_side_encryption_configuration=server_side_encryption_configuration, @@ -870,17 +759,11 @@ def _configure( @property @pulumi.getter(name="serverSideEncryptionConfiguration") def server_side_encryption_configuration(self) -> Sequence['outputs.BucketServerSideEncryptionRule']: - """ - Specifies the default server-side-encryption configuration. - """ return pulumi.get(self, "server_side_encryption_configuration") @pulumi.output_type class BucketEncryptionConfiguration(dict): - """ - Specifies encryption-related information for an Amazon S3 bucket that is a destination for replicated objects. - """ @staticmethod def __key_warning(key: str): suggest = None @@ -900,10 +783,6 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, replica_kms_key_id: str): - """ - Specifies encryption-related information for an Amazon S3 bucket that is a destination for replicated objects. - :param str replica_kms_key_id: Specifies the ID (Key ARN or Alias ARN) of the customer managed customer master key (CMK) stored in AWS Key Management Service (KMS) for the destination bucket. - """ BucketEncryptionConfiguration._configure( lambda key, value: pulumi.set(__self__, key, value), replica_kms_key_id=replica_kms_key_id, @@ -918,17 +797,11 @@ def _configure( @property @pulumi.getter(name="replicaKmsKeyId") def replica_kms_key_id(self) -> str: - """ - Specifies the ID (Key ARN or Alias ARN) of the customer managed customer master key (CMK) stored in AWS Key Management Service (KMS) for the destination bucket. - """ return pulumi.get(self, "replica_kms_key_id") @pulumi.output_type class BucketEventBridgeConfiguration(dict): - """ - Describes the Amazon EventBridge notification configuration for an Amazon S3 bucket. - """ @staticmethod def __key_warning(key: str): suggest = None @@ -947,11 +820,7 @@ def get(self, key: str, default = None) -> Any: return super().get(key, default) def __init__(__self__, *, - event_bridge_enabled: bool): - """ - Describes the Amazon EventBridge notification configuration for an Amazon S3 bucket. - :param bool event_bridge_enabled: Specifies whether to send notifications to Amazon EventBridge when events occur in an Amazon S3 bucket. - """ + event_bridge_enabled: Optional[bool] = None): BucketEventBridgeConfiguration._configure( lambda key, value: pulumi.set(__self__, key, value), event_bridge_enabled=event_bridge_enabled, @@ -959,30 +828,22 @@ def __init__(__self__, *, @staticmethod def _configure( _setter: Callable[[Any, Any], None], - event_bridge_enabled: bool, + event_bridge_enabled: Optional[bool] = None, opts: Optional[pulumi.ResourceOptions]=None): - _setter("event_bridge_enabled", event_bridge_enabled) + if event_bridge_enabled is not None: + _setter("event_bridge_enabled", event_bridge_enabled) @property @pulumi.getter(name="eventBridgeEnabled") - def event_bridge_enabled(self) -> bool: - """ - Specifies whether to send notifications to Amazon EventBridge when events occur in an Amazon S3 bucket. - """ + def event_bridge_enabled(self) -> Optional[bool]: return pulumi.get(self, "event_bridge_enabled") @pulumi.output_type class BucketFilterRule(dict): - """ - Specifies the Amazon S3 object key name to filter on and whether to filter on the suffix or prefix of the key name. - """ def __init__(__self__, *, name: str, value: str): - """ - Specifies the Amazon S3 object key name to filter on and whether to filter on the suffix or prefix of the key name. - """ BucketFilterRule._configure( lambda key, value: pulumi.set(__self__, key, value), name=name, @@ -1029,17 +890,10 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, id: str, - status: 'BucketIntelligentTieringConfigurationStatus', + status: str, tierings: Sequence['outputs.BucketTiering'], prefix: Optional[str] = None, tag_filters: Optional[Sequence['outputs.BucketTagFilter']] = None): - """ - :param str id: The ID used to identify the S3 Intelligent-Tiering configuration. - :param 'BucketIntelligentTieringConfigurationStatus' status: Specifies the status of the configuration. - :param Sequence['BucketTiering'] tierings: Specifies a list of S3 Intelligent-Tiering storage class tiers in the configuration. At least one tier must be defined in the list. At most, you can specify two tiers in the list, one for each available AccessTier: ARCHIVE_ACCESS and DEEP_ARCHIVE_ACCESS. - :param str prefix: An object key name prefix that identifies the subset of objects to which the rule applies. - :param Sequence['BucketTagFilter'] tag_filters: A container for a key-value pair. - """ BucketIntelligentTieringConfiguration._configure( lambda key, value: pulumi.set(__self__, key, value), id=id, @@ -1052,7 +906,7 @@ def __init__(__self__, *, def _configure( _setter: Callable[[Any, Any], None], id: str, - status: 'BucketIntelligentTieringConfigurationStatus', + status: str, tierings: Sequence['outputs.BucketTiering'], prefix: Optional[str] = None, tag_filters: Optional[Sequence['outputs.BucketTagFilter']] = None, @@ -1068,41 +922,26 @@ def _configure( @property @pulumi.getter def id(self) -> str: - """ - The ID used to identify the S3 Intelligent-Tiering configuration. - """ return pulumi.get(self, "id") @property @pulumi.getter - def status(self) -> 'BucketIntelligentTieringConfigurationStatus': - """ - Specifies the status of the configuration. - """ + def status(self) -> str: return pulumi.get(self, "status") @property @pulumi.getter def tierings(self) -> Sequence['outputs.BucketTiering']: - """ - Specifies a list of S3 Intelligent-Tiering storage class tiers in the configuration. At least one tier must be defined in the list. At most, you can specify two tiers in the list, one for each available AccessTier: ARCHIVE_ACCESS and DEEP_ARCHIVE_ACCESS. - """ return pulumi.get(self, "tierings") @property @pulumi.getter def prefix(self) -> Optional[str]: - """ - An object key name prefix that identifies the subset of objects to which the rule applies. - """ return pulumi.get(self, "prefix") @property @pulumi.getter(name="tagFilters") def tag_filters(self) -> Optional[Sequence['outputs.BucketTagFilter']]: - """ - A container for a key-value pair. - """ return pulumi.get(self, "tag_filters") @@ -1133,18 +972,10 @@ def __init__(__self__, *, destination: 'outputs.BucketDestination', enabled: bool, id: str, - included_object_versions: 'BucketInventoryConfigurationIncludedObjectVersions', - schedule_frequency: 'BucketInventoryConfigurationScheduleFrequency', - optional_fields: Optional[Sequence['BucketInventoryConfigurationOptionalFieldsItem']] = None, + included_object_versions: str, + schedule_frequency: str, + optional_fields: Optional[Sequence[str]] = None, prefix: Optional[str] = None): - """ - :param bool enabled: Specifies whether the inventory is enabled or disabled. - :param str id: The ID used to identify the inventory configuration. - :param 'BucketInventoryConfigurationIncludedObjectVersions' included_object_versions: Object versions to include in the inventory list. - :param 'BucketInventoryConfigurationScheduleFrequency' schedule_frequency: Specifies the schedule for generating inventory results. - :param Sequence['BucketInventoryConfigurationOptionalFieldsItem'] optional_fields: Contains the optional fields that are included in the inventory results. - :param str prefix: The prefix that is prepended to all inventory results. - """ BucketInventoryConfiguration._configure( lambda key, value: pulumi.set(__self__, key, value), destination=destination, @@ -1161,9 +992,9 @@ def _configure( destination: 'outputs.BucketDestination', enabled: bool, id: str, - included_object_versions: 'BucketInventoryConfigurationIncludedObjectVersions', - schedule_frequency: 'BucketInventoryConfigurationScheduleFrequency', - optional_fields: Optional[Sequence['BucketInventoryConfigurationOptionalFieldsItem']] = None, + included_object_versions: str, + schedule_frequency: str, + optional_fields: Optional[Sequence[str]] = None, prefix: Optional[str] = None, opts: Optional[pulumi.ResourceOptions]=None): _setter("destination", destination) @@ -1184,67 +1015,40 @@ def destination(self) -> 'outputs.BucketDestination': @property @pulumi.getter def enabled(self) -> bool: - """ - Specifies whether the inventory is enabled or disabled. - """ return pulumi.get(self, "enabled") @property @pulumi.getter def id(self) -> str: - """ - The ID used to identify the inventory configuration. - """ return pulumi.get(self, "id") @property @pulumi.getter(name="includedObjectVersions") - def included_object_versions(self) -> 'BucketInventoryConfigurationIncludedObjectVersions': - """ - Object versions to include in the inventory list. - """ + def included_object_versions(self) -> str: return pulumi.get(self, "included_object_versions") @property @pulumi.getter(name="scheduleFrequency") - def schedule_frequency(self) -> 'BucketInventoryConfigurationScheduleFrequency': - """ - Specifies the schedule for generating inventory results. - """ + def schedule_frequency(self) -> str: return pulumi.get(self, "schedule_frequency") @property @pulumi.getter(name="optionalFields") - def optional_fields(self) -> Optional[Sequence['BucketInventoryConfigurationOptionalFieldsItem']]: - """ - Contains the optional fields that are included in the inventory results. - """ + def optional_fields(self) -> Optional[Sequence[str]]: return pulumi.get(self, "optional_fields") @property @pulumi.getter def prefix(self) -> Optional[str]: - """ - The prefix that is prepended to all inventory results. - """ return pulumi.get(self, "prefix") @pulumi.output_type class BucketLambdaConfiguration(dict): - """ - Describes the AWS Lambda functions to invoke and the events for which to invoke them. - """ def __init__(__self__, *, event: str, function: str, filter: Optional['outputs.BucketNotificationFilter'] = None): - """ - Describes the AWS Lambda functions to invoke and the events for which to invoke them. - :param str event: The Amazon S3 bucket event for which to invoke the AWS Lambda function. - :param str function: The Amazon Resource Name (ARN) of the AWS Lambda function that Amazon S3 invokes when the specified event type occurs. - :param 'BucketNotificationFilter' filter: The filtering rules that determine which objects invoke the AWS Lambda function. - """ BucketLambdaConfiguration._configure( lambda key, value: pulumi.set(__self__, key, value), event=event, @@ -1266,25 +1070,16 @@ def _configure( @property @pulumi.getter def event(self) -> str: - """ - The Amazon S3 bucket event for which to invoke the AWS Lambda function. - """ return pulumi.get(self, "event") @property @pulumi.getter def function(self) -> str: - """ - The Amazon Resource Name (ARN) of the AWS Lambda function that Amazon S3 invokes when the specified event type occurs. - """ return pulumi.get(self, "function") @property @pulumi.getter def filter(self) -> Optional['outputs.BucketNotificationFilter']: - """ - The filtering rules that determine which objects invoke the AWS Lambda function. - """ return pulumi.get(self, "filter") @@ -1292,9 +1087,6 @@ def filter(self) -> Optional['outputs.BucketNotificationFilter']: class BucketLifecycleConfiguration(dict): def __init__(__self__, *, rules: Sequence['outputs.BucketRule']): - """ - :param Sequence['BucketRule'] rules: A lifecycle rule for individual objects in an Amazon S3 bucket. - """ BucketLifecycleConfiguration._configure( lambda key, value: pulumi.set(__self__, key, value), rules=rules, @@ -1309,9 +1101,6 @@ def _configure( @property @pulumi.getter def rules(self) -> Sequence['outputs.BucketRule']: - """ - A lifecycle rule for individual objects in an Amazon S3 bucket. - """ return pulumi.get(self, "rules") @@ -1339,9 +1128,6 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, destination_bucket_name: Optional[str] = None, log_file_prefix: Optional[str] = None): - """ - :param str destination_bucket_name: The name of an Amazon S3 bucket where Amazon S3 store server access log files. You can store log files in any bucket that you own. By default, logs are stored in the bucket where the LoggingConfiguration property is defined. - """ BucketLoggingConfiguration._configure( lambda key, value: pulumi.set(__self__, key, value), destination_bucket_name=destination_bucket_name, @@ -1361,9 +1147,6 @@ def _configure( @property @pulumi.getter(name="destinationBucketName") def destination_bucket_name(self) -> Optional[str]: - """ - The name of an Amazon S3 bucket where Amazon S3 store server access log files. You can store log files in any bucket that you own. By default, logs are stored in the bucket where the LoggingConfiguration property is defined. - """ return pulumi.get(self, "destination_bucket_name") @property @@ -1392,7 +1175,7 @@ def get(self, key: str, default = None) -> Any: return super().get(key, default) def __init__(__self__, *, - status: 'BucketMetricsStatus', + status: str, event_threshold: Optional['outputs.BucketReplicationTimeValue'] = None): BucketMetrics._configure( lambda key, value: pulumi.set(__self__, key, value), @@ -1402,7 +1185,7 @@ def __init__(__self__, *, @staticmethod def _configure( _setter: Callable[[Any, Any], None], - status: 'BucketMetricsStatus', + status: str, event_threshold: Optional['outputs.BucketReplicationTimeValue'] = None, opts: Optional[pulumi.ResourceOptions]=None): _setter("status", status) @@ -1411,7 +1194,7 @@ def _configure( @property @pulumi.getter - def status(self) -> 'BucketMetricsStatus': + def status(self) -> str: return pulumi.get(self, "status") @property @@ -1492,9 +1275,6 @@ def tag_filters(self) -> Optional[Sequence['outputs.BucketTagFilter']]: @pulumi.output_type class BucketNoncurrentVersionExpiration(dict): - """ - Container for the expiration rule that describes when noncurrent objects are expired. If your bucket is versioning-enabled (or versioning is suspended), you can set this action to request that Amazon S3 expire noncurrent object versions at a specific period in the object's lifetime - """ @staticmethod def __key_warning(key: str): suggest = None @@ -1517,11 +1297,6 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, noncurrent_days: int, newer_noncurrent_versions: Optional[int] = None): - """ - Container for the expiration rule that describes when noncurrent objects are expired. If your bucket is versioning-enabled (or versioning is suspended), you can set this action to request that Amazon S3 expire noncurrent object versions at a specific period in the object's lifetime - :param int noncurrent_days: Specified the number of days an object is noncurrent before Amazon S3 can perform the associated action - :param int newer_noncurrent_versions: Specified the number of newer noncurrent and current versions that must exists before performing the associated action - """ BucketNoncurrentVersionExpiration._configure( lambda key, value: pulumi.set(__self__, key, value), noncurrent_days=noncurrent_days, @@ -1540,25 +1315,16 @@ def _configure( @property @pulumi.getter(name="noncurrentDays") def noncurrent_days(self) -> int: - """ - Specified the number of days an object is noncurrent before Amazon S3 can perform the associated action - """ return pulumi.get(self, "noncurrent_days") @property @pulumi.getter(name="newerNoncurrentVersions") def newer_noncurrent_versions(self) -> Optional[int]: - """ - Specified the number of newer noncurrent and current versions that must exists before performing the associated action - """ return pulumi.get(self, "newer_noncurrent_versions") @pulumi.output_type class BucketNoncurrentVersionTransition(dict): - """ - Container for the transition rule that describes when noncurrent objects transition to the STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER_IR, GLACIER, or DEEP_ARCHIVE storage class. If your bucket is versioning-enabled (or versioning is suspended), you can set this action to request that Amazon S3 transition noncurrent object versions to the STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER_IR, GLACIER, or DEEP_ARCHIVE storage class at a specific period in the object's lifetime. - """ @staticmethod def __key_warning(key: str): suggest = None @@ -1581,15 +1347,9 @@ def get(self, key: str, default = None) -> Any: return super().get(key, default) def __init__(__self__, *, - storage_class: 'BucketNoncurrentVersionTransitionStorageClass', + storage_class: str, transition_in_days: int, newer_noncurrent_versions: Optional[int] = None): - """ - Container for the transition rule that describes when noncurrent objects transition to the STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER_IR, GLACIER, or DEEP_ARCHIVE storage class. If your bucket is versioning-enabled (or versioning is suspended), you can set this action to request that Amazon S3 transition noncurrent object versions to the STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER_IR, GLACIER, or DEEP_ARCHIVE storage class at a specific period in the object's lifetime. - :param 'BucketNoncurrentVersionTransitionStorageClass' storage_class: The class of storage used to store the object. - :param int transition_in_days: Specifies the number of days an object is noncurrent before Amazon S3 can perform the associated action. - :param int newer_noncurrent_versions: Specified the number of newer noncurrent and current versions that must exists before performing the associated action - """ BucketNoncurrentVersionTransition._configure( lambda key, value: pulumi.set(__self__, key, value), storage_class=storage_class, @@ -1599,7 +1359,7 @@ def __init__(__self__, *, @staticmethod def _configure( _setter: Callable[[Any, Any], None], - storage_class: 'BucketNoncurrentVersionTransitionStorageClass', + storage_class: str, transition_in_days: int, newer_noncurrent_versions: Optional[int] = None, opts: Optional[pulumi.ResourceOptions]=None): @@ -1610,34 +1370,22 @@ def _configure( @property @pulumi.getter(name="storageClass") - def storage_class(self) -> 'BucketNoncurrentVersionTransitionStorageClass': - """ - The class of storage used to store the object. - """ + def storage_class(self) -> str: return pulumi.get(self, "storage_class") @property @pulumi.getter(name="transitionInDays") def transition_in_days(self) -> int: - """ - Specifies the number of days an object is noncurrent before Amazon S3 can perform the associated action. - """ return pulumi.get(self, "transition_in_days") @property @pulumi.getter(name="newerNoncurrentVersions") def newer_noncurrent_versions(self) -> Optional[int]: - """ - Specified the number of newer noncurrent and current versions that must exists before performing the associated action - """ return pulumi.get(self, "newer_noncurrent_versions") @pulumi.output_type class BucketNotificationConfiguration(dict): - """ - Describes the notification configuration for an Amazon S3 bucket. - """ @staticmethod def __key_warning(key: str): suggest = None @@ -1666,9 +1414,6 @@ def __init__(__self__, *, lambda_configurations: Optional[Sequence['outputs.BucketLambdaConfiguration']] = None, queue_configurations: Optional[Sequence['outputs.BucketQueueConfiguration']] = None, topic_configurations: Optional[Sequence['outputs.BucketTopicConfiguration']] = None): - """ - Describes the notification configuration for an Amazon S3 bucket. - """ BucketNotificationConfiguration._configure( lambda key, value: pulumi.set(__self__, key, value), event_bridge_configuration=event_bridge_configuration, @@ -1716,9 +1461,6 @@ def topic_configurations(self) -> Optional[Sequence['outputs.BucketTopicConfigur @pulumi.output_type class BucketNotificationFilter(dict): - """ - Specifies object key name filtering rules. - """ @staticmethod def __key_warning(key: str): suggest = None @@ -1738,9 +1480,6 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, s3_key: 'outputs.BucketS3KeyFilter'): - """ - Specifies object key name filtering rules. - """ BucketNotificationFilter._configure( lambda key, value: pulumi.set(__self__, key, value), s3_key=s3_key, @@ -1809,9 +1548,6 @@ def rule(self) -> Optional['outputs.BucketObjectLockRule']: @pulumi.output_type class BucketObjectLockRule(dict): - """ - The Object Lock rule in place for the specified object. - """ @staticmethod def __key_warning(key: str): suggest = None @@ -1831,9 +1567,6 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, default_retention: Optional['outputs.BucketDefaultRetention'] = None): - """ - The Object Lock rule in place for the specified object. - """ BucketObjectLockRule._configure( lambda key, value: pulumi.set(__self__, key, value), default_retention=default_retention, @@ -1893,10 +1626,7 @@ def get(self, key: str, default = None) -> Any: return super().get(key, default) def __init__(__self__, *, - object_ownership: Optional['BucketOwnershipControlsRuleObjectOwnership'] = None): - """ - :param 'BucketOwnershipControlsRuleObjectOwnership' object_ownership: Specifies an object ownership rule. - """ + object_ownership: Optional[str] = None): BucketOwnershipControlsRule._configure( lambda key, value: pulumi.set(__self__, key, value), object_ownership=object_ownership, @@ -1904,25 +1634,19 @@ def __init__(__self__, *, @staticmethod def _configure( _setter: Callable[[Any, Any], None], - object_ownership: Optional['BucketOwnershipControlsRuleObjectOwnership'] = None, + object_ownership: Optional[str] = None, opts: Optional[pulumi.ResourceOptions]=None): if object_ownership is not None: _setter("object_ownership", object_ownership) @property @pulumi.getter(name="objectOwnership") - def object_ownership(self) -> Optional['BucketOwnershipControlsRuleObjectOwnership']: - """ - Specifies an object ownership rule. - """ + def object_ownership(self) -> Optional[str]: return pulumi.get(self, "object_ownership") @pulumi.output_type class BucketPublicAccessBlockConfiguration(dict): - """ - Configuration that defines how Amazon S3 handles public access. - """ @staticmethod def __key_warning(key: str): suggest = None @@ -1951,19 +1675,6 @@ def __init__(__self__, *, block_public_policy: Optional[bool] = None, ignore_public_acls: Optional[bool] = None, restrict_public_buckets: Optional[bool] = None): - """ - Configuration that defines how Amazon S3 handles public access. - :param bool block_public_acls: Specifies whether Amazon S3 should block public access control lists (ACLs) for this bucket and objects in this bucket. Setting this element to TRUE causes the following behavior: - - PUT Bucket acl and PUT Object acl calls fail if the specified ACL is public. - - PUT Object calls fail if the request includes a public ACL. - Enabling this setting doesn't affect existing policies or ACLs. - :param bool block_public_policy: Specifies whether Amazon S3 should block public bucket policies for this bucket. Setting this element to TRUE causes Amazon S3 to reject calls to PUT Bucket policy if the specified bucket policy allows public access. - Enabling this setting doesn't affect existing bucket policies. - :param bool ignore_public_acls: Specifies whether Amazon S3 should ignore public ACLs for this bucket and objects in this bucket. Setting this element to TRUE causes Amazon S3 to ignore all public ACLs on this bucket and objects in this bucket. - Enabling this setting doesn't affect the persistence of any existing ACLs and doesn't prevent new public ACLs from being set. - :param bool restrict_public_buckets: Specifies whether Amazon S3 should restrict public bucket policies for this bucket. Setting this element to TRUE restricts access to this bucket to only AWS services and authorized users within this account if the bucket has a public policy. - Enabling this setting doesn't affect previously stored bucket policies, except that public and cross-account access within any public bucket policy, including non-public delegation to specific accounts, is blocked. - """ BucketPublicAccessBlockConfiguration._configure( lambda key, value: pulumi.set(__self__, key, value), block_public_acls=block_public_acls, @@ -1991,57 +1702,30 @@ def _configure( @property @pulumi.getter(name="blockPublicAcls") def block_public_acls(self) -> Optional[bool]: - """ - Specifies whether Amazon S3 should block public access control lists (ACLs) for this bucket and objects in this bucket. Setting this element to TRUE causes the following behavior: - - PUT Bucket acl and PUT Object acl calls fail if the specified ACL is public. - - PUT Object calls fail if the request includes a public ACL. - Enabling this setting doesn't affect existing policies or ACLs. - """ return pulumi.get(self, "block_public_acls") @property @pulumi.getter(name="blockPublicPolicy") def block_public_policy(self) -> Optional[bool]: - """ - Specifies whether Amazon S3 should block public bucket policies for this bucket. Setting this element to TRUE causes Amazon S3 to reject calls to PUT Bucket policy if the specified bucket policy allows public access. - Enabling this setting doesn't affect existing bucket policies. - """ return pulumi.get(self, "block_public_policy") @property @pulumi.getter(name="ignorePublicAcls") def ignore_public_acls(self) -> Optional[bool]: - """ - Specifies whether Amazon S3 should ignore public ACLs for this bucket and objects in this bucket. Setting this element to TRUE causes Amazon S3 to ignore all public ACLs on this bucket and objects in this bucket. - Enabling this setting doesn't affect the persistence of any existing ACLs and doesn't prevent new public ACLs from being set. - """ return pulumi.get(self, "ignore_public_acls") @property @pulumi.getter(name="restrictPublicBuckets") def restrict_public_buckets(self) -> Optional[bool]: - """ - Specifies whether Amazon S3 should restrict public bucket policies for this bucket. Setting this element to TRUE restricts access to this bucket to only AWS services and authorized users within this account if the bucket has a public policy. - Enabling this setting doesn't affect previously stored bucket policies, except that public and cross-account access within any public bucket policy, including non-public delegation to specific accounts, is blocked. - """ return pulumi.get(self, "restrict_public_buckets") @pulumi.output_type class BucketQueueConfiguration(dict): - """ - The Amazon Simple Queue Service queues to publish messages to and the events for which to publish messages. - """ def __init__(__self__, *, event: str, queue: str, filter: Optional['outputs.BucketNotificationFilter'] = None): - """ - The Amazon Simple Queue Service queues to publish messages to and the events for which to publish messages. - :param str event: The Amazon S3 bucket event about which you want to publish messages to Amazon SQS. - :param str queue: The Amazon Resource Name (ARN) of the Amazon SQS queue to which Amazon S3 publishes a message when it detects events of the specified type. - :param 'BucketNotificationFilter' filter: The filtering rules that determine which objects trigger notifications. - """ BucketQueueConfiguration._configure( lambda key, value: pulumi.set(__self__, key, value), event=event, @@ -2063,33 +1747,21 @@ def _configure( @property @pulumi.getter def event(self) -> str: - """ - The Amazon S3 bucket event about which you want to publish messages to Amazon SQS. - """ return pulumi.get(self, "event") @property @pulumi.getter def queue(self) -> str: - """ - The Amazon Resource Name (ARN) of the Amazon SQS queue to which Amazon S3 publishes a message when it detects events of the specified type. - """ return pulumi.get(self, "queue") @property @pulumi.getter def filter(self) -> Optional['outputs.BucketNotificationFilter']: - """ - The filtering rules that determine which objects trigger notifications. - """ return pulumi.get(self, "filter") @pulumi.output_type class BucketRedirectAllRequestsTo(dict): - """ - Specifies the redirect behavior of all requests to a website endpoint of an Amazon S3 bucket. - """ @staticmethod def __key_warning(key: str): suggest = None @@ -2109,12 +1781,7 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, host_name: str, - protocol: Optional['BucketRedirectAllRequestsToProtocol'] = None): - """ - Specifies the redirect behavior of all requests to a website endpoint of an Amazon S3 bucket. - :param str host_name: Name of the host where requests are redirected. - :param 'BucketRedirectAllRequestsToProtocol' protocol: Protocol to use when redirecting requests. The default is the protocol that is used in the original request. - """ + protocol: Optional[str] = None): BucketRedirectAllRequestsTo._configure( lambda key, value: pulumi.set(__self__, key, value), host_name=host_name, @@ -2124,7 +1791,7 @@ def __init__(__self__, *, def _configure( _setter: Callable[[Any, Any], None], host_name: str, - protocol: Optional['BucketRedirectAllRequestsToProtocol'] = None, + protocol: Optional[str] = None, opts: Optional[pulumi.ResourceOptions]=None): _setter("host_name", host_name) if protocol is not None: @@ -2133,25 +1800,16 @@ def _configure( @property @pulumi.getter(name="hostName") def host_name(self) -> str: - """ - Name of the host where requests are redirected. - """ return pulumi.get(self, "host_name") @property @pulumi.getter - def protocol(self) -> Optional['BucketRedirectAllRequestsToProtocol']: - """ - Protocol to use when redirecting requests. The default is the protocol that is used in the original request. - """ + def protocol(self) -> Optional[str]: return pulumi.get(self, "protocol") @pulumi.output_type class BucketRedirectRule(dict): - """ - Specifies how requests are redirected. In the event of an error, you can specify a different error code to return. - """ @staticmethod def __key_warning(key: str): suggest = None @@ -2178,17 +1836,9 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, host_name: Optional[str] = None, http_redirect_code: Optional[str] = None, - protocol: Optional['BucketRedirectRuleProtocol'] = None, + protocol: Optional[str] = None, replace_key_prefix_with: Optional[str] = None, replace_key_with: Optional[str] = None): - """ - Specifies how requests are redirected. In the event of an error, you can specify a different error code to return. - :param str host_name: The host name to use in the redirect request. - :param str http_redirect_code: The HTTP redirect code to use on the response. Not required if one of the siblings is present. - :param 'BucketRedirectRuleProtocol' protocol: Protocol to use when redirecting requests. The default is the protocol that is used in the original request. - :param str replace_key_prefix_with: The object key prefix to use in the redirect request. - :param str replace_key_with: The specific object key to use in the redirect request.d - """ BucketRedirectRule._configure( lambda key, value: pulumi.set(__self__, key, value), host_name=host_name, @@ -2202,7 +1852,7 @@ def _configure( _setter: Callable[[Any, Any], None], host_name: Optional[str] = None, http_redirect_code: Optional[str] = None, - protocol: Optional['BucketRedirectRuleProtocol'] = None, + protocol: Optional[str] = None, replace_key_prefix_with: Optional[str] = None, replace_key_with: Optional[str] = None, opts: Optional[pulumi.ResourceOptions]=None): @@ -2220,51 +1870,33 @@ def _configure( @property @pulumi.getter(name="hostName") def host_name(self) -> Optional[str]: - """ - The host name to use in the redirect request. - """ return pulumi.get(self, "host_name") @property @pulumi.getter(name="httpRedirectCode") def http_redirect_code(self) -> Optional[str]: - """ - The HTTP redirect code to use on the response. Not required if one of the siblings is present. - """ return pulumi.get(self, "http_redirect_code") @property @pulumi.getter - def protocol(self) -> Optional['BucketRedirectRuleProtocol']: - """ - Protocol to use when redirecting requests. The default is the protocol that is used in the original request. - """ + def protocol(self) -> Optional[str]: return pulumi.get(self, "protocol") @property @pulumi.getter(name="replaceKeyPrefixWith") def replace_key_prefix_with(self) -> Optional[str]: - """ - The object key prefix to use in the redirect request. - """ return pulumi.get(self, "replace_key_prefix_with") @property @pulumi.getter(name="replaceKeyWith") def replace_key_with(self) -> Optional[str]: - """ - The specific object key to use in the redirect request.d - """ return pulumi.get(self, "replace_key_with") @pulumi.output_type class BucketReplicaModifications(dict): def __init__(__self__, *, - status: 'BucketReplicaModificationsStatus'): - """ - :param 'BucketReplicaModificationsStatus' status: Specifies whether Amazon S3 replicates modifications on replicas. - """ + status: str): BucketReplicaModifications._configure( lambda key, value: pulumi.set(__self__, key, value), status=status, @@ -2272,32 +1904,21 @@ def __init__(__self__, *, @staticmethod def _configure( _setter: Callable[[Any, Any], None], - status: 'BucketReplicaModificationsStatus', + status: str, opts: Optional[pulumi.ResourceOptions]=None): _setter("status", status) @property @pulumi.getter - def status(self) -> 'BucketReplicaModificationsStatus': - """ - Specifies whether Amazon S3 replicates modifications on replicas. - """ + def status(self) -> str: return pulumi.get(self, "status") @pulumi.output_type class BucketReplicationConfiguration(dict): - """ - A container for replication rules. You can add up to 1,000 rules. The maximum size of a replication configuration is 2 MB. - """ def __init__(__self__, *, role: str, rules: Sequence['outputs.BucketReplicationRule']): - """ - A container for replication rules. You can add up to 1,000 rules. The maximum size of a replication configuration is 2 MB. - :param str role: The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that Amazon S3 assumes when replicating objects. - :param Sequence['BucketReplicationRule'] rules: A container for one or more replication rules. - """ BucketReplicationConfiguration._configure( lambda key, value: pulumi.set(__self__, key, value), role=role, @@ -2315,25 +1936,16 @@ def _configure( @property @pulumi.getter def role(self) -> str: - """ - The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that Amazon S3 assumes when replicating objects. - """ return pulumi.get(self, "role") @property @pulumi.getter def rules(self) -> Sequence['outputs.BucketReplicationRule']: - """ - A container for one or more replication rules. - """ return pulumi.get(self, "rules") @pulumi.output_type class BucketReplicationDestination(dict): - """ - Specifies which Amazon S3 bucket to store replicated objects in and their storage class. - """ @staticmethod def __key_warning(key: str): suggest = None @@ -2364,11 +1976,7 @@ def __init__(__self__, *, encryption_configuration: Optional['outputs.BucketEncryptionConfiguration'] = None, metrics: Optional['outputs.BucketMetrics'] = None, replication_time: Optional['outputs.BucketReplicationTime'] = None, - storage_class: Optional['BucketReplicationDestinationStorageClass'] = None): - """ - Specifies which Amazon S3 bucket to store replicated objects in and their storage class. - :param 'BucketReplicationDestinationStorageClass' storage_class: The storage class to use when replicating objects, such as S3 Standard or reduced redundancy. - """ + storage_class: Optional[str] = None): BucketReplicationDestination._configure( lambda key, value: pulumi.set(__self__, key, value), bucket=bucket, @@ -2388,7 +1996,7 @@ def _configure( encryption_configuration: Optional['outputs.BucketEncryptionConfiguration'] = None, metrics: Optional['outputs.BucketMetrics'] = None, replication_time: Optional['outputs.BucketReplicationTime'] = None, - storage_class: Optional['BucketReplicationDestinationStorageClass'] = None, + storage_class: Optional[str] = None, opts: Optional[pulumi.ResourceOptions]=None): _setter("bucket", bucket) if access_control_translation is not None: @@ -2436,18 +2044,12 @@ def replication_time(self) -> Optional['outputs.BucketReplicationTime']: @property @pulumi.getter(name="storageClass") - def storage_class(self) -> Optional['BucketReplicationDestinationStorageClass']: - """ - The storage class to use when replicating objects, such as S3 Standard or reduced redundancy. - """ + def storage_class(self) -> Optional[str]: return pulumi.get(self, "storage_class") @pulumi.output_type class BucketReplicationRule(dict): - """ - Specifies which Amazon S3 objects to replicate and where to store the replicas. - """ @staticmethod def __key_warning(key: str): suggest = None @@ -2469,19 +2071,13 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, destination: 'outputs.BucketReplicationDestination', - status: 'BucketReplicationRuleStatus', + status: str, delete_marker_replication: Optional['outputs.BucketDeleteMarkerReplication'] = None, filter: Optional['outputs.BucketReplicationRuleFilter'] = None, id: Optional[str] = None, prefix: Optional[str] = None, priority: Optional[int] = None, source_selection_criteria: Optional['outputs.BucketSourceSelectionCriteria'] = None): - """ - Specifies which Amazon S3 objects to replicate and where to store the replicas. - :param 'BucketReplicationRuleStatus' status: Specifies whether the rule is enabled. - :param str id: A unique identifier for the rule. - :param str prefix: An object key name prefix that identifies the object or objects to which the rule applies. - """ BucketReplicationRule._configure( lambda key, value: pulumi.set(__self__, key, value), destination=destination, @@ -2497,7 +2093,7 @@ def __init__(__self__, *, def _configure( _setter: Callable[[Any, Any], None], destination: 'outputs.BucketReplicationDestination', - status: 'BucketReplicationRuleStatus', + status: str, delete_marker_replication: Optional['outputs.BucketDeleteMarkerReplication'] = None, filter: Optional['outputs.BucketReplicationRuleFilter'] = None, id: Optional[str] = None, @@ -2527,10 +2123,7 @@ def destination(self) -> 'outputs.BucketReplicationDestination': @property @pulumi.getter - def status(self) -> 'BucketReplicationRuleStatus': - """ - Specifies whether the rule is enabled. - """ + def status(self) -> str: return pulumi.get(self, "status") @property @@ -2546,17 +2139,11 @@ def filter(self) -> Optional['outputs.BucketReplicationRuleFilter']: @property @pulumi.getter def id(self) -> Optional[str]: - """ - A unique identifier for the rule. - """ return pulumi.get(self, "id") @property @pulumi.getter def prefix(self) -> Optional[str]: - """ - An object key name prefix that identifies the object or objects to which the rule applies. - """ return pulumi.get(self, "prefix") @property @@ -2683,7 +2270,7 @@ def tag_filter(self) -> Optional['outputs.BucketTagFilter']: @pulumi.output_type class BucketReplicationTime(dict): def __init__(__self__, *, - status: 'BucketReplicationTimeStatus', + status: str, time: 'outputs.BucketReplicationTimeValue'): BucketReplicationTime._configure( lambda key, value: pulumi.set(__self__, key, value), @@ -2693,7 +2280,7 @@ def __init__(__self__, *, @staticmethod def _configure( _setter: Callable[[Any, Any], None], - status: 'BucketReplicationTimeStatus', + status: str, time: 'outputs.BucketReplicationTimeValue', opts: Optional[pulumi.ResourceOptions]=None): _setter("status", status) @@ -2701,7 +2288,7 @@ def _configure( @property @pulumi.getter - def status(self) -> 'BucketReplicationTimeStatus': + def status(self) -> str: return pulumi.get(self, "status") @property @@ -2733,9 +2320,6 @@ def minutes(self) -> int: @pulumi.output_type class BucketRoutingRule(dict): - """ - Specifies the redirect behavior and when a redirect is applied. - """ @staticmethod def __key_warning(key: str): suggest = None @@ -2758,10 +2342,6 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, redirect_rule: 'outputs.BucketRedirectRule', routing_rule_condition: Optional['outputs.BucketRoutingRuleCondition'] = None): - """ - Specifies the redirect behavior and when a redirect is applied. - :param 'BucketRedirectRule' redirect_rule: Container for redirect information. You can redirect requests to another host, to another page, or with another protocol. In the event of an error, you can specify a different error code to return. - """ BucketRoutingRule._configure( lambda key, value: pulumi.set(__self__, key, value), redirect_rule=redirect_rule, @@ -2780,9 +2360,6 @@ def _configure( @property @pulumi.getter(name="redirectRule") def redirect_rule(self) -> 'outputs.BucketRedirectRule': - """ - Container for redirect information. You can redirect requests to another host, to another page, or with another protocol. In the event of an error, you can specify a different error code to return. - """ return pulumi.get(self, "redirect_rule") @property @@ -2793,9 +2370,6 @@ def routing_rule_condition(self) -> Optional['outputs.BucketRoutingRuleCondition @pulumi.output_type class BucketRoutingRuleCondition(dict): - """ - A container for describing a condition that must be met for the specified redirect to apply.You must specify at least one of HttpErrorCodeReturnedEquals and KeyPrefixEquals - """ @staticmethod def __key_warning(key: str): suggest = None @@ -2818,11 +2392,6 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, http_error_code_returned_equals: Optional[str] = None, key_prefix_equals: Optional[str] = None): - """ - A container for describing a condition that must be met for the specified redirect to apply.You must specify at least one of HttpErrorCodeReturnedEquals and KeyPrefixEquals - :param str http_error_code_returned_equals: The HTTP error code when the redirect is applied. - :param str key_prefix_equals: The object key name prefix when the redirect is applied. - """ BucketRoutingRuleCondition._configure( lambda key, value: pulumi.set(__self__, key, value), http_error_code_returned_equals=http_error_code_returned_equals, @@ -2842,25 +2411,16 @@ def _configure( @property @pulumi.getter(name="httpErrorCodeReturnedEquals") def http_error_code_returned_equals(self) -> Optional[str]: - """ - The HTTP error code when the redirect is applied. - """ return pulumi.get(self, "http_error_code_returned_equals") @property @pulumi.getter(name="keyPrefixEquals") def key_prefix_equals(self) -> Optional[str]: - """ - The object key name prefix when the redirect is applied. - """ return pulumi.get(self, "key_prefix_equals") @pulumi.output_type class BucketRule(dict): - """ - You must specify at least one of the following properties: AbortIncompleteMultipartUpload, ExpirationDate, ExpirationInDays, NoncurrentVersionExpirationInDays, NoncurrentVersionTransition, NoncurrentVersionTransitions, Transition, or Transitions. - """ @staticmethod def __key_warning(key: str): suggest = None @@ -2899,7 +2459,7 @@ def get(self, key: str, default = None) -> Any: return super().get(key, default) def __init__(__self__, *, - status: 'BucketRuleStatus', + status: str, abort_incomplete_multipart_upload: Optional['outputs.BucketAbortIncompleteMultipartUpload'] = None, expiration_date: Optional[str] = None, expiration_in_days: Optional[int] = None, @@ -2909,15 +2469,12 @@ def __init__(__self__, *, noncurrent_version_expiration_in_days: Optional[int] = None, noncurrent_version_transition: Optional['outputs.BucketNoncurrentVersionTransition'] = None, noncurrent_version_transitions: Optional[Sequence['outputs.BucketNoncurrentVersionTransition']] = None, - object_size_greater_than: Optional[str] = None, - object_size_less_than: Optional[str] = None, + object_size_greater_than: Optional[int] = None, + object_size_less_than: Optional[int] = None, prefix: Optional[str] = None, tag_filters: Optional[Sequence['outputs.BucketTagFilter']] = None, transition: Optional['outputs.BucketTransition'] = None, transitions: Optional[Sequence['outputs.BucketTransition']] = None): - """ - You must specify at least one of the following properties: AbortIncompleteMultipartUpload, ExpirationDate, ExpirationInDays, NoncurrentVersionExpirationInDays, NoncurrentVersionTransition, NoncurrentVersionTransitions, Transition, or Transitions. - """ BucketRule._configure( lambda key, value: pulumi.set(__self__, key, value), status=status, @@ -2940,7 +2497,7 @@ def __init__(__self__, *, @staticmethod def _configure( _setter: Callable[[Any, Any], None], - status: 'BucketRuleStatus', + status: str, abort_incomplete_multipart_upload: Optional['outputs.BucketAbortIncompleteMultipartUpload'] = None, expiration_date: Optional[str] = None, expiration_in_days: Optional[int] = None, @@ -2950,8 +2507,8 @@ def _configure( noncurrent_version_expiration_in_days: Optional[int] = None, noncurrent_version_transition: Optional['outputs.BucketNoncurrentVersionTransition'] = None, noncurrent_version_transitions: Optional[Sequence['outputs.BucketNoncurrentVersionTransition']] = None, - object_size_greater_than: Optional[str] = None, - object_size_less_than: Optional[str] = None, + object_size_greater_than: Optional[int] = None, + object_size_less_than: Optional[int] = None, prefix: Optional[str] = None, tag_filters: Optional[Sequence['outputs.BucketTagFilter']] = None, transition: Optional['outputs.BucketTransition'] = None, @@ -2991,7 +2548,7 @@ def _configure( @property @pulumi.getter - def status(self) -> 'BucketRuleStatus': + def status(self) -> str: return pulumi.get(self, "status") @property @@ -3041,12 +2598,12 @@ def noncurrent_version_transitions(self) -> Optional[Sequence['outputs.BucketNon @property @pulumi.getter(name="objectSizeGreaterThan") - def object_size_greater_than(self) -> Optional[str]: + def object_size_greater_than(self) -> Optional[int]: return pulumi.get(self, "object_size_greater_than") @property @pulumi.getter(name="objectSizeLessThan") - def object_size_less_than(self) -> Optional[str]: + def object_size_less_than(self) -> Optional[int]: return pulumi.get(self, "object_size_less_than") @property @@ -3072,14 +2629,8 @@ def transitions(self) -> Optional[Sequence['outputs.BucketTransition']]: @pulumi.output_type class BucketS3KeyFilter(dict): - """ - A container for object key name prefix and suffix filtering rules. - """ def __init__(__self__, *, rules: Sequence['outputs.BucketFilterRule']): - """ - A container for object key name prefix and suffix filtering rules. - """ BucketS3KeyFilter._configure( lambda key, value: pulumi.set(__self__, key, value), rules=rules, @@ -3099,9 +2650,6 @@ def rules(self) -> Sequence['outputs.BucketFilterRule']: @pulumi.output_type class BucketServerSideEncryptionByDefault(dict): - """ - Specifies the default server-side encryption to apply to new objects in the bucket. If a PUT Object request doesn't specify any server-side encryption, this default encryption will be applied. - """ @staticmethod def __key_warning(key: str): suggest = None @@ -3122,12 +2670,8 @@ def get(self, key: str, default = None) -> Any: return super().get(key, default) def __init__(__self__, *, - sse_algorithm: 'BucketServerSideEncryptionByDefaultSseAlgorithm', + sse_algorithm: str, kms_master_key_id: Optional[str] = None): - """ - Specifies the default server-side encryption to apply to new objects in the bucket. If a PUT Object request doesn't specify any server-side encryption, this default encryption will be applied. - :param str kms_master_key_id: "KMSMasterKeyID" can only be used when you set the value of SSEAlgorithm as aws:kms or aws:kms:dsse. - """ BucketServerSideEncryptionByDefault._configure( lambda key, value: pulumi.set(__self__, key, value), sse_algorithm=sse_algorithm, @@ -3136,7 +2680,7 @@ def __init__(__self__, *, @staticmethod def _configure( _setter: Callable[[Any, Any], None], - sse_algorithm: 'BucketServerSideEncryptionByDefaultSseAlgorithm', + sse_algorithm: str, kms_master_key_id: Optional[str] = None, opts: Optional[pulumi.ResourceOptions]=None): _setter("sse_algorithm", sse_algorithm) @@ -3145,23 +2689,17 @@ def _configure( @property @pulumi.getter(name="sseAlgorithm") - def sse_algorithm(self) -> 'BucketServerSideEncryptionByDefaultSseAlgorithm': + def sse_algorithm(self) -> str: return pulumi.get(self, "sse_algorithm") @property @pulumi.getter(name="kmsMasterKeyId") def kms_master_key_id(self) -> Optional[str]: - """ - "KMSMasterKeyID" can only be used when you set the value of SSEAlgorithm as aws:kms or aws:kms:dsse. - """ return pulumi.get(self, "kms_master_key_id") @pulumi.output_type class BucketServerSideEncryptionRule(dict): - """ - Specifies the default server-side encryption configuration. - """ @staticmethod def __key_warning(key: str): suggest = None @@ -3184,10 +2722,6 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, bucket_key_enabled: Optional[bool] = None, server_side_encryption_by_default: Optional['outputs.BucketServerSideEncryptionByDefault'] = None): - """ - Specifies the default server-side encryption configuration. - :param bool bucket_key_enabled: Specifies whether Amazon S3 should use an S3 Bucket Key with server-side encryption using KMS (SSE-KMS) for new objects in the bucket. Existing objects are not affected. Setting the BucketKeyEnabled element to true causes Amazon S3 to use an S3 Bucket Key. By default, S3 Bucket Key is not enabled. - """ BucketServerSideEncryptionRule._configure( lambda key, value: pulumi.set(__self__, key, value), bucket_key_enabled=bucket_key_enabled, @@ -3207,9 +2741,6 @@ def _configure( @property @pulumi.getter(name="bucketKeyEnabled") def bucket_key_enabled(self) -> Optional[bool]: - """ - Specifies whether Amazon S3 should use an S3 Bucket Key with server-side encryption using KMS (SSE-KMS) for new objects in the bucket. Existing objects are not affected. Setting the BucketKeyEnabled element to true causes Amazon S3 to use an S3 Bucket Key. By default, S3 Bucket Key is not enabled. - """ return pulumi.get(self, "bucket_key_enabled") @property @@ -3220,9 +2751,6 @@ def server_side_encryption_by_default(self) -> Optional['outputs.BucketServerSid @pulumi.output_type class BucketSourceSelectionCriteria(dict): - """ - A container that describes additional filters for identifying the source objects that you want to replicate. - """ @staticmethod def __key_warning(key: str): suggest = None @@ -3245,11 +2773,6 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, replica_modifications: Optional['outputs.BucketReplicaModifications'] = None, sse_kms_encrypted_objects: Optional['outputs.BucketSseKmsEncryptedObjects'] = None): - """ - A container that describes additional filters for identifying the source objects that you want to replicate. - :param 'BucketReplicaModifications' replica_modifications: A filter that you can specify for selection for modifications on replicas. - :param 'BucketSseKmsEncryptedObjects' sse_kms_encrypted_objects: A container for filter information for the selection of Amazon S3 objects encrypted with AWS KMS. - """ BucketSourceSelectionCriteria._configure( lambda key, value: pulumi.set(__self__, key, value), replica_modifications=replica_modifications, @@ -3269,31 +2792,18 @@ def _configure( @property @pulumi.getter(name="replicaModifications") def replica_modifications(self) -> Optional['outputs.BucketReplicaModifications']: - """ - A filter that you can specify for selection for modifications on replicas. - """ return pulumi.get(self, "replica_modifications") @property @pulumi.getter(name="sseKmsEncryptedObjects") def sse_kms_encrypted_objects(self) -> Optional['outputs.BucketSseKmsEncryptedObjects']: - """ - A container for filter information for the selection of Amazon S3 objects encrypted with AWS KMS. - """ return pulumi.get(self, "sse_kms_encrypted_objects") @pulumi.output_type class BucketSseKmsEncryptedObjects(dict): - """ - A container for filter information for the selection of S3 objects encrypted with AWS KMS. - """ def __init__(__self__, *, - status: 'BucketSseKmsEncryptedObjectsStatus'): - """ - A container for filter information for the selection of S3 objects encrypted with AWS KMS. - :param 'BucketSseKmsEncryptedObjectsStatus' status: Specifies whether Amazon S3 replicates objects created with server-side encryption using a customer master key (CMK) stored in AWS Key Management Service. - """ + status: str): BucketSseKmsEncryptedObjects._configure( lambda key, value: pulumi.set(__self__, key, value), status=status, @@ -3301,24 +2811,18 @@ def __init__(__self__, *, @staticmethod def _configure( _setter: Callable[[Any, Any], None], - status: 'BucketSseKmsEncryptedObjectsStatus', + status: str, opts: Optional[pulumi.ResourceOptions]=None): _setter("status", status) @property @pulumi.getter - def status(self) -> 'BucketSseKmsEncryptedObjectsStatus': - """ - Specifies whether Amazon S3 replicates objects created with server-side encryption using a customer master key (CMK) stored in AWS Key Management Service. - """ + def status(self) -> str: return pulumi.get(self, "status") @pulumi.output_type class BucketStorageClassAnalysis(dict): - """ - Specifies data related to access patterns to be collected and made available to analyze the tradeoffs between different storage classes for an Amazon S3 bucket. - """ @staticmethod def __key_warning(key: str): suggest = None @@ -3338,9 +2842,6 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, data_export: Optional['outputs.BucketDataExport'] = None): - """ - Specifies data related to access patterns to be collected and made available to analyze the tradeoffs between different storage classes for an Amazon S3 bucket. - """ BucketStorageClassAnalysis._configure( lambda key, value: pulumi.set(__self__, key, value), data_export=data_export, @@ -3391,15 +2892,9 @@ def value(self) -> str: @pulumi.output_type class BucketTagFilter(dict): - """ - Tags to use to identify a subset of objects for an Amazon S3 bucket. - """ def __init__(__self__, *, key: str, value: str): - """ - Tags to use to identify a subset of objects for an Amazon S3 bucket. - """ BucketTagFilter._configure( lambda key, value: pulumi.set(__self__, key, value), key=key, @@ -3445,12 +2940,8 @@ def get(self, key: str, default = None) -> Any: return super().get(key, default) def __init__(__self__, *, - access_tier: 'BucketTieringAccessTier', + access_tier: str, days: int): - """ - :param 'BucketTieringAccessTier' access_tier: S3 Intelligent-Tiering access tier. See Storage class for automatically optimizing frequently and infrequently accessed objects for a list of access tiers in the S3 Intelligent-Tiering storage class. - :param int days: The number of consecutive days of no access after which an object will be eligible to be transitioned to the corresponding tier. The minimum number of days specified for Archive Access tier must be at least 90 days and Deep Archive Access tier must be at least 180 days. The maximum can be up to 2 years (730 days). - """ BucketTiering._configure( lambda key, value: pulumi.set(__self__, key, value), access_tier=access_tier, @@ -3459,7 +2950,7 @@ def __init__(__self__, *, @staticmethod def _configure( _setter: Callable[[Any, Any], None], - access_tier: 'BucketTieringAccessTier', + access_tier: str, days: int, opts: Optional[pulumi.ResourceOptions]=None): _setter("access_tier", access_tier) @@ -3467,36 +2958,21 @@ def _configure( @property @pulumi.getter(name="accessTier") - def access_tier(self) -> 'BucketTieringAccessTier': - """ - S3 Intelligent-Tiering access tier. See Storage class for automatically optimizing frequently and infrequently accessed objects for a list of access tiers in the S3 Intelligent-Tiering storage class. - """ + def access_tier(self) -> str: return pulumi.get(self, "access_tier") @property @pulumi.getter def days(self) -> int: - """ - The number of consecutive days of no access after which an object will be eligible to be transitioned to the corresponding tier. The minimum number of days specified for Archive Access tier must be at least 90 days and Deep Archive Access tier must be at least 180 days. The maximum can be up to 2 years (730 days). - """ return pulumi.get(self, "days") @pulumi.output_type class BucketTopicConfiguration(dict): - """ - The topic to which notifications are sent and the events for which notifications are generated. - """ def __init__(__self__, *, event: str, topic: str, filter: Optional['outputs.BucketNotificationFilter'] = None): - """ - The topic to which notifications are sent and the events for which notifications are generated. - :param str event: The Amazon S3 bucket event about which to send notifications. - :param str topic: The Amazon Resource Name (ARN) of the Amazon SNS topic to which Amazon S3 publishes a message when it detects events of the specified type. - :param 'BucketNotificationFilter' filter: The filtering rules that determine for which objects to send notifications. - """ BucketTopicConfiguration._configure( lambda key, value: pulumi.set(__self__, key, value), event=event, @@ -3518,33 +2994,21 @@ def _configure( @property @pulumi.getter def event(self) -> str: - """ - The Amazon S3 bucket event about which to send notifications. - """ return pulumi.get(self, "event") @property @pulumi.getter def topic(self) -> str: - """ - The Amazon Resource Name (ARN) of the Amazon SNS topic to which Amazon S3 publishes a message when it detects events of the specified type. - """ return pulumi.get(self, "topic") @property @pulumi.getter def filter(self) -> Optional['outputs.BucketNotificationFilter']: - """ - The filtering rules that determine for which objects to send notifications. - """ return pulumi.get(self, "filter") @pulumi.output_type class BucketTransition(dict): - """ - You must specify at least one of "TransitionDate" and "TransitionInDays" - """ @staticmethod def __key_warning(key: str): suggest = None @@ -3567,12 +3031,9 @@ def get(self, key: str, default = None) -> Any: return super().get(key, default) def __init__(__self__, *, - storage_class: 'BucketTransitionStorageClass', + storage_class: str, transition_date: Optional[str] = None, transition_in_days: Optional[int] = None): - """ - You must specify at least one of "TransitionDate" and "TransitionInDays" - """ BucketTransition._configure( lambda key, value: pulumi.set(__self__, key, value), storage_class=storage_class, @@ -3582,7 +3043,7 @@ def __init__(__self__, *, @staticmethod def _configure( _setter: Callable[[Any, Any], None], - storage_class: 'BucketTransitionStorageClass', + storage_class: str, transition_date: Optional[str] = None, transition_in_days: Optional[int] = None, opts: Optional[pulumi.ResourceOptions]=None): @@ -3594,7 +3055,7 @@ def _configure( @property @pulumi.getter(name="storageClass") - def storage_class(self) -> 'BucketTransitionStorageClass': + def storage_class(self) -> str: return pulumi.get(self, "storage_class") @property @@ -3610,15 +3071,8 @@ def transition_in_days(self) -> Optional[int]: @pulumi.output_type class BucketVersioningConfiguration(dict): - """ - Describes the versioning state of an Amazon S3 bucket. - """ def __init__(__self__, *, - status: 'BucketVersioningConfigurationStatus'): - """ - Describes the versioning state of an Amazon S3 bucket. - :param 'BucketVersioningConfigurationStatus' status: The versioning state of the bucket. - """ + status: str): BucketVersioningConfiguration._configure( lambda key, value: pulumi.set(__self__, key, value), status=status, @@ -3626,24 +3080,18 @@ def __init__(__self__, *, @staticmethod def _configure( _setter: Callable[[Any, Any], None], - status: 'BucketVersioningConfigurationStatus', + status: str, opts: Optional[pulumi.ResourceOptions]=None): _setter("status", status) @property @pulumi.getter - def status(self) -> 'BucketVersioningConfigurationStatus': - """ - The versioning state of the bucket. - """ + def status(self) -> str: return pulumi.get(self, "status") @pulumi.output_type class BucketWebsiteConfiguration(dict): - """ - Specifies website configuration parameters for an Amazon S3 bucket. - """ @staticmethod def __key_warning(key: str): suggest = None @@ -3672,11 +3120,6 @@ def __init__(__self__, *, index_document: Optional[str] = None, redirect_all_requests_to: Optional['outputs.BucketRedirectAllRequestsTo'] = None, routing_rules: Optional[Sequence['outputs.BucketRoutingRule']] = None): - """ - Specifies website configuration parameters for an Amazon S3 bucket. - :param str error_document: The name of the error document for the website. - :param str index_document: The name of the index document for the website. - """ BucketWebsiteConfiguration._configure( lambda key, value: pulumi.set(__self__, key, value), error_document=error_document, @@ -3704,17 +3147,11 @@ def _configure( @property @pulumi.getter(name="errorDocument") def error_document(self) -> Optional[str]: - """ - The name of the error document for the website. - """ return pulumi.get(self, "error_document") @property @pulumi.getter(name="indexDocument") def index_document(self) -> Optional[str]: - """ - The name of the index document for the website. - """ return pulumi.get(self, "index_document") @property diff --git a/sdk/python/pulumi_aws_native/sagemaker/_inputs.py b/sdk/python/pulumi_aws_native/sagemaker/_inputs.py index 5f7c5961ca..ca4ee187e9 100644 --- a/sdk/python/pulumi_aws_native/sagemaker/_inputs.py +++ b/sdk/python/pulumi_aws_native/sagemaker/_inputs.py @@ -686,12 +686,14 @@ def __init__(__self__, *, data_captured_destination_s3_uri: pulumi.Input[str], dataset_format: pulumi.Input['DataQualityJobDefinitionDatasetFormatArgs'], local_path: pulumi.Input[str], + exclude_features_attribute: Optional[pulumi.Input[str]] = None, s3_data_distribution_type: Optional[pulumi.Input['DataQualityJobDefinitionBatchTransformInputS3DataDistributionType']] = None, s3_input_mode: Optional[pulumi.Input['DataQualityJobDefinitionBatchTransformInputS3InputMode']] = None): """ The batch transform input for a monitoring job. :param pulumi.Input[str] data_captured_destination_s3_uri: A URI that identifies the Amazon S3 storage location where Batch Transform Job captures data. :param pulumi.Input[str] local_path: Path to the filesystem where the endpoint data is available to the container. + :param pulumi.Input[str] exclude_features_attribute: Indexes or names of the features to be excluded from analysis :param pulumi.Input['DataQualityJobDefinitionBatchTransformInputS3DataDistributionType'] s3_data_distribution_type: Whether input data distributed in Amazon S3 is fully replicated or sharded by an S3 key. Defauts to FullyReplicated :param pulumi.Input['DataQualityJobDefinitionBatchTransformInputS3InputMode'] s3_input_mode: Whether the Pipe or File is used as the input mode for transfering data for the monitoring job. Pipe mode is recommended for large datasets. File mode is useful for small files that fit in memory. Defaults to File. """ @@ -700,6 +702,7 @@ def __init__(__self__, *, data_captured_destination_s3_uri=data_captured_destination_s3_uri, dataset_format=dataset_format, local_path=local_path, + exclude_features_attribute=exclude_features_attribute, s3_data_distribution_type=s3_data_distribution_type, s3_input_mode=s3_input_mode, ) @@ -709,12 +712,15 @@ def _configure( data_captured_destination_s3_uri: pulumi.Input[str], dataset_format: pulumi.Input['DataQualityJobDefinitionDatasetFormatArgs'], local_path: pulumi.Input[str], + exclude_features_attribute: Optional[pulumi.Input[str]] = None, s3_data_distribution_type: Optional[pulumi.Input['DataQualityJobDefinitionBatchTransformInputS3DataDistributionType']] = None, s3_input_mode: Optional[pulumi.Input['DataQualityJobDefinitionBatchTransformInputS3InputMode']] = None, opts: Optional[pulumi.ResourceOptions]=None): _setter("data_captured_destination_s3_uri", data_captured_destination_s3_uri) _setter("dataset_format", dataset_format) _setter("local_path", local_path) + if exclude_features_attribute is not None: + _setter("exclude_features_attribute", exclude_features_attribute) if s3_data_distribution_type is not None: _setter("s3_data_distribution_type", s3_data_distribution_type) if s3_input_mode is not None: @@ -753,6 +759,18 @@ def local_path(self) -> pulumi.Input[str]: def local_path(self, value: pulumi.Input[str]): pulumi.set(self, "local_path", value) + @property + @pulumi.getter(name="excludeFeaturesAttribute") + def exclude_features_attribute(self) -> Optional[pulumi.Input[str]]: + """ + Indexes or names of the features to be excluded from analysis + """ + return pulumi.get(self, "exclude_features_attribute") + + @exclude_features_attribute.setter + def exclude_features_attribute(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "exclude_features_attribute", value) + @property @pulumi.getter(name="s3DataDistributionType") def s3_data_distribution_type(self) -> Optional[pulumi.Input['DataQualityJobDefinitionBatchTransformInputS3DataDistributionType']]: @@ -1212,11 +1230,13 @@ class DataQualityJobDefinitionEndpointInputArgs: def __init__(__self__, *, endpoint_name: pulumi.Input[str], local_path: pulumi.Input[str], + exclude_features_attribute: Optional[pulumi.Input[str]] = None, s3_data_distribution_type: Optional[pulumi.Input['DataQualityJobDefinitionEndpointInputS3DataDistributionType']] = None, s3_input_mode: Optional[pulumi.Input['DataQualityJobDefinitionEndpointInputS3InputMode']] = None): """ The endpoint for a monitoring job. :param pulumi.Input[str] local_path: Path to the filesystem where the endpoint data is available to the container. + :param pulumi.Input[str] exclude_features_attribute: Indexes or names of the features to be excluded from analysis :param pulumi.Input['DataQualityJobDefinitionEndpointInputS3DataDistributionType'] s3_data_distribution_type: Whether input data distributed in Amazon S3 is fully replicated or sharded by an S3 key. Defauts to FullyReplicated :param pulumi.Input['DataQualityJobDefinitionEndpointInputS3InputMode'] s3_input_mode: Whether the Pipe or File is used as the input mode for transfering data for the monitoring job. Pipe mode is recommended for large datasets. File mode is useful for small files that fit in memory. Defaults to File. """ @@ -1224,6 +1244,7 @@ def __init__(__self__, *, lambda key, value: pulumi.set(__self__, key, value), endpoint_name=endpoint_name, local_path=local_path, + exclude_features_attribute=exclude_features_attribute, s3_data_distribution_type=s3_data_distribution_type, s3_input_mode=s3_input_mode, ) @@ -1232,11 +1253,14 @@ def _configure( _setter: Callable[[Any, Any], None], endpoint_name: pulumi.Input[str], local_path: pulumi.Input[str], + exclude_features_attribute: Optional[pulumi.Input[str]] = None, s3_data_distribution_type: Optional[pulumi.Input['DataQualityJobDefinitionEndpointInputS3DataDistributionType']] = None, s3_input_mode: Optional[pulumi.Input['DataQualityJobDefinitionEndpointInputS3InputMode']] = None, opts: Optional[pulumi.ResourceOptions]=None): _setter("endpoint_name", endpoint_name) _setter("local_path", local_path) + if exclude_features_attribute is not None: + _setter("exclude_features_attribute", exclude_features_attribute) if s3_data_distribution_type is not None: _setter("s3_data_distribution_type", s3_data_distribution_type) if s3_input_mode is not None: @@ -1263,6 +1287,18 @@ def local_path(self) -> pulumi.Input[str]: def local_path(self, value: pulumi.Input[str]): pulumi.set(self, "local_path", value) + @property + @pulumi.getter(name="excludeFeaturesAttribute") + def exclude_features_attribute(self) -> Optional[pulumi.Input[str]]: + """ + Indexes or names of the features to be excluded from analysis + """ + return pulumi.get(self, "exclude_features_attribute") + + @exclude_features_attribute.setter + def exclude_features_attribute(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "exclude_features_attribute", value) + @property @pulumi.getter(name="s3DataDistributionType") def s3_data_distribution_type(self) -> Optional[pulumi.Input['DataQualityJobDefinitionEndpointInputS3DataDistributionType']]: @@ -12780,12 +12816,14 @@ def __init__(__self__, *, data_captured_destination_s3_uri: pulumi.Input[str], dataset_format: pulumi.Input['MonitoringScheduleDatasetFormatArgs'], local_path: pulumi.Input[str], + exclude_features_attribute: Optional[pulumi.Input[str]] = None, s3_data_distribution_type: Optional[pulumi.Input['MonitoringScheduleBatchTransformInputS3DataDistributionType']] = None, s3_input_mode: Optional[pulumi.Input['MonitoringScheduleBatchTransformInputS3InputMode']] = None): """ The batch transform input for a monitoring job. :param pulumi.Input[str] data_captured_destination_s3_uri: A URI that identifies the Amazon S3 storage location where Batch Transform Job captures data. :param pulumi.Input[str] local_path: Path to the filesystem where the endpoint data is available to the container. + :param pulumi.Input[str] exclude_features_attribute: Indexes or names of the features to be excluded from analysis :param pulumi.Input['MonitoringScheduleBatchTransformInputS3DataDistributionType'] s3_data_distribution_type: Whether input data distributed in Amazon S3 is fully replicated or sharded by an S3 key. Defauts to FullyReplicated :param pulumi.Input['MonitoringScheduleBatchTransformInputS3InputMode'] s3_input_mode: Whether the Pipe or File is used as the input mode for transfering data for the monitoring job. Pipe mode is recommended for large datasets. File mode is useful for small files that fit in memory. Defaults to File. """ @@ -12794,6 +12832,7 @@ def __init__(__self__, *, data_captured_destination_s3_uri=data_captured_destination_s3_uri, dataset_format=dataset_format, local_path=local_path, + exclude_features_attribute=exclude_features_attribute, s3_data_distribution_type=s3_data_distribution_type, s3_input_mode=s3_input_mode, ) @@ -12803,12 +12842,15 @@ def _configure( data_captured_destination_s3_uri: pulumi.Input[str], dataset_format: pulumi.Input['MonitoringScheduleDatasetFormatArgs'], local_path: pulumi.Input[str], + exclude_features_attribute: Optional[pulumi.Input[str]] = None, s3_data_distribution_type: Optional[pulumi.Input['MonitoringScheduleBatchTransformInputS3DataDistributionType']] = None, s3_input_mode: Optional[pulumi.Input['MonitoringScheduleBatchTransformInputS3InputMode']] = None, opts: Optional[pulumi.ResourceOptions]=None): _setter("data_captured_destination_s3_uri", data_captured_destination_s3_uri) _setter("dataset_format", dataset_format) _setter("local_path", local_path) + if exclude_features_attribute is not None: + _setter("exclude_features_attribute", exclude_features_attribute) if s3_data_distribution_type is not None: _setter("s3_data_distribution_type", s3_data_distribution_type) if s3_input_mode is not None: @@ -12847,6 +12889,18 @@ def local_path(self) -> pulumi.Input[str]: def local_path(self, value: pulumi.Input[str]): pulumi.set(self, "local_path", value) + @property + @pulumi.getter(name="excludeFeaturesAttribute") + def exclude_features_attribute(self) -> Optional[pulumi.Input[str]]: + """ + Indexes or names of the features to be excluded from analysis + """ + return pulumi.get(self, "exclude_features_attribute") + + @exclude_features_attribute.setter + def exclude_features_attribute(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "exclude_features_attribute", value) + @property @pulumi.getter(name="s3DataDistributionType") def s3_data_distribution_type(self) -> Optional[pulumi.Input['MonitoringScheduleBatchTransformInputS3DataDistributionType']]: @@ -13159,11 +13213,13 @@ class MonitoringScheduleEndpointInputArgs: def __init__(__self__, *, endpoint_name: pulumi.Input[str], local_path: pulumi.Input[str], + exclude_features_attribute: Optional[pulumi.Input[str]] = None, s3_data_distribution_type: Optional[pulumi.Input['MonitoringScheduleEndpointInputS3DataDistributionType']] = None, s3_input_mode: Optional[pulumi.Input['MonitoringScheduleEndpointInputS3InputMode']] = None): """ The endpoint for a monitoring job. :param pulumi.Input[str] local_path: Path to the filesystem where the endpoint data is available to the container. + :param pulumi.Input[str] exclude_features_attribute: Indexes or names of the features to be excluded from analysis :param pulumi.Input['MonitoringScheduleEndpointInputS3DataDistributionType'] s3_data_distribution_type: Whether input data distributed in Amazon S3 is fully replicated or sharded by an S3 key. Defauts to FullyReplicated :param pulumi.Input['MonitoringScheduleEndpointInputS3InputMode'] s3_input_mode: Whether the Pipe or File is used as the input mode for transfering data for the monitoring job. Pipe mode is recommended for large datasets. File mode is useful for small files that fit in memory. Defaults to File. """ @@ -13171,6 +13227,7 @@ def __init__(__self__, *, lambda key, value: pulumi.set(__self__, key, value), endpoint_name=endpoint_name, local_path=local_path, + exclude_features_attribute=exclude_features_attribute, s3_data_distribution_type=s3_data_distribution_type, s3_input_mode=s3_input_mode, ) @@ -13179,11 +13236,14 @@ def _configure( _setter: Callable[[Any, Any], None], endpoint_name: pulumi.Input[str], local_path: pulumi.Input[str], + exclude_features_attribute: Optional[pulumi.Input[str]] = None, s3_data_distribution_type: Optional[pulumi.Input['MonitoringScheduleEndpointInputS3DataDistributionType']] = None, s3_input_mode: Optional[pulumi.Input['MonitoringScheduleEndpointInputS3InputMode']] = None, opts: Optional[pulumi.ResourceOptions]=None): _setter("endpoint_name", endpoint_name) _setter("local_path", local_path) + if exclude_features_attribute is not None: + _setter("exclude_features_attribute", exclude_features_attribute) if s3_data_distribution_type is not None: _setter("s3_data_distribution_type", s3_data_distribution_type) if s3_input_mode is not None: @@ -13210,6 +13270,18 @@ def local_path(self) -> pulumi.Input[str]: def local_path(self, value: pulumi.Input[str]): pulumi.set(self, "local_path", value) + @property + @pulumi.getter(name="excludeFeaturesAttribute") + def exclude_features_attribute(self) -> Optional[pulumi.Input[str]]: + """ + Indexes or names of the features to be excluded from analysis + """ + return pulumi.get(self, "exclude_features_attribute") + + @exclude_features_attribute.setter + def exclude_features_attribute(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "exclude_features_attribute", value) + @property @pulumi.getter(name="s3DataDistributionType") def s3_data_distribution_type(self) -> Optional[pulumi.Input['MonitoringScheduleEndpointInputS3DataDistributionType']]: @@ -13946,27 +14018,39 @@ def s3_upload_mode(self, value: Optional[pulumi.Input['MonitoringScheduleS3Outpu @pulumi.input_type class MonitoringScheduleScheduleConfigArgs: def __init__(__self__, *, - schedule_expression: pulumi.Input[str]): + schedule_expression: pulumi.Input[str], + data_analysis_end_time: Optional[pulumi.Input[str]] = None, + data_analysis_start_time: Optional[pulumi.Input[str]] = None): """ Configuration details about the monitoring schedule. - :param pulumi.Input[str] schedule_expression: A cron expression that describes details about the monitoring schedule. + :param pulumi.Input[str] schedule_expression: A cron expression or 'NOW' that describes details about the monitoring schedule. + :param pulumi.Input[str] data_analysis_end_time: Data Analysis end time, e.g. PT0H + :param pulumi.Input[str] data_analysis_start_time: Data Analysis start time, e.g. -PT1H """ MonitoringScheduleScheduleConfigArgs._configure( lambda key, value: pulumi.set(__self__, key, value), schedule_expression=schedule_expression, + data_analysis_end_time=data_analysis_end_time, + data_analysis_start_time=data_analysis_start_time, ) @staticmethod def _configure( _setter: Callable[[Any, Any], None], schedule_expression: pulumi.Input[str], + data_analysis_end_time: Optional[pulumi.Input[str]] = None, + data_analysis_start_time: Optional[pulumi.Input[str]] = None, opts: Optional[pulumi.ResourceOptions]=None): _setter("schedule_expression", schedule_expression) + if data_analysis_end_time is not None: + _setter("data_analysis_end_time", data_analysis_end_time) + if data_analysis_start_time is not None: + _setter("data_analysis_start_time", data_analysis_start_time) @property @pulumi.getter(name="scheduleExpression") def schedule_expression(self) -> pulumi.Input[str]: """ - A cron expression that describes details about the monitoring schedule. + A cron expression or 'NOW' that describes details about the monitoring schedule. """ return pulumi.get(self, "schedule_expression") @@ -13974,6 +14058,30 @@ def schedule_expression(self) -> pulumi.Input[str]: def schedule_expression(self, value: pulumi.Input[str]): pulumi.set(self, "schedule_expression", value) + @property + @pulumi.getter(name="dataAnalysisEndTime") + def data_analysis_end_time(self) -> Optional[pulumi.Input[str]]: + """ + Data Analysis end time, e.g. PT0H + """ + return pulumi.get(self, "data_analysis_end_time") + + @data_analysis_end_time.setter + def data_analysis_end_time(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "data_analysis_end_time", value) + + @property + @pulumi.getter(name="dataAnalysisStartTime") + def data_analysis_start_time(self) -> Optional[pulumi.Input[str]]: + """ + Data Analysis start time, e.g. -PT1H + """ + return pulumi.get(self, "data_analysis_start_time") + + @data_analysis_start_time.setter + def data_analysis_start_time(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "data_analysis_start_time", value) + @pulumi.input_type class MonitoringScheduleStatisticsResourceArgs: diff --git a/sdk/python/pulumi_aws_native/sagemaker/outputs.py b/sdk/python/pulumi_aws_native/sagemaker/outputs.py index f9640642a8..fc1f76bc5d 100644 --- a/sdk/python/pulumi_aws_native/sagemaker/outputs.py +++ b/sdk/python/pulumi_aws_native/sagemaker/outputs.py @@ -723,6 +723,8 @@ def __key_warning(key: str): suggest = "dataset_format" elif key == "localPath": suggest = "local_path" + elif key == "excludeFeaturesAttribute": + suggest = "exclude_features_attribute" elif key == "s3DataDistributionType": suggest = "s3_data_distribution_type" elif key == "s3InputMode": @@ -743,12 +745,14 @@ def __init__(__self__, *, data_captured_destination_s3_uri: str, dataset_format: 'outputs.DataQualityJobDefinitionDatasetFormat', local_path: str, + exclude_features_attribute: Optional[str] = None, s3_data_distribution_type: Optional['DataQualityJobDefinitionBatchTransformInputS3DataDistributionType'] = None, s3_input_mode: Optional['DataQualityJobDefinitionBatchTransformInputS3InputMode'] = None): """ The batch transform input for a monitoring job. :param str data_captured_destination_s3_uri: A URI that identifies the Amazon S3 storage location where Batch Transform Job captures data. :param str local_path: Path to the filesystem where the endpoint data is available to the container. + :param str exclude_features_attribute: Indexes or names of the features to be excluded from analysis :param 'DataQualityJobDefinitionBatchTransformInputS3DataDistributionType' s3_data_distribution_type: Whether input data distributed in Amazon S3 is fully replicated or sharded by an S3 key. Defauts to FullyReplicated :param 'DataQualityJobDefinitionBatchTransformInputS3InputMode' s3_input_mode: Whether the Pipe or File is used as the input mode for transfering data for the monitoring job. Pipe mode is recommended for large datasets. File mode is useful for small files that fit in memory. Defaults to File. """ @@ -757,6 +761,7 @@ def __init__(__self__, *, data_captured_destination_s3_uri=data_captured_destination_s3_uri, dataset_format=dataset_format, local_path=local_path, + exclude_features_attribute=exclude_features_attribute, s3_data_distribution_type=s3_data_distribution_type, s3_input_mode=s3_input_mode, ) @@ -766,12 +771,15 @@ def _configure( data_captured_destination_s3_uri: str, dataset_format: 'outputs.DataQualityJobDefinitionDatasetFormat', local_path: str, + exclude_features_attribute: Optional[str] = None, s3_data_distribution_type: Optional['DataQualityJobDefinitionBatchTransformInputS3DataDistributionType'] = None, s3_input_mode: Optional['DataQualityJobDefinitionBatchTransformInputS3InputMode'] = None, opts: Optional[pulumi.ResourceOptions]=None): _setter("data_captured_destination_s3_uri", data_captured_destination_s3_uri) _setter("dataset_format", dataset_format) _setter("local_path", local_path) + if exclude_features_attribute is not None: + _setter("exclude_features_attribute", exclude_features_attribute) if s3_data_distribution_type is not None: _setter("s3_data_distribution_type", s3_data_distribution_type) if s3_input_mode is not None: @@ -798,6 +806,14 @@ def local_path(self) -> str: """ return pulumi.get(self, "local_path") + @property + @pulumi.getter(name="excludeFeaturesAttribute") + def exclude_features_attribute(self) -> Optional[str]: + """ + Indexes or names of the features to be excluded from analysis + """ + return pulumi.get(self, "exclude_features_attribute") + @property @pulumi.getter(name="s3DataDistributionType") def s3_data_distribution_type(self) -> Optional['DataQualityJobDefinitionBatchTransformInputS3DataDistributionType']: @@ -1302,6 +1318,8 @@ def __key_warning(key: str): suggest = "endpoint_name" elif key == "localPath": suggest = "local_path" + elif key == "excludeFeaturesAttribute": + suggest = "exclude_features_attribute" elif key == "s3DataDistributionType": suggest = "s3_data_distribution_type" elif key == "s3InputMode": @@ -1321,11 +1339,13 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, endpoint_name: str, local_path: str, + exclude_features_attribute: Optional[str] = None, s3_data_distribution_type: Optional['DataQualityJobDefinitionEndpointInputS3DataDistributionType'] = None, s3_input_mode: Optional['DataQualityJobDefinitionEndpointInputS3InputMode'] = None): """ The endpoint for a monitoring job. :param str local_path: Path to the filesystem where the endpoint data is available to the container. + :param str exclude_features_attribute: Indexes or names of the features to be excluded from analysis :param 'DataQualityJobDefinitionEndpointInputS3DataDistributionType' s3_data_distribution_type: Whether input data distributed in Amazon S3 is fully replicated or sharded by an S3 key. Defauts to FullyReplicated :param 'DataQualityJobDefinitionEndpointInputS3InputMode' s3_input_mode: Whether the Pipe or File is used as the input mode for transfering data for the monitoring job. Pipe mode is recommended for large datasets. File mode is useful for small files that fit in memory. Defaults to File. """ @@ -1333,6 +1353,7 @@ def __init__(__self__, *, lambda key, value: pulumi.set(__self__, key, value), endpoint_name=endpoint_name, local_path=local_path, + exclude_features_attribute=exclude_features_attribute, s3_data_distribution_type=s3_data_distribution_type, s3_input_mode=s3_input_mode, ) @@ -1341,11 +1362,14 @@ def _configure( _setter: Callable[[Any, Any], None], endpoint_name: str, local_path: str, + exclude_features_attribute: Optional[str] = None, s3_data_distribution_type: Optional['DataQualityJobDefinitionEndpointInputS3DataDistributionType'] = None, s3_input_mode: Optional['DataQualityJobDefinitionEndpointInputS3InputMode'] = None, opts: Optional[pulumi.ResourceOptions]=None): _setter("endpoint_name", endpoint_name) _setter("local_path", local_path) + if exclude_features_attribute is not None: + _setter("exclude_features_attribute", exclude_features_attribute) if s3_data_distribution_type is not None: _setter("s3_data_distribution_type", s3_data_distribution_type) if s3_input_mode is not None: @@ -1364,6 +1388,14 @@ def local_path(self) -> str: """ return pulumi.get(self, "local_path") + @property + @pulumi.getter(name="excludeFeaturesAttribute") + def exclude_features_attribute(self) -> Optional[str]: + """ + Indexes or names of the features to be excluded from analysis + """ + return pulumi.get(self, "exclude_features_attribute") + @property @pulumi.getter(name="s3DataDistributionType") def s3_data_distribution_type(self) -> Optional['DataQualityJobDefinitionEndpointInputS3DataDistributionType']: @@ -14223,6 +14255,8 @@ def __key_warning(key: str): suggest = "dataset_format" elif key == "localPath": suggest = "local_path" + elif key == "excludeFeaturesAttribute": + suggest = "exclude_features_attribute" elif key == "s3DataDistributionType": suggest = "s3_data_distribution_type" elif key == "s3InputMode": @@ -14243,12 +14277,14 @@ def __init__(__self__, *, data_captured_destination_s3_uri: str, dataset_format: 'outputs.MonitoringScheduleDatasetFormat', local_path: str, + exclude_features_attribute: Optional[str] = None, s3_data_distribution_type: Optional['MonitoringScheduleBatchTransformInputS3DataDistributionType'] = None, s3_input_mode: Optional['MonitoringScheduleBatchTransformInputS3InputMode'] = None): """ The batch transform input for a monitoring job. :param str data_captured_destination_s3_uri: A URI that identifies the Amazon S3 storage location where Batch Transform Job captures data. :param str local_path: Path to the filesystem where the endpoint data is available to the container. + :param str exclude_features_attribute: Indexes or names of the features to be excluded from analysis :param 'MonitoringScheduleBatchTransformInputS3DataDistributionType' s3_data_distribution_type: Whether input data distributed in Amazon S3 is fully replicated or sharded by an S3 key. Defauts to FullyReplicated :param 'MonitoringScheduleBatchTransformInputS3InputMode' s3_input_mode: Whether the Pipe or File is used as the input mode for transfering data for the monitoring job. Pipe mode is recommended for large datasets. File mode is useful for small files that fit in memory. Defaults to File. """ @@ -14257,6 +14293,7 @@ def __init__(__self__, *, data_captured_destination_s3_uri=data_captured_destination_s3_uri, dataset_format=dataset_format, local_path=local_path, + exclude_features_attribute=exclude_features_attribute, s3_data_distribution_type=s3_data_distribution_type, s3_input_mode=s3_input_mode, ) @@ -14266,12 +14303,15 @@ def _configure( data_captured_destination_s3_uri: str, dataset_format: 'outputs.MonitoringScheduleDatasetFormat', local_path: str, + exclude_features_attribute: Optional[str] = None, s3_data_distribution_type: Optional['MonitoringScheduleBatchTransformInputS3DataDistributionType'] = None, s3_input_mode: Optional['MonitoringScheduleBatchTransformInputS3InputMode'] = None, opts: Optional[pulumi.ResourceOptions]=None): _setter("data_captured_destination_s3_uri", data_captured_destination_s3_uri) _setter("dataset_format", dataset_format) _setter("local_path", local_path) + if exclude_features_attribute is not None: + _setter("exclude_features_attribute", exclude_features_attribute) if s3_data_distribution_type is not None: _setter("s3_data_distribution_type", s3_data_distribution_type) if s3_input_mode is not None: @@ -14298,6 +14338,14 @@ def local_path(self) -> str: """ return pulumi.get(self, "local_path") + @property + @pulumi.getter(name="excludeFeaturesAttribute") + def exclude_features_attribute(self) -> Optional[str]: + """ + Indexes or names of the features to be excluded from analysis + """ + return pulumi.get(self, "exclude_features_attribute") + @property @pulumi.getter(name="s3DataDistributionType") def s3_data_distribution_type(self) -> Optional['MonitoringScheduleBatchTransformInputS3DataDistributionType']: @@ -14635,6 +14683,8 @@ def __key_warning(key: str): suggest = "endpoint_name" elif key == "localPath": suggest = "local_path" + elif key == "excludeFeaturesAttribute": + suggest = "exclude_features_attribute" elif key == "s3DataDistributionType": suggest = "s3_data_distribution_type" elif key == "s3InputMode": @@ -14654,11 +14704,13 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, endpoint_name: str, local_path: str, + exclude_features_attribute: Optional[str] = None, s3_data_distribution_type: Optional['MonitoringScheduleEndpointInputS3DataDistributionType'] = None, s3_input_mode: Optional['MonitoringScheduleEndpointInputS3InputMode'] = None): """ The endpoint for a monitoring job. :param str local_path: Path to the filesystem where the endpoint data is available to the container. + :param str exclude_features_attribute: Indexes or names of the features to be excluded from analysis :param 'MonitoringScheduleEndpointInputS3DataDistributionType' s3_data_distribution_type: Whether input data distributed in Amazon S3 is fully replicated or sharded by an S3 key. Defauts to FullyReplicated :param 'MonitoringScheduleEndpointInputS3InputMode' s3_input_mode: Whether the Pipe or File is used as the input mode for transfering data for the monitoring job. Pipe mode is recommended for large datasets. File mode is useful for small files that fit in memory. Defaults to File. """ @@ -14666,6 +14718,7 @@ def __init__(__self__, *, lambda key, value: pulumi.set(__self__, key, value), endpoint_name=endpoint_name, local_path=local_path, + exclude_features_attribute=exclude_features_attribute, s3_data_distribution_type=s3_data_distribution_type, s3_input_mode=s3_input_mode, ) @@ -14674,11 +14727,14 @@ def _configure( _setter: Callable[[Any, Any], None], endpoint_name: str, local_path: str, + exclude_features_attribute: Optional[str] = None, s3_data_distribution_type: Optional['MonitoringScheduleEndpointInputS3DataDistributionType'] = None, s3_input_mode: Optional['MonitoringScheduleEndpointInputS3InputMode'] = None, opts: Optional[pulumi.ResourceOptions]=None): _setter("endpoint_name", endpoint_name) _setter("local_path", local_path) + if exclude_features_attribute is not None: + _setter("exclude_features_attribute", exclude_features_attribute) if s3_data_distribution_type is not None: _setter("s3_data_distribution_type", s3_data_distribution_type) if s3_input_mode is not None: @@ -14697,6 +14753,14 @@ def local_path(self) -> str: """ return pulumi.get(self, "local_path") + @property + @pulumi.getter(name="excludeFeaturesAttribute") + def exclude_features_attribute(self) -> Optional[str]: + """ + Indexes or names of the features to be excluded from analysis + """ + return pulumi.get(self, "exclude_features_attribute") + @property @pulumi.getter(name="s3DataDistributionType") def s3_data_distribution_type(self) -> Optional['MonitoringScheduleEndpointInputS3DataDistributionType']: @@ -15523,6 +15587,10 @@ def __key_warning(key: str): suggest = None if key == "scheduleExpression": suggest = "schedule_expression" + elif key == "dataAnalysisEndTime": + suggest = "data_analysis_end_time" + elif key == "dataAnalysisStartTime": + suggest = "data_analysis_start_time" if suggest: pulumi.log.warn(f"Key '{key}' not found in MonitoringScheduleScheduleConfig. Access the value via the '{suggest}' property getter instead.") @@ -15536,30 +15604,58 @@ def get(self, key: str, default = None) -> Any: return super().get(key, default) def __init__(__self__, *, - schedule_expression: str): + schedule_expression: str, + data_analysis_end_time: Optional[str] = None, + data_analysis_start_time: Optional[str] = None): """ Configuration details about the monitoring schedule. - :param str schedule_expression: A cron expression that describes details about the monitoring schedule. + :param str schedule_expression: A cron expression or 'NOW' that describes details about the monitoring schedule. + :param str data_analysis_end_time: Data Analysis end time, e.g. PT0H + :param str data_analysis_start_time: Data Analysis start time, e.g. -PT1H """ MonitoringScheduleScheduleConfig._configure( lambda key, value: pulumi.set(__self__, key, value), schedule_expression=schedule_expression, + data_analysis_end_time=data_analysis_end_time, + data_analysis_start_time=data_analysis_start_time, ) @staticmethod def _configure( _setter: Callable[[Any, Any], None], schedule_expression: str, + data_analysis_end_time: Optional[str] = None, + data_analysis_start_time: Optional[str] = None, opts: Optional[pulumi.ResourceOptions]=None): _setter("schedule_expression", schedule_expression) + if data_analysis_end_time is not None: + _setter("data_analysis_end_time", data_analysis_end_time) + if data_analysis_start_time is not None: + _setter("data_analysis_start_time", data_analysis_start_time) @property @pulumi.getter(name="scheduleExpression") def schedule_expression(self) -> str: """ - A cron expression that describes details about the monitoring schedule. + A cron expression or 'NOW' that describes details about the monitoring schedule. """ return pulumi.get(self, "schedule_expression") + @property + @pulumi.getter(name="dataAnalysisEndTime") + def data_analysis_end_time(self) -> Optional[str]: + """ + Data Analysis end time, e.g. PT0H + """ + return pulumi.get(self, "data_analysis_end_time") + + @property + @pulumi.getter(name="dataAnalysisStartTime") + def data_analysis_start_time(self) -> Optional[str]: + """ + Data Analysis start time, e.g. -PT1H + """ + return pulumi.get(self, "data_analysis_start_time") + @pulumi.output_type class MonitoringScheduleStatisticsResource(dict): diff --git a/sdk/python/pulumi_aws_native/servicecatalogappregistry/get_attribute_group_association.py b/sdk/python/pulumi_aws_native/servicecatalogappregistry/get_attribute_group_association.py index b6a384c4e1..97732a469e 100644 --- a/sdk/python/pulumi_aws_native/servicecatalogappregistry/get_attribute_group_association.py +++ b/sdk/python/pulumi_aws_native/servicecatalogappregistry/get_attribute_group_association.py @@ -18,16 +18,13 @@ @pulumi.output_type class GetAttributeGroupAssociationResult: - def __init__(__self__, application_arn=None, attribute_group_arn=None, id=None): + def __init__(__self__, application_arn=None, attribute_group_arn=None): if application_arn and not isinstance(application_arn, str): raise TypeError("Expected argument 'application_arn' to be a str") pulumi.set(__self__, "application_arn", application_arn) if attribute_group_arn and not isinstance(attribute_group_arn, str): raise TypeError("Expected argument 'attribute_group_arn' to be a str") pulumi.set(__self__, "attribute_group_arn", attribute_group_arn) - if id and not isinstance(id, str): - raise TypeError("Expected argument 'id' to be a str") - pulumi.set(__self__, "id", id) @property @pulumi.getter(name="applicationArn") @@ -39,11 +36,6 @@ def application_arn(self) -> Optional[str]: def attribute_group_arn(self) -> Optional[str]: return pulumi.get(self, "attribute_group_arn") - @property - @pulumi.getter - def id(self) -> Optional[str]: - return pulumi.get(self, "id") - class AwaitableGetAttributeGroupAssociationResult(GetAttributeGroupAssociationResult): # pylint: disable=using-constant-test @@ -52,28 +44,29 @@ def __await__(self): yield self return GetAttributeGroupAssociationResult( application_arn=self.application_arn, - attribute_group_arn=self.attribute_group_arn, - id=self.id) + attribute_group_arn=self.attribute_group_arn) -def get_attribute_group_association(id: Optional[str] = None, +def get_attribute_group_association(application_arn: Optional[str] = None, + attribute_group_arn: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetAttributeGroupAssociationResult: """ Resource Schema for AWS::ServiceCatalogAppRegistry::AttributeGroupAssociation. """ __args__ = dict() - __args__['id'] = id + __args__['applicationArn'] = application_arn + __args__['attributeGroupArn'] = attribute_group_arn opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) __ret__ = pulumi.runtime.invoke('aws-native:servicecatalogappregistry:getAttributeGroupAssociation', __args__, opts=opts, typ=GetAttributeGroupAssociationResult).value return AwaitableGetAttributeGroupAssociationResult( application_arn=pulumi.get(__ret__, 'application_arn'), - attribute_group_arn=pulumi.get(__ret__, 'attribute_group_arn'), - id=pulumi.get(__ret__, 'id')) + attribute_group_arn=pulumi.get(__ret__, 'attribute_group_arn')) @_utilities.lift_output_func(get_attribute_group_association) -def get_attribute_group_association_output(id: Optional[pulumi.Input[str]] = None, +def get_attribute_group_association_output(application_arn: Optional[pulumi.Input[str]] = None, + attribute_group_arn: Optional[pulumi.Input[str]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetAttributeGroupAssociationResult]: """ Resource Schema for AWS::ServiceCatalogAppRegistry::AttributeGroupAssociation. diff --git a/sdk/python/pulumi_aws_native/servicecatalogappregistry/get_resource_association.py b/sdk/python/pulumi_aws_native/servicecatalogappregistry/get_resource_association.py index a661d6b261..4d1edde6cc 100644 --- a/sdk/python/pulumi_aws_native/servicecatalogappregistry/get_resource_association.py +++ b/sdk/python/pulumi_aws_native/servicecatalogappregistry/get_resource_association.py @@ -8,6 +8,7 @@ import pulumi.runtime from typing import Any, Callable, Mapping, Optional, Sequence, Union, overload from .. import _utilities +from ._enums import * __all__ = [ 'GetResourceAssociationResult', @@ -18,13 +19,10 @@ @pulumi.output_type class GetResourceAssociationResult: - def __init__(__self__, application_arn=None, id=None, resource_arn=None): + def __init__(__self__, application_arn=None, resource_arn=None): if application_arn and not isinstance(application_arn, str): raise TypeError("Expected argument 'application_arn' to be a str") pulumi.set(__self__, "application_arn", application_arn) - if id and not isinstance(id, str): - raise TypeError("Expected argument 'id' to be a str") - pulumi.set(__self__, "id", id) if resource_arn and not isinstance(resource_arn, str): raise TypeError("Expected argument 'resource_arn' to be a str") pulumi.set(__self__, "resource_arn", resource_arn) @@ -34,11 +32,6 @@ def __init__(__self__, application_arn=None, id=None, resource_arn=None): def application_arn(self) -> Optional[str]: return pulumi.get(self, "application_arn") - @property - @pulumi.getter - def id(self) -> Optional[str]: - return pulumi.get(self, "id") - @property @pulumi.getter(name="resourceArn") def resource_arn(self) -> Optional[str]: @@ -52,30 +45,40 @@ def __await__(self): yield self return GetResourceAssociationResult( application_arn=self.application_arn, - id=self.id, resource_arn=self.resource_arn) -def get_resource_association(id: Optional[str] = None, +def get_resource_association(application_arn: Optional[str] = None, + resource_arn: Optional[str] = None, + resource_type: Optional['ResourceAssociationResourceType'] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetResourceAssociationResult: """ Resource Schema for AWS::ServiceCatalogAppRegistry::ResourceAssociation + + + :param 'ResourceAssociationResourceType' resource_type: The type of the CFN Resource for now it's enum CFN_STACK. """ __args__ = dict() - __args__['id'] = id + __args__['applicationArn'] = application_arn + __args__['resourceArn'] = resource_arn + __args__['resourceType'] = resource_type opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) __ret__ = pulumi.runtime.invoke('aws-native:servicecatalogappregistry:getResourceAssociation', __args__, opts=opts, typ=GetResourceAssociationResult).value return AwaitableGetResourceAssociationResult( application_arn=pulumi.get(__ret__, 'application_arn'), - id=pulumi.get(__ret__, 'id'), resource_arn=pulumi.get(__ret__, 'resource_arn')) @_utilities.lift_output_func(get_resource_association) -def get_resource_association_output(id: Optional[pulumi.Input[str]] = None, +def get_resource_association_output(application_arn: Optional[pulumi.Input[str]] = None, + resource_arn: Optional[pulumi.Input[str]] = None, + resource_type: Optional[pulumi.Input['ResourceAssociationResourceType']] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetResourceAssociationResult]: """ Resource Schema for AWS::ServiceCatalogAppRegistry::ResourceAssociation + + + :param 'ResourceAssociationResourceType' resource_type: The type of the CFN Resource for now it's enum CFN_STACK. """ ... diff --git a/sdk/python/pulumi_aws_native/sns/get_topic.py b/sdk/python/pulumi_aws_native/sns/get_topic.py index 0ead09158d..bf8e98ebee 100644 --- a/sdk/python/pulumi_aws_native/sns/get_topic.py +++ b/sdk/python/pulumi_aws_native/sns/get_topic.py @@ -19,7 +19,10 @@ @pulumi.output_type class GetTopicResult: - def __init__(__self__, content_based_deduplication=None, data_protection_policy=None, display_name=None, kms_master_key_id=None, signature_version=None, subscription=None, tags=None, topic_arn=None, tracing_config=None): + def __init__(__self__, archive_policy=None, content_based_deduplication=None, data_protection_policy=None, display_name=None, kms_master_key_id=None, signature_version=None, subscription=None, tags=None, topic_arn=None, tracing_config=None): + if archive_policy and not isinstance(archive_policy, dict): + raise TypeError("Expected argument 'archive_policy' to be a dict") + pulumi.set(__self__, "archive_policy", archive_policy) if content_based_deduplication and not isinstance(content_based_deduplication, bool): raise TypeError("Expected argument 'content_based_deduplication' to be a bool") pulumi.set(__self__, "content_based_deduplication", content_based_deduplication) @@ -48,6 +51,14 @@ def __init__(__self__, content_based_deduplication=None, data_protection_policy= raise TypeError("Expected argument 'tracing_config' to be a str") pulumi.set(__self__, "tracing_config", tracing_config) + @property + @pulumi.getter(name="archivePolicy") + def archive_policy(self) -> Optional[Any]: + """ + The archive policy determines the number of days Amazon SNS retains messages. You can set a retention period from 1 to 365 days. + """ + return pulumi.get(self, "archive_policy") + @property @pulumi.getter(name="contentBasedDeduplication") def content_based_deduplication(self) -> Optional[bool]: @@ -133,6 +144,7 @@ def __await__(self): if False: yield self return GetTopicResult( + archive_policy=self.archive_policy, content_based_deduplication=self.content_based_deduplication, data_protection_policy=self.data_protection_policy, display_name=self.display_name, @@ -155,6 +167,7 @@ def get_topic(topic_arn: Optional[str] = None, __ret__ = pulumi.runtime.invoke('aws-native:sns:getTopic', __args__, opts=opts, typ=GetTopicResult).value return AwaitableGetTopicResult( + archive_policy=pulumi.get(__ret__, 'archive_policy'), content_based_deduplication=pulumi.get(__ret__, 'content_based_deduplication'), data_protection_policy=pulumi.get(__ret__, 'data_protection_policy'), display_name=pulumi.get(__ret__, 'display_name'), diff --git a/sdk/python/pulumi_aws_native/sns/topic.py b/sdk/python/pulumi_aws_native/sns/topic.py index dea7eb6187..f48c9efc8d 100644 --- a/sdk/python/pulumi_aws_native/sns/topic.py +++ b/sdk/python/pulumi_aws_native/sns/topic.py @@ -16,6 +16,7 @@ @pulumi.input_type class TopicArgs: def __init__(__self__, *, + archive_policy: Optional[Any] = None, content_based_deduplication: Optional[pulumi.Input[bool]] = None, data_protection_policy: Optional[Any] = None, display_name: Optional[pulumi.Input[str]] = None, @@ -28,6 +29,7 @@ def __init__(__self__, *, tracing_config: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a Topic resource. + :param Any archive_policy: The archive policy determines the number of days Amazon SNS retains messages. You can set a retention period from 1 to 365 days. :param pulumi.Input[bool] content_based_deduplication: Enables content-based deduplication for FIFO topics. By default, ContentBasedDeduplication is set to false. If you create a FIFO topic and this attribute is false, you must specify a value for the MessageDeduplicationId parameter for the Publish action. When you set ContentBasedDeduplication to true, Amazon SNS uses a SHA-256 hash to generate the MessageDeduplicationId using the body of the message (but not the attributes of the message). @@ -54,6 +56,7 @@ def __init__(__self__, *, """ TopicArgs._configure( lambda key, value: pulumi.set(__self__, key, value), + archive_policy=archive_policy, content_based_deduplication=content_based_deduplication, data_protection_policy=data_protection_policy, display_name=display_name, @@ -68,6 +71,7 @@ def __init__(__self__, *, @staticmethod def _configure( _setter: Callable[[Any, Any], None], + archive_policy: Optional[Any] = None, content_based_deduplication: Optional[pulumi.Input[bool]] = None, data_protection_policy: Optional[Any] = None, display_name: Optional[pulumi.Input[str]] = None, @@ -79,6 +83,8 @@ def _configure( topic_name: Optional[pulumi.Input[str]] = None, tracing_config: Optional[pulumi.Input[str]] = None, opts: Optional[pulumi.ResourceOptions]=None): + if archive_policy is not None: + _setter("archive_policy", archive_policy) if content_based_deduplication is not None: _setter("content_based_deduplication", content_based_deduplication) if data_protection_policy is not None: @@ -100,6 +106,18 @@ def _configure( if tracing_config is not None: _setter("tracing_config", tracing_config) + @property + @pulumi.getter(name="archivePolicy") + def archive_policy(self) -> Optional[Any]: + """ + The archive policy determines the number of days Amazon SNS retains messages. You can set a retention period from 1 to 365 days. + """ + return pulumi.get(self, "archive_policy") + + @archive_policy.setter + def archive_policy(self, value: Optional[Any]): + pulumi.set(self, "archive_policy", value) + @property @pulumi.getter(name="contentBasedDeduplication") def content_based_deduplication(self) -> Optional[pulumi.Input[bool]]: @@ -237,6 +255,7 @@ class Topic(pulumi.CustomResource): def __init__(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, + archive_policy: Optional[Any] = None, content_based_deduplication: Optional[pulumi.Input[bool]] = None, data_protection_policy: Optional[Any] = None, display_name: Optional[pulumi.Input[str]] = None, @@ -253,6 +272,7 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. + :param Any archive_policy: The archive policy determines the number of days Amazon SNS retains messages. You can set a retention period from 1 to 365 days. :param pulumi.Input[bool] content_based_deduplication: Enables content-based deduplication for FIFO topics. By default, ContentBasedDeduplication is set to false. If you create a FIFO topic and this attribute is false, you must specify a value for the MessageDeduplicationId parameter for the Publish action. When you set ContentBasedDeduplication to true, Amazon SNS uses a SHA-256 hash to generate the MessageDeduplicationId using the body of the message (but not the attributes of the message). @@ -305,6 +325,7 @@ def _setter(key, value): def _internal_init(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, + archive_policy: Optional[Any] = None, content_based_deduplication: Optional[pulumi.Input[bool]] = None, data_protection_policy: Optional[Any] = None, display_name: Optional[pulumi.Input[str]] = None, @@ -324,6 +345,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__ = TopicArgs.__new__(TopicArgs) + __props__.__dict__["archive_policy"] = archive_policy __props__.__dict__["content_based_deduplication"] = content_based_deduplication __props__.__dict__["data_protection_policy"] = data_protection_policy __props__.__dict__["display_name"] = display_name @@ -359,6 +381,7 @@ def get(resource_name: str, __props__ = TopicArgs.__new__(TopicArgs) + __props__.__dict__["archive_policy"] = None __props__.__dict__["content_based_deduplication"] = None __props__.__dict__["data_protection_policy"] = None __props__.__dict__["display_name"] = None @@ -372,6 +395,14 @@ def get(resource_name: str, __props__.__dict__["tracing_config"] = None return Topic(resource_name, opts=opts, __props__=__props__) + @property + @pulumi.getter(name="archivePolicy") + def archive_policy(self) -> pulumi.Output[Optional[Any]]: + """ + The archive policy determines the number of days Amazon SNS retains messages. You can set a retention period from 1 to 365 days. + """ + return pulumi.get(self, "archive_policy") + @property @pulumi.getter(name="contentBasedDeduplication") def content_based_deduplication(self) -> pulumi.Output[Optional[bool]]: diff --git a/sdk/python/pulumi_aws_native/sqs/get_queue_policy.py b/sdk/python/pulumi_aws_native/sqs/get_queue_policy.py index 13babc38aa..3717c954d4 100644 --- a/sdk/python/pulumi_aws_native/sqs/get_queue_policy.py +++ b/sdk/python/pulumi_aws_native/sqs/get_queue_policy.py @@ -41,7 +41,7 @@ def id(self) -> Optional[str]: @pulumi.getter(name="policyDocument") def policy_document(self) -> Optional[Any]: """ - A policy document that contains the permissions for the specified Amazon SQS queues. For more information about Amazon SQS policies, see Creating Custom Policies Using the Access Policy Language in the Amazon Simple Queue Service Developer Guide. + A policy document that contains the permissions for the specified SQS queues. For more information about SQS policies, see [Using custom policies with the access policy language](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-creating-custom-policies.html) in the *Developer Guide*. """ return pulumi.get(self, "policy_document") @@ -49,7 +49,7 @@ def policy_document(self) -> Optional[Any]: @pulumi.getter def queues(self) -> Optional[Sequence[str]]: """ - The URLs of the queues to which you want to add the policy. You can use the Ref function to specify an AWS::SQS::Queue resource. + The URLs of the queues to which you want to add the policy. You can use the ``Ref`` function to specify an ``AWS::SQS::Queue`` resource. """ return pulumi.get(self, "queues") @@ -68,7 +68,7 @@ def __await__(self): def get_queue_policy(id: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetQueuePolicyResult: """ - Resource Type definition for AWS::SQS::QueuePolicy + The ``AWS::SQS::QueuePolicy`` type applies a policy to SQS queues. For an example snippet, see [Declaring an policy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-iam.html#scenario-sqs-policy) in the *User Guide*. :param str id: The provider-assigned unique ID for this managed resource. @@ -88,7 +88,7 @@ def get_queue_policy(id: Optional[str] = None, def get_queue_policy_output(id: Optional[pulumi.Input[str]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetQueuePolicyResult]: """ - Resource Type definition for AWS::SQS::QueuePolicy + The ``AWS::SQS::QueuePolicy`` type applies a policy to SQS queues. For an example snippet, see [Declaring an policy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-iam.html#scenario-sqs-policy) in the *User Guide*. :param str id: The provider-assigned unique ID for this managed resource. diff --git a/sdk/python/pulumi_aws_native/sqs/queue_policy.py b/sdk/python/pulumi_aws_native/sqs/queue_policy.py index a29ced0d98..e7bf30bfdd 100644 --- a/sdk/python/pulumi_aws_native/sqs/queue_policy.py +++ b/sdk/python/pulumi_aws_native/sqs/queue_policy.py @@ -18,8 +18,8 @@ def __init__(__self__, *, queues: pulumi.Input[Sequence[pulumi.Input[str]]]): """ The set of arguments for constructing a QueuePolicy resource. - :param Any policy_document: A policy document that contains the permissions for the specified Amazon SQS queues. For more information about Amazon SQS policies, see Creating Custom Policies Using the Access Policy Language in the Amazon Simple Queue Service Developer Guide. - :param pulumi.Input[Sequence[pulumi.Input[str]]] queues: The URLs of the queues to which you want to add the policy. You can use the Ref function to specify an AWS::SQS::Queue resource. + :param Any policy_document: A policy document that contains the permissions for the specified SQS queues. For more information about SQS policies, see [Using custom policies with the access policy language](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-creating-custom-policies.html) in the *Developer Guide*. + :param pulumi.Input[Sequence[pulumi.Input[str]]] queues: The URLs of the queues to which you want to add the policy. You can use the ``Ref`` function to specify an ``AWS::SQS::Queue`` resource. """ QueuePolicyArgs._configure( lambda key, value: pulumi.set(__self__, key, value), @@ -39,7 +39,7 @@ def _configure( @pulumi.getter(name="policyDocument") def policy_document(self) -> Any: """ - A policy document that contains the permissions for the specified Amazon SQS queues. For more information about Amazon SQS policies, see Creating Custom Policies Using the Access Policy Language in the Amazon Simple Queue Service Developer Guide. + A policy document that contains the permissions for the specified SQS queues. For more information about SQS policies, see [Using custom policies with the access policy language](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-creating-custom-policies.html) in the *Developer Guide*. """ return pulumi.get(self, "policy_document") @@ -51,7 +51,7 @@ def policy_document(self, value: Any): @pulumi.getter def queues(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: """ - The URLs of the queues to which you want to add the policy. You can use the Ref function to specify an AWS::SQS::Queue resource. + The URLs of the queues to which you want to add the policy. You can use the ``Ref`` function to specify an ``AWS::SQS::Queue`` resource. """ return pulumi.get(self, "queues") @@ -74,12 +74,12 @@ def __init__(__self__, queues: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, __props__=None): """ - Resource Type definition for AWS::SQS::QueuePolicy + The ``AWS::SQS::QueuePolicy`` type applies a policy to SQS queues. For an example snippet, see [Declaring an policy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-iam.html#scenario-sqs-policy) in the *User Guide*. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param Any policy_document: A policy document that contains the permissions for the specified Amazon SQS queues. For more information about Amazon SQS policies, see Creating Custom Policies Using the Access Policy Language in the Amazon Simple Queue Service Developer Guide. - :param pulumi.Input[Sequence[pulumi.Input[str]]] queues: The URLs of the queues to which you want to add the policy. You can use the Ref function to specify an AWS::SQS::Queue resource. + :param Any policy_document: A policy document that contains the permissions for the specified SQS queues. For more information about SQS policies, see [Using custom policies with the access policy language](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-creating-custom-policies.html) in the *Developer Guide*. + :param pulumi.Input[Sequence[pulumi.Input[str]]] queues: The URLs of the queues to which you want to add the policy. You can use the ``Ref`` function to specify an ``AWS::SQS::Queue`` resource. """ ... @overload @@ -88,7 +88,7 @@ def __init__(__self__, args: QueuePolicyArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Resource Type definition for AWS::SQS::QueuePolicy + The ``AWS::SQS::QueuePolicy`` type applies a policy to SQS queues. For an example snippet, see [Declaring an policy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-iam.html#scenario-sqs-policy) in the *User Guide*. :param str resource_name: The name of the resource. :param QueuePolicyArgs args: The arguments to use to populate this resource's properties. @@ -157,7 +157,7 @@ def get(resource_name: str, @pulumi.getter(name="policyDocument") def policy_document(self) -> pulumi.Output[Any]: """ - A policy document that contains the permissions for the specified Amazon SQS queues. For more information about Amazon SQS policies, see Creating Custom Policies Using the Access Policy Language in the Amazon Simple Queue Service Developer Guide. + A policy document that contains the permissions for the specified SQS queues. For more information about SQS policies, see [Using custom policies with the access policy language](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-creating-custom-policies.html) in the *Developer Guide*. """ return pulumi.get(self, "policy_document") @@ -165,7 +165,7 @@ def policy_document(self) -> pulumi.Output[Any]: @pulumi.getter def queues(self) -> pulumi.Output[Sequence[str]]: """ - The URLs of the queues to which you want to add the policy. You can use the Ref function to specify an AWS::SQS::Queue resource. + The URLs of the queues to which you want to add the policy. You can use the ``Ref`` function to specify an ``AWS::SQS::Queue`` resource. """ return pulumi.get(self, "queues")