diff --git a/CHANGELOG.md b/CHANGELOG.md index ea4febdce9c..3135bae232d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,7 +2,7 @@ CHANGELOG ========= ## HEAD (Unreleased) -_(none)_ +* Upgrade to v3.14.0 of the AWS Terraform Provider --- diff --git a/provider/cmd/pulumi-resource-aws/schema.json b/provider/cmd/pulumi-resource-aws/schema.json index ee088ee9200..aff64e66913 100644 --- a/provider/cmd/pulumi-resource-aws/schema.json +++ b/provider/cmd/pulumi-resource-aws/schema.json @@ -320,7 +320,7 @@ "properties": { "commonName": { "type": "string", - "description": "Fully qualified domain name (FQDN) associated with the certificate subject.\n", + "description": "Fully qualified domain name (FQDN) associated with the certificate subject. Must be less than or equal to 64 characters in length.\n", "language": { "python": { "mapCase": false @@ -329,7 +329,7 @@ }, "country": { "type": "string", - "description": "Two digit code that specifies the country in which the certificate subject located.\n", + "description": "Two digit code that specifies the country in which the certificate subject located. Must be less than or equal to 2 characters in length.\n", "language": { "python": { "mapCase": false @@ -338,7 +338,7 @@ }, "distinguishedNameQualifier": { "type": "string", - "description": "Disambiguating information for the certificate subject.\n", + "description": "Disambiguating information for the certificate subject. Must be less than or equal to 64 characters in length.\n", "language": { "python": { "mapCase": false @@ -347,7 +347,7 @@ }, "generationQualifier": { "type": "string", - "description": "Typically a qualifier appended to the name of an individual. Examples include Jr. for junior, Sr. for senior, and III for third.\n", + "description": "Typically a qualifier appended to the name of an individual. Examples include Jr. for junior, Sr. for senior, and III for third. Must be less than or equal to 3 characters in length.\n", "language": { "python": { "mapCase": false @@ -356,7 +356,7 @@ }, "givenName": { "type": "string", - "description": "First name.\n", + "description": "First name. Must be less than or equal to 16 characters in length.\n", "language": { "python": { "mapCase": false @@ -365,7 +365,7 @@ }, "initials": { "type": "string", - "description": "Concatenation that typically contains the first letter of the `given_name`, the first letter of the middle name if one exists, and the first letter of the `surname`.\n", + "description": "Concatenation that typically contains the first letter of the `given_name`, the first letter of the middle name if one exists, and the first letter of the `surname`. Must be less than or equal to 5 characters in length.\n", "language": { "python": { "mapCase": false @@ -374,7 +374,7 @@ }, "locality": { "type": "string", - "description": "The locality (such as a city or town) in which the certificate subject is located.\n", + "description": "The locality (such as a city or town) in which the certificate subject is located. Must be less than or equal to 128 characters in length.\n", "language": { "python": { "mapCase": false @@ -383,7 +383,7 @@ }, "organization": { "type": "string", - "description": "Legal name of the organization with which the certificate subject is affiliated.\n", + "description": "Legal name of the organization with which the certificate subject is affiliated. Must be less than or equal to 64 characters in length.\n", "language": { "python": { "mapCase": false @@ -392,7 +392,7 @@ }, "organizationalUnit": { "type": "string", - "description": "A subdivision or unit of the organization (such as sales or finance) with which the certificate subject is affiliated.\n", + "description": "A subdivision or unit of the organization (such as sales or finance) with which the certificate subject is affiliated. Must be less than or equal to 64 characters in length.\n", "language": { "python": { "mapCase": false @@ -401,7 +401,7 @@ }, "pseudonym": { "type": "string", - "description": "Typically a shortened version of a longer `given_name`. For example, Jonathan is often shortened to John. Elizabeth is often shortened to Beth, Liz, or Eliza.\n", + "description": "Typically a shortened version of a longer `given_name`. For example, Jonathan is often shortened to John. Elizabeth is often shortened to Beth, Liz, or Eliza. Must be less than or equal to 128 characters in length.\n", "language": { "python": { "mapCase": false @@ -410,7 +410,7 @@ }, "state": { "type": "string", - "description": "State in which the subject of the certificate is located.\n", + "description": "State in which the subject of the certificate is located. Must be less than or equal to 128 characters in length.\n", "language": { "python": { "mapCase": false @@ -419,7 +419,7 @@ }, "surname": { "type": "string", - "description": "Family name. In the US and the UK for example, the surname of an individual is ordered last. In Asian cultures the surname is typically ordered first.\n", + "description": "Family name. In the US and the UK for example, the surname of an individual is ordered last. In Asian cultures the surname is typically ordered first. Must be less than or equal to 40 characters in length.\n", "language": { "python": { "mapCase": false @@ -428,7 +428,7 @@ }, "title": { "type": "string", - "description": "A title such as Mr. or Ms. which is pre-pended to the name to refer formally to the certificate subject.\n", + "description": "A title such as Mr. or Ms. which is pre-pended to the name to refer formally to the certificate subject. Must be less than or equal to 64 characters in length.\n", "language": { "python": { "mapCase": false @@ -456,7 +456,7 @@ "properties": { "customCname": { "type": "string", - "description": "Name inserted into the certificate CRL Distribution Points extension that enables the use of an alias for the CRL distribution point. Use this value if you don't want the name of your S3 bucket to be public.\n", + "description": "Name inserted into the certificate CRL Distribution Points extension that enables the use of an alias for the CRL distribution point. Use this value if you don't want the name of your S3 bucket to be public. Must be less than or equal to 253 characters in length.\n", "language": { "python": { "mapCase": false @@ -483,7 +483,7 @@ }, "s3BucketName": { "type": "string", - "description": "Name of the S3 bucket that contains the CRL. If you do not provide a value for the `custom_cname` argument, the name of your S3 bucket is placed into the CRL Distribution Points extension of the issued certificate. You must specify a bucket policy that allows ACM PCA to write the CRL to your bucket.\n", + "description": "Name of the S3 bucket that contains the CRL. If you do not provide a value for the `custom_cname` argument, the name of your S3 bucket is placed into the CRL Distribution Points extension of the issued certificate. You must specify a bucket policy that allows ACM PCA to write the CRL to your bucket. Must be less than or equal to 255 characters in length.\n", "language": { "python": { "mapCase": false @@ -12895,7 +12895,7 @@ }, "launchType": { "type": "string", - "description": "Specifies the launch type on which your task is running. The launch type that you specify here must match one of the launch type (compatibilities) of the target task. Valid values are EC2 or FARGATE.\n", + "description": "Specifies the launch type on which your task is running. The launch type that you specify here must match one of the launch type (compatibilities) of the target task. Valid values are `EC2` or `FARGATE`.\n", "language": { "python": { "mapCase": false @@ -13001,7 +13001,6 @@ }, "inputTemplate": { "type": "string", - "description": "Structure containing the template body.\n", "language": { "python": { "mapCase": false @@ -16086,6 +16085,9 @@ "codepipeline": { "type": "string" }, + "codestarconnections": { + "type": "string" + }, "cognitoidentity": { "type": "string" }, @@ -34413,6 +34415,42 @@ "path" ] }, + "aws:glue/CrawlerMongodbTarget:CrawlerMongodbTarget": { + "properties": { + "connectionName": { + "type": "string", + "description": "The name of the connection to use to connect to the Amazon DocumentDB or MongoDB target.\n", + "language": { + "python": { + "mapCase": false + } + } + }, + "path": { + "type": "string", + "description": "The path of the Amazon DocumentDB or MongoDB target (database/collection).\n", + "language": { + "python": { + "mapCase": false + } + } + }, + "scanAll": { + "type": "boolean", + "description": "Indicates whether to scan all the records, or to sample rows from the table. Scanning all the records can take a long time when the table is not a high throughput table. Default value is `true`.\n", + "language": { + "python": { + "mapCase": false + } + } + } + }, + "type": "object", + "required": [ + "connectionName", + "path" + ] + }, "aws:glue/CrawlerS3Target:CrawlerS3Target": { "properties": { "connectionName": { @@ -35167,6 +35205,24 @@ } } }, + "notificationProperty": { + "$ref": "#/types/aws:glue/TriggerActionNotificationProperty:TriggerActionNotificationProperty", + "description": "Specifies configuration properties of a job run notification. see Notification Property details below.\n", + "language": { + "python": { + "mapCase": false + } + } + }, + "securityConfiguration": { + "type": "string", + "description": "The name of the Security Configuration structure to be used with this action.\n", + "language": { + "python": { + "mapCase": false + } + } + }, "timeout": { "type": "integer", "description": "The job run timeout in minutes. It overrides the timeout value of the job.\n", @@ -35179,6 +35235,20 @@ }, "type": "object" }, + "aws:glue/TriggerActionNotificationProperty:TriggerActionNotificationProperty": { + "properties": { + "notifyDelayAfter": { + "type": "integer", + "description": "After a job run starts, the number of minutes to wait before sending a job run delay notification.\n", + "language": { + "python": { + "mapCase": false + } + } + } + }, + "type": "object" + }, "aws:glue/TriggerPredicate:TriggerPredicate": { "properties": { "conditions": { @@ -37158,6 +37228,14 @@ } } }, + "codestarconnections": { + "type": "string", + "language": { + "python": { + "mapCase": false + } + } + }, "cognitoidentity": { "type": "string", "language": { @@ -40013,6 +40091,7 @@ "requiredOutputs": [ "id", "namePrefix", + "parallelism", "schema", "startingPositionConfigurations", "streamNames" @@ -40087,9 +40166,13 @@ } }, "type": "object", - "required": [ - "count" - ] + "language": { + "nodejs": { + "requiredOutputs": [ + "count" + ] + } + } }, "aws:kinesis/AnalyticsApplicationInputsProcessingConfiguration:AnalyticsApplicationInputsProcessingConfiguration": { "properties": { @@ -46589,7 +46672,7 @@ "properties": { "iamRoleArn": { "type": "string", - "description": "The Amazon Resource Name (ARN) of the IAM role used to write your logs to CloudWatch Logs or an S3 bucket.\n", + "description": "The Amazon Resource Name (ARN) of the IAM role used to write your logs to CloudWatch Logs or an S3 bucket. Must be between 20 and 2048 characters in length.\n", "language": { "python": { "mapCase": false @@ -46627,7 +46710,7 @@ }, "kmsKeyArn": { "type": "string", - "description": "The Amazon Resource Name (ARN) of the key used to encrypt audio logs in an S3 bucket. This can only be specified when `destination` is set to `S3`.\n", + "description": "The Amazon Resource Name (ARN) of the key used to encrypt audio logs in an S3 bucket. This can only be specified when `destination` is set to `S3`. Must be between 20 and 2048 characters in length.\n", "language": { "python": { "mapCase": false @@ -46645,7 +46728,7 @@ }, "resourceArn": { "type": "string", - "description": "The Amazon Resource Name (ARN) of the CloudWatch Logs log group or S3 bucket where the logs are delivered.\n", + "description": "The Amazon Resource Name (ARN) of the CloudWatch Logs log group or S3 bucket where the logs are delivered. Must be less than or equal to 2048 characters in length.\n", "language": { "python": { "mapCase": false @@ -46758,7 +46841,7 @@ "properties": { "intentName": { "type": "string", - "description": "The name of the intent.\n", + "description": "The name of the intent. Must be less than or equal to 100 characters in length.\n", "language": { "python": { "mapCase": false @@ -46767,7 +46850,7 @@ }, "intentVersion": { "type": "string", - "description": "The version of the intent.\n", + "description": "The version of the intent. Must be less than or equal to 64 characters in length.\n", "language": { "python": { "mapCase": false @@ -46788,7 +46871,7 @@ "items": { "$ref": "#/types/aws:lex/IntentConclusionStatementMessage:IntentConclusionStatementMessage" }, - "description": "A set of messages, each of which provides a message string and its type.\nYou can specify the message string in plain text or in Speech Synthesis Markup Language (SSML).\nAttributes are documented under message.\n", + "description": "A set of messages, each of which provides a message string and its type.\nYou can specify the message string in plain text or in Speech Synthesis Markup Language (SSML).\nAttributes are documented under message. Must contain between 1 and 15 messages.\n", "language": { "python": { "mapCase": false @@ -46797,7 +46880,7 @@ }, "responseCard": { "type": "string", - "description": "The response card. Amazon Lex will substitute session attributes and\nslot values into the response card. For more information, see\n[Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html).\n", + "description": "The response card. Amazon Lex will substitute session attributes and\nslot values into the response card. For more information, see\n[Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length.\n", "language": { "python": { "mapCase": false @@ -46814,7 +46897,7 @@ "properties": { "content": { "type": "string", - "description": "The text of the message.\n", + "description": "The text of the message. Must be less than or equal to 1000 characters in length.\n", "language": { "python": { "mapCase": false @@ -46832,7 +46915,7 @@ }, "groupNumber": { "type": "integer", - "description": "Identifies the message group that the message belongs to. When a group\nis assigned to a message, Amazon Lex returns one message from each group in the response.\n", + "description": "Identifies the message group that the message belongs to. When a group\nis assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive).\n", "language": { "python": { "mapCase": false @@ -46850,7 +46933,7 @@ "properties": { "maxAttempts": { "type": "integer", - "description": "The number of times to prompt the user for information.\n", + "description": "The number of times to prompt the user for information. Must be a number between 1 and 5 (inclusive).\n", "language": { "python": { "mapCase": false @@ -46862,7 +46945,7 @@ "items": { "$ref": "#/types/aws:lex/IntentConfirmationPromptMessage:IntentConfirmationPromptMessage" }, - "description": "A set of messages, each of which provides a message string and its type.\nYou can specify the message string in plain text or in Speech Synthesis Markup Language (SSML).\nAttributes are documented under message.\n", + "description": "A set of messages, each of which provides a message string and its type.\nYou can specify the message string in plain text or in Speech Synthesis Markup Language (SSML).\nAttributes are documented under message. Must contain between 1 and 15 messages.\n", "language": { "python": { "mapCase": false @@ -46871,7 +46954,7 @@ }, "responseCard": { "type": "string", - "description": "The response card. Amazon Lex will substitute session attributes and\nslot values into the response card. For more information, see\n[Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html).\n", + "description": "The response card. Amazon Lex will substitute session attributes and\nslot values into the response card. For more information, see\n[Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length.\n", "language": { "python": { "mapCase": false @@ -46889,7 +46972,7 @@ "properties": { "content": { "type": "string", - "description": "The text of the message.\n", + "description": "The text of the message. Must be less than or equal to 1000 characters in length.\n", "language": { "python": { "mapCase": false @@ -46907,7 +46990,7 @@ }, "groupNumber": { "type": "integer", - "description": "Identifies the message group that the message belongs to. When a group\nis assigned to a message, Amazon Lex returns one message from each group in the response.\n", + "description": "Identifies the message group that the message belongs to. When a group\nis assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive).\n", "language": { "python": { "mapCase": false @@ -46925,7 +47008,7 @@ "properties": { "messageVersion": { "type": "string", - "description": "The version of the request-response that you want Amazon Lex to use\nto invoke your Lambda function. For more information, see\n[Using Lambda Functions](https://docs.aws.amazon.com/lex/latest/dg/using-lambda.html).\n", + "description": "The version of the request-response that you want Amazon Lex to use\nto invoke your Lambda function. For more information, see\n[Using Lambda Functions](https://docs.aws.amazon.com/lex/latest/dg/using-lambda.html). Must be less than or equal to 5 characters in length.\n", "language": { "python": { "mapCase": false @@ -46979,7 +47062,7 @@ "properties": { "maxAttempts": { "type": "integer", - "description": "The number of times to prompt the user for information.\n", + "description": "The number of times to prompt the user for information. Must be a number between 1 and 5 (inclusive).\n", "language": { "python": { "mapCase": false @@ -46991,7 +47074,7 @@ "items": { "$ref": "#/types/aws:lex/IntentFollowUpPromptPromptMessage:IntentFollowUpPromptPromptMessage" }, - "description": "A set of messages, each of which provides a message string and its type.\nYou can specify the message string in plain text or in Speech Synthesis Markup Language (SSML).\nAttributes are documented under message.\n", + "description": "A set of messages, each of which provides a message string and its type.\nYou can specify the message string in plain text or in Speech Synthesis Markup Language (SSML).\nAttributes are documented under message. Must contain between 1 and 15 messages.\n", "language": { "python": { "mapCase": false @@ -47000,7 +47083,7 @@ }, "responseCard": { "type": "string", - "description": "The response card. Amazon Lex will substitute session attributes and\nslot values into the response card. For more information, see\n[Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html).\n", + "description": "The response card. Amazon Lex will substitute session attributes and\nslot values into the response card. For more information, see\n[Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length.\n", "language": { "python": { "mapCase": false @@ -47018,7 +47101,7 @@ "properties": { "content": { "type": "string", - "description": "The text of the message.\n", + "description": "The text of the message. Must be less than or equal to 1000 characters in length.\n", "language": { "python": { "mapCase": false @@ -47036,7 +47119,7 @@ }, "groupNumber": { "type": "integer", - "description": "Identifies the message group that the message belongs to. When a group\nis assigned to a message, Amazon Lex returns one message from each group in the response.\n", + "description": "Identifies the message group that the message belongs to. When a group\nis assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive).\n", "language": { "python": { "mapCase": false @@ -47057,7 +47140,7 @@ "items": { "$ref": "#/types/aws:lex/IntentFollowUpPromptRejectionStatementMessage:IntentFollowUpPromptRejectionStatementMessage" }, - "description": "A set of messages, each of which provides a message string and its type.\nYou can specify the message string in plain text or in Speech Synthesis Markup Language (SSML).\nAttributes are documented under message.\n", + "description": "A set of messages, each of which provides a message string and its type.\nYou can specify the message string in plain text or in Speech Synthesis Markup Language (SSML).\nAttributes are documented under message. Must contain between 1 and 15 messages.\n", "language": { "python": { "mapCase": false @@ -47066,7 +47149,7 @@ }, "responseCard": { "type": "string", - "description": "The response card. Amazon Lex will substitute session attributes and\nslot values into the response card. For more information, see\n[Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html).\n", + "description": "The response card. Amazon Lex will substitute session attributes and\nslot values into the response card. For more information, see\n[Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length.\n", "language": { "python": { "mapCase": false @@ -47083,7 +47166,7 @@ "properties": { "content": { "type": "string", - "description": "The text of the message.\n", + "description": "The text of the message. Must be less than or equal to 1000 characters in length.\n", "language": { "python": { "mapCase": false @@ -47101,7 +47184,7 @@ }, "groupNumber": { "type": "integer", - "description": "Identifies the message group that the message belongs to. When a group\nis assigned to a message, Amazon Lex returns one message from each group in the response.\n", + "description": "Identifies the message group that the message belongs to. When a group\nis assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive).\n", "language": { "python": { "mapCase": false @@ -47145,7 +47228,7 @@ "properties": { "messageVersion": { "type": "string", - "description": "The version of the request-response that you want Amazon Lex to use\nto invoke your Lambda function. For more information, see\n[Using Lambda Functions](https://docs.aws.amazon.com/lex/latest/dg/using-lambda.html).\n", + "description": "The version of the request-response that you want Amazon Lex to use\nto invoke your Lambda function. For more information, see\n[Using Lambda Functions](https://docs.aws.amazon.com/lex/latest/dg/using-lambda.html). Must be less than or equal to 5 characters in length.\n", "language": { "python": { "mapCase": false @@ -47175,7 +47258,7 @@ "items": { "$ref": "#/types/aws:lex/IntentRejectionStatementMessage:IntentRejectionStatementMessage" }, - "description": "A set of messages, each of which provides a message string and its type.\nYou can specify the message string in plain text or in Speech Synthesis Markup Language (SSML).\nAttributes are documented under message.\n", + "description": "A set of messages, each of which provides a message string and its type.\nYou can specify the message string in plain text or in Speech Synthesis Markup Language (SSML).\nAttributes are documented under message. Must contain between 1 and 15 messages.\n", "language": { "python": { "mapCase": false @@ -47184,7 +47267,7 @@ }, "responseCard": { "type": "string", - "description": "The response card. Amazon Lex will substitute session attributes and\nslot values into the response card. For more information, see\n[Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html).\n", + "description": "The response card. Amazon Lex will substitute session attributes and\nslot values into the response card. For more information, see\n[Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length.\n", "language": { "python": { "mapCase": false @@ -47201,7 +47284,7 @@ "properties": { "content": { "type": "string", - "description": "The text of the message.\n", + "description": "The text of the message. Must be less than or equal to 1000 characters in length.\n", "language": { "python": { "mapCase": false @@ -47219,7 +47302,7 @@ }, "groupNumber": { "type": "integer", - "description": "Identifies the message group that the message belongs to. When a group\nis assigned to a message, Amazon Lex returns one message from each group in the response.\n", + "description": "Identifies the message group that the message belongs to. When a group\nis assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive).\n", "language": { "python": { "mapCase": false @@ -47237,7 +47320,7 @@ "properties": { "description": { "type": "string", - "description": "A description of the bot.\n", + "description": "A description of the bot. Must be less than or equal to 200 characters in length.\n", "language": { "python": { "mapCase": false @@ -47246,7 +47329,7 @@ }, "name": { "type": "string", - "description": "The name of the intent slot that you want to create. The name is case sensitive.\n", + "description": "The name of the intent slot that you want to create. The name is case sensitive. Must be less than or equal to 100 characters in length.\n", "language": { "python": { "mapCase": false @@ -47255,7 +47338,7 @@ }, "priority": { "type": "integer", - "description": "Directs Lex the order in which to elicit this slot value from the user.\nFor example, if the intent has two slots with priorities 1 and 2, AWS Lex first elicits a value for\nthe slot with priority 1. If multiple slots share the same priority, the order in which Lex elicits\nvalues is arbitrary.\n", + "description": "Directs Lex the order in which to elicit this slot value from the user.\nFor example, if the intent has two slots with priorities 1 and 2, AWS Lex first elicits a value for\nthe slot with priority 1. If multiple slots share the same priority, the order in which Lex elicits\nvalues is arbitrary. Must be between 1 and 100.\n", "language": { "python": { "mapCase": false @@ -47264,7 +47347,7 @@ }, "responseCard": { "type": "string", - "description": "The response card. Amazon Lex will substitute session attributes and\nslot values into the response card. For more information, see\n[Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html).\n", + "description": "The response card. Amazon Lex will substitute session attributes and\nslot values into the response card. For more information, see\n[Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length.\n", "language": { "python": { "mapCase": false @@ -47276,7 +47359,7 @@ "items": { "type": "string" }, - "description": "If you know a specific pattern with which users might respond to\nan Amazon Lex request for a slot value, you can provide those utterances to improve accuracy. This\nis optional. In most cases, Amazon Lex is capable of understanding user utterances.\n", + "description": "If you know a specific pattern with which users might respond to\nan Amazon Lex request for a slot value, you can provide those utterances to improve accuracy. This\nis optional. In most cases, Amazon Lex is capable of understanding user utterances. Must have between 1 and 10 items in the list, and each item must be less than or equal to 200 characters in length.\n", "language": { "python": { "mapCase": false @@ -47294,7 +47377,7 @@ }, "slotType": { "type": "string", - "description": "The type of the slot, either a custom slot type that you defined or one of\nthe built-in slot types.\n", + "description": "The type of the slot, either a custom slot type that you defined or one of\nthe built-in slot types. Must be less than or equal to 100 characters in length.\n", "language": { "python": { "mapCase": false @@ -47303,7 +47386,7 @@ }, "slotTypeVersion": { "type": "string", - "description": "The version of the slot type.\n", + "description": "The version of the slot type. Must be less than or equal to 64 characters in length.\n", "language": { "python": { "mapCase": false @@ -47331,7 +47414,7 @@ "properties": { "maxAttempts": { "type": "integer", - "description": "The number of times to prompt the user for information.\n", + "description": "The number of times to prompt the user for information. Must be a number between 1 and 5 (inclusive).\n", "language": { "python": { "mapCase": false @@ -47343,7 +47426,7 @@ "items": { "$ref": "#/types/aws:lex/IntentSlotValueElicitationPromptMessage:IntentSlotValueElicitationPromptMessage" }, - "description": "A set of messages, each of which provides a message string and its type.\nYou can specify the message string in plain text or in Speech Synthesis Markup Language (SSML).\nAttributes are documented under message.\n", + "description": "A set of messages, each of which provides a message string and its type.\nYou can specify the message string in plain text or in Speech Synthesis Markup Language (SSML).\nAttributes are documented under message. Must contain between 1 and 15 messages.\n", "language": { "python": { "mapCase": false @@ -47352,7 +47435,7 @@ }, "responseCard": { "type": "string", - "description": "The response card. Amazon Lex will substitute session attributes and\nslot values into the response card. For more information, see\n[Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html).\n", + "description": "The response card. Amazon Lex will substitute session attributes and\nslot values into the response card. For more information, see\n[Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length.\n", "language": { "python": { "mapCase": false @@ -47370,7 +47453,7 @@ "properties": { "content": { "type": "string", - "description": "The text of the message.\n", + "description": "The text of the message. Must be less than or equal to 1000 characters in length.\n", "language": { "python": { "mapCase": false @@ -47388,7 +47471,7 @@ }, "groupNumber": { "type": "integer", - "description": "Identifies the message group that the message belongs to. When a group\nis assigned to a message, Amazon Lex returns one message from each group in the response.\n", + "description": "Identifies the message group that the message belongs to. When a group\nis assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive).\n", "language": { "python": { "mapCase": false @@ -47409,7 +47492,7 @@ "items": { "type": "string" }, - "description": "Additional values related to the slot type value.\n", + "description": "Additional values related to the slot type value. Each item must be less than or equal to 140 characters in length.\n", "language": { "python": { "mapCase": false @@ -47418,7 +47501,7 @@ }, "value": { "type": "string", - "description": "The value of the slot type.\n", + "description": "The value of the slot type. Must be less than or equal to 140 characters in length.\n", "language": { "python": { "mapCase": false @@ -51421,6 +51504,34 @@ } } }, + "aws:route53/getResolverEndpointFilter:getResolverEndpointFilter": { + "properties": { + "name": { + "type": "string", + "language": { + "python": { + "mapCase": false + } + } + }, + "values": { + "type": "array", + "items": { + "type": "string" + }, + "language": { + "python": { + "mapCase": false + } + } + } + }, + "type": "object", + "required": [ + "name", + "values" + ] + }, "aws:s3/AccessPointPublicAccessBlockConfiguration:AccessPointPublicAccessBlockConfiguration": { "properties": { "blockPublicAcls": { @@ -51754,7 +51865,7 @@ }, "id": { "type": "string", - "description": "Unique identifier for the rule.\n", + "description": "Unique identifier for the rule. Must be less than or equal to 255 characters in length.\n", "language": { "python": { "mapCase": false @@ -52331,7 +52442,7 @@ }, "id": { "type": "string", - "description": "Unique identifier for the rule.\n", + "description": "Unique identifier for the rule. Must be less than or equal to 255 characters in length.\n", "language": { "python": { "mapCase": false @@ -52340,7 +52451,7 @@ }, "prefix": { "type": "string", - "description": "Object keyname prefix identifying one or more objects to which the rule applies.\n", + "description": "Object keyname prefix identifying one or more objects to which the rule applies. Must be less than or equal to 1024 characters in length.\n", "language": { "python": { "mapCase": false @@ -52455,7 +52566,7 @@ "properties": { "prefix": { "type": "string", - "description": "Object keyname prefix that identifies subset of objects to which the rule applies.\n", + "description": "Object keyname prefix that identifies subset of objects to which the rule applies. Must be less than or equal to 1024 characters in length.\n", "language": { "python": { "mapCase": false @@ -53008,6 +53119,119 @@ "repositoryUrl" ] }, + "aws:sagemaker/EndpointConfigurationDataCaptureConfig:EndpointConfigurationDataCaptureConfig": { + "properties": { + "captureContentTypeHeader": { + "$ref": "#/types/aws:sagemaker/EndpointConfigurationDataCaptureConfigCaptureContentTypeHeader:EndpointConfigurationDataCaptureConfigCaptureContentTypeHeader", + "description": "The content type headers to capture. Fields are documented below.\n", + "language": { + "python": { + "mapCase": false + } + } + }, + "captureOptions": { + "type": "array", + "items": { + "$ref": "#/types/aws:sagemaker/EndpointConfigurationDataCaptureConfigCaptureOption:EndpointConfigurationDataCaptureConfigCaptureOption" + }, + "description": "Specifies what data to capture. Fields are documented below.\n", + "language": { + "python": { + "mapCase": false + } + } + }, + "destinationS3Uri": { + "type": "string", + "description": "The URL for S3 location where the captured data is stored.\n", + "language": { + "python": { + "mapCase": false + } + } + }, + "enableCapture": { + "type": "boolean", + "description": "Flag to enable data capture. Defaults to `false`.\n", + "language": { + "python": { + "mapCase": false + } + } + }, + "initialSamplingPercentage": { + "type": "integer", + "description": "Portion of data to capture. Should be between 0 and 100.\n", + "language": { + "python": { + "mapCase": false + } + } + }, + "kmsKeyId": { + "type": "string", + "description": "Amazon Resource Name (ARN) of a AWS Key Management Service key that Amazon SageMaker uses to encrypt the captured data on Amazon S3.\n", + "language": { + "python": { + "mapCase": false + } + } + } + }, + "type": "object", + "required": [ + "captureOptions", + "destinationS3Uri", + "initialSamplingPercentage" + ] + }, + "aws:sagemaker/EndpointConfigurationDataCaptureConfigCaptureContentTypeHeader:EndpointConfigurationDataCaptureConfigCaptureContentTypeHeader": { + "properties": { + "csvContentTypes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The CSV content type headers to capture.\n", + "language": { + "python": { + "mapCase": false + } + } + }, + "jsonContentTypes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The JSON content type headers to capture.\n", + "language": { + "python": { + "mapCase": false + } + } + } + }, + "type": "object" + }, + "aws:sagemaker/EndpointConfigurationDataCaptureConfigCaptureOption:EndpointConfigurationDataCaptureConfigCaptureOption": { + "properties": { + "captureMode": { + "type": "string", + "description": "Specifies the data to be captured. Should be one of `Input` or `Output`.\n", + "language": { + "python": { + "mapCase": false + } + } + } + }, + "type": "object", + "required": [ + "captureMode" + ] + }, "aws:sagemaker/EndpointConfigurationProductionVariant:EndpointConfigurationProductionVariant": { "properties": { "acceleratorType": { @@ -53114,6 +53338,15 @@ } } }, + "imageConfig": { + "$ref": "#/types/aws:sagemaker/ModelContainerImageConfig:ModelContainerImageConfig", + "description": "Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). For more information see [Using a Private Docker Registry for Real-Time Inference Containers](https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms-containers-inference-private.html). see Image Config.\n", + "language": { + "python": { + "mapCase": false + } + } + }, "mode": { "type": "string", "description": "The container hosts value `SingleModel/MultiModel`. The default value is `SingleModel`.\n", @@ -53138,6 +53371,23 @@ "image" ] }, + "aws:sagemaker/ModelContainerImageConfig:ModelContainerImageConfig": { + "properties": { + "repositoryAccessMode": { + "type": "string", + "description": "Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). Allowed values are: `Platform` and `Vpc`.\n", + "language": { + "python": { + "mapCase": false + } + } + } + }, + "type": "object", + "required": [ + "repositoryAccessMode" + ] + }, "aws:sagemaker/ModelPrimaryContainer:ModelPrimaryContainer": { "properties": { "containerHostname": { @@ -53170,6 +53420,15 @@ } } }, + "imageConfig": { + "$ref": "#/types/aws:sagemaker/ModelPrimaryContainerImageConfig:ModelPrimaryContainerImageConfig", + "description": "Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). For more information see [Using a Private Docker Registry for Real-Time Inference Containers](https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms-containers-inference-private.html). see Image Config.\n", + "language": { + "python": { + "mapCase": false + } + } + }, "mode": { "type": "string", "description": "The container hosts value `SingleModel/MultiModel`. The default value is `SingleModel`.\n", @@ -53194,6 +53453,23 @@ "image" ] }, + "aws:sagemaker/ModelPrimaryContainerImageConfig:ModelPrimaryContainerImageConfig": { + "properties": { + "repositoryAccessMode": { + "type": "string", + "description": "Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). Allowed values are: `Platform` and `Vpc`.\n", + "language": { + "python": { + "mapCase": false + } + } + } + }, + "type": "object", + "required": [ + "repositoryAccessMode" + ] + }, "aws:sagemaker/ModelVpcConfig:ModelVpcConfig": { "properties": { "securityGroupIds": { @@ -131783,6 +132059,68 @@ "requiredInputs": [] } } + }, + "aws:workspaces/getWorkspaceWorkspaceProperty:getWorkspaceWorkspaceProperty": { + "properties": { + "computeTypeName": { + "type": "string", + "description": "The compute type. For more information, see [Amazon WorkSpaces Bundles](http://aws.amazon.com/workspaces/details/#Amazon_WorkSpaces_Bundles). Valid values are `VALUE`, `STANDARD`, `PERFORMANCE`, `POWER`, `GRAPHICS`, `POWERPRO` and `GRAPHICSPRO`.\n", + "language": { + "python": { + "mapCase": false + } + } + }, + "rootVolumeSizeGib": { + "type": "integer", + "description": "The size of the root volume.\n", + "language": { + "python": { + "mapCase": false + } + } + }, + "runningMode": { + "type": "string", + "description": "The running mode. For more information, see [Manage the WorkSpace Running Mode](https://docs.aws.amazon.com/workspaces/latest/adminguide/running-mode.html). Valid values are `AUTO_STOP` and `ALWAYS_ON`.\n", + "language": { + "python": { + "mapCase": false + } + } + }, + "runningModeAutoStopTimeoutInMinutes": { + "type": "integer", + "description": "The time after a user logs off when WorkSpaces are automatically stopped. Configured in 60-minute intervals.\n", + "language": { + "python": { + "mapCase": false + } + } + }, + "userVolumeSizeGib": { + "type": "integer", + "description": "The size of the user storage.\n", + "language": { + "python": { + "mapCase": false + } + } + } + }, + "type": "object", + "required": [ + "computeTypeName", + "rootVolumeSizeGib", + "runningMode", + "runningModeAutoStopTimeoutInMinutes", + "userVolumeSizeGib" + ], + "language": { + "nodejs": { + "requiredInputs": [] + } + } } }, "provider": { @@ -136821,8 +137159,7 @@ "description": "The [template selection expression](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-template-selection-expressions) for the integration.\n" }, "timeoutMilliseconds": { - "type": "integer", - "description": "Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds or 29 seconds.\n" + "type": "integer" }, "tlsConfig": { "$ref": "#/types/aws:apigatewayv2/IntegrationTlsConfig:IntegrationTlsConfig", @@ -136832,7 +137169,8 @@ "required": [ "apiId", "integrationResponseSelectionExpression", - "integrationType" + "integrationType", + "timeoutMilliseconds" ], "inputProperties": { "apiId": { @@ -136902,8 +137240,7 @@ "description": "The [template selection expression](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-template-selection-expressions) for the integration.\n" }, "timeoutMilliseconds": { - "type": "integer", - "description": "Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds or 29 seconds.\n" + "type": "integer" }, "tlsConfig": { "$ref": "#/types/aws:apigatewayv2/IntegrationTlsConfig:IntegrationTlsConfig", @@ -136988,8 +137325,7 @@ "description": "The [template selection expression](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-template-selection-expressions) for the integration.\n" }, "timeoutMilliseconds": { - "type": "integer", - "description": "Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds or 29 seconds.\n" + "type": "integer" }, "tlsConfig": { "$ref": "#/types/aws:apigatewayv2/IntegrationTlsConfig:IntegrationTlsConfig", @@ -145656,6 +145992,10 @@ "$ref": "#/types/aws:cloudwatch/EventPermissionCondition:EventPermissionCondition", "description": "Configuration block to limit the event bus permissions you are granting to only accounts that fulfill the condition. Specified below.\n" }, + "eventBusName": { + "type": "string", + "description": "The event bus to set the permissions on. If you omit this, the permissions are set on the `default` event bus.\n" + }, "principal": { "type": "string", "description": "The 12-digit AWS account ID that you are permitting to put events to your default event bus. Specify `*` to permit any account to put events to your default event bus, optionally limited by `condition`.\n" @@ -145678,6 +146018,10 @@ "$ref": "#/types/aws:cloudwatch/EventPermissionCondition:EventPermissionCondition", "description": "Configuration block to limit the event bus permissions you are granting to only accounts that fulfill the condition. Specified below.\n" }, + "eventBusName": { + "type": "string", + "description": "The event bus to set the permissions on. If you omit this, the permissions are set on the `default` event bus.\n" + }, "principal": { "type": "string", "description": "The 12-digit AWS account ID that you are permitting to put events to your default event bus. Specify `*` to permit any account to put events to your default event bus, optionally limited by `condition`.\n" @@ -145702,6 +146046,10 @@ "$ref": "#/types/aws:cloudwatch/EventPermissionCondition:EventPermissionCondition", "description": "Configuration block to limit the event bus permissions you are granting to only accounts that fulfill the condition. Specified below.\n" }, + "eventBusName": { + "type": "string", + "description": "The event bus to set the permissions on. If you omit this, the permissions are set on the `default` event bus.\n" + }, "principal": { "type": "string", "description": "The 12-digit AWS account ID that you are permitting to put events to your default event bus. Specify `*` to permit any account to put events to your default event bus, optionally limited by `condition`.\n" @@ -145857,7 +146205,7 @@ } }, "aws:cloudwatch/eventTarget:EventTarget": { - "description": "Provides an EventBridge Target resource.\n\n\u003e **Note:** EventBridge was formerly known as CloudWatch Events. The functionality is identical.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst console = new aws.cloudwatch.EventRule(\"console\", {\n description: \"Capture all EC2 scaling events\",\n eventPattern: `{\n \"source\": [\n \"aws.autoscaling\"\n ],\n \"detail-type\": [\n \"EC2 Instance Launch Successful\",\n \"EC2 Instance Terminate Successful\",\n \"EC2 Instance Launch Unsuccessful\",\n \"EC2 Instance Terminate Unsuccessful\"\n ]\n}\n`,\n});\nconst testStream = new aws.kinesis.Stream(\"testStream\", {shardCount: 1});\nconst yada = new aws.cloudwatch.EventTarget(\"yada\", {\n rule: console.name,\n arn: testStream.arn,\n runCommandTargets: [\n {\n key: \"tag:Name\",\n values: [\"FooBar\"],\n },\n {\n key: \"InstanceIds\",\n values: [\"i-162058cd308bffec2\"],\n },\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nconsole = aws.cloudwatch.EventRule(\"console\",\n description=\"Capture all EC2 scaling events\",\n event_pattern=\"\"\"{\n \"source\": [\n \"aws.autoscaling\"\n ],\n \"detail-type\": [\n \"EC2 Instance Launch Successful\",\n \"EC2 Instance Terminate Successful\",\n \"EC2 Instance Launch Unsuccessful\",\n \"EC2 Instance Terminate Unsuccessful\"\n ]\n}\n\"\"\")\ntest_stream = aws.kinesis.Stream(\"testStream\", shard_count=1)\nyada = aws.cloudwatch.EventTarget(\"yada\",\n rule=console.name,\n arn=test_stream.arn,\n run_command_targets=[\n aws.cloudwatch.EventTargetRunCommandTargetArgs(\n key=\"tag:Name\",\n values=[\"FooBar\"],\n ),\n aws.cloudwatch.EventTargetRunCommandTargetArgs(\n key=\"InstanceIds\",\n values=[\"i-162058cd308bffec2\"],\n ),\n ])\n```\n```csharp\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var console = new Aws.CloudWatch.EventRule(\"console\", new Aws.CloudWatch.EventRuleArgs\n {\n Description = \"Capture all EC2 scaling events\",\n EventPattern = @\"{\n \"\"source\"\": [\n \"\"aws.autoscaling\"\"\n ],\n \"\"detail-type\"\": [\n \"\"EC2 Instance Launch Successful\"\",\n \"\"EC2 Instance Terminate Successful\"\",\n \"\"EC2 Instance Launch Unsuccessful\"\",\n \"\"EC2 Instance Terminate Unsuccessful\"\"\n ]\n}\n\",\n });\n var testStream = new Aws.Kinesis.Stream(\"testStream\", new Aws.Kinesis.StreamArgs\n {\n ShardCount = 1,\n });\n var yada = new Aws.CloudWatch.EventTarget(\"yada\", new Aws.CloudWatch.EventTargetArgs\n {\n Rule = console.Name,\n Arn = testStream.Arn,\n RunCommandTargets = \n {\n new Aws.CloudWatch.Inputs.EventTargetRunCommandTargetArgs\n {\n Key = \"tag:Name\",\n Values = \n {\n \"FooBar\",\n },\n },\n new Aws.CloudWatch.Inputs.EventTargetRunCommandTargetArgs\n {\n Key = \"InstanceIds\",\n Values = \n {\n \"i-162058cd308bffec2\",\n },\n },\n },\n });\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/cloudwatch\"\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/kinesis\"\n\t\"github.com/pulumi/pulumi/sdk/v2/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tconsole, err := cloudwatch.NewEventRule(ctx, \"console\", \u0026cloudwatch.EventRuleArgs{\n\t\t\tDescription: pulumi.String(\"Capture all EC2 scaling events\"),\n\t\t\tEventPattern: pulumi.String(fmt.Sprintf(\"%v%v%v%v%v%v%v%v%v%v%v\", \"{\\n\", \" \\\"source\\\": [\\n\", \" \\\"aws.autoscaling\\\"\\n\", \" ],\\n\", \" \\\"detail-type\\\": [\\n\", \" \\\"EC2 Instance Launch Successful\\\",\\n\", \" \\\"EC2 Instance Terminate Successful\\\",\\n\", \" \\\"EC2 Instance Launch Unsuccessful\\\",\\n\", \" \\\"EC2 Instance Terminate Unsuccessful\\\"\\n\", \" ]\\n\", \"}\\n\")),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttestStream, err := kinesis.NewStream(ctx, \"testStream\", \u0026kinesis.StreamArgs{\n\t\t\tShardCount: pulumi.Int(1),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudwatch.NewEventTarget(ctx, \"yada\", \u0026cloudwatch.EventTargetArgs{\n\t\t\tRule: console.Name,\n\t\t\tArn: testStream.Arn,\n\t\t\tRunCommandTargets: cloudwatch.EventTargetRunCommandTargetArray{\n\t\t\t\t\u0026cloudwatch.EventTargetRunCommandTargetArgs{\n\t\t\t\t\tKey: pulumi.String(\"tag:Name\"),\n\t\t\t\t\tValues: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"FooBar\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026cloudwatch.EventTargetRunCommandTargetArgs{\n\t\t\t\t\tKey: pulumi.String(\"InstanceIds\"),\n\t\t\t\t\tValues: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"i-162058cd308bffec2\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n{{% /example %}}\n{{% /examples %}}\n## Example SSM Document Usage\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst ssmLifecycleTrust = aws.iam.getPolicyDocument({\n statements: [{\n actions: [\"sts:AssumeRole\"],\n principals: [{\n type: \"Service\",\n identifiers: [\"events.amazonaws.com\"],\n }],\n }],\n});\nconst stopInstance = new aws.ssm.Document(\"stopInstance\", {\n documentType: \"Command\",\n content: ` {\n \"schemaVersion\": \"1.2\",\n \"description\": \"Stop an instance\",\n \"parameters\": {\n\n },\n \"runtimeConfig\": {\n \"aws:runShellScript\": {\n \"properties\": [\n {\n \"id\": \"0.aws:runShellScript\",\n \"runCommand\": [\"halt\"]\n }\n ]\n }\n }\n }\n`,\n});\nconst ssmLifecyclePolicyDocument = stopInstance.arn.apply(arn =\u003e aws.iam.getPolicyDocument({\n statements: [\n {\n effect: \"Allow\",\n actions: [\"ssm:SendCommand\"],\n resources: [\"arn:aws:ec2:eu-west-1:1234567890:instance/*\"],\n conditions: [{\n test: \"StringEquals\",\n variable: \"ec2:ResourceTag/Terminate\",\n values: [\"*\"],\n }],\n },\n {\n effect: \"Allow\",\n actions: [\"ssm:SendCommand\"],\n resources: [arn],\n },\n ],\n}));\nconst ssmLifecycleRole = new aws.iam.Role(\"ssmLifecycleRole\", {assumeRolePolicy: ssmLifecycleTrust.then(ssmLifecycleTrust =\u003e ssmLifecycleTrust.json)});\nconst ssmLifecyclePolicy = new aws.iam.Policy(\"ssmLifecyclePolicy\", {policy: ssmLifecyclePolicyDocument.json});\nconst stopInstancesEventRule = new aws.cloudwatch.EventRule(\"stopInstancesEventRule\", {\n description: \"Stop instances nightly\",\n scheduleExpression: \"cron(0 0 * * ? *)\",\n});\nconst stopInstancesEventTarget = new aws.cloudwatch.EventTarget(\"stopInstancesEventTarget\", {\n arn: stopInstance.arn,\n rule: stopInstancesEventRule.name,\n roleArn: ssmLifecycleRole.arn,\n runCommandTargets: [{\n key: \"tag:Terminate\",\n values: [\"midnight\"],\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nssm_lifecycle_trust = aws.iam.get_policy_document(statements=[aws.iam.GetPolicyDocumentStatementArgs(\n actions=[\"sts:AssumeRole\"],\n principals=[aws.iam.GetPolicyDocumentStatementPrincipalArgs(\n type=\"Service\",\n identifiers=[\"events.amazonaws.com\"],\n )],\n)])\nstop_instance = aws.ssm.Document(\"stopInstance\",\n document_type=\"Command\",\n content=\"\"\" {\n \"schemaVersion\": \"1.2\",\n \"description\": \"Stop an instance\",\n \"parameters\": {\n\n },\n \"runtimeConfig\": {\n \"aws:runShellScript\": {\n \"properties\": [\n {\n \"id\": \"0.aws:runShellScript\",\n \"runCommand\": [\"halt\"]\n }\n ]\n }\n }\n }\n\"\"\")\nssm_lifecycle_policy_document = stop_instance.arn.apply(lambda arn: aws.iam.get_policy_document(statements=[\n aws.iam.GetPolicyDocumentStatementArgs(\n effect=\"Allow\",\n actions=[\"ssm:SendCommand\"],\n resources=[\"arn:aws:ec2:eu-west-1:1234567890:instance/*\"],\n conditions=[aws.iam.GetPolicyDocumentStatementConditionArgs(\n test=\"StringEquals\",\n variable=\"ec2:ResourceTag/Terminate\",\n values=[\"*\"],\n )],\n ),\n aws.iam.GetPolicyDocumentStatementArgs(\n effect=\"Allow\",\n actions=[\"ssm:SendCommand\"],\n resources=[arn],\n ),\n]))\nssm_lifecycle_role = aws.iam.Role(\"ssmLifecycleRole\", assume_role_policy=ssm_lifecycle_trust.json)\nssm_lifecycle_policy = aws.iam.Policy(\"ssmLifecyclePolicy\", policy=ssm_lifecycle_policy_document.json)\nstop_instances_event_rule = aws.cloudwatch.EventRule(\"stopInstancesEventRule\",\n description=\"Stop instances nightly\",\n schedule_expression=\"cron(0 0 * * ? *)\")\nstop_instances_event_target = aws.cloudwatch.EventTarget(\"stopInstancesEventTarget\",\n arn=stop_instance.arn,\n rule=stop_instances_event_rule.name,\n role_arn=ssm_lifecycle_role.arn,\n run_command_targets=[aws.cloudwatch.EventTargetRunCommandTargetArgs(\n key=\"tag:Terminate\",\n values=[\"midnight\"],\n )])\n```\n```csharp\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var ssmLifecycleTrust = Output.Create(Aws.Iam.GetPolicyDocument.InvokeAsync(new Aws.Iam.GetPolicyDocumentArgs\n {\n Statements = \n {\n new Aws.Iam.Inputs.GetPolicyDocumentStatementArgs\n {\n Actions = \n {\n \"sts:AssumeRole\",\n },\n Principals = \n {\n new Aws.Iam.Inputs.GetPolicyDocumentStatementPrincipalArgs\n {\n Type = \"Service\",\n Identifiers = \n {\n \"events.amazonaws.com\",\n },\n },\n },\n },\n },\n }));\n var stopInstance = new Aws.Ssm.Document(\"stopInstance\", new Aws.Ssm.DocumentArgs\n {\n DocumentType = \"Command\",\n Content = @\" {\n \"\"schemaVersion\"\": \"\"1.2\"\",\n \"\"description\"\": \"\"Stop an instance\"\",\n \"\"parameters\"\": {\n\n },\n \"\"runtimeConfig\"\": {\n \"\"aws:runShellScript\"\": {\n \"\"properties\"\": [\n {\n \"\"id\"\": \"\"0.aws:runShellScript\"\",\n \"\"runCommand\"\": [\"\"halt\"\"]\n }\n ]\n }\n }\n }\n\",\n });\n var ssmLifecyclePolicyDocument = stopInstance.Arn.Apply(arn =\u003e Aws.Iam.GetPolicyDocument.InvokeAsync(new Aws.Iam.GetPolicyDocumentArgs\n {\n Statements = \n {\n new Aws.Iam.Inputs.GetPolicyDocumentStatementArgs\n {\n Effect = \"Allow\",\n Actions = \n {\n \"ssm:SendCommand\",\n },\n Resources = \n {\n \"arn:aws:ec2:eu-west-1:1234567890:instance/*\",\n },\n Conditions = \n {\n new Aws.Iam.Inputs.GetPolicyDocumentStatementConditionArgs\n {\n Test = \"StringEquals\",\n Variable = \"ec2:ResourceTag/Terminate\",\n Values = \n {\n \"*\",\n },\n },\n },\n },\n new Aws.Iam.Inputs.GetPolicyDocumentStatementArgs\n {\n Effect = \"Allow\",\n Actions = \n {\n \"ssm:SendCommand\",\n },\n Resources = \n {\n arn,\n },\n },\n },\n }));\n var ssmLifecycleRole = new Aws.Iam.Role(\"ssmLifecycleRole\", new Aws.Iam.RoleArgs\n {\n AssumeRolePolicy = ssmLifecycleTrust.Apply(ssmLifecycleTrust =\u003e ssmLifecycleTrust.Json),\n });\n var ssmLifecyclePolicy = new Aws.Iam.Policy(\"ssmLifecyclePolicy\", new Aws.Iam.PolicyArgs\n {\n Policy = ssmLifecyclePolicyDocument.Apply(ssmLifecyclePolicyDocument =\u003e ssmLifecyclePolicyDocument.Json),\n });\n var stopInstancesEventRule = new Aws.CloudWatch.EventRule(\"stopInstancesEventRule\", new Aws.CloudWatch.EventRuleArgs\n {\n Description = \"Stop instances nightly\",\n ScheduleExpression = \"cron(0 0 * * ? *)\",\n });\n var stopInstancesEventTarget = new Aws.CloudWatch.EventTarget(\"stopInstancesEventTarget\", new Aws.CloudWatch.EventTargetArgs\n {\n Arn = stopInstance.Arn,\n Rule = stopInstancesEventRule.Name,\n RoleArn = ssmLifecycleRole.Arn,\n RunCommandTargets = \n {\n new Aws.CloudWatch.Inputs.EventTargetRunCommandTargetArgs\n {\n Key = \"tag:Terminate\",\n Values = \n {\n \"midnight\",\n },\n },\n },\n });\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/cloudwatch\"\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/iam\"\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/ssm\"\n\t\"github.com/pulumi/pulumi/sdk/v2/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tssmLifecycleTrust, err := iam.GetPolicyDocument(ctx, \u0026iam.GetPolicyDocumentArgs{\n\t\t\tStatements: []iam.GetPolicyDocumentStatement{\n\t\t\t\tiam.GetPolicyDocumentStatement{\n\t\t\t\t\tActions: []string{\n\t\t\t\t\t\t\"sts:AssumeRole\",\n\t\t\t\t\t},\n\t\t\t\t\tPrincipals: []iam.GetPolicyDocumentStatementPrincipal{\n\t\t\t\t\t\tiam.GetPolicyDocumentStatementPrincipal{\n\t\t\t\t\t\t\tType: \"Service\",\n\t\t\t\t\t\t\tIdentifiers: []string{\n\t\t\t\t\t\t\t\t\"events.amazonaws.com\",\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tstopInstance, err := ssm.NewDocument(ctx, \"stopInstance\", \u0026ssm.DocumentArgs{\n\t\t\tDocumentType: pulumi.String(\"Command\"),\n\t\t\tContent: pulumi.String(fmt.Sprintf(\"%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v\", \" {\\n\", \" \\\"schemaVersion\\\": \\\"1.2\\\",\\n\", \" \\\"description\\\": \\\"Stop an instance\\\",\\n\", \" \\\"parameters\\\": {\\n\", \"\\n\", \" },\\n\", \" \\\"runtimeConfig\\\": {\\n\", \" \\\"aws:runShellScript\\\": {\\n\", \" \\\"properties\\\": [\\n\", \" {\\n\", \" \\\"id\\\": \\\"0.aws:runShellScript\\\",\\n\", \" \\\"runCommand\\\": [\\\"halt\\\"]\\n\", \" }\\n\", \" ]\\n\", \" }\\n\", \" }\\n\", \" }\\n\")),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tssmLifecycleRole, err := iam.NewRole(ctx, \"ssmLifecycleRole\", \u0026iam.RoleArgs{\n\t\t\tAssumeRolePolicy: pulumi.String(ssmLifecycleTrust.Json),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = iam.NewPolicy(ctx, \"ssmLifecyclePolicy\", \u0026iam.PolicyArgs{\n\t\t\tPolicy: ssmLifecyclePolicyDocument.ApplyT(func(ssmLifecyclePolicyDocument iam.GetPolicyDocumentResult) (string, error) {\n\t\t\t\treturn ssmLifecyclePolicyDocument.Json, nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tstopInstancesEventRule, err := cloudwatch.NewEventRule(ctx, \"stopInstancesEventRule\", \u0026cloudwatch.EventRuleArgs{\n\t\t\tDescription: pulumi.String(\"Stop instances nightly\"),\n\t\t\tScheduleExpression: pulumi.String(\"cron(0 0 * * ? *)\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudwatch.NewEventTarget(ctx, \"stopInstancesEventTarget\", \u0026cloudwatch.EventTargetArgs{\n\t\t\tArn: stopInstance.Arn,\n\t\t\tRule: stopInstancesEventRule.Name,\n\t\t\tRoleArn: ssmLifecycleRole.Arn,\n\t\t\tRunCommandTargets: cloudwatch.EventTargetRunCommandTargetArray{\n\t\t\t\t\u0026cloudwatch.EventTargetRunCommandTargetArgs{\n\t\t\t\t\tKey: pulumi.String(\"tag:Terminate\"),\n\t\t\t\t\tValues: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"midnight\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n\n## Example RunCommand Usage\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst stopInstancesEventRule = new aws.cloudwatch.EventRule(\"stopInstancesEventRule\", {\n description: \"Stop instances nightly\",\n scheduleExpression: \"cron(0 0 * * ? *)\",\n});\nconst stopInstancesEventTarget = new aws.cloudwatch.EventTarget(\"stopInstancesEventTarget\", {\n arn: `arn:aws:ssm:${_var.aws_region}::document/AWS-RunShellScript`,\n input: \"{\\\"commands\\\":[\\\"halt\\\"]}\",\n rule: stopInstancesEventRule.name,\n roleArn: aws_iam_role.ssm_lifecycle.arn,\n runCommandTargets: [{\n key: \"tag:Terminate\",\n values: [\"midnight\"],\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nstop_instances_event_rule = aws.cloudwatch.EventRule(\"stopInstancesEventRule\",\n description=\"Stop instances nightly\",\n schedule_expression=\"cron(0 0 * * ? *)\")\nstop_instances_event_target = aws.cloudwatch.EventTarget(\"stopInstancesEventTarget\",\n arn=f\"arn:aws:ssm:{var['aws_region']}::document/AWS-RunShellScript\",\n input=\"{\\\"commands\\\":[\\\"halt\\\"]}\",\n rule=stop_instances_event_rule.name,\n role_arn=aws_iam_role[\"ssm_lifecycle\"][\"arn\"],\n run_command_targets=[aws.cloudwatch.EventTargetRunCommandTargetArgs(\n key=\"tag:Terminate\",\n values=[\"midnight\"],\n )])\n```\n```csharp\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var stopInstancesEventRule = new Aws.CloudWatch.EventRule(\"stopInstancesEventRule\", new Aws.CloudWatch.EventRuleArgs\n {\n Description = \"Stop instances nightly\",\n ScheduleExpression = \"cron(0 0 * * ? *)\",\n });\n var stopInstancesEventTarget = new Aws.CloudWatch.EventTarget(\"stopInstancesEventTarget\", new Aws.CloudWatch.EventTargetArgs\n {\n Arn = $\"arn:aws:ssm:{@var.Aws_region}::document/AWS-RunShellScript\",\n Input = \"{\\\"commands\\\":[\\\"halt\\\"]}\",\n Rule = stopInstancesEventRule.Name,\n RoleArn = aws_iam_role.Ssm_lifecycle.Arn,\n RunCommandTargets = \n {\n new Aws.CloudWatch.Inputs.EventTargetRunCommandTargetArgs\n {\n Key = \"tag:Terminate\",\n Values = \n {\n \"midnight\",\n },\n },\n },\n });\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/cloudwatch\"\n\t\"github.com/pulumi/pulumi/sdk/v2/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tstopInstancesEventRule, err := cloudwatch.NewEventRule(ctx, \"stopInstancesEventRule\", \u0026cloudwatch.EventRuleArgs{\n\t\t\tDescription: pulumi.String(\"Stop instances nightly\"),\n\t\t\tScheduleExpression: pulumi.String(\"cron(0 0 * * ? *)\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudwatch.NewEventTarget(ctx, \"stopInstancesEventTarget\", \u0026cloudwatch.EventTargetArgs{\n\t\t\tArn: pulumi.String(fmt.Sprintf(\"%v%v%v\", \"arn:aws:ssm:\", _var.Aws_region, \"::document/AWS-RunShellScript\")),\n\t\t\tInput: pulumi.String(\"{\\\"commands\\\":[\\\"halt\\\"]}\"),\n\t\t\tRule: stopInstancesEventRule.Name,\n\t\t\tRoleArn: pulumi.Any(aws_iam_role.Ssm_lifecycle.Arn),\n\t\t\tRunCommandTargets: cloudwatch.EventTargetRunCommandTargetArray{\n\t\t\t\t\u0026cloudwatch.EventTargetRunCommandTargetArgs{\n\t\t\t\t\tKey: pulumi.String(\"tag:Terminate\"),\n\t\t\t\t\tValues: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"midnight\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n", + "description": "Provides an EventBridge Target resource.\n\n\u003e **Note:** EventBridge was formerly known as CloudWatch Events. The functionality is identical.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst console = new aws.cloudwatch.EventRule(\"console\", {\n description: \"Capture all EC2 scaling events\",\n eventPattern: `{\n \"source\": [\n \"aws.autoscaling\"\n ],\n \"detail-type\": [\n \"EC2 Instance Launch Successful\",\n \"EC2 Instance Terminate Successful\",\n \"EC2 Instance Launch Unsuccessful\",\n \"EC2 Instance Terminate Unsuccessful\"\n ]\n}\n`,\n});\nconst testStream = new aws.kinesis.Stream(\"testStream\", {shardCount: 1});\nconst yada = new aws.cloudwatch.EventTarget(\"yada\", {\n rule: console.name,\n arn: testStream.arn,\n runCommandTargets: [\n {\n key: \"tag:Name\",\n values: [\"FooBar\"],\n },\n {\n key: \"InstanceIds\",\n values: [\"i-162058cd308bffec2\"],\n },\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nconsole = aws.cloudwatch.EventRule(\"console\",\n description=\"Capture all EC2 scaling events\",\n event_pattern=\"\"\"{\n \"source\": [\n \"aws.autoscaling\"\n ],\n \"detail-type\": [\n \"EC2 Instance Launch Successful\",\n \"EC2 Instance Terminate Successful\",\n \"EC2 Instance Launch Unsuccessful\",\n \"EC2 Instance Terminate Unsuccessful\"\n ]\n}\n\"\"\")\ntest_stream = aws.kinesis.Stream(\"testStream\", shard_count=1)\nyada = aws.cloudwatch.EventTarget(\"yada\",\n rule=console.name,\n arn=test_stream.arn,\n run_command_targets=[\n aws.cloudwatch.EventTargetRunCommandTargetArgs(\n key=\"tag:Name\",\n values=[\"FooBar\"],\n ),\n aws.cloudwatch.EventTargetRunCommandTargetArgs(\n key=\"InstanceIds\",\n values=[\"i-162058cd308bffec2\"],\n ),\n ])\n```\n```csharp\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var console = new Aws.CloudWatch.EventRule(\"console\", new Aws.CloudWatch.EventRuleArgs\n {\n Description = \"Capture all EC2 scaling events\",\n EventPattern = @\"{\n \"\"source\"\": [\n \"\"aws.autoscaling\"\"\n ],\n \"\"detail-type\"\": [\n \"\"EC2 Instance Launch Successful\"\",\n \"\"EC2 Instance Terminate Successful\"\",\n \"\"EC2 Instance Launch Unsuccessful\"\",\n \"\"EC2 Instance Terminate Unsuccessful\"\"\n ]\n}\n\",\n });\n var testStream = new Aws.Kinesis.Stream(\"testStream\", new Aws.Kinesis.StreamArgs\n {\n ShardCount = 1,\n });\n var yada = new Aws.CloudWatch.EventTarget(\"yada\", new Aws.CloudWatch.EventTargetArgs\n {\n Rule = console.Name,\n Arn = testStream.Arn,\n RunCommandTargets = \n {\n new Aws.CloudWatch.Inputs.EventTargetRunCommandTargetArgs\n {\n Key = \"tag:Name\",\n Values = \n {\n \"FooBar\",\n },\n },\n new Aws.CloudWatch.Inputs.EventTargetRunCommandTargetArgs\n {\n Key = \"InstanceIds\",\n Values = \n {\n \"i-162058cd308bffec2\",\n },\n },\n },\n });\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/cloudwatch\"\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/kinesis\"\n\t\"github.com/pulumi/pulumi/sdk/v2/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tconsole, err := cloudwatch.NewEventRule(ctx, \"console\", \u0026cloudwatch.EventRuleArgs{\n\t\t\tDescription: pulumi.String(\"Capture all EC2 scaling events\"),\n\t\t\tEventPattern: pulumi.String(fmt.Sprintf(\"%v%v%v%v%v%v%v%v%v%v%v\", \"{\\n\", \" \\\"source\\\": [\\n\", \" \\\"aws.autoscaling\\\"\\n\", \" ],\\n\", \" \\\"detail-type\\\": [\\n\", \" \\\"EC2 Instance Launch Successful\\\",\\n\", \" \\\"EC2 Instance Terminate Successful\\\",\\n\", \" \\\"EC2 Instance Launch Unsuccessful\\\",\\n\", \" \\\"EC2 Instance Terminate Unsuccessful\\\"\\n\", \" ]\\n\", \"}\\n\")),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttestStream, err := kinesis.NewStream(ctx, \"testStream\", \u0026kinesis.StreamArgs{\n\t\t\tShardCount: pulumi.Int(1),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudwatch.NewEventTarget(ctx, \"yada\", \u0026cloudwatch.EventTargetArgs{\n\t\t\tRule: console.Name,\n\t\t\tArn: testStream.Arn,\n\t\t\tRunCommandTargets: cloudwatch.EventTargetRunCommandTargetArray{\n\t\t\t\t\u0026cloudwatch.EventTargetRunCommandTargetArgs{\n\t\t\t\t\tKey: pulumi.String(\"tag:Name\"),\n\t\t\t\t\tValues: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"FooBar\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026cloudwatch.EventTargetRunCommandTargetArgs{\n\t\t\t\t\tKey: pulumi.String(\"InstanceIds\"),\n\t\t\t\t\tValues: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"i-162058cd308bffec2\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n{{% /example %}}\n{{% /examples %}}\n## Example SSM Document Usage\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst ssmLifecycleTrust = aws.iam.getPolicyDocument({\n statements: [{\n actions: [\"sts:AssumeRole\"],\n principals: [{\n type: \"Service\",\n identifiers: [\"events.amazonaws.com\"],\n }],\n }],\n});\nconst stopInstance = new aws.ssm.Document(\"stopInstance\", {\n documentType: \"Command\",\n content: ` {\n \"schemaVersion\": \"1.2\",\n \"description\": \"Stop an instance\",\n \"parameters\": {\n\n },\n \"runtimeConfig\": {\n \"aws:runShellScript\": {\n \"properties\": [\n {\n \"id\": \"0.aws:runShellScript\",\n \"runCommand\": [\"halt\"]\n }\n ]\n }\n }\n }\n`,\n});\nconst ssmLifecyclePolicyDocument = stopInstance.arn.apply(arn =\u003e aws.iam.getPolicyDocument({\n statements: [\n {\n effect: \"Allow\",\n actions: [\"ssm:SendCommand\"],\n resources: [\"arn:aws:ec2:eu-west-1:1234567890:instance/*\"],\n conditions: [{\n test: \"StringEquals\",\n variable: \"ec2:ResourceTag/Terminate\",\n values: [\"*\"],\n }],\n },\n {\n effect: \"Allow\",\n actions: [\"ssm:SendCommand\"],\n resources: [arn],\n },\n ],\n}));\nconst ssmLifecycleRole = new aws.iam.Role(\"ssmLifecycleRole\", {assumeRolePolicy: ssmLifecycleTrust.then(ssmLifecycleTrust =\u003e ssmLifecycleTrust.json)});\nconst ssmLifecyclePolicy = new aws.iam.Policy(\"ssmLifecyclePolicy\", {policy: ssmLifecyclePolicyDocument.json});\nconst stopInstancesEventRule = new aws.cloudwatch.EventRule(\"stopInstancesEventRule\", {\n description: \"Stop instances nightly\",\n scheduleExpression: \"cron(0 0 * * ? *)\",\n});\nconst stopInstancesEventTarget = new aws.cloudwatch.EventTarget(\"stopInstancesEventTarget\", {\n arn: stopInstance.arn,\n rule: stopInstancesEventRule.name,\n roleArn: ssmLifecycleRole.arn,\n runCommandTargets: [{\n key: \"tag:Terminate\",\n values: [\"midnight\"],\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nssm_lifecycle_trust = aws.iam.get_policy_document(statements=[aws.iam.GetPolicyDocumentStatementArgs(\n actions=[\"sts:AssumeRole\"],\n principals=[aws.iam.GetPolicyDocumentStatementPrincipalArgs(\n type=\"Service\",\n identifiers=[\"events.amazonaws.com\"],\n )],\n)])\nstop_instance = aws.ssm.Document(\"stopInstance\",\n document_type=\"Command\",\n content=\"\"\" {\n \"schemaVersion\": \"1.2\",\n \"description\": \"Stop an instance\",\n \"parameters\": {\n\n },\n \"runtimeConfig\": {\n \"aws:runShellScript\": {\n \"properties\": [\n {\n \"id\": \"0.aws:runShellScript\",\n \"runCommand\": [\"halt\"]\n }\n ]\n }\n }\n }\n\"\"\")\nssm_lifecycle_policy_document = stop_instance.arn.apply(lambda arn: aws.iam.get_policy_document(statements=[\n aws.iam.GetPolicyDocumentStatementArgs(\n effect=\"Allow\",\n actions=[\"ssm:SendCommand\"],\n resources=[\"arn:aws:ec2:eu-west-1:1234567890:instance/*\"],\n conditions=[aws.iam.GetPolicyDocumentStatementConditionArgs(\n test=\"StringEquals\",\n variable=\"ec2:ResourceTag/Terminate\",\n values=[\"*\"],\n )],\n ),\n aws.iam.GetPolicyDocumentStatementArgs(\n effect=\"Allow\",\n actions=[\"ssm:SendCommand\"],\n resources=[arn],\n ),\n]))\nssm_lifecycle_role = aws.iam.Role(\"ssmLifecycleRole\", assume_role_policy=ssm_lifecycle_trust.json)\nssm_lifecycle_policy = aws.iam.Policy(\"ssmLifecyclePolicy\", policy=ssm_lifecycle_policy_document.json)\nstop_instances_event_rule = aws.cloudwatch.EventRule(\"stopInstancesEventRule\",\n description=\"Stop instances nightly\",\n schedule_expression=\"cron(0 0 * * ? *)\")\nstop_instances_event_target = aws.cloudwatch.EventTarget(\"stopInstancesEventTarget\",\n arn=stop_instance.arn,\n rule=stop_instances_event_rule.name,\n role_arn=ssm_lifecycle_role.arn,\n run_command_targets=[aws.cloudwatch.EventTargetRunCommandTargetArgs(\n key=\"tag:Terminate\",\n values=[\"midnight\"],\n )])\n```\n```csharp\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var ssmLifecycleTrust = Output.Create(Aws.Iam.GetPolicyDocument.InvokeAsync(new Aws.Iam.GetPolicyDocumentArgs\n {\n Statements = \n {\n new Aws.Iam.Inputs.GetPolicyDocumentStatementArgs\n {\n Actions = \n {\n \"sts:AssumeRole\",\n },\n Principals = \n {\n new Aws.Iam.Inputs.GetPolicyDocumentStatementPrincipalArgs\n {\n Type = \"Service\",\n Identifiers = \n {\n \"events.amazonaws.com\",\n },\n },\n },\n },\n },\n }));\n var stopInstance = new Aws.Ssm.Document(\"stopInstance\", new Aws.Ssm.DocumentArgs\n {\n DocumentType = \"Command\",\n Content = @\" {\n \"\"schemaVersion\"\": \"\"1.2\"\",\n \"\"description\"\": \"\"Stop an instance\"\",\n \"\"parameters\"\": {\n\n },\n \"\"runtimeConfig\"\": {\n \"\"aws:runShellScript\"\": {\n \"\"properties\"\": [\n {\n \"\"id\"\": \"\"0.aws:runShellScript\"\",\n \"\"runCommand\"\": [\"\"halt\"\"]\n }\n ]\n }\n }\n }\n\",\n });\n var ssmLifecyclePolicyDocument = stopInstance.Arn.Apply(arn =\u003e Aws.Iam.GetPolicyDocument.InvokeAsync(new Aws.Iam.GetPolicyDocumentArgs\n {\n Statements = \n {\n new Aws.Iam.Inputs.GetPolicyDocumentStatementArgs\n {\n Effect = \"Allow\",\n Actions = \n {\n \"ssm:SendCommand\",\n },\n Resources = \n {\n \"arn:aws:ec2:eu-west-1:1234567890:instance/*\",\n },\n Conditions = \n {\n new Aws.Iam.Inputs.GetPolicyDocumentStatementConditionArgs\n {\n Test = \"StringEquals\",\n Variable = \"ec2:ResourceTag/Terminate\",\n Values = \n {\n \"*\",\n },\n },\n },\n },\n new Aws.Iam.Inputs.GetPolicyDocumentStatementArgs\n {\n Effect = \"Allow\",\n Actions = \n {\n \"ssm:SendCommand\",\n },\n Resources = \n {\n arn,\n },\n },\n },\n }));\n var ssmLifecycleRole = new Aws.Iam.Role(\"ssmLifecycleRole\", new Aws.Iam.RoleArgs\n {\n AssumeRolePolicy = ssmLifecycleTrust.Apply(ssmLifecycleTrust =\u003e ssmLifecycleTrust.Json),\n });\n var ssmLifecyclePolicy = new Aws.Iam.Policy(\"ssmLifecyclePolicy\", new Aws.Iam.PolicyArgs\n {\n Policy = ssmLifecyclePolicyDocument.Apply(ssmLifecyclePolicyDocument =\u003e ssmLifecyclePolicyDocument.Json),\n });\n var stopInstancesEventRule = new Aws.CloudWatch.EventRule(\"stopInstancesEventRule\", new Aws.CloudWatch.EventRuleArgs\n {\n Description = \"Stop instances nightly\",\n ScheduleExpression = \"cron(0 0 * * ? *)\",\n });\n var stopInstancesEventTarget = new Aws.CloudWatch.EventTarget(\"stopInstancesEventTarget\", new Aws.CloudWatch.EventTargetArgs\n {\n Arn = stopInstance.Arn,\n Rule = stopInstancesEventRule.Name,\n RoleArn = ssmLifecycleRole.Arn,\n RunCommandTargets = \n {\n new Aws.CloudWatch.Inputs.EventTargetRunCommandTargetArgs\n {\n Key = \"tag:Terminate\",\n Values = \n {\n \"midnight\",\n },\n },\n },\n });\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/cloudwatch\"\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/iam\"\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/ssm\"\n\t\"github.com/pulumi/pulumi/sdk/v2/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tssmLifecycleTrust, err := iam.GetPolicyDocument(ctx, \u0026iam.GetPolicyDocumentArgs{\n\t\t\tStatements: []iam.GetPolicyDocumentStatement{\n\t\t\t\tiam.GetPolicyDocumentStatement{\n\t\t\t\t\tActions: []string{\n\t\t\t\t\t\t\"sts:AssumeRole\",\n\t\t\t\t\t},\n\t\t\t\t\tPrincipals: []iam.GetPolicyDocumentStatementPrincipal{\n\t\t\t\t\t\tiam.GetPolicyDocumentStatementPrincipal{\n\t\t\t\t\t\t\tType: \"Service\",\n\t\t\t\t\t\t\tIdentifiers: []string{\n\t\t\t\t\t\t\t\t\"events.amazonaws.com\",\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tstopInstance, err := ssm.NewDocument(ctx, \"stopInstance\", \u0026ssm.DocumentArgs{\n\t\t\tDocumentType: pulumi.String(\"Command\"),\n\t\t\tContent: pulumi.String(fmt.Sprintf(\"%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v\", \" {\\n\", \" \\\"schemaVersion\\\": \\\"1.2\\\",\\n\", \" \\\"description\\\": \\\"Stop an instance\\\",\\n\", \" \\\"parameters\\\": {\\n\", \"\\n\", \" },\\n\", \" \\\"runtimeConfig\\\": {\\n\", \" \\\"aws:runShellScript\\\": {\\n\", \" \\\"properties\\\": [\\n\", \" {\\n\", \" \\\"id\\\": \\\"0.aws:runShellScript\\\",\\n\", \" \\\"runCommand\\\": [\\\"halt\\\"]\\n\", \" }\\n\", \" ]\\n\", \" }\\n\", \" }\\n\", \" }\\n\")),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tssmLifecycleRole, err := iam.NewRole(ctx, \"ssmLifecycleRole\", \u0026iam.RoleArgs{\n\t\t\tAssumeRolePolicy: pulumi.String(ssmLifecycleTrust.Json),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = iam.NewPolicy(ctx, \"ssmLifecyclePolicy\", \u0026iam.PolicyArgs{\n\t\t\tPolicy: ssmLifecyclePolicyDocument.ApplyT(func(ssmLifecyclePolicyDocument iam.GetPolicyDocumentResult) (string, error) {\n\t\t\t\treturn ssmLifecyclePolicyDocument.Json, nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tstopInstancesEventRule, err := cloudwatch.NewEventRule(ctx, \"stopInstancesEventRule\", \u0026cloudwatch.EventRuleArgs{\n\t\t\tDescription: pulumi.String(\"Stop instances nightly\"),\n\t\t\tScheduleExpression: pulumi.String(\"cron(0 0 * * ? *)\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudwatch.NewEventTarget(ctx, \"stopInstancesEventTarget\", \u0026cloudwatch.EventTargetArgs{\n\t\t\tArn: stopInstance.Arn,\n\t\t\tRule: stopInstancesEventRule.Name,\n\t\t\tRoleArn: ssmLifecycleRole.Arn,\n\t\t\tRunCommandTargets: cloudwatch.EventTargetRunCommandTargetArray{\n\t\t\t\t\u0026cloudwatch.EventTargetRunCommandTargetArgs{\n\t\t\t\t\tKey: pulumi.String(\"tag:Terminate\"),\n\t\t\t\t\tValues: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"midnight\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n\n## Example RunCommand Usage\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst stopInstancesEventRule = new aws.cloudwatch.EventRule(\"stopInstancesEventRule\", {\n description: \"Stop instances nightly\",\n scheduleExpression: \"cron(0 0 * * ? *)\",\n});\nconst stopInstancesEventTarget = new aws.cloudwatch.EventTarget(\"stopInstancesEventTarget\", {\n arn: `arn:aws:ssm:${_var.aws_region}::document/AWS-RunShellScript`,\n input: \"{\\\"commands\\\":[\\\"halt\\\"]}\",\n rule: stopInstancesEventRule.name,\n roleArn: aws_iam_role.ssm_lifecycle.arn,\n runCommandTargets: [{\n key: \"tag:Terminate\",\n values: [\"midnight\"],\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nstop_instances_event_rule = aws.cloudwatch.EventRule(\"stopInstancesEventRule\",\n description=\"Stop instances nightly\",\n schedule_expression=\"cron(0 0 * * ? *)\")\nstop_instances_event_target = aws.cloudwatch.EventTarget(\"stopInstancesEventTarget\",\n arn=f\"arn:aws:ssm:{var['aws_region']}::document/AWS-RunShellScript\",\n input=\"{\\\"commands\\\":[\\\"halt\\\"]}\",\n rule=stop_instances_event_rule.name,\n role_arn=aws_iam_role[\"ssm_lifecycle\"][\"arn\"],\n run_command_targets=[aws.cloudwatch.EventTargetRunCommandTargetArgs(\n key=\"tag:Terminate\",\n values=[\"midnight\"],\n )])\n```\n```csharp\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var stopInstancesEventRule = new Aws.CloudWatch.EventRule(\"stopInstancesEventRule\", new Aws.CloudWatch.EventRuleArgs\n {\n Description = \"Stop instances nightly\",\n ScheduleExpression = \"cron(0 0 * * ? *)\",\n });\n var stopInstancesEventTarget = new Aws.CloudWatch.EventTarget(\"stopInstancesEventTarget\", new Aws.CloudWatch.EventTargetArgs\n {\n Arn = $\"arn:aws:ssm:{@var.Aws_region}::document/AWS-RunShellScript\",\n Input = \"{\\\"commands\\\":[\\\"halt\\\"]}\",\n Rule = stopInstancesEventRule.Name,\n RoleArn = aws_iam_role.Ssm_lifecycle.Arn,\n RunCommandTargets = \n {\n new Aws.CloudWatch.Inputs.EventTargetRunCommandTargetArgs\n {\n Key = \"tag:Terminate\",\n Values = \n {\n \"midnight\",\n },\n },\n },\n });\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/cloudwatch\"\n\t\"github.com/pulumi/pulumi/sdk/v2/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tstopInstancesEventRule, err := cloudwatch.NewEventRule(ctx, \"stopInstancesEventRule\", \u0026cloudwatch.EventRuleArgs{\n\t\t\tDescription: pulumi.String(\"Stop instances nightly\"),\n\t\t\tScheduleExpression: pulumi.String(\"cron(0 0 * * ? *)\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudwatch.NewEventTarget(ctx, \"stopInstancesEventTarget\", \u0026cloudwatch.EventTargetArgs{\n\t\t\tArn: pulumi.String(fmt.Sprintf(\"%v%v%v\", \"arn:aws:ssm:\", _var.Aws_region, \"::document/AWS-RunShellScript\")),\n\t\t\tInput: pulumi.String(\"{\\\"commands\\\":[\\\"halt\\\"]}\"),\n\t\t\tRule: stopInstancesEventRule.Name,\n\t\t\tRoleArn: pulumi.Any(aws_iam_role.Ssm_lifecycle.Arn),\n\t\t\tRunCommandTargets: cloudwatch.EventTargetRunCommandTargetArray{\n\t\t\t\t\u0026cloudwatch.EventTargetRunCommandTargetArgs{\n\t\t\t\t\tKey: pulumi.String(\"tag:Terminate\"),\n\t\t\t\t\tValues: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"midnight\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n\n## Example Input Transformer Usage - JSON Object\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst exampleEventRule = new aws.cloudwatch.EventRule(\"exampleEventRule\", {});\n// ...\nconst exampleEventTarget = new aws.cloudwatch.EventTarget(\"exampleEventTarget\", {\n arn: aws_lambda_function.example.arn,\n rule: exampleEventRule.id,\n inputTransformer: {\n inputPaths: {\n instance: `$.detail.instance`,\n status: `$.detail.status`,\n },\n inputTemplate: `{\n \"instance_id\": \u003cinstance\u003e,\n \"instance_status\": \u003cstatus\u003e\n}\n`,\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample_event_rule = aws.cloudwatch.EventRule(\"exampleEventRule\")\n# ...\nexample_event_target = aws.cloudwatch.EventTarget(\"exampleEventTarget\",\n arn=aws_lambda_function[\"example\"][\"arn\"],\n rule=example_event_rule.id,\n input_transformer=aws.cloudwatch.EventTargetInputTransformerArgs(\n input_paths={\n \"instance\": \"$.detail.instance\",\n \"status\": \"$.detail.status\",\n },\n input_template=\"\"\"{\n \"instance_id\": \u003cinstance\u003e,\n \"instance_status\": \u003cstatus\u003e\n}\n\"\"\",\n ))\n```\n```csharp\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var exampleEventRule = new Aws.CloudWatch.EventRule(\"exampleEventRule\", new Aws.CloudWatch.EventRuleArgs\n {\n });\n // ...\n var exampleEventTarget = new Aws.CloudWatch.EventTarget(\"exampleEventTarget\", new Aws.CloudWatch.EventTargetArgs\n {\n Arn = aws_lambda_function.Example.Arn,\n Rule = exampleEventRule.Id,\n InputTransformer = new Aws.CloudWatch.Inputs.EventTargetInputTransformerArgs\n {\n InputPaths = \n {\n { \"instance\", \"$.detail.instance\" },\n { \"status\", \"$.detail.status\" },\n },\n InputTemplate = @\"{\n \"\"instance_id\"\": \u003cinstance\u003e,\n \"\"instance_status\"\": \u003cstatus\u003e\n}\n\",\n },\n });\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/cloudwatch\"\n\t\"github.com/pulumi/pulumi/sdk/v2/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleEventRule, err := cloudwatch.NewEventRule(ctx, \"exampleEventRule\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudwatch.NewEventTarget(ctx, \"exampleEventTarget\", \u0026cloudwatch.EventTargetArgs{\n\t\t\tArn: pulumi.Any(aws_lambda_function.Example.Arn),\n\t\t\tRule: exampleEventRule.ID(),\n\t\t\tInputTransformer: \u0026cloudwatch.EventTargetInputTransformerArgs{\n\t\t\t\tInputPaths: pulumi.StringMap{\n\t\t\t\t\t\"instance\": pulumi.String(fmt.Sprintf(\"%v%v\", \"$\", \".detail.instance\")),\n\t\t\t\t\t\"status\": pulumi.String(fmt.Sprintf(\"%v%v\", \"$\", \".detail.status\")),\n\t\t\t\t},\n\t\t\t\tInputTemplate: pulumi.String(fmt.Sprintf(\"%v%v%v%v\", \"{\\n\", \" \\\"instance_id\\\": \u003cinstance\u003e,\\n\", \" \\\"instance_status\\\": \u003cstatus\u003e\\n\", \"}\\n\")),\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## Example Input Transformer Usage - Simple String\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst exampleEventRule = new aws.cloudwatch.EventRule(\"exampleEventRule\", {});\n// ...\nconst exampleEventTarget = new aws.cloudwatch.EventTarget(\"exampleEventTarget\", {\n arn: aws_lambda_function.example.arn,\n rule: exampleEventRule.id,\n inputTransformer: {\n inputPaths: {\n instance: `$.detail.instance`,\n status: `$.detail.status`,\n },\n inputTemplate: \"\\\"\u003cinstance\u003e is in state \u003cstatus\u003e\\\"\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample_event_rule = aws.cloudwatch.EventRule(\"exampleEventRule\")\n# ...\nexample_event_target = aws.cloudwatch.EventTarget(\"exampleEventTarget\",\n arn=aws_lambda_function[\"example\"][\"arn\"],\n rule=example_event_rule.id,\n input_transformer=aws.cloudwatch.EventTargetInputTransformerArgs(\n input_paths={\n \"instance\": \"$.detail.instance\",\n \"status\": \"$.detail.status\",\n },\n input_template=\"\\\"\u003cinstance\u003e is in state \u003cstatus\u003e\\\"\",\n ))\n```\n```csharp\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var exampleEventRule = new Aws.CloudWatch.EventRule(\"exampleEventRule\", new Aws.CloudWatch.EventRuleArgs\n {\n });\n // ...\n var exampleEventTarget = new Aws.CloudWatch.EventTarget(\"exampleEventTarget\", new Aws.CloudWatch.EventTargetArgs\n {\n Arn = aws_lambda_function.Example.Arn,\n Rule = exampleEventRule.Id,\n InputTransformer = new Aws.CloudWatch.Inputs.EventTargetInputTransformerArgs\n {\n InputPaths = \n {\n { \"instance\", \"$.detail.instance\" },\n { \"status\", \"$.detail.status\" },\n },\n InputTemplate = \"\\\"\u003cinstance\u003e is in state \u003cstatus\u003e\\\"\",\n },\n });\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/cloudwatch\"\n\t\"github.com/pulumi/pulumi/sdk/v2/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleEventRule, err := cloudwatch.NewEventRule(ctx, \"exampleEventRule\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudwatch.NewEventTarget(ctx, \"exampleEventTarget\", \u0026cloudwatch.EventTargetArgs{\n\t\t\tArn: pulumi.Any(aws_lambda_function.Example.Arn),\n\t\t\tRule: exampleEventRule.ID(),\n\t\t\tInputTransformer: \u0026cloudwatch.EventTargetInputTransformerArgs{\n\t\t\t\tInputPaths: pulumi.StringMap{\n\t\t\t\t\t\"instance\": pulumi.String(fmt.Sprintf(\"%v%v\", \"$\", \".detail.instance\")),\n\t\t\t\t\t\"status\": pulumi.String(fmt.Sprintf(\"%v%v\", \"$\", \".detail.status\")),\n\t\t\t\t},\n\t\t\t\tInputTemplate: pulumi.String(\"\\\"\u003cinstance\u003e is in state \u003cstatus\u003e\\\"\"),\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", "properties": { "arn": { "type": "string", @@ -145871,17 +146219,21 @@ "$ref": "#/types/aws:cloudwatch/EventTargetEcsTarget:EventTargetEcsTarget", "description": "Parameters used when you are using the rule to invoke Amazon ECS Task. Documented below. A maximum of 1 are allowed.\n" }, + "eventBusName": { + "type": "string", + "description": "The event bus to associate with the rule. If you omit this, the `default` event bus is used.\n" + }, "input": { "type": "string", - "description": "Valid JSON text passed to the target.\n" + "description": "Valid JSON text passed to the target. Conflicts with `input_path` and `input_transformer`.\n" }, "inputPath": { "type": "string", - "description": "The value of the [JSONPath](http://goessner.net/articles/JsonPath/)\nthat is used for extracting part of the matched event when passing it to the target.\n" + "description": "The value of the [JSONPath](http://goessner.net/articles/JsonPath/)\nthat is used for extracting part of the matched event when passing it to the target. Conflicts with `input` and `input_transformer`.\n" }, "inputTransformer": { "$ref": "#/types/aws:cloudwatch/EventTargetInputTransformer:EventTargetInputTransformer", - "description": "Parameters used when you are providing a custom input to a target based on certain event data.\n" + "description": "Parameters used when you are providing a custom input to a target based on certain event data. Conflicts with `input` and `input_path`.\n" }, "kinesisTarget": { "$ref": "#/types/aws:cloudwatch/EventTargetKinesisTarget:EventTargetKinesisTarget", @@ -145929,17 +146281,21 @@ "$ref": "#/types/aws:cloudwatch/EventTargetEcsTarget:EventTargetEcsTarget", "description": "Parameters used when you are using the rule to invoke Amazon ECS Task. Documented below. A maximum of 1 are allowed.\n" }, + "eventBusName": { + "type": "string", + "description": "The event bus to associate with the rule. If you omit this, the `default` event bus is used.\n" + }, "input": { "type": "string", - "description": "Valid JSON text passed to the target.\n" + "description": "Valid JSON text passed to the target. Conflicts with `input_path` and `input_transformer`.\n" }, "inputPath": { "type": "string", - "description": "The value of the [JSONPath](http://goessner.net/articles/JsonPath/)\nthat is used for extracting part of the matched event when passing it to the target.\n" + "description": "The value of the [JSONPath](http://goessner.net/articles/JsonPath/)\nthat is used for extracting part of the matched event when passing it to the target. Conflicts with `input` and `input_transformer`.\n" }, "inputTransformer": { "$ref": "#/types/aws:cloudwatch/EventTargetInputTransformer:EventTargetInputTransformer", - "description": "Parameters used when you are providing a custom input to a target based on certain event data.\n" + "description": "Parameters used when you are providing a custom input to a target based on certain event data. Conflicts with `input` and `input_path`.\n" }, "kinesisTarget": { "$ref": "#/types/aws:cloudwatch/EventTargetKinesisTarget:EventTargetKinesisTarget", @@ -145988,17 +146344,21 @@ "$ref": "#/types/aws:cloudwatch/EventTargetEcsTarget:EventTargetEcsTarget", "description": "Parameters used when you are using the rule to invoke Amazon ECS Task. Documented below. A maximum of 1 are allowed.\n" }, + "eventBusName": { + "type": "string", + "description": "The event bus to associate with the rule. If you omit this, the `default` event bus is used.\n" + }, "input": { "type": "string", - "description": "Valid JSON text passed to the target.\n" + "description": "Valid JSON text passed to the target. Conflicts with `input_path` and `input_transformer`.\n" }, "inputPath": { "type": "string", - "description": "The value of the [JSONPath](http://goessner.net/articles/JsonPath/)\nthat is used for extracting part of the matched event when passing it to the target.\n" + "description": "The value of the [JSONPath](http://goessner.net/articles/JsonPath/)\nthat is used for extracting part of the matched event when passing it to the target. Conflicts with `input` and `input_transformer`.\n" }, "inputTransformer": { "$ref": "#/types/aws:cloudwatch/EventTargetInputTransformer:EventTargetInputTransformer", - "description": "Parameters used when you are providing a custom input to a target based on certain event data.\n" + "description": "Parameters used when you are providing a custom input to a target based on certain event data. Conflicts with `input` and `input_path`.\n" }, "kinesisTarget": { "$ref": "#/types/aws:cloudwatch/EventTargetKinesisTarget:EventTargetKinesisTarget", @@ -146961,6 +147321,13 @@ "repositoryCount": { "type": "integer", "description": "The number of repositories in the domain.\n" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Key-value map of resource tags.\n" } }, "required": [ @@ -146985,6 +147352,13 @@ "encryptionKey": { "type": "string", "description": "The encryption key for the domain. This is used to encrypt content stored in a domain. The KMS Key Amazon Resource Name (ARN).\n" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Key-value map of resource tags.\n" } }, "requiredInputs": [ @@ -147026,6 +147400,13 @@ "repositoryCount": { "type": "integer", "description": "The number of repositories in the domain.\n" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Key-value map of resource tags.\n" } }, "type": "object" @@ -147147,6 +147528,13 @@ } } }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Key-value map of resource tags.\n" + }, "upstreams": { "type": "array", "items": { @@ -147188,6 +147576,13 @@ } } }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Key-value map of resource tags.\n" + }, "upstreams": { "type": "array", "items": { @@ -147236,6 +147631,13 @@ } } }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Key-value map of resource tags.\n" + }, "upstreams": { "type": "array", "items": { @@ -151934,7 +152336,7 @@ } }, "aws:directconnect/gatewayAssociation:GatewayAssociation": { - "description": "Associates a Direct Connect Gateway with a VGW or transit gateway.\n\nTo create a cross-account association, create an `aws.directconnect.GatewayAssociationProposal` resource\nin the AWS account that owns the VGW or transit gateway and then accept the proposal in the AWS account that owns the Direct Connect Gateway\nby creating an `aws.directconnect.GatewayAssociation` resource with the `proposal_id` and `associated_gateway_owner_account_id` attributes set.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n### VPN Gateway Association\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst exampleGateway = new aws.directconnect.Gateway(\"exampleGateway\", {amazonSideAsn: \"64512\"});\nconst exampleVpc = new aws.ec2.Vpc(\"exampleVpc\", {cidrBlock: \"10.255.255.0/28\"});\nconst exampleVpnGateway = new aws.ec2.VpnGateway(\"exampleVpnGateway\", {vpcId: exampleVpc.id});\nconst exampleGatewayAssociation = new aws.directconnect.GatewayAssociation(\"exampleGatewayAssociation\", {\n dxGatewayId: exampleGateway.id,\n associatedGatewayId: exampleVpnGateway.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample_gateway = aws.directconnect.Gateway(\"exampleGateway\", amazon_side_asn=\"64512\")\nexample_vpc = aws.ec2.Vpc(\"exampleVpc\", cidr_block=\"10.255.255.0/28\")\nexample_vpn_gateway = aws.ec2.VpnGateway(\"exampleVpnGateway\", vpc_id=example_vpc.id)\nexample_gateway_association = aws.directconnect.GatewayAssociation(\"exampleGatewayAssociation\",\n dx_gateway_id=example_gateway.id,\n associated_gateway_id=example_vpn_gateway.id)\n```\n```csharp\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var exampleGateway = new Aws.DirectConnect.Gateway(\"exampleGateway\", new Aws.DirectConnect.GatewayArgs\n {\n AmazonSideAsn = \"64512\",\n });\n var exampleVpc = new Aws.Ec2.Vpc(\"exampleVpc\", new Aws.Ec2.VpcArgs\n {\n CidrBlock = \"10.255.255.0/28\",\n });\n var exampleVpnGateway = new Aws.Ec2.VpnGateway(\"exampleVpnGateway\", new Aws.Ec2.VpnGatewayArgs\n {\n VpcId = exampleVpc.Id,\n });\n var exampleGatewayAssociation = new Aws.DirectConnect.GatewayAssociation(\"exampleGatewayAssociation\", new Aws.DirectConnect.GatewayAssociationArgs\n {\n DxGatewayId = exampleGateway.Id,\n AssociatedGatewayId = exampleVpnGateway.Id,\n });\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/directconnect\"\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/ec2\"\n\t\"github.com/pulumi/pulumi/sdk/v2/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleGateway, err := directconnect.NewGateway(ctx, \"exampleGateway\", \u0026directconnect.GatewayArgs{\n\t\t\tAmazonSideAsn: pulumi.String(\"64512\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleVpc, err := ec2.NewVpc(ctx, \"exampleVpc\", \u0026ec2.VpcArgs{\n\t\t\tCidrBlock: pulumi.String(\"10.255.255.0/28\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleVpnGateway, err := ec2.NewVpnGateway(ctx, \"exampleVpnGateway\", \u0026ec2.VpnGatewayArgs{\n\t\t\tVpcId: exampleVpc.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = directconnect.NewGatewayAssociation(ctx, \"exampleGatewayAssociation\", \u0026directconnect.GatewayAssociationArgs{\n\t\t\tDxGatewayId: exampleGateway.ID(),\n\t\t\tAssociatedGatewayId: exampleVpnGateway.ID(),\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{{% /example %}}\n{{% example %}}\n### Transit Gateway Association\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst exampleGateway = new aws.directconnect.Gateway(\"exampleGateway\", {amazonSideAsn: \"64512\"});\nconst exampleTransitGateway = new aws.ec2transitgateway.TransitGateway(\"exampleTransitGateway\", {});\nconst exampleGatewayAssociation = new aws.directconnect.GatewayAssociation(\"exampleGatewayAssociation\", {\n dxGatewayId: exampleGateway.id,\n associatedGatewayId: exampleTransitGateway.id,\n allowedPrefixes: [\n \"10.255.255.0/30\",\n \"10.255.255.8/30\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample_gateway = aws.directconnect.Gateway(\"exampleGateway\", amazon_side_asn=\"64512\")\nexample_transit_gateway = aws.ec2transitgateway.TransitGateway(\"exampleTransitGateway\")\nexample_gateway_association = aws.directconnect.GatewayAssociation(\"exampleGatewayAssociation\",\n dx_gateway_id=example_gateway.id,\n associated_gateway_id=example_transit_gateway.id,\n allowed_prefixes=[\n \"10.255.255.0/30\",\n \"10.255.255.8/30\",\n ])\n```\n```csharp\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var exampleGateway = new Aws.DirectConnect.Gateway(\"exampleGateway\", new Aws.DirectConnect.GatewayArgs\n {\n AmazonSideAsn = \"64512\",\n });\n var exampleTransitGateway = new Aws.Ec2TransitGateway.TransitGateway(\"exampleTransitGateway\", new Aws.Ec2TransitGateway.TransitGatewayArgs\n {\n });\n var exampleGatewayAssociation = new Aws.DirectConnect.GatewayAssociation(\"exampleGatewayAssociation\", new Aws.DirectConnect.GatewayAssociationArgs\n {\n DxGatewayId = exampleGateway.Id,\n AssociatedGatewayId = exampleTransitGateway.Id,\n AllowedPrefixes = \n {\n \"10.255.255.0/30\",\n \"10.255.255.8/30\",\n },\n });\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/directconnect\"\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/ec2transitgateway\"\n\t\"github.com/pulumi/pulumi/sdk/v2/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleGateway, err := directconnect.NewGateway(ctx, \"exampleGateway\", \u0026directconnect.GatewayArgs{\n\t\t\tAmazonSideAsn: pulumi.String(\"64512\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleTransitGateway, err := ec2transitgateway.NewTransitGateway(ctx, \"exampleTransitGateway\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = directconnect.NewGatewayAssociation(ctx, \"exampleGatewayAssociation\", \u0026directconnect.GatewayAssociationArgs{\n\t\t\tDxGatewayId: exampleGateway.ID(),\n\t\t\tAssociatedGatewayId: exampleTransitGateway.ID(),\n\t\t\tAllowedPrefixes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"10.255.255.0/30\"),\n\t\t\t\tpulumi.String(\"10.255.255.8/30\"),\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{{% /example %}}\n{{% example %}}\n### Allowed Prefixes\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst exampleGateway = new aws.directconnect.Gateway(\"exampleGateway\", {amazonSideAsn: \"64512\"});\nconst exampleVpc = new aws.ec2.Vpc(\"exampleVpc\", {cidrBlock: \"10.255.255.0/28\"});\nconst exampleVpnGateway = new aws.ec2.VpnGateway(\"exampleVpnGateway\", {vpcId: exampleVpc.id});\nconst exampleGatewayAssociation = new aws.directconnect.GatewayAssociation(\"exampleGatewayAssociation\", {\n dxGatewayId: exampleGateway.id,\n associatedGatewayId: exampleVpnGateway.id,\n allowedPrefixes: [\n \"210.52.109.0/24\",\n \"175.45.176.0/22\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample_gateway = aws.directconnect.Gateway(\"exampleGateway\", amazon_side_asn=\"64512\")\nexample_vpc = aws.ec2.Vpc(\"exampleVpc\", cidr_block=\"10.255.255.0/28\")\nexample_vpn_gateway = aws.ec2.VpnGateway(\"exampleVpnGateway\", vpc_id=example_vpc.id)\nexample_gateway_association = aws.directconnect.GatewayAssociation(\"exampleGatewayAssociation\",\n dx_gateway_id=example_gateway.id,\n associated_gateway_id=example_vpn_gateway.id,\n allowed_prefixes=[\n \"210.52.109.0/24\",\n \"175.45.176.0/22\",\n ])\n```\n```csharp\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var exampleGateway = new Aws.DirectConnect.Gateway(\"exampleGateway\", new Aws.DirectConnect.GatewayArgs\n {\n AmazonSideAsn = \"64512\",\n });\n var exampleVpc = new Aws.Ec2.Vpc(\"exampleVpc\", new Aws.Ec2.VpcArgs\n {\n CidrBlock = \"10.255.255.0/28\",\n });\n var exampleVpnGateway = new Aws.Ec2.VpnGateway(\"exampleVpnGateway\", new Aws.Ec2.VpnGatewayArgs\n {\n VpcId = exampleVpc.Id,\n });\n var exampleGatewayAssociation = new Aws.DirectConnect.GatewayAssociation(\"exampleGatewayAssociation\", new Aws.DirectConnect.GatewayAssociationArgs\n {\n DxGatewayId = exampleGateway.Id,\n AssociatedGatewayId = exampleVpnGateway.Id,\n AllowedPrefixes = \n {\n \"210.52.109.0/24\",\n \"175.45.176.0/22\",\n },\n });\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/directconnect\"\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/ec2\"\n\t\"github.com/pulumi/pulumi/sdk/v2/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleGateway, err := directconnect.NewGateway(ctx, \"exampleGateway\", \u0026directconnect.GatewayArgs{\n\t\t\tAmazonSideAsn: pulumi.String(\"64512\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleVpc, err := ec2.NewVpc(ctx, \"exampleVpc\", \u0026ec2.VpcArgs{\n\t\t\tCidrBlock: pulumi.String(\"10.255.255.0/28\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleVpnGateway, err := ec2.NewVpnGateway(ctx, \"exampleVpnGateway\", \u0026ec2.VpnGatewayArgs{\n\t\t\tVpcId: exampleVpc.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = directconnect.NewGatewayAssociation(ctx, \"exampleGatewayAssociation\", \u0026directconnect.GatewayAssociationArgs{\n\t\t\tDxGatewayId: exampleGateway.ID(),\n\t\t\tAssociatedGatewayId: exampleVpnGateway.ID(),\n\t\t\tAllowedPrefixes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"210.52.109.0/24\"),\n\t\t\t\tpulumi.String(\"175.45.176.0/22\"),\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\nA full example of how to create a VPN Gateway in one AWS account, create a Direct Connect Gateway in a second AWS account, and associate the VPN Gateway with the Direct Connect Gateway via the `aws.directconnect.GatewayAssociationProposal` and `aws.directconnect.GatewayAssociation` resources can be found in [the `./examples/dx-gateway-cross-account-vgw-association` directory within the Github Repository](https://github.com/providers/provider-aws/tree/master/examples/dx-gateway-cross-account-vgw-association).\n{{% /example %}}\n{{% /examples %}}", + "description": "Associates a Direct Connect Gateway with a VGW or transit gateway.\n\nTo create a cross-account association, create an `aws.directconnect.GatewayAssociationProposal` resource\nin the AWS account that owns the VGW or transit gateway and then accept the proposal in the AWS account that owns the Direct Connect Gateway\nby creating an `aws.directconnect.GatewayAssociation` resource with the `proposal_id` and `associated_gateway_owner_account_id` attributes set.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n### VPN Gateway Association\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst exampleGateway = new aws.directconnect.Gateway(\"exampleGateway\", {amazonSideAsn: \"64512\"});\nconst exampleVpc = new aws.ec2.Vpc(\"exampleVpc\", {cidrBlock: \"10.255.255.0/28\"});\nconst exampleVpnGateway = new aws.ec2.VpnGateway(\"exampleVpnGateway\", {vpcId: exampleVpc.id});\nconst exampleGatewayAssociation = new aws.directconnect.GatewayAssociation(\"exampleGatewayAssociation\", {\n dxGatewayId: exampleGateway.id,\n associatedGatewayId: exampleVpnGateway.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample_gateway = aws.directconnect.Gateway(\"exampleGateway\", amazon_side_asn=\"64512\")\nexample_vpc = aws.ec2.Vpc(\"exampleVpc\", cidr_block=\"10.255.255.0/28\")\nexample_vpn_gateway = aws.ec2.VpnGateway(\"exampleVpnGateway\", vpc_id=example_vpc.id)\nexample_gateway_association = aws.directconnect.GatewayAssociation(\"exampleGatewayAssociation\",\n dx_gateway_id=example_gateway.id,\n associated_gateway_id=example_vpn_gateway.id)\n```\n```csharp\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var exampleGateway = new Aws.DirectConnect.Gateway(\"exampleGateway\", new Aws.DirectConnect.GatewayArgs\n {\n AmazonSideAsn = \"64512\",\n });\n var exampleVpc = new Aws.Ec2.Vpc(\"exampleVpc\", new Aws.Ec2.VpcArgs\n {\n CidrBlock = \"10.255.255.0/28\",\n });\n var exampleVpnGateway = new Aws.Ec2.VpnGateway(\"exampleVpnGateway\", new Aws.Ec2.VpnGatewayArgs\n {\n VpcId = exampleVpc.Id,\n });\n var exampleGatewayAssociation = new Aws.DirectConnect.GatewayAssociation(\"exampleGatewayAssociation\", new Aws.DirectConnect.GatewayAssociationArgs\n {\n DxGatewayId = exampleGateway.Id,\n AssociatedGatewayId = exampleVpnGateway.Id,\n });\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/directconnect\"\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/ec2\"\n\t\"github.com/pulumi/pulumi/sdk/v2/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleGateway, err := directconnect.NewGateway(ctx, \"exampleGateway\", \u0026directconnect.GatewayArgs{\n\t\t\tAmazonSideAsn: pulumi.String(\"64512\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleVpc, err := ec2.NewVpc(ctx, \"exampleVpc\", \u0026ec2.VpcArgs{\n\t\t\tCidrBlock: pulumi.String(\"10.255.255.0/28\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleVpnGateway, err := ec2.NewVpnGateway(ctx, \"exampleVpnGateway\", \u0026ec2.VpnGatewayArgs{\n\t\t\tVpcId: exampleVpc.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = directconnect.NewGatewayAssociation(ctx, \"exampleGatewayAssociation\", \u0026directconnect.GatewayAssociationArgs{\n\t\t\tDxGatewayId: exampleGateway.ID(),\n\t\t\tAssociatedGatewayId: exampleVpnGateway.ID(),\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{{% /example %}}\n{{% example %}}\n### Transit Gateway Association\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst exampleGateway = new aws.directconnect.Gateway(\"exampleGateway\", {amazonSideAsn: \"64512\"});\nconst exampleTransitGateway = new aws.ec2transitgateway.TransitGateway(\"exampleTransitGateway\", {});\nconst exampleGatewayAssociation = new aws.directconnect.GatewayAssociation(\"exampleGatewayAssociation\", {\n dxGatewayId: exampleGateway.id,\n associatedGatewayId: exampleTransitGateway.id,\n allowedPrefixes: [\n \"10.255.255.0/30\",\n \"10.255.255.8/30\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample_gateway = aws.directconnect.Gateway(\"exampleGateway\", amazon_side_asn=\"64512\")\nexample_transit_gateway = aws.ec2transitgateway.TransitGateway(\"exampleTransitGateway\")\nexample_gateway_association = aws.directconnect.GatewayAssociation(\"exampleGatewayAssociation\",\n dx_gateway_id=example_gateway.id,\n associated_gateway_id=example_transit_gateway.id,\n allowed_prefixes=[\n \"10.255.255.0/30\",\n \"10.255.255.8/30\",\n ])\n```\n```csharp\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var exampleGateway = new Aws.DirectConnect.Gateway(\"exampleGateway\", new Aws.DirectConnect.GatewayArgs\n {\n AmazonSideAsn = \"64512\",\n });\n var exampleTransitGateway = new Aws.Ec2TransitGateway.TransitGateway(\"exampleTransitGateway\", new Aws.Ec2TransitGateway.TransitGatewayArgs\n {\n });\n var exampleGatewayAssociation = new Aws.DirectConnect.GatewayAssociation(\"exampleGatewayAssociation\", new Aws.DirectConnect.GatewayAssociationArgs\n {\n DxGatewayId = exampleGateway.Id,\n AssociatedGatewayId = exampleTransitGateway.Id,\n AllowedPrefixes = \n {\n \"10.255.255.0/30\",\n \"10.255.255.8/30\",\n },\n });\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/directconnect\"\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/ec2transitgateway\"\n\t\"github.com/pulumi/pulumi/sdk/v2/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleGateway, err := directconnect.NewGateway(ctx, \"exampleGateway\", \u0026directconnect.GatewayArgs{\n\t\t\tAmazonSideAsn: pulumi.String(\"64512\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleTransitGateway, err := ec2transitgateway.NewTransitGateway(ctx, \"exampleTransitGateway\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = directconnect.NewGatewayAssociation(ctx, \"exampleGatewayAssociation\", \u0026directconnect.GatewayAssociationArgs{\n\t\t\tDxGatewayId: exampleGateway.ID(),\n\t\t\tAssociatedGatewayId: exampleTransitGateway.ID(),\n\t\t\tAllowedPrefixes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"10.255.255.0/30\"),\n\t\t\t\tpulumi.String(\"10.255.255.8/30\"),\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{{% /example %}}\n{{% example %}}\n### Allowed Prefixes\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst exampleGateway = new aws.directconnect.Gateway(\"exampleGateway\", {amazonSideAsn: \"64512\"});\nconst exampleVpc = new aws.ec2.Vpc(\"exampleVpc\", {cidrBlock: \"10.255.255.0/28\"});\nconst exampleVpnGateway = new aws.ec2.VpnGateway(\"exampleVpnGateway\", {vpcId: exampleVpc.id});\nconst exampleGatewayAssociation = new aws.directconnect.GatewayAssociation(\"exampleGatewayAssociation\", {\n dxGatewayId: exampleGateway.id,\n associatedGatewayId: exampleVpnGateway.id,\n allowedPrefixes: [\n \"210.52.109.0/24\",\n \"175.45.176.0/22\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample_gateway = aws.directconnect.Gateway(\"exampleGateway\", amazon_side_asn=\"64512\")\nexample_vpc = aws.ec2.Vpc(\"exampleVpc\", cidr_block=\"10.255.255.0/28\")\nexample_vpn_gateway = aws.ec2.VpnGateway(\"exampleVpnGateway\", vpc_id=example_vpc.id)\nexample_gateway_association = aws.directconnect.GatewayAssociation(\"exampleGatewayAssociation\",\n dx_gateway_id=example_gateway.id,\n associated_gateway_id=example_vpn_gateway.id,\n allowed_prefixes=[\n \"210.52.109.0/24\",\n \"175.45.176.0/22\",\n ])\n```\n```csharp\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var exampleGateway = new Aws.DirectConnect.Gateway(\"exampleGateway\", new Aws.DirectConnect.GatewayArgs\n {\n AmazonSideAsn = \"64512\",\n });\n var exampleVpc = new Aws.Ec2.Vpc(\"exampleVpc\", new Aws.Ec2.VpcArgs\n {\n CidrBlock = \"10.255.255.0/28\",\n });\n var exampleVpnGateway = new Aws.Ec2.VpnGateway(\"exampleVpnGateway\", new Aws.Ec2.VpnGatewayArgs\n {\n VpcId = exampleVpc.Id,\n });\n var exampleGatewayAssociation = new Aws.DirectConnect.GatewayAssociation(\"exampleGatewayAssociation\", new Aws.DirectConnect.GatewayAssociationArgs\n {\n DxGatewayId = exampleGateway.Id,\n AssociatedGatewayId = exampleVpnGateway.Id,\n AllowedPrefixes = \n {\n \"210.52.109.0/24\",\n \"175.45.176.0/22\",\n },\n });\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/directconnect\"\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/ec2\"\n\t\"github.com/pulumi/pulumi/sdk/v2/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleGateway, err := directconnect.NewGateway(ctx, \"exampleGateway\", \u0026directconnect.GatewayArgs{\n\t\t\tAmazonSideAsn: pulumi.String(\"64512\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleVpc, err := ec2.NewVpc(ctx, \"exampleVpc\", \u0026ec2.VpcArgs{\n\t\t\tCidrBlock: pulumi.String(\"10.255.255.0/28\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleVpnGateway, err := ec2.NewVpnGateway(ctx, \"exampleVpnGateway\", \u0026ec2.VpnGatewayArgs{\n\t\t\tVpcId: exampleVpc.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = directconnect.NewGatewayAssociation(ctx, \"exampleGatewayAssociation\", \u0026directconnect.GatewayAssociationArgs{\n\t\t\tDxGatewayId: exampleGateway.ID(),\n\t\t\tAssociatedGatewayId: exampleVpnGateway.ID(),\n\t\t\tAllowedPrefixes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"210.52.109.0/24\"),\n\t\t\t\tpulumi.String(\"175.45.176.0/22\"),\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{{% /example %}}\n{{% /examples %}}", "properties": { "allowedPrefixes": { "type": "array", @@ -152052,7 +152454,7 @@ } }, "aws:directconnect/gatewayAssociationProposal:GatewayAssociationProposal": { - "description": "Manages a Direct Connect Gateway Association Proposal, typically for enabling cross-account associations. For single account associations, see the `aws.directconnect.GatewayAssociation` resource.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst example = new aws.directconnect.GatewayAssociationProposal(\"example\", {\n dxGatewayId: aws_dx_gateway.example.id,\n dxGatewayOwnerAccountId: aws_dx_gateway.example.owner_account_id,\n associatedGatewayId: aws_vpn_gateway.example.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample = aws.directconnect.GatewayAssociationProposal(\"example\",\n dx_gateway_id=aws_dx_gateway[\"example\"][\"id\"],\n dx_gateway_owner_account_id=aws_dx_gateway[\"example\"][\"owner_account_id\"],\n associated_gateway_id=aws_vpn_gateway[\"example\"][\"id\"])\n```\n```csharp\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var example = new Aws.DirectConnect.GatewayAssociationProposal(\"example\", new Aws.DirectConnect.GatewayAssociationProposalArgs\n {\n DxGatewayId = aws_dx_gateway.Example.Id,\n DxGatewayOwnerAccountId = aws_dx_gateway.Example.Owner_account_id,\n AssociatedGatewayId = aws_vpn_gateway.Example.Id,\n });\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/directconnect\"\n\t\"github.com/pulumi/pulumi/sdk/v2/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := directconnect.NewGatewayAssociationProposal(ctx, \"example\", \u0026directconnect.GatewayAssociationProposalArgs{\n\t\t\tDxGatewayId: pulumi.Any(aws_dx_gateway.Example.Id),\n\t\t\tDxGatewayOwnerAccountId: pulumi.Any(aws_dx_gateway.Example.Owner_account_id),\n\t\t\tAssociatedGatewayId: pulumi.Any(aws_vpn_gateway.Example.Id),\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\nA full example of how to create a VPN Gateway in one AWS account, create a Direct Connect Gateway in a second AWS account, and associate the VPN Gateway with the Direct Connect Gateway via the `aws.directconnect.GatewayAssociationProposal` and `aws.directconnect.GatewayAssociation` resources can be found in [the `./examples/dx-gateway-cross-account-vgw-association` directory within the Github Repository](https://github.com/providers/provider-aws/tree/master/examples/dx-gateway-cross-account-vgw-association).\n{{% /example %}}\n{{% /examples %}}", + "description": "Manages a Direct Connect Gateway Association Proposal, typically for enabling cross-account associations. For single account associations, see the `aws.directconnect.GatewayAssociation` resource.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst example = new aws.directconnect.GatewayAssociationProposal(\"example\", {\n dxGatewayId: aws_dx_gateway.example.id,\n dxGatewayOwnerAccountId: aws_dx_gateway.example.owner_account_id,\n associatedGatewayId: aws_vpn_gateway.example.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample = aws.directconnect.GatewayAssociationProposal(\"example\",\n dx_gateway_id=aws_dx_gateway[\"example\"][\"id\"],\n dx_gateway_owner_account_id=aws_dx_gateway[\"example\"][\"owner_account_id\"],\n associated_gateway_id=aws_vpn_gateway[\"example\"][\"id\"])\n```\n```csharp\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var example = new Aws.DirectConnect.GatewayAssociationProposal(\"example\", new Aws.DirectConnect.GatewayAssociationProposalArgs\n {\n DxGatewayId = aws_dx_gateway.Example.Id,\n DxGatewayOwnerAccountId = aws_dx_gateway.Example.Owner_account_id,\n AssociatedGatewayId = aws_vpn_gateway.Example.Id,\n });\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/directconnect\"\n\t\"github.com/pulumi/pulumi/sdk/v2/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := directconnect.NewGatewayAssociationProposal(ctx, \"example\", \u0026directconnect.GatewayAssociationProposalArgs{\n\t\t\tDxGatewayId: pulumi.Any(aws_dx_gateway.Example.Id),\n\t\t\tDxGatewayOwnerAccountId: pulumi.Any(aws_dx_gateway.Example.Owner_account_id),\n\t\t\tAssociatedGatewayId: pulumi.Any(aws_vpn_gateway.Example.Id),\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{{% /example %}}\n{{% /examples %}}", "properties": { "allowedPrefixes": { "type": "array", @@ -159045,6 +159447,10 @@ "type": "string", "description": "EC2 instance ID.\n" }, + "networkBorderGroup": { + "type": "string", + "description": "The location from which the IP address is advertised. Use this parameter to limit the address to this location.\n" + }, "networkInterface": { "type": "string", "description": "Network interface ID to associate with.\n" @@ -159087,6 +159493,7 @@ "customerOwnedIp", "domain", "instance", + "networkBorderGroup", "networkInterface", "privateDns", "privateIp", @@ -159108,6 +159515,10 @@ "type": "string", "description": "EC2 instance ID.\n" }, + "networkBorderGroup": { + "type": "string", + "description": "The location from which the IP address is advertised. Use this parameter to limit the address to this location.\n" + }, "networkInterface": { "type": "string", "description": "Network interface ID to associate with.\n" @@ -159157,6 +159568,10 @@ "type": "string", "description": "EC2 instance ID.\n" }, + "networkBorderGroup": { + "type": "string", + "description": "The location from which the IP address is advertised. Use this parameter to limit the address to this location.\n" + }, "networkInterface": { "type": "string", "description": "Network interface ID to associate with.\n" @@ -167877,7 +168292,7 @@ } }, "aws:ec2transitgateway/vpcAttachment:VpcAttachment": { - "description": "Manages an EC2 Transit Gateway VPC Attachment. For examples of custom route table association and propagation, see the EC2 Transit Gateway Networking Examples Guide.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst example = new aws.ec2transitgateway.VpcAttachment(\"example\", {\n subnetIds: [aws_subnet.example.id],\n transitGatewayId: aws_ec2_transit_gateway.example.id,\n vpcId: aws_vpc.example.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample = aws.ec2transitgateway.VpcAttachment(\"example\",\n subnet_ids=[aws_subnet[\"example\"][\"id\"]],\n transit_gateway_id=aws_ec2_transit_gateway[\"example\"][\"id\"],\n vpc_id=aws_vpc[\"example\"][\"id\"])\n```\n```csharp\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var example = new Aws.Ec2TransitGateway.VpcAttachment(\"example\", new Aws.Ec2TransitGateway.VpcAttachmentArgs\n {\n SubnetIds = \n {\n aws_subnet.Example.Id,\n },\n TransitGatewayId = aws_ec2_transit_gateway.Example.Id,\n VpcId = aws_vpc.Example.Id,\n });\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/ec2transitgateway\"\n\t\"github.com/pulumi/pulumi/sdk/v2/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := ec2transitgateway.NewVpcAttachment(ctx, \"example\", \u0026ec2transitgateway.VpcAttachmentArgs{\n\t\t\tSubnetIds: pulumi.StringArray{\n\t\t\t\tpulumi.Any(aws_subnet.Example.Id),\n\t\t\t},\n\t\t\tTransitGatewayId: pulumi.Any(aws_ec2_transit_gateway.Example.Id),\n\t\t\tVpcId: pulumi.Any(aws_vpc.Example.Id),\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\nA full example of how to create a Transit Gateway in one AWS account, share it with a second AWS account, and attach a VPC in the second account to the Transit Gateway via the `aws.ec2transitgateway.VpcAttachment` and `aws.ec2transitgateway.VpcAttachmentAccepter` resources can be found in [the `./examples/transit-gateway-cross-account-vpc-attachment` directory within the Github Repository](https://github.com/providers/provider-aws/tree/master/examples/transit-gateway-cross-account-vpc-attachment).\n{{% /example %}}\n{{% /examples %}}", + "description": "Manages an EC2 Transit Gateway VPC Attachment. For examples of custom route table association and propagation, see the EC2 Transit Gateway Networking Examples Guide.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst example = new aws.ec2transitgateway.VpcAttachment(\"example\", {\n subnetIds: [aws_subnet.example.id],\n transitGatewayId: aws_ec2_transit_gateway.example.id,\n vpcId: aws_vpc.example.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample = aws.ec2transitgateway.VpcAttachment(\"example\",\n subnet_ids=[aws_subnet[\"example\"][\"id\"]],\n transit_gateway_id=aws_ec2_transit_gateway[\"example\"][\"id\"],\n vpc_id=aws_vpc[\"example\"][\"id\"])\n```\n```csharp\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var example = new Aws.Ec2TransitGateway.VpcAttachment(\"example\", new Aws.Ec2TransitGateway.VpcAttachmentArgs\n {\n SubnetIds = \n {\n aws_subnet.Example.Id,\n },\n TransitGatewayId = aws_ec2_transit_gateway.Example.Id,\n VpcId = aws_vpc.Example.Id,\n });\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/ec2transitgateway\"\n\t\"github.com/pulumi/pulumi/sdk/v2/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := ec2transitgateway.NewVpcAttachment(ctx, \"example\", \u0026ec2transitgateway.VpcAttachmentArgs{\n\t\t\tSubnetIds: pulumi.StringArray{\n\t\t\t\tpulumi.Any(aws_subnet.Example.Id),\n\t\t\t},\n\t\t\tTransitGatewayId: pulumi.Any(aws_ec2_transit_gateway.Example.Id),\n\t\t\tVpcId: pulumi.Any(aws_vpc.Example.Id),\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{{% /example %}}\n{{% /examples %}}", "properties": { "dnsSupport": { "type": "string", @@ -168023,7 +168438,7 @@ } }, "aws:ec2transitgateway/vpcAttachmentAccepter:VpcAttachmentAccepter": { - "description": "Manages the accepter's side of an EC2 Transit Gateway VPC Attachment.\n\nWhen a cross-account (requester's AWS account differs from the accepter's AWS account) EC2 Transit Gateway VPC Attachment\nis created, an EC2 Transit Gateway VPC Attachment resource is automatically created in the accepter's account.\nThe requester can use the `aws.ec2transitgateway.VpcAttachment` resource to manage its side of the connection\nand the accepter can use the `aws.ec2transitgateway.VpcAttachmentAccepter` resource to \"adopt\" its side of the\nconnection into management.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst example = new aws.ec2transitgateway.VpcAttachmentAccepter(\"example\", {\n transitGatewayAttachmentId: aws_ec2_transit_gateway_vpc_attachment.example.id,\n tags: {\n Name: \"Example cross-account attachment\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample = aws.ec2transitgateway.VpcAttachmentAccepter(\"example\",\n transit_gateway_attachment_id=aws_ec2_transit_gateway_vpc_attachment[\"example\"][\"id\"],\n tags={\n \"Name\": \"Example cross-account attachment\",\n })\n```\n```csharp\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var example = new Aws.Ec2TransitGateway.VpcAttachmentAccepter(\"example\", new Aws.Ec2TransitGateway.VpcAttachmentAccepterArgs\n {\n TransitGatewayAttachmentId = aws_ec2_transit_gateway_vpc_attachment.Example.Id,\n Tags = \n {\n { \"Name\", \"Example cross-account attachment\" },\n },\n });\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/ec2transitgateway\"\n\t\"github.com/pulumi/pulumi/sdk/v2/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := ec2transitgateway.NewVpcAttachmentAccepter(ctx, \"example\", \u0026ec2transitgateway.VpcAttachmentAccepterArgs{\n\t\t\tTransitGatewayAttachmentId: pulumi.Any(aws_ec2_transit_gateway_vpc_attachment.Example.Id),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Name\": pulumi.String(\"Example cross-account attachment\"),\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\nA full example of how to how to create a Transit Gateway in one AWS account, share it with a second AWS account, and attach a VPC in the second account to the Transit Gateway via the `aws.ec2transitgateway.VpcAttachment` and `aws.ec2transitgateway.VpcAttachmentAccepter` resources can be found in [the `./examples/transit-gateway-cross-account-vpc-attachment` directory within the Github Repository](https://github.com/providers/provider-aws/tree/master/examples/transit-gateway-cross-account-vpc-attachment).\n{{% /example %}}\n{{% /examples %}}", + "description": "Manages the accepter's side of an EC2 Transit Gateway VPC Attachment.\n\nWhen a cross-account (requester's AWS account differs from the accepter's AWS account) EC2 Transit Gateway VPC Attachment\nis created, an EC2 Transit Gateway VPC Attachment resource is automatically created in the accepter's account.\nThe requester can use the `aws.ec2transitgateway.VpcAttachment` resource to manage its side of the connection\nand the accepter can use the `aws.ec2transitgateway.VpcAttachmentAccepter` resource to \"adopt\" its side of the\nconnection into management.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst example = new aws.ec2transitgateway.VpcAttachmentAccepter(\"example\", {\n transitGatewayAttachmentId: aws_ec2_transit_gateway_vpc_attachment.example.id,\n tags: {\n Name: \"Example cross-account attachment\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample = aws.ec2transitgateway.VpcAttachmentAccepter(\"example\",\n transit_gateway_attachment_id=aws_ec2_transit_gateway_vpc_attachment[\"example\"][\"id\"],\n tags={\n \"Name\": \"Example cross-account attachment\",\n })\n```\n```csharp\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var example = new Aws.Ec2TransitGateway.VpcAttachmentAccepter(\"example\", new Aws.Ec2TransitGateway.VpcAttachmentAccepterArgs\n {\n TransitGatewayAttachmentId = aws_ec2_transit_gateway_vpc_attachment.Example.Id,\n Tags = \n {\n { \"Name\", \"Example cross-account attachment\" },\n },\n });\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/ec2transitgateway\"\n\t\"github.com/pulumi/pulumi/sdk/v2/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := ec2transitgateway.NewVpcAttachmentAccepter(ctx, \"example\", \u0026ec2transitgateway.VpcAttachmentAccepterArgs{\n\t\t\tTransitGatewayAttachmentId: pulumi.Any(aws_ec2_transit_gateway_vpc_attachment.Example.Id),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Name\": pulumi.String(\"Example cross-account attachment\"),\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{{% /example %}}\n{{% /examples %}}", "properties": { "dnsSupport": { "type": "string", @@ -178088,7 +178503,7 @@ } }, "aws:glue/crawler:Crawler": { - "description": "Manages a Glue Crawler. More information can be found in the [AWS Glue Developer Guide](https://docs.aws.amazon.com/glue/latest/dg/add-crawler.html)\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n### DynamoDB Target\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst example = new aws.glue.Crawler(\"example\", {\n databaseName: aws_glue_catalog_database.example.name,\n role: aws_iam_role.example.arn,\n dynamodbTargets: [{\n path: \"table-name\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample = aws.glue.Crawler(\"example\",\n database_name=aws_glue_catalog_database[\"example\"][\"name\"],\n role=aws_iam_role[\"example\"][\"arn\"],\n dynamodb_targets=[aws.glue.CrawlerDynamodbTargetArgs(\n path=\"table-name\",\n )])\n```\n```csharp\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var example = new Aws.Glue.Crawler(\"example\", new Aws.Glue.CrawlerArgs\n {\n DatabaseName = aws_glue_catalog_database.Example.Name,\n Role = aws_iam_role.Example.Arn,\n DynamodbTargets = \n {\n new Aws.Glue.Inputs.CrawlerDynamodbTargetArgs\n {\n Path = \"table-name\",\n },\n },\n });\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/glue\"\n\t\"github.com/pulumi/pulumi/sdk/v2/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := glue.NewCrawler(ctx, \"example\", \u0026glue.CrawlerArgs{\n\t\t\tDatabaseName: pulumi.Any(aws_glue_catalog_database.Example.Name),\n\t\t\tRole: pulumi.Any(aws_iam_role.Example.Arn),\n\t\t\tDynamodbTargets: glue.CrawlerDynamodbTargetArray{\n\t\t\t\t\u0026glue.CrawlerDynamodbTargetArgs{\n\t\t\t\t\tPath: pulumi.String(\"table-name\"),\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{{% /example %}}\n{{% example %}}\n### JDBC Target\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst example = new aws.glue.Crawler(\"example\", {\n databaseName: aws_glue_catalog_database.example.name,\n role: aws_iam_role.example.arn,\n jdbcTargets: [{\n connectionName: aws_glue_connection.example.name,\n path: `database-name/%`,\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample = aws.glue.Crawler(\"example\",\n database_name=aws_glue_catalog_database[\"example\"][\"name\"],\n role=aws_iam_role[\"example\"][\"arn\"],\n jdbc_targets=[aws.glue.CrawlerJdbcTargetArgs(\n connection_name=aws_glue_connection[\"example\"][\"name\"],\n path=\"database-name/%\",\n )])\n```\n```csharp\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var example = new Aws.Glue.Crawler(\"example\", new Aws.Glue.CrawlerArgs\n {\n DatabaseName = aws_glue_catalog_database.Example.Name,\n Role = aws_iam_role.Example.Arn,\n JdbcTargets = \n {\n new Aws.Glue.Inputs.CrawlerJdbcTargetArgs\n {\n ConnectionName = aws_glue_connection.Example.Name,\n Path = \"database-name/%\",\n },\n },\n });\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/glue\"\n\t\"github.com/pulumi/pulumi/sdk/v2/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := glue.NewCrawler(ctx, \"example\", \u0026glue.CrawlerArgs{\n\t\t\tDatabaseName: pulumi.Any(aws_glue_catalog_database.Example.Name),\n\t\t\tRole: pulumi.Any(aws_iam_role.Example.Arn),\n\t\t\tJdbcTargets: glue.CrawlerJdbcTargetArray{\n\t\t\t\t\u0026glue.CrawlerJdbcTargetArgs{\n\t\t\t\t\tConnectionName: pulumi.Any(aws_glue_connection.Example.Name),\n\t\t\t\t\tPath: pulumi.String(fmt.Sprintf(\"%v%v\", \"database-name/\", \"%\")),\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{{% /example %}}\n{{% example %}}\n### S3 Target\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst example = new aws.glue.Crawler(\"example\", {\n databaseName: aws_glue_catalog_database.example.name,\n role: aws_iam_role.example.arn,\n s3Targets: [{\n path: `s3://${aws_s3_bucket.example.bucket}`,\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample = aws.glue.Crawler(\"example\",\n database_name=aws_glue_catalog_database[\"example\"][\"name\"],\n role=aws_iam_role[\"example\"][\"arn\"],\n s3_targets=[aws.glue.CrawlerS3TargetArgs(\n path=f\"s3://{aws_s3_bucket['example']['bucket']}\",\n )])\n```\n```csharp\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var example = new Aws.Glue.Crawler(\"example\", new Aws.Glue.CrawlerArgs\n {\n DatabaseName = aws_glue_catalog_database.Example.Name,\n Role = aws_iam_role.Example.Arn,\n S3Targets = \n {\n new Aws.Glue.Inputs.CrawlerS3TargetArgs\n {\n Path = $\"s3://{aws_s3_bucket.Example.Bucket}\",\n },\n },\n });\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/glue\"\n\t\"github.com/pulumi/pulumi/sdk/v2/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := glue.NewCrawler(ctx, \"example\", \u0026glue.CrawlerArgs{\n\t\t\tDatabaseName: pulumi.Any(aws_glue_catalog_database.Example.Name),\n\t\t\tRole: pulumi.Any(aws_iam_role.Example.Arn),\n\t\t\tS3Targets: glue.CrawlerS3TargetArray{\n\t\t\t\t\u0026glue.CrawlerS3TargetArgs{\n\t\t\t\t\tPath: pulumi.String(fmt.Sprintf(\"%v%v\", \"s3://\", aws_s3_bucket.Example.Bucket)),\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{{% /example %}}\n{{% example %}}\n### Catalog Target\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst example = new aws.glue.Crawler(\"example\", {\n databaseName: aws_glue_catalog_database.example.name,\n role: aws_iam_role.example.arn,\n catalogTargets: [{\n databaseName: aws_glue_catalog_database.example.name,\n tables: [aws_glue_catalog_table.example.name],\n }],\n schemaChangePolicy: {\n deleteBehavior: \"LOG\",\n },\n configuration: `{\n \"Version\":1.0,\n \"Grouping\": {\n \"TableGroupingPolicy\": \"CombineCompatibleSchemas\"\n }\n}\n`,\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample = aws.glue.Crawler(\"example\",\n database_name=aws_glue_catalog_database[\"example\"][\"name\"],\n role=aws_iam_role[\"example\"][\"arn\"],\n catalog_targets=[aws.glue.CrawlerCatalogTargetArgs(\n database_name=aws_glue_catalog_database[\"example\"][\"name\"],\n tables=[aws_glue_catalog_table[\"example\"][\"name\"]],\n )],\n schema_change_policy=aws.glue.CrawlerSchemaChangePolicyArgs(\n delete_behavior=\"LOG\",\n ),\n configuration=\"\"\"{\n \"Version\":1.0,\n \"Grouping\": {\n \"TableGroupingPolicy\": \"CombineCompatibleSchemas\"\n }\n}\n\"\"\")\n```\n```csharp\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var example = new Aws.Glue.Crawler(\"example\", new Aws.Glue.CrawlerArgs\n {\n DatabaseName = aws_glue_catalog_database.Example.Name,\n Role = aws_iam_role.Example.Arn,\n CatalogTargets = \n {\n new Aws.Glue.Inputs.CrawlerCatalogTargetArgs\n {\n DatabaseName = aws_glue_catalog_database.Example.Name,\n Tables = \n {\n aws_glue_catalog_table.Example.Name,\n },\n },\n },\n SchemaChangePolicy = new Aws.Glue.Inputs.CrawlerSchemaChangePolicyArgs\n {\n DeleteBehavior = \"LOG\",\n },\n Configuration = @\"{\n \"\"Version\"\":1.0,\n \"\"Grouping\"\": {\n \"\"TableGroupingPolicy\"\": \"\"CombineCompatibleSchemas\"\"\n }\n}\n\",\n });\n }\n\n}\n```\n{{% /example %}}\n{{% /examples %}}", + "description": "Manages a Glue Crawler. More information can be found in the [AWS Glue Developer Guide](https://docs.aws.amazon.com/glue/latest/dg/add-crawler.html)\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n### DynamoDB Target\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst example = new aws.glue.Crawler(\"example\", {\n databaseName: aws_glue_catalog_database.example.name,\n role: aws_iam_role.example.arn,\n dynamodbTargets: [{\n path: \"table-name\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample = aws.glue.Crawler(\"example\",\n database_name=aws_glue_catalog_database[\"example\"][\"name\"],\n role=aws_iam_role[\"example\"][\"arn\"],\n dynamodb_targets=[aws.glue.CrawlerDynamodbTargetArgs(\n path=\"table-name\",\n )])\n```\n```csharp\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var example = new Aws.Glue.Crawler(\"example\", new Aws.Glue.CrawlerArgs\n {\n DatabaseName = aws_glue_catalog_database.Example.Name,\n Role = aws_iam_role.Example.Arn,\n DynamodbTargets = \n {\n new Aws.Glue.Inputs.CrawlerDynamodbTargetArgs\n {\n Path = \"table-name\",\n },\n },\n });\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/glue\"\n\t\"github.com/pulumi/pulumi/sdk/v2/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := glue.NewCrawler(ctx, \"example\", \u0026glue.CrawlerArgs{\n\t\t\tDatabaseName: pulumi.Any(aws_glue_catalog_database.Example.Name),\n\t\t\tRole: pulumi.Any(aws_iam_role.Example.Arn),\n\t\t\tDynamodbTargets: glue.CrawlerDynamodbTargetArray{\n\t\t\t\t\u0026glue.CrawlerDynamodbTargetArgs{\n\t\t\t\t\tPath: pulumi.String(\"table-name\"),\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{{% /example %}}\n{{% example %}}\n### JDBC Target\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst example = new aws.glue.Crawler(\"example\", {\n databaseName: aws_glue_catalog_database.example.name,\n role: aws_iam_role.example.arn,\n jdbcTargets: [{\n connectionName: aws_glue_connection.example.name,\n path: `database-name/%`,\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample = aws.glue.Crawler(\"example\",\n database_name=aws_glue_catalog_database[\"example\"][\"name\"],\n role=aws_iam_role[\"example\"][\"arn\"],\n jdbc_targets=[aws.glue.CrawlerJdbcTargetArgs(\n connection_name=aws_glue_connection[\"example\"][\"name\"],\n path=\"database-name/%\",\n )])\n```\n```csharp\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var example = new Aws.Glue.Crawler(\"example\", new Aws.Glue.CrawlerArgs\n {\n DatabaseName = aws_glue_catalog_database.Example.Name,\n Role = aws_iam_role.Example.Arn,\n JdbcTargets = \n {\n new Aws.Glue.Inputs.CrawlerJdbcTargetArgs\n {\n ConnectionName = aws_glue_connection.Example.Name,\n Path = \"database-name/%\",\n },\n },\n });\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/glue\"\n\t\"github.com/pulumi/pulumi/sdk/v2/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := glue.NewCrawler(ctx, \"example\", \u0026glue.CrawlerArgs{\n\t\t\tDatabaseName: pulumi.Any(aws_glue_catalog_database.Example.Name),\n\t\t\tRole: pulumi.Any(aws_iam_role.Example.Arn),\n\t\t\tJdbcTargets: glue.CrawlerJdbcTargetArray{\n\t\t\t\t\u0026glue.CrawlerJdbcTargetArgs{\n\t\t\t\t\tConnectionName: pulumi.Any(aws_glue_connection.Example.Name),\n\t\t\t\t\tPath: pulumi.String(fmt.Sprintf(\"%v%v\", \"database-name/\", \"%\")),\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{{% /example %}}\n{{% example %}}\n### S3 Target\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst example = new aws.glue.Crawler(\"example\", {\n databaseName: aws_glue_catalog_database.example.name,\n role: aws_iam_role.example.arn,\n s3Targets: [{\n path: `s3://${aws_s3_bucket.example.bucket}`,\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample = aws.glue.Crawler(\"example\",\n database_name=aws_glue_catalog_database[\"example\"][\"name\"],\n role=aws_iam_role[\"example\"][\"arn\"],\n s3_targets=[aws.glue.CrawlerS3TargetArgs(\n path=f\"s3://{aws_s3_bucket['example']['bucket']}\",\n )])\n```\n```csharp\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var example = new Aws.Glue.Crawler(\"example\", new Aws.Glue.CrawlerArgs\n {\n DatabaseName = aws_glue_catalog_database.Example.Name,\n Role = aws_iam_role.Example.Arn,\n S3Targets = \n {\n new Aws.Glue.Inputs.CrawlerS3TargetArgs\n {\n Path = $\"s3://{aws_s3_bucket.Example.Bucket}\",\n },\n },\n });\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/glue\"\n\t\"github.com/pulumi/pulumi/sdk/v2/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := glue.NewCrawler(ctx, \"example\", \u0026glue.CrawlerArgs{\n\t\t\tDatabaseName: pulumi.Any(aws_glue_catalog_database.Example.Name),\n\t\t\tRole: pulumi.Any(aws_iam_role.Example.Arn),\n\t\t\tS3Targets: glue.CrawlerS3TargetArray{\n\t\t\t\t\u0026glue.CrawlerS3TargetArgs{\n\t\t\t\t\tPath: pulumi.String(fmt.Sprintf(\"%v%v\", \"s3://\", aws_s3_bucket.Example.Bucket)),\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{{% /example %}}\n{{% example %}}\n### Catalog Target\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst example = new aws.glue.Crawler(\"example\", {\n databaseName: aws_glue_catalog_database.example.name,\n role: aws_iam_role.example.arn,\n catalogTargets: [{\n databaseName: aws_glue_catalog_database.example.name,\n tables: [aws_glue_catalog_table.example.name],\n }],\n schemaChangePolicy: {\n deleteBehavior: \"LOG\",\n },\n configuration: `{\n \"Version\":1.0,\n \"Grouping\": {\n \"TableGroupingPolicy\": \"CombineCompatibleSchemas\"\n }\n}\n`,\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample = aws.glue.Crawler(\"example\",\n database_name=aws_glue_catalog_database[\"example\"][\"name\"],\n role=aws_iam_role[\"example\"][\"arn\"],\n catalog_targets=[aws.glue.CrawlerCatalogTargetArgs(\n database_name=aws_glue_catalog_database[\"example\"][\"name\"],\n tables=[aws_glue_catalog_table[\"example\"][\"name\"]],\n )],\n schema_change_policy=aws.glue.CrawlerSchemaChangePolicyArgs(\n delete_behavior=\"LOG\",\n ),\n configuration=\"\"\"{\n \"Version\":1.0,\n \"Grouping\": {\n \"TableGroupingPolicy\": \"CombineCompatibleSchemas\"\n }\n}\n\"\"\")\n```\n```csharp\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var example = new Aws.Glue.Crawler(\"example\", new Aws.Glue.CrawlerArgs\n {\n DatabaseName = aws_glue_catalog_database.Example.Name,\n Role = aws_iam_role.Example.Arn,\n CatalogTargets = \n {\n new Aws.Glue.Inputs.CrawlerCatalogTargetArgs\n {\n DatabaseName = aws_glue_catalog_database.Example.Name,\n Tables = \n {\n aws_glue_catalog_table.Example.Name,\n },\n },\n },\n SchemaChangePolicy = new Aws.Glue.Inputs.CrawlerSchemaChangePolicyArgs\n {\n DeleteBehavior = \"LOG\",\n },\n Configuration = @\"{\n \"\"Version\"\":1.0,\n \"\"Grouping\"\": {\n \"\"TableGroupingPolicy\"\": \"\"CombineCompatibleSchemas\"\"\n }\n}\n\",\n });\n }\n\n}\n```\n{{% /example %}}\n{{% example %}}\n### MongoDB Target\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst example = new aws.glue.Crawler(\"example\", {\n databaseName: aws_glue_catalog_database.example.name,\n role: aws_iam_role.example.arn,\n mongodbTargets: [{\n connectionName: aws_glue_connection.example.name,\n path: `database-name/%`,\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample = aws.glue.Crawler(\"example\",\n database_name=aws_glue_catalog_database[\"example\"][\"name\"],\n role=aws_iam_role[\"example\"][\"arn\"],\n mongodb_targets=[aws.glue.CrawlerMongodbTargetArgs(\n connection_name=aws_glue_connection[\"example\"][\"name\"],\n path=\"database-name/%\",\n )])\n```\n```csharp\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var example = new Aws.Glue.Crawler(\"example\", new Aws.Glue.CrawlerArgs\n {\n DatabaseName = aws_glue_catalog_database.Example.Name,\n Role = aws_iam_role.Example.Arn,\n MongodbTargets = \n {\n new Aws.Glue.Inputs.CrawlerMongodbTargetArgs\n {\n ConnectionName = aws_glue_connection.Example.Name,\n Path = \"database-name/%\",\n },\n },\n });\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/glue\"\n\t\"github.com/pulumi/pulumi/sdk/v2/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := glue.NewCrawler(ctx, \"example\", \u0026glue.CrawlerArgs{\n\t\t\tDatabaseName: pulumi.Any(aws_glue_catalog_database.Example.Name),\n\t\t\tRole: pulumi.Any(aws_iam_role.Example.Arn),\n\t\t\tMongodbTargets: glue.CrawlerMongodbTargetArray{\n\t\t\t\t\u0026glue.CrawlerMongodbTargetArgs{\n\t\t\t\t\tConnectionName: pulumi.Any(aws_glue_connection.Example.Name),\n\t\t\t\t\tPath: pulumi.String(fmt.Sprintf(\"%v%v\", \"database-name/\", \"%\")),\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{{% /example %}}\n{{% /examples %}}", "properties": { "arn": { "type": "string", @@ -178133,6 +178548,13 @@ }, "description": "List of nested JBDC target arguments. See below.\n" }, + "mongodbTargets": { + "type": "array", + "items": { + "$ref": "#/types/aws:glue/CrawlerMongodbTarget:CrawlerMongodbTarget" + }, + "description": "List nested MongoDB target arguments. See below.\n" + }, "name": { "type": "string", "description": "Name of the crawler.\n" @@ -178218,6 +178640,13 @@ }, "description": "List of nested JBDC target arguments. See below.\n" }, + "mongodbTargets": { + "type": "array", + "items": { + "$ref": "#/types/aws:glue/CrawlerMongodbTarget:CrawlerMongodbTarget" + }, + "description": "List nested MongoDB target arguments. See below.\n" + }, "name": { "type": "string", "description": "Name of the crawler.\n" @@ -178307,6 +178736,13 @@ }, "description": "List of nested JBDC target arguments. See below.\n" }, + "mongodbTargets": { + "type": "array", + "items": { + "$ref": "#/types/aws:glue/CrawlerMongodbTarget:CrawlerMongodbTarget" + }, + "description": "List nested MongoDB target arguments. See below.\n" + }, "name": { "type": "string", "description": "Name of the crawler.\n" @@ -186808,7 +187244,7 @@ }, "description": { "type": "string", - "description": "A description of the bot.\n" + "description": "A description of the bot. Must be less than or equal to 200 characters in length.\n" }, "detectSentiment": { "type": "boolean", @@ -186824,14 +187260,14 @@ }, "idleSessionTtlInSeconds": { "type": "integer", - "description": "The maximum time in seconds that Amazon Lex retains the data gathered in a conversation. Default is `300`.\n" + "description": "The maximum time in seconds that Amazon Lex retains the data gathered in a conversation. Default is `300`. Must be a number between 60 and 86400 (inclusive).\n" }, "intents": { "type": "array", "items": { "$ref": "#/types/aws:lex/BotIntent:BotIntent" }, - "description": "A set of Intent objects. Each intent represents a command that a user can express. Attributes are documented under intent.\n" + "description": "A set of Intent objects. Each intent represents a command that a user can express. Attributes are documented under intent. Can have up to 100 Intent objects.\n" }, "lastUpdatedDate": { "type": "string", @@ -186843,11 +187279,11 @@ }, "name": { "type": "string", - "description": "The name of the bot that you want to create, case sensitive.\n" + "description": "The name of the bot that you want to create, case sensitive. Must be between 2 and 50 characters in length.\n" }, "nluIntentConfidenceThreshold": { "type": "number", - "description": "Determines the threshold where Amazon Lex will insert the AMAZON.FallbackIntent, AMAZON.KendraSearchIntent, or both when returning alternative intents in a PostContent or PostText response. AMAZON.FallbackIntent and AMAZON.KendraSearchIntent are only inserted if they are configured for the bot. For more information see [Amazon Lex Bot PutBot API Docs](https://docs.aws.amazon.com/lex/latest/dg/API_PutBot.html#lex-PutBot-request-nluIntentConfidenceThreshold) This value requires `enable_model_improvements` to be set to `true` and the default is `0`.\n" + "description": "Determines the threshold where Amazon Lex will insert the AMAZON.FallbackIntent, AMAZON.KendraSearchIntent, or both when returning alternative intents in a PostContent or PostText response. AMAZON.FallbackIntent and AMAZON.KendraSearchIntent are only inserted if they are configured for the bot. For more information see [Amazon Lex Bot PutBot API Docs](https://docs.aws.amazon.com/lex/latest/dg/API_PutBot.html#lex-PutBot-request-nluIntentConfidenceThreshold) This value requires `enable_model_improvements` to be set to `true` and the default is `0`. Must be a float between 0 and 1.\n" }, "processBehavior": { "type": "string", @@ -186899,7 +187335,7 @@ }, "description": { "type": "string", - "description": "A description of the bot.\n" + "description": "A description of the bot. Must be less than or equal to 200 characters in length.\n" }, "detectSentiment": { "type": "boolean", @@ -186911,14 +187347,14 @@ }, "idleSessionTtlInSeconds": { "type": "integer", - "description": "The maximum time in seconds that Amazon Lex retains the data gathered in a conversation. Default is `300`.\n" + "description": "The maximum time in seconds that Amazon Lex retains the data gathered in a conversation. Default is `300`. Must be a number between 60 and 86400 (inclusive).\n" }, "intents": { "type": "array", "items": { "$ref": "#/types/aws:lex/BotIntent:BotIntent" }, - "description": "A set of Intent objects. Each intent represents a command that a user can express. Attributes are documented under intent.\n" + "description": "A set of Intent objects. Each intent represents a command that a user can express. Attributes are documented under intent. Can have up to 100 Intent objects.\n" }, "locale": { "type": "string", @@ -186926,11 +187362,11 @@ }, "name": { "type": "string", - "description": "The name of the bot that you want to create, case sensitive.\n" + "description": "The name of the bot that you want to create, case sensitive. Must be between 2 and 50 characters in length.\n" }, "nluIntentConfidenceThreshold": { "type": "number", - "description": "Determines the threshold where Amazon Lex will insert the AMAZON.FallbackIntent, AMAZON.KendraSearchIntent, or both when returning alternative intents in a PostContent or PostText response. AMAZON.FallbackIntent and AMAZON.KendraSearchIntent are only inserted if they are configured for the bot. For more information see [Amazon Lex Bot PutBot API Docs](https://docs.aws.amazon.com/lex/latest/dg/API_PutBot.html#lex-PutBot-request-nluIntentConfidenceThreshold) This value requires `enable_model_improvements` to be set to `true` and the default is `0`.\n" + "description": "Determines the threshold where Amazon Lex will insert the AMAZON.FallbackIntent, AMAZON.KendraSearchIntent, or both when returning alternative intents in a PostContent or PostText response. AMAZON.FallbackIntent and AMAZON.KendraSearchIntent are only inserted if they are configured for the bot. For more information see [Amazon Lex Bot PutBot API Docs](https://docs.aws.amazon.com/lex/latest/dg/API_PutBot.html#lex-PutBot-request-nluIntentConfidenceThreshold) This value requires `enable_model_improvements` to be set to `true` and the default is `0`. Must be a float between 0 and 1.\n" }, "processBehavior": { "type": "string", @@ -186978,7 +187414,7 @@ }, "description": { "type": "string", - "description": "A description of the bot.\n" + "description": "A description of the bot. Must be less than or equal to 200 characters in length.\n" }, "detectSentiment": { "type": "boolean", @@ -186994,14 +187430,14 @@ }, "idleSessionTtlInSeconds": { "type": "integer", - "description": "The maximum time in seconds that Amazon Lex retains the data gathered in a conversation. Default is `300`.\n" + "description": "The maximum time in seconds that Amazon Lex retains the data gathered in a conversation. Default is `300`. Must be a number between 60 and 86400 (inclusive).\n" }, "intents": { "type": "array", "items": { "$ref": "#/types/aws:lex/BotIntent:BotIntent" }, - "description": "A set of Intent objects. Each intent represents a command that a user can express. Attributes are documented under intent.\n" + "description": "A set of Intent objects. Each intent represents a command that a user can express. Attributes are documented under intent. Can have up to 100 Intent objects.\n" }, "lastUpdatedDate": { "type": "string", @@ -187013,11 +187449,11 @@ }, "name": { "type": "string", - "description": "The name of the bot that you want to create, case sensitive.\n" + "description": "The name of the bot that you want to create, case sensitive. Must be between 2 and 50 characters in length.\n" }, "nluIntentConfidenceThreshold": { "type": "number", - "description": "Determines the threshold where Amazon Lex will insert the AMAZON.FallbackIntent, AMAZON.KendraSearchIntent, or both when returning alternative intents in a PostContent or PostText response. AMAZON.FallbackIntent and AMAZON.KendraSearchIntent are only inserted if they are configured for the bot. For more information see [Amazon Lex Bot PutBot API Docs](https://docs.aws.amazon.com/lex/latest/dg/API_PutBot.html#lex-PutBot-request-nluIntentConfidenceThreshold) This value requires `enable_model_improvements` to be set to `true` and the default is `0`.\n" + "description": "Determines the threshold where Amazon Lex will insert the AMAZON.FallbackIntent, AMAZON.KendraSearchIntent, or both when returning alternative intents in a PostContent or PostText response. AMAZON.FallbackIntent and AMAZON.KendraSearchIntent are only inserted if they are configured for the bot. For more information see [Amazon Lex Bot PutBot API Docs](https://docs.aws.amazon.com/lex/latest/dg/API_PutBot.html#lex-PutBot-request-nluIntentConfidenceThreshold) This value requires `enable_model_improvements` to be set to `true` and the default is `0`. Must be a float between 0 and 1.\n" }, "processBehavior": { "type": "string", @@ -187068,7 +187504,7 @@ }, "description": { "type": "string", - "description": "A description of the alias.\n" + "description": "A description of the alias. Must be less than or equal to 200 characters in length.\n" }, "lastUpdatedDate": { "type": "string", @@ -187076,7 +187512,7 @@ }, "name": { "type": "string", - "description": "The name of the alias. The name is not case sensitive.\n" + "description": "The name of the alias. The name is not case sensitive. Must be less than or equal to 100 characters in length.\n" } }, "required": [ @@ -187103,11 +187539,11 @@ }, "description": { "type": "string", - "description": "A description of the alias.\n" + "description": "A description of the alias. Must be less than or equal to 200 characters in length.\n" }, "name": { "type": "string", - "description": "The name of the alias. The name is not case sensitive.\n" + "description": "The name of the alias. The name is not case sensitive. Must be less than or equal to 100 characters in length.\n" } }, "requiredInputs": [ @@ -187143,7 +187579,7 @@ }, "description": { "type": "string", - "description": "A description of the alias.\n" + "description": "A description of the alias. Must be less than or equal to 200 characters in length.\n" }, "lastUpdatedDate": { "type": "string", @@ -187151,7 +187587,7 @@ }, "name": { "type": "string", - "description": "The name of the alias. The name is not case sensitive.\n" + "description": "The name of the alias. The name is not case sensitive. Must be less than or equal to 100 characters in length.\n" } }, "type": "object" @@ -187186,7 +187622,7 @@ }, "description": { "type": "string", - "description": "A description of the bot.\n" + "description": "A description of the bot. Must be less than or equal to 200 characters in length.\n" }, "dialogCodeHook": { "$ref": "#/types/aws:lex/IntentDialogCodeHook:IntentDialogCodeHook", @@ -187206,7 +187642,7 @@ }, "name": { "type": "string", - "description": "The name of the intent slot that you want to create. The name is case sensitive.\n" + "description": "The name of the intent slot that you want to create. The name is case sensitive. Must be less than or equal to 100 characters in length.\n" }, "parentIntentSignature": { "type": "string", @@ -187221,7 +187657,7 @@ "items": { "type": "string" }, - "description": "If you know a specific pattern with which users might respond to\nan Amazon Lex request for a slot value, you can provide those utterances to improve accuracy. This\nis optional. In most cases, Amazon Lex is capable of understanding user utterances.\n" + "description": "If you know a specific pattern with which users might respond to\nan Amazon Lex request for a slot value, you can provide those utterances to improve accuracy. This\nis optional. In most cases, Amazon Lex is capable of understanding user utterances. Must have between 1 and 10 items in the list, and each item must be less than or equal to 200 characters in length.\n" }, "slots": { "type": "array", @@ -187259,7 +187695,7 @@ }, "description": { "type": "string", - "description": "A description of the bot.\n" + "description": "A description of the bot. Must be less than or equal to 200 characters in length.\n" }, "dialogCodeHook": { "$ref": "#/types/aws:lex/IntentDialogCodeHook:IntentDialogCodeHook", @@ -187275,7 +187711,7 @@ }, "name": { "type": "string", - "description": "The name of the intent slot that you want to create. The name is case sensitive.\n" + "description": "The name of the intent slot that you want to create. The name is case sensitive. Must be less than or equal to 100 characters in length.\n" }, "parentIntentSignature": { "type": "string", @@ -187290,7 +187726,7 @@ "items": { "type": "string" }, - "description": "If you know a specific pattern with which users might respond to\nan Amazon Lex request for a slot value, you can provide those utterances to improve accuracy. This\nis optional. In most cases, Amazon Lex is capable of understanding user utterances.\n" + "description": "If you know a specific pattern with which users might respond to\nan Amazon Lex request for a slot value, you can provide those utterances to improve accuracy. This\nis optional. In most cases, Amazon Lex is capable of understanding user utterances. Must have between 1 and 10 items in the list, and each item must be less than or equal to 200 characters in length.\n" }, "slots": { "type": "array", @@ -187332,7 +187768,7 @@ }, "description": { "type": "string", - "description": "A description of the bot.\n" + "description": "A description of the bot. Must be less than or equal to 200 characters in length.\n" }, "dialogCodeHook": { "$ref": "#/types/aws:lex/IntentDialogCodeHook:IntentDialogCodeHook", @@ -187352,7 +187788,7 @@ }, "name": { "type": "string", - "description": "The name of the intent slot that you want to create. The name is case sensitive.\n" + "description": "The name of the intent slot that you want to create. The name is case sensitive. Must be less than or equal to 100 characters in length.\n" }, "parentIntentSignature": { "type": "string", @@ -187367,7 +187803,7 @@ "items": { "type": "string" }, - "description": "If you know a specific pattern with which users might respond to\nan Amazon Lex request for a slot value, you can provide those utterances to improve accuracy. This\nis optional. In most cases, Amazon Lex is capable of understanding user utterances.\n" + "description": "If you know a specific pattern with which users might respond to\nan Amazon Lex request for a slot value, you can provide those utterances to improve accuracy. This\nis optional. In most cases, Amazon Lex is capable of understanding user utterances. Must have between 1 and 10 items in the list, and each item must be less than or equal to 200 characters in length.\n" }, "slots": { "type": "array", @@ -187401,7 +187837,7 @@ }, "description": { "type": "string", - "description": "A description of the slot type.\n" + "description": "A description of the slot type. Must be less than or equal to 200 characters in length.\n" }, "enumerationValues": { "type": "array", @@ -187416,7 +187852,7 @@ }, "name": { "type": "string", - "description": "The name of the slot type. The name is not case sensitive.\n" + "description": "The name of the slot type. The name is not case sensitive. Must be less than or equal to 100 characters in length.\n" }, "valueSelectionStrategy": { "type": "string", @@ -187442,7 +187878,7 @@ }, "description": { "type": "string", - "description": "A description of the slot type.\n" + "description": "A description of the slot type. Must be less than or equal to 200 characters in length.\n" }, "enumerationValues": { "type": "array", @@ -187453,7 +187889,7 @@ }, "name": { "type": "string", - "description": "The name of the slot type. The name is not case sensitive.\n" + "description": "The name of the slot type. The name is not case sensitive. Must be less than or equal to 100 characters in length.\n" }, "valueSelectionStrategy": { "type": "string", @@ -187480,7 +187916,7 @@ }, "description": { "type": "string", - "description": "A description of the slot type.\n" + "description": "A description of the slot type. Must be less than or equal to 200 characters in length.\n" }, "enumerationValues": { "type": "array", @@ -187495,7 +187931,7 @@ }, "name": { "type": "string", - "description": "The name of the slot type. The name is not case sensitive.\n" + "description": "The name of the slot type. The name is not case sensitive. Must be less than or equal to 100 characters in length.\n" }, "valueSelectionStrategy": { "type": "string", @@ -198057,7 +198493,7 @@ }, "storageEncrypted": { "type": "boolean", - "description": "Specifies whether the DB cluster is encrypted. The default is `false` for `provisioned` `engine_mode` and `true` for `serverless` `engine_mode`.\n" + "description": "Specifies whether the DB cluster is encrypted\n" }, "tags": { "type": "object", @@ -198094,6 +198530,7 @@ "preferredBackupWindow", "preferredMaintenanceWindow", "readerEndpoint", + "storageEncrypted", "vpcSecurityGroupIds" ], "inputProperties": { @@ -198248,7 +198685,7 @@ }, "storageEncrypted": { "type": "boolean", - "description": "Specifies whether the DB cluster is encrypted. The default is `false` for `provisioned` `engine_mode` and `true` for `serverless` `engine_mode`.\n" + "description": "Specifies whether the DB cluster is encrypted\n" }, "tags": { "type": "object", @@ -198439,7 +198876,7 @@ }, "storageEncrypted": { "type": "boolean", - "description": "Specifies whether the DB cluster is encrypted. The default is `false` for `provisioned` `engine_mode` and `true` for `serverless` `engine_mode`.\n" + "description": "Specifies whether the DB cluster is encrypted\n" }, "tags": { "type": "object", @@ -204452,7 +204889,7 @@ }, "bucket": { "type": "string", - "description": "The name of the bucket. If omitted, this provider will assign a random, unique name.\n", + "description": "The name of the bucket. If omitted, this provider will assign a random, unique name. Must be less than or equal to 63 characters in length.\n", "language": { "csharp": { "name": "BucketName" @@ -204465,7 +204902,7 @@ }, "bucketPrefix": { "type": "string", - "description": "Creates a unique bucket name beginning with the specified prefix. Conflicts with `bucket`.\n" + "description": "Creates a unique bucket name beginning with the specified prefix. Conflicts with `bucket`. Must be less than or equal to 37 characters in length.\n" }, "bucketRegionalDomainName": { "type": "string", @@ -204592,7 +205029,7 @@ }, "bucket": { "type": "string", - "description": "The name of the bucket. If omitted, this provider will assign a random, unique name.\n", + "description": "The name of the bucket. If omitted, this provider will assign a random, unique name. Must be less than or equal to 63 characters in length.\n", "language": { "csharp": { "name": "BucketName" @@ -204601,7 +205038,7 @@ }, "bucketPrefix": { "type": "string", - "description": "Creates a unique bucket name beginning with the specified prefix. Conflicts with `bucket`.\n" + "description": "Creates a unique bucket name beginning with the specified prefix. Conflicts with `bucket`. Must be less than or equal to 37 characters in length.\n" }, "corsRules": { "type": "array", @@ -204718,7 +205155,7 @@ }, "bucket": { "type": "string", - "description": "The name of the bucket. If omitted, this provider will assign a random, unique name.\n", + "description": "The name of the bucket. If omitted, this provider will assign a random, unique name. Must be less than or equal to 63 characters in length.\n", "language": { "csharp": { "name": "BucketName" @@ -204731,7 +205168,7 @@ }, "bucketPrefix": { "type": "string", - "description": "Creates a unique bucket name beginning with the specified prefix. Conflicts with `bucket`.\n" + "description": "Creates a unique bucket name beginning with the specified prefix. Conflicts with `bucket`. Must be less than or equal to 37 characters in length.\n" }, "bucketRegionalDomainName": { "type": "string", @@ -206061,6 +206498,10 @@ "type": "string", "description": "The Amazon Resource Name (ARN) assigned by AWS to this endpoint configuration.\n" }, + "dataCaptureConfig": { + "$ref": "#/types/aws:sagemaker/EndpointConfigurationDataCaptureConfig:EndpointConfigurationDataCaptureConfig", + "description": "Specifies the parameters to capture input/output of Sagemaker models endpoints. Fields are documented below.\n" + }, "kmsKeyArn": { "type": "string", "description": "Amazon Resource Name (ARN) of a AWS Key Management Service key that Amazon SageMaker uses to encrypt data on the storage volume attached to the ML compute instance that hosts the endpoint.\n" @@ -206090,6 +206531,10 @@ "productionVariants" ], "inputProperties": { + "dataCaptureConfig": { + "$ref": "#/types/aws:sagemaker/EndpointConfigurationDataCaptureConfig:EndpointConfigurationDataCaptureConfig", + "description": "Specifies the parameters to capture input/output of Sagemaker models endpoints. Fields are documented below.\n" + }, "kmsKeyArn": { "type": "string", "description": "Amazon Resource Name (ARN) of a AWS Key Management Service key that Amazon SageMaker uses to encrypt data on the storage volume attached to the ML compute instance that hosts the endpoint.\n" @@ -206123,6 +206568,10 @@ "type": "string", "description": "The Amazon Resource Name (ARN) assigned by AWS to this endpoint configuration.\n" }, + "dataCaptureConfig": { + "$ref": "#/types/aws:sagemaker/EndpointConfigurationDataCaptureConfig:EndpointConfigurationDataCaptureConfig", + "description": "Specifies the parameters to capture input/output of Sagemaker models endpoints. Fields are documented below.\n" + }, "kmsKeyArn": { "type": "string", "description": "Amazon Resource Name (ARN) of a AWS Key Management Service key that Amazon SageMaker uses to encrypt data on the storage volume attached to the ML compute instance that hosts the endpoint.\n" @@ -206150,7 +206599,7 @@ } }, "aws:sagemaker/model:Model": { - "description": "Provides a SageMaker model resource.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\nBasic usage:\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst model = new aws.sagemaker.Model(\"model\", {\n executionRoleArn: aws_iam_role.foo.arn,\n primaryContainer: {\n image: \"174872318107.dkr.ecr.us-west-2.amazonaws.com/kmeans:1\",\n },\n});\nconst assumeRole = aws.iam.getPolicyDocument({\n statements: [{\n actions: [\"sts:AssumeRole\"],\n principals: [{\n type: \"Service\",\n identifiers: [\"sagemaker.amazonaws.com\"],\n }],\n }],\n});\nconst role = new aws.iam.Role(\"role\", {assumeRolePolicy: assumeRole.then(assumeRole =\u003e assumeRole.json)});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nmodel = aws.sagemaker.Model(\"model\",\n execution_role_arn=aws_iam_role[\"foo\"][\"arn\"],\n primary_container=aws.sagemaker.ModelPrimaryContainerArgs(\n image=\"174872318107.dkr.ecr.us-west-2.amazonaws.com/kmeans:1\",\n ))\nassume_role = aws.iam.get_policy_document(statements=[aws.iam.GetPolicyDocumentStatementArgs(\n actions=[\"sts:AssumeRole\"],\n principals=[aws.iam.GetPolicyDocumentStatementPrincipalArgs(\n type=\"Service\",\n identifiers=[\"sagemaker.amazonaws.com\"],\n )],\n)])\nrole = aws.iam.Role(\"role\", assume_role_policy=assume_role.json)\n```\n```csharp\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var model = new Aws.Sagemaker.Model(\"model\", new Aws.Sagemaker.ModelArgs\n {\n ExecutionRoleArn = aws_iam_role.Foo.Arn,\n PrimaryContainer = new Aws.Sagemaker.Inputs.ModelPrimaryContainerArgs\n {\n Image = \"174872318107.dkr.ecr.us-west-2.amazonaws.com/kmeans:1\",\n },\n });\n var assumeRole = Output.Create(Aws.Iam.GetPolicyDocument.InvokeAsync(new Aws.Iam.GetPolicyDocumentArgs\n {\n Statements = \n {\n new Aws.Iam.Inputs.GetPolicyDocumentStatementArgs\n {\n Actions = \n {\n \"sts:AssumeRole\",\n },\n Principals = \n {\n new Aws.Iam.Inputs.GetPolicyDocumentStatementPrincipalArgs\n {\n Type = \"Service\",\n Identifiers = \n {\n \"sagemaker.amazonaws.com\",\n },\n },\n },\n },\n },\n }));\n var role = new Aws.Iam.Role(\"role\", new Aws.Iam.RoleArgs\n {\n AssumeRolePolicy = assumeRole.Apply(assumeRole =\u003e assumeRole.Json),\n });\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/iam\"\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/sagemaker\"\n\t\"github.com/pulumi/pulumi/sdk/v2/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := sagemaker.NewModel(ctx, \"model\", \u0026sagemaker.ModelArgs{\n\t\t\tExecutionRoleArn: pulumi.Any(aws_iam_role.Foo.Arn),\n\t\t\tPrimaryContainer: \u0026sagemaker.ModelPrimaryContainerArgs{\n\t\t\t\tImage: pulumi.String(\"174872318107.dkr.ecr.us-west-2.amazonaws.com/kmeans:1\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tassumeRole, err := iam.GetPolicyDocument(ctx, \u0026iam.GetPolicyDocumentArgs{\n\t\t\tStatements: []iam.GetPolicyDocumentStatement{\n\t\t\t\tiam.GetPolicyDocumentStatement{\n\t\t\t\t\tActions: []string{\n\t\t\t\t\t\t\"sts:AssumeRole\",\n\t\t\t\t\t},\n\t\t\t\t\tPrincipals: []iam.GetPolicyDocumentStatementPrincipal{\n\t\t\t\t\t\tiam.GetPolicyDocumentStatementPrincipal{\n\t\t\t\t\t\t\tType: \"Service\",\n\t\t\t\t\t\t\tIdentifiers: []string{\n\t\t\t\t\t\t\t\t\"sagemaker.amazonaws.com\",\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = iam.NewRole(ctx, \"role\", \u0026iam.RoleArgs{\n\t\t\tAssumeRolePolicy: pulumi.String(assumeRole.Json),\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{{% /example %}}\n{{% /examples %}}", + "description": "Provides a SageMaker model resource.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\nBasic usage:\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst assumeRole = aws.iam.getPolicyDocument({\n statements: [{\n actions: [\"sts:AssumeRole\"],\n principals: [{\n type: \"Service\",\n identifiers: [\"sagemaker.amazonaws.com\"],\n }],\n }],\n});\nconst exampleRole = new aws.iam.Role(\"exampleRole\", {assumeRolePolicy: assumeRole.then(assumeRole =\u003e assumeRole.json)});\nconst exampleModel = new aws.sagemaker.Model(\"exampleModel\", {\n executionRoleArn: exampleRole.arn,\n primaryContainer: {\n image: \"174872318107.dkr.ecr.us-west-2.amazonaws.com/kmeans:1\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nassume_role = aws.iam.get_policy_document(statements=[aws.iam.GetPolicyDocumentStatementArgs(\n actions=[\"sts:AssumeRole\"],\n principals=[aws.iam.GetPolicyDocumentStatementPrincipalArgs(\n type=\"Service\",\n identifiers=[\"sagemaker.amazonaws.com\"],\n )],\n)])\nexample_role = aws.iam.Role(\"exampleRole\", assume_role_policy=assume_role.json)\nexample_model = aws.sagemaker.Model(\"exampleModel\",\n execution_role_arn=example_role.arn,\n primary_container=aws.sagemaker.ModelPrimaryContainerArgs(\n image=\"174872318107.dkr.ecr.us-west-2.amazonaws.com/kmeans:1\",\n ))\n```\n```csharp\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var assumeRole = Output.Create(Aws.Iam.GetPolicyDocument.InvokeAsync(new Aws.Iam.GetPolicyDocumentArgs\n {\n Statements = \n {\n new Aws.Iam.Inputs.GetPolicyDocumentStatementArgs\n {\n Actions = \n {\n \"sts:AssumeRole\",\n },\n Principals = \n {\n new Aws.Iam.Inputs.GetPolicyDocumentStatementPrincipalArgs\n {\n Type = \"Service\",\n Identifiers = \n {\n \"sagemaker.amazonaws.com\",\n },\n },\n },\n },\n },\n }));\n var exampleRole = new Aws.Iam.Role(\"exampleRole\", new Aws.Iam.RoleArgs\n {\n AssumeRolePolicy = assumeRole.Apply(assumeRole =\u003e assumeRole.Json),\n });\n var exampleModel = new Aws.Sagemaker.Model(\"exampleModel\", new Aws.Sagemaker.ModelArgs\n {\n ExecutionRoleArn = exampleRole.Arn,\n PrimaryContainer = new Aws.Sagemaker.Inputs.ModelPrimaryContainerArgs\n {\n Image = \"174872318107.dkr.ecr.us-west-2.amazonaws.com/kmeans:1\",\n },\n });\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/iam\"\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/sagemaker\"\n\t\"github.com/pulumi/pulumi/sdk/v2/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tassumeRole, err := iam.GetPolicyDocument(ctx, \u0026iam.GetPolicyDocumentArgs{\n\t\t\tStatements: []iam.GetPolicyDocumentStatement{\n\t\t\t\tiam.GetPolicyDocumentStatement{\n\t\t\t\t\tActions: []string{\n\t\t\t\t\t\t\"sts:AssumeRole\",\n\t\t\t\t\t},\n\t\t\t\t\tPrincipals: []iam.GetPolicyDocumentStatementPrincipal{\n\t\t\t\t\t\tiam.GetPolicyDocumentStatementPrincipal{\n\t\t\t\t\t\t\tType: \"Service\",\n\t\t\t\t\t\t\tIdentifiers: []string{\n\t\t\t\t\t\t\t\t\"sagemaker.amazonaws.com\",\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleRole, err := iam.NewRole(ctx, \"exampleRole\", \u0026iam.RoleArgs{\n\t\t\tAssumeRolePolicy: pulumi.String(assumeRole.Json),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = sagemaker.NewModel(ctx, \"exampleModel\", \u0026sagemaker.ModelArgs{\n\t\t\tExecutionRoleArn: exampleRole.Arn,\n\t\t\tPrimaryContainer: \u0026sagemaker.ModelPrimaryContainerArgs{\n\t\t\t\tImage: pulumi.String(\"174872318107.dkr.ecr.us-west-2.amazonaws.com/kmeans:1\"),\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{{% /example %}}\n{{% /examples %}}", "properties": { "arn": { "type": "string", @@ -206281,7 +206730,7 @@ } }, "aws:sagemaker/notebookInstance:NotebookInstance": { - "description": "Provides a Sagemaker Notebook Instance resource.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n### Basic usage\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst ni = new aws.sagemaker.NotebookInstance(\"ni\", {\n roleArn: aws_iam_role.role.arn,\n instanceType: \"ml.t2.medium\",\n tags: {\n Name: \"foo\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nni = aws.sagemaker.NotebookInstance(\"ni\",\n role_arn=aws_iam_role[\"role\"][\"arn\"],\n instance_type=\"ml.t2.medium\",\n tags={\n \"Name\": \"foo\",\n })\n```\n```csharp\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var ni = new Aws.Sagemaker.NotebookInstance(\"ni\", new Aws.Sagemaker.NotebookInstanceArgs\n {\n RoleArn = aws_iam_role.Role.Arn,\n InstanceType = \"ml.t2.medium\",\n Tags = \n {\n { \"Name\", \"foo\" },\n },\n });\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/sagemaker\"\n\t\"github.com/pulumi/pulumi/sdk/v2/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := sagemaker.NewNotebookInstance(ctx, \"ni\", \u0026sagemaker.NotebookInstanceArgs{\n\t\t\tRoleArn: pulumi.Any(aws_iam_role.Role.Arn),\n\t\t\tInstanceType: pulumi.String(\"ml.t2.medium\"),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Name\": pulumi.String(\"foo\"),\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{{% /example %}}\n{{% example %}}\n### Code repository usage\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst example = new aws.sagemaker.CodeRepository(\"example\", {\n codeRepositoryName: \"my-notebook-instance-code-repo\",\n gitConfig: {\n repositoryUrl: \"https://github.com/terraform-providers/terraform-provider-aws.git\",\n },\n});\nconst ni = new aws.sagemaker.NotebookInstance(\"ni\", {\n roleArn: aws_iam_role.role.arn,\n instanceType: \"ml.t2.medium\",\n defaultCodeRepository: example.codeRepositoryName,\n tags: {\n Name: \"foo\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample = aws.sagemaker.CodeRepository(\"example\",\n code_repository_name=\"my-notebook-instance-code-repo\",\n git_config=aws.sagemaker.CodeRepositoryGitConfigArgs(\n repository_url=\"https://github.com/terraform-providers/terraform-provider-aws.git\",\n ))\nni = aws.sagemaker.NotebookInstance(\"ni\",\n role_arn=aws_iam_role[\"role\"][\"arn\"],\n instance_type=\"ml.t2.medium\",\n default_code_repository=example.code_repository_name,\n tags={\n \"Name\": \"foo\",\n })\n```\n```csharp\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var example = new Aws.Sagemaker.CodeRepository(\"example\", new Aws.Sagemaker.CodeRepositoryArgs\n {\n CodeRepositoryName = \"my-notebook-instance-code-repo\",\n GitConfig = new Aws.Sagemaker.Inputs.CodeRepositoryGitConfigArgs\n {\n RepositoryUrl = \"https://github.com/terraform-providers/terraform-provider-aws.git\",\n },\n });\n var ni = new Aws.Sagemaker.NotebookInstance(\"ni\", new Aws.Sagemaker.NotebookInstanceArgs\n {\n RoleArn = aws_iam_role.Role.Arn,\n InstanceType = \"ml.t2.medium\",\n DefaultCodeRepository = example.CodeRepositoryName,\n Tags = \n {\n { \"Name\", \"foo\" },\n },\n });\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/sagemaker\"\n\t\"github.com/pulumi/pulumi/sdk/v2/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := sagemaker.NewCodeRepository(ctx, \"example\", \u0026sagemaker.CodeRepositoryArgs{\n\t\t\tCodeRepositoryName: pulumi.String(\"my-notebook-instance-code-repo\"),\n\t\t\tGitConfig: \u0026sagemaker.CodeRepositoryGitConfigArgs{\n\t\t\t\tRepositoryUrl: pulumi.String(\"https://github.com/terraform-providers/terraform-provider-aws.git\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = sagemaker.NewNotebookInstance(ctx, \"ni\", \u0026sagemaker.NotebookInstanceArgs{\n\t\t\tRoleArn: pulumi.Any(aws_iam_role.Role.Arn),\n\t\t\tInstanceType: pulumi.String(\"ml.t2.medium\"),\n\t\t\tDefaultCodeRepository: example.CodeRepositoryName,\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Name\": pulumi.String(\"foo\"),\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{{% /example %}}\n{{% /examples %}}", + "description": "Provides a Sagemaker Notebook Instance resource.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n### Basic usage\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst ni = new aws.sagemaker.NotebookInstance(\"ni\", {\n roleArn: aws_iam_role.role.arn,\n instanceType: \"ml.t2.medium\",\n tags: {\n Name: \"foo\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nni = aws.sagemaker.NotebookInstance(\"ni\",\n role_arn=aws_iam_role[\"role\"][\"arn\"],\n instance_type=\"ml.t2.medium\",\n tags={\n \"Name\": \"foo\",\n })\n```\n```csharp\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var ni = new Aws.Sagemaker.NotebookInstance(\"ni\", new Aws.Sagemaker.NotebookInstanceArgs\n {\n RoleArn = aws_iam_role.Role.Arn,\n InstanceType = \"ml.t2.medium\",\n Tags = \n {\n { \"Name\", \"foo\" },\n },\n });\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/sagemaker\"\n\t\"github.com/pulumi/pulumi/sdk/v2/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := sagemaker.NewNotebookInstance(ctx, \"ni\", \u0026sagemaker.NotebookInstanceArgs{\n\t\t\tRoleArn: pulumi.Any(aws_iam_role.Role.Arn),\n\t\t\tInstanceType: pulumi.String(\"ml.t2.medium\"),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Name\": pulumi.String(\"foo\"),\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{{% /example %}}\n{{% example %}}\n### Code repository usage\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst example = new aws.sagemaker.CodeRepository(\"example\", {\n codeRepositoryName: \"my-notebook-instance-code-repo\",\n gitConfig: {\n repositoryUrl: \"https://github.com/hashicorp/terraform-provider-aws.git\",\n },\n});\nconst ni = new aws.sagemaker.NotebookInstance(\"ni\", {\n roleArn: aws_iam_role.role.arn,\n instanceType: \"ml.t2.medium\",\n defaultCodeRepository: example.codeRepositoryName,\n tags: {\n Name: \"foo\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample = aws.sagemaker.CodeRepository(\"example\",\n code_repository_name=\"my-notebook-instance-code-repo\",\n git_config=aws.sagemaker.CodeRepositoryGitConfigArgs(\n repository_url=\"https://github.com/hashicorp/terraform-provider-aws.git\",\n ))\nni = aws.sagemaker.NotebookInstance(\"ni\",\n role_arn=aws_iam_role[\"role\"][\"arn\"],\n instance_type=\"ml.t2.medium\",\n default_code_repository=example.code_repository_name,\n tags={\n \"Name\": \"foo\",\n })\n```\n```csharp\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var example = new Aws.Sagemaker.CodeRepository(\"example\", new Aws.Sagemaker.CodeRepositoryArgs\n {\n CodeRepositoryName = \"my-notebook-instance-code-repo\",\n GitConfig = new Aws.Sagemaker.Inputs.CodeRepositoryGitConfigArgs\n {\n RepositoryUrl = \"https://github.com/hashicorp/terraform-provider-aws.git\",\n },\n });\n var ni = new Aws.Sagemaker.NotebookInstance(\"ni\", new Aws.Sagemaker.NotebookInstanceArgs\n {\n RoleArn = aws_iam_role.Role.Arn,\n InstanceType = \"ml.t2.medium\",\n DefaultCodeRepository = example.CodeRepositoryName,\n Tags = \n {\n { \"Name\", \"foo\" },\n },\n });\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/sagemaker\"\n\t\"github.com/pulumi/pulumi/sdk/v2/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := sagemaker.NewCodeRepository(ctx, \"example\", \u0026sagemaker.CodeRepositoryArgs{\n\t\t\tCodeRepositoryName: pulumi.String(\"my-notebook-instance-code-repo\"),\n\t\t\tGitConfig: \u0026sagemaker.CodeRepositoryGitConfigArgs{\n\t\t\t\tRepositoryUrl: pulumi.String(\"https://github.com/hashicorp/terraform-provider-aws.git\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = sagemaker.NewNotebookInstance(ctx, \"ni\", \u0026sagemaker.NotebookInstanceArgs{\n\t\t\tRoleArn: pulumi.Any(aws_iam_role.Role.Arn),\n\t\t\tInstanceType: pulumi.String(\"ml.t2.medium\"),\n\t\t\tDefaultCodeRepository: example.CodeRepositoryName,\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Name\": pulumi.String(\"foo\"),\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{{% /example %}}\n{{% /examples %}}", "properties": { "additionalCodeRepositories": { "type": "array", @@ -206632,6 +207081,7 @@ "arn", "name", "namePrefix", + "policy", "rotationEnabled", "rotationLambdaArn", "rotationRules" @@ -206736,6 +207186,60 @@ "type": "object" } }, + "aws:secretsmanager/secretPolicy:SecretPolicy": { + "description": "Provides a resource to manage AWS Secrets Manager secret policy.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n### Basic\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst exampleSecret = new aws.secretsmanager.Secret(\"exampleSecret\", {});\nconst exampleSecretPolicy = new aws.secretsmanager.SecretPolicy(\"exampleSecretPolicy\", {\n secretArn: exampleSecret.arn,\n policy: `{\n \"Version\": \"2012-10-17\",\n \"Statement\": [\n\t{\n\t \"Sid\": \"EnableAllPermissions\",\n\t \"Effect\": \"Allow\",\n\t \"Principal\": {\n\t\t\"AWS\": \"*\"\n\t },\n\t \"Action\": \"secretsmanager:GetSecretValue\",\n\t \"Resource\": \"*\"\n\t}\n ]\n}\n`,\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample_secret = aws.secretsmanager.Secret(\"exampleSecret\")\nexample_secret_policy = aws.secretsmanager.SecretPolicy(\"exampleSecretPolicy\",\n secret_arn=example_secret.arn,\n policy=\"\"\"{\n \"Version\": \"2012-10-17\",\n \"Statement\": [\n\t{\n\t \"Sid\": \"EnableAllPermissions\",\n\t \"Effect\": \"Allow\",\n\t \"Principal\": {\n\t\t\"AWS\": \"*\"\n\t },\n\t \"Action\": \"secretsmanager:GetSecretValue\",\n\t \"Resource\": \"*\"\n\t}\n ]\n}\n\"\"\")\n```\n```csharp\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var exampleSecret = new Aws.SecretsManager.Secret(\"exampleSecret\", new Aws.SecretsManager.SecretArgs\n {\n });\n var exampleSecretPolicy = new Aws.SecretsManager.SecretPolicy(\"exampleSecretPolicy\", new Aws.SecretsManager.SecretPolicyArgs\n {\n SecretArn = exampleSecret.Arn,\n Policy = @\"{\n \"\"Version\"\": \"\"2012-10-17\"\",\n \"\"Statement\"\": [\n\t{\n\t \"\"Sid\"\": \"\"EnableAllPermissions\"\",\n\t \"\"Effect\"\": \"\"Allow\"\",\n\t \"\"Principal\"\": {\n\t\t\"\"AWS\"\": \"\"*\"\"\n\t },\n\t \"\"Action\"\": \"\"secretsmanager:GetSecretValue\"\",\n\t \"\"Resource\"\": \"\"*\"\"\n\t}\n ]\n}\n\",\n });\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/secretsmanager\"\n\t\"github.com/pulumi/pulumi/sdk/v2/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleSecret, err := secretsmanager.NewSecret(ctx, \"exampleSecret\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = secretsmanager.NewSecretPolicy(ctx, \"exampleSecretPolicy\", \u0026secretsmanager.SecretPolicyArgs{\n\t\t\tSecretArn: exampleSecret.Arn,\n\t\t\tPolicy: pulumi.String(fmt.Sprintf(\"%v%v%v%v%v%v%v%v%v%v%v%v%v%v\", \"{\\n\", \" \\\"Version\\\": \\\"2012-10-17\\\",\\n\", \" \\\"Statement\\\": [\\n\", \"\t{\\n\", \"\t \\\"Sid\\\": \\\"EnableAllPermissions\\\",\\n\", \"\t \\\"Effect\\\": \\\"Allow\\\",\\n\", \"\t \\\"Principal\\\": {\\n\", \"\t\t\\\"AWS\\\": \\\"*\\\"\\n\", \"\t },\\n\", \"\t \\\"Action\\\": \\\"secretsmanager:GetSecretValue\\\",\\n\", \"\t \\\"Resource\\\": \\\"*\\\"\\n\", \"\t}\\n\", \" ]\\n\", \"}\\n\")),\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{{% /example %}}\n{{% /examples %}}", + "properties": { + "blockPublicPolicy": { + "type": "boolean", + "description": "Makes an optional API call to Zelkova to validate the Resource Policy to prevent broad access to your secret.\n" + }, + "policy": { + "type": "string" + }, + "secretArn": { + "type": "string", + "description": "Secret ARN.\n" + } + }, + "required": [ + "policy", + "secretArn" + ], + "inputProperties": { + "blockPublicPolicy": { + "type": "boolean", + "description": "Makes an optional API call to Zelkova to validate the Resource Policy to prevent broad access to your secret.\n" + }, + "policy": { + "type": "string" + }, + "secretArn": { + "type": "string", + "description": "Secret ARN.\n" + } + }, + "requiredInputs": [ + "policy", + "secretArn" + ], + "stateInputs": { + "description": "Input properties used for looking up and filtering SecretPolicy resources.\n", + "properties": { + "blockPublicPolicy": { + "type": "boolean", + "description": "Makes an optional API call to Zelkova to validate the Resource Policy to prevent broad access to your secret.\n" + }, + "policy": { + "type": "string" + }, + "secretArn": { + "type": "string", + "description": "Secret ARN.\n" + } + }, + "type": "object" + } + }, "aws:secretsmanager/secretRotation:SecretRotation": { "description": "Provides a resource to manage AWS Secrets Manager secret rotation. To manage a secret, see the [`aws.secretsmanager.Secret` resource](https://www.terraform.io/docs/providers/aws/r/secretsmanager_secret.html). To manage a secret value, see the [`aws.secretsmanager.SecretVersion` resource](https://www.terraform.io/docs/providers/aws/r/secretsmanager_secret_version.html).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n### Basic\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst example = new aws.secretsmanager.SecretRotation(\"example\", {\n secretId: aws_secretsmanager_secret.example.id,\n rotationLambdaArn: aws_lambda_function.example.arn,\n rotationRules: {\n automaticallyAfterDays: 30,\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample = aws.secretsmanager.SecretRotation(\"example\",\n secret_id=aws_secretsmanager_secret[\"example\"][\"id\"],\n rotation_lambda_arn=aws_lambda_function[\"example\"][\"arn\"],\n rotation_rules=aws.secretsmanager.SecretRotationRotationRulesArgs(\n automatically_after_days=30,\n ))\n```\n```csharp\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var example = new Aws.SecretsManager.SecretRotation(\"example\", new Aws.SecretsManager.SecretRotationArgs\n {\n SecretId = aws_secretsmanager_secret.Example.Id,\n RotationLambdaArn = aws_lambda_function.Example.Arn,\n RotationRules = new Aws.SecretsManager.Inputs.SecretRotationRotationRulesArgs\n {\n AutomaticallyAfterDays = 30,\n },\n });\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/secretsmanager\"\n\t\"github.com/pulumi/pulumi/sdk/v2/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := secretsmanager.NewSecretRotation(ctx, \"example\", \u0026secretsmanager.SecretRotationArgs{\n\t\t\tSecretId: pulumi.Any(aws_secretsmanager_secret.Example.Id),\n\t\t\tRotationLambdaArn: pulumi.Any(aws_lambda_function.Example.Arn),\n\t\t\tRotationRules: \u0026secretsmanager.SecretRotationRotationRulesArgs{\n\t\t\t\tAutomaticallyAfterDays: pulumi.Int(30),\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{{% /example %}}\n### Rotation Configuration\n\nTo enable automatic secret rotation, the Secrets Manager service requires usage of a Lambda function. The [Rotate Secrets section in the Secrets Manager User Guide](https://docs.aws.amazon.com/secretsmanager/latest/userguide/rotating-secrets.html) provides additional information about deploying a prebuilt Lambda functions for supported credential rotation (e.g. RDS) or deploying a custom Lambda function.\n\n\u003e **NOTE:** Configuring rotation causes the secret to rotate once as soon as you enable rotation. Before you do this, you must ensure that all of your applications that use the credentials stored in the secret are updated to retrieve the secret from AWS Secrets Manager. The old credentials might no longer be usable after the initial rotation and any applications that you fail to update will break as soon as the old credentials are no longer valid.\n\n\u003e **NOTE:** If you cancel a rotation that is in progress (by removing the `rotation` configuration), it can leave the VersionStage labels in an unexpected state. Depending on what step of the rotation was in progress, you might need to remove the staging label AWSPENDING from the partially created version, specified by the SecretVersionId response value. You should also evaluate the partially rotated new version to see if it should be deleted, which you can do by removing all staging labels from the new version's VersionStage field.\n{{% /examples %}}", "properties": { @@ -232167,6 +232671,75 @@ ] } }, + "aws:route53/getResolverEndpoint:getResolverEndpoint": { + "description": "`aws.route53.ResolverEndpoint` provides details about a specific Route53 Resolver Endpoint.\n\nThis data source allows to find a list of IPaddresses associated with a specific Route53 Resolver Endpoint.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst example = pulumi.output(aws.route53.getResolverEndpoint({\n resolverEndpointId: \"rslvr-in-1abc2345ef678g91h\",\n}, { async: true }));\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample = aws.route53.get_resolver_endpoint(resolver_endpoint_id=\"rslvr-in-1abc2345ef678g91h\")\n```\n```csharp\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var example = Output.Create(Aws.Route53.GetResolverEndpoint.InvokeAsync(new Aws.Route53.GetResolverEndpointArgs\n {\n ResolverEndpointId = \"rslvr-in-1abc2345ef678g91h\",\n }));\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/route53\"\n\t\"github.com/pulumi/pulumi/sdk/v2/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\topt0 := \"rslvr-in-1abc2345ef678g91h\"\n\t\t_, err := route53.LookupResolverEndpoint(ctx, \u0026route53.LookupResolverEndpointArgs{\n\t\t\tResolverEndpointId: \u0026opt0,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst example = pulumi.output(aws.route53.getResolverEndpoint({\n filters: [{\n name: \"NAME\",\n values: [\"MyResolverExampleName\"],\n }],\n}, { async: true }));\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample = aws.route53.get_resolver_endpoint(filters=[aws.route53.GetResolverEndpointFilterArgs(\n name=\"NAME\",\n values=[\"MyResolverExampleName\"],\n)])\n```\n```csharp\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var example = Output.Create(Aws.Route53.GetResolverEndpoint.InvokeAsync(new Aws.Route53.GetResolverEndpointArgs\n {\n Filters = \n {\n new Aws.Route53.Inputs.GetResolverEndpointFilterArgs\n {\n Name = \"NAME\",\n Values = \n {\n \"MyResolverExampleName\",\n },\n },\n },\n }));\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/route53\"\n\t\"github.com/pulumi/pulumi/sdk/v2/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := route53.LookupResolverEndpoint(ctx, \u0026route53.LookupResolverEndpointArgs{\n\t\t\tFilters: []route53.GetResolverEndpointFilter{\n\t\t\t\troute53.GetResolverEndpointFilter{\n\t\t\t\t\tName: \"NAME\",\n\t\t\t\t\tValues: []string{\n\t\t\t\t\t\t\"MyResolverExampleName\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n{{% /example %}}\n{{% /examples %}}", + "inputs": { + "description": "A collection of arguments for invoking getResolverEndpoint.\n", + "properties": { + "filters": { + "type": "array", + "items": { + "$ref": "#/types/aws:route53/getResolverEndpointFilter:getResolverEndpointFilter" + }, + "description": "One or more name/value pairs to use as filters. There are\nseveral valid keys, for a full reference, check out\n[Route53resolver Filter value in the AWS API reference][1].\n" + }, + "resolverEndpointId": { + "type": "string", + "description": "The ID of the Route53 Resolver Endpoint.\n" + } + }, + "type": "object" + }, + "outputs": { + "description": "A collection of values returned by getResolverEndpoint.\n", + "properties": { + "arn": { + "type": "string" + }, + "direction": { + "type": "string" + }, + "filters": { + "type": "array", + "items": { + "$ref": "#/types/aws:route53/getResolverEndpointFilter:getResolverEndpointFilter" + } + }, + "id": { + "type": "string", + "description": "The provider-assigned unique ID for this managed resource.\n" + }, + "ipAddresses": { + "type": "array", + "items": { + "type": "string" + } + }, + "name": { + "type": "string" + }, + "resolverEndpointId": { + "type": "string" + }, + "status": { + "type": "string" + }, + "vpcId": { + "type": "string" + } + }, + "type": "object", + "required": [ + "arn", + "direction", + "ipAddresses", + "name", + "status", + "vpcId", + "id" + ] + } + }, "aws:route53/getResolverRule:getResolverRule": { "description": "`aws.route53.ResolverRule` provides details about a specific Route53 Resolver rule.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\nThe following example shows how to get a Route53 Resolver rule based on its associated domain name and rule type.\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst example = pulumi.output(aws.route53.getResolverRule({\n domainName: \"subdomain.example.com\",\n ruleType: \"SYSTEM\",\n}, { async: true }));\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample = aws.route53.get_resolver_rule(domain_name=\"subdomain.example.com\",\n rule_type=\"SYSTEM\")\n```\n```csharp\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var example = Output.Create(Aws.Route53.GetResolverRule.InvokeAsync(new Aws.Route53.GetResolverRuleArgs\n {\n DomainName = \"subdomain.example.com\",\n RuleType = \"SYSTEM\",\n }));\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/route53\"\n\t\"github.com/pulumi/pulumi/sdk/v2/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\topt0 := \"subdomain.example.com\"\n\t\topt1 := \"SYSTEM\"\n\t\t_, err := route53.LookupResolverRule(ctx, \u0026route53.LookupResolverRuleArgs{\n\t\t\tDomainName: \u0026opt0,\n\t\t\tRuleType: \u0026opt1,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n{{% /example %}}\n{{% /examples %}}", "inputs": { @@ -232758,6 +233331,70 @@ ] } }, + "aws:sagemaker/getPrebuiltEcrImage:getPrebuiltEcrImage": { + "description": "Get information about prebuilt Amazon SageMaker Docker images.\n\n\u003e **NOTE:** The AWS provider creates a validly constructed `registry_path` but does not verify that the `registry_path` corresponds to an existing image. For example, using a `registry_path` containing an `image_tag` that does not correspond to a Docker image in the ECR repository, will result in an error.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\nBasic usage:\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst test = pulumi.output(aws.sagemaker.getPrebuiltEcrImage({\n imageTag: \"2.2-1.0.11.0\",\n repositoryName: \"sagemaker-scikit-learn\",\n}, { async: true }));\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\ntest = aws.sagemaker.get_prebuilt_ecr_image(image_tag=\"2.2-1.0.11.0\",\n repository_name=\"sagemaker-scikit-learn\")\n```\n```csharp\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var test = Output.Create(Aws.Sagemaker.GetPrebuiltEcrImage.InvokeAsync(new Aws.Sagemaker.GetPrebuiltEcrImageArgs\n {\n ImageTag = \"2.2-1.0.11.0\",\n RepositoryName = \"sagemaker-scikit-learn\",\n }));\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/sagemaker\"\n\t\"github.com/pulumi/pulumi/sdk/v2/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\topt0 := \"2.2-1.0.11.0\"\n\t\t_, err := sagemaker.GetPrebuiltEcrImage(ctx, \u0026sagemaker.GetPrebuiltEcrImageArgs{\n\t\t\tImageTag: \u0026opt0,\n\t\t\tRepositoryName: \"sagemaker-scikit-learn\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n{{% /example %}}\n{{% /examples %}}", + "inputs": { + "description": "A collection of arguments for invoking getPrebuiltEcrImage.\n", + "properties": { + "dnsSuffix": { + "type": "string", + "description": "The DNS suffix to use in the registry path. If not specified, the AWS provider sets it to the DNS suffix for the current region.\n" + }, + "imageTag": { + "type": "string", + "description": "The image tag for the Docker image. If not specified, the AWS provider sets the value to `1`, which for many repositories indicates the latest version. Some repositories, such as XGBoost, do not support `1` or `latest` and specific version must be used.\n" + }, + "region": { + "type": "string", + "description": "The region to use in the registry path. If not specified, the AWS provider sets it to the current region.\n" + }, + "repositoryName": { + "type": "string", + "description": "The name of the repository, which is generally the algorithm or library. Values include `blazingtext`, `factorization-machines`, `forecasting-deepar`, `image-classification`, `ipinsights`, `kmeans`, `knn`, `lda`, `linear-learner`, `mxnet-inference-eia`, `mxnet-inference`, `mxnet-training`, `ntm`, `object-detection`, `object2vec`, `pca`, `pytorch-inference-eia`, `pytorch-inference`, `pytorch-training`, `randomcutforest`, `sagemaker-scikit-learn`, `sagemaker-sparkml-serving`, `sagemaker-xgboost`, `semantic-segmentation`, `seq2seq`, `tensorflow-inference-eia`, `tensorflow-inference`, and `tensorflow-training`.\n" + } + }, + "type": "object", + "required": [ + "repositoryName" + ] + }, + "outputs": { + "description": "A collection of values returned by getPrebuiltEcrImage.\n", + "properties": { + "dnsSuffix": { + "type": "string" + }, + "id": { + "type": "string", + "description": "The provider-assigned unique ID for this managed resource.\n" + }, + "imageTag": { + "type": "string" + }, + "region": { + "type": "string" + }, + "registryId": { + "type": "string", + "description": "The account ID containing the image. For example, `469771592824`.\n" + }, + "registryPath": { + "type": "string", + "description": "The Docker image URL. For example, `341280168497.dkr.ecr.ca-central-1.amazonaws.com/sagemaker-sparkml-serving:2.4`.\n" + }, + "repositoryName": { + "type": "string" + } + }, + "type": "object", + "required": [ + "registryId", + "registryPath", + "repositoryName", + "id" + ] + } + }, "aws:secretsmanager/getSecret:getSecret": { "description": "Retrieve metadata information about a Secrets Manager secret. To retrieve a secret value, see the `aws.secretsmanager.SecretVersion`.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n### ARN\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst by_arn = pulumi.output(aws.secretsmanager.getSecret({\n arn: \"arn:aws:secretsmanager:us-east-1:123456789012:secret:example-123456\",\n}, { async: true }));\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nby_arn = aws.secretsmanager.get_secret(arn=\"arn:aws:secretsmanager:us-east-1:123456789012:secret:example-123456\")\n```\n```csharp\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var by_arn = Output.Create(Aws.SecretsManager.GetSecret.InvokeAsync(new Aws.SecretsManager.GetSecretArgs\n {\n Arn = \"arn:aws:secretsmanager:us-east-1:123456789012:secret:example-123456\",\n }));\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/secretsmanager\"\n\t\"github.com/pulumi/pulumi/sdk/v2/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\topt0 := \"arn:aws:secretsmanager:us-east-1:123456789012:secret:example-123456\"\n\t\t_, err := secretsmanager.LookupSecret(ctx, \u0026secretsmanager.LookupSecretArgs{\n\t\t\tArn: \u0026opt0,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n{{% /example %}}\n{{% example %}}\n### Name\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst by_name = pulumi.output(aws.secretsmanager.getSecret({\n name: \"example\",\n}, { async: true }));\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nby_name = aws.secretsmanager.get_secret(name=\"example\")\n```\n```csharp\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var by_name = Output.Create(Aws.SecretsManager.GetSecret.InvokeAsync(new Aws.SecretsManager.GetSecretArgs\n {\n Name = \"example\",\n }));\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/secretsmanager\"\n\t\"github.com/pulumi/pulumi/sdk/v2/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\topt0 := \"example\"\n\t\t_, err := secretsmanager.LookupSecret(ctx, \u0026secretsmanager.LookupSecretArgs{\n\t\t\tName: \u0026opt0,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n{{% /example %}}\n{{% /examples %}}", "inputs": { @@ -234321,6 +234958,104 @@ "id" ] } + }, + "aws:workspaces/getWorkspace:getWorkspace": { + "description": "Use this data source to get information about a workspace in [AWS Workspaces](https://docs.aws.amazon.com/workspaces/latest/adminguide/amazon-workspaces.html) Service.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n### Filter By Workspace ID\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst example = pulumi.output(aws.workspaces.getWorkspace({\n workspaceId: \"ws-cj5xcxsz5\",\n}, { async: true }));\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample = aws.workspaces.get_workspace(workspace_id=\"ws-cj5xcxsz5\")\n```\n```csharp\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var example = Output.Create(Aws.Workspaces.GetWorkspace.InvokeAsync(new Aws.Workspaces.GetWorkspaceArgs\n {\n WorkspaceId = \"ws-cj5xcxsz5\",\n }));\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/workspaces\"\n\t\"github.com/pulumi/pulumi/sdk/v2/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\topt0 := \"ws-cj5xcxsz5\"\n\t\t_, err := workspaces.LookupWorkspace(ctx, \u0026workspaces.LookupWorkspaceArgs{\n\t\t\tWorkspaceId: \u0026opt0,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n{{% /example %}}\n{{% example %}}\n### Filter By Directory ID \u0026 User Name\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst example = pulumi.output(aws.workspaces.getWorkspace({\n directoryId: \"d-9967252f57\",\n userName: \"Example\",\n}, { async: true }));\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample = aws.workspaces.get_workspace(directory_id=\"d-9967252f57\",\n user_name=\"Example\")\n```\n```csharp\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var example = Output.Create(Aws.Workspaces.GetWorkspace.InvokeAsync(new Aws.Workspaces.GetWorkspaceArgs\n {\n DirectoryId = \"d-9967252f57\",\n UserName = \"Example\",\n }));\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/workspaces\"\n\t\"github.com/pulumi/pulumi/sdk/v2/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\topt0 := \"d-9967252f57\"\n\t\topt1 := \"Example\"\n\t\t_, err := workspaces.LookupWorkspace(ctx, \u0026workspaces.LookupWorkspaceArgs{\n\t\t\tDirectoryId: \u0026opt0,\n\t\t\tUserName: \u0026opt1,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n{{% /example %}}\n{{% /examples %}}", + "inputs": { + "description": "A collection of arguments for invoking getWorkspace.\n", + "properties": { + "directoryId": { + "type": "string", + "description": "The ID of the directory for the WorkSpace. You have to specify `user_name` along with `directory_id`. You cannot combine this parameter with `workspace_id`.\n" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "The tags for the WorkSpace.\n" + }, + "userName": { + "type": "string", + "description": "The user name of the user for the WorkSpace. This user name must exist in the directory for the WorkSpace. You cannot combine this parameter with `workspace_id`.\n" + }, + "workspaceId": { + "type": "string", + "description": "The ID of the WorkSpace. You cannot combine this parameter with `directory_id`.\n" + } + }, + "type": "object" + }, + "outputs": { + "description": "A collection of values returned by getWorkspace.\n", + "properties": { + "bundleId": { + "type": "string" + }, + "computerName": { + "type": "string", + "description": "The name of the WorkSpace, as seen by the operating system.\n" + }, + "directoryId": { + "type": "string" + }, + "id": { + "type": "string", + "description": "The provider-assigned unique ID for this managed resource.\n" + }, + "ipAddress": { + "type": "string", + "description": "The IP address of the WorkSpace.\n" + }, + "rootVolumeEncryptionEnabled": { + "type": "boolean" + }, + "state": { + "type": "string", + "description": "The operational state of the WorkSpace.\n" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "userName": { + "type": "string" + }, + "userVolumeEncryptionEnabled": { + "type": "boolean" + }, + "volumeEncryptionKey": { + "type": "string" + }, + "workspaceId": { + "type": "string" + }, + "workspaceProperties": { + "type": "array", + "items": { + "$ref": "#/types/aws:workspaces/getWorkspaceWorkspaceProperty:getWorkspaceWorkspaceProperty" + } + } + }, + "type": "object", + "required": [ + "bundleId", + "computerName", + "directoryId", + "ipAddress", + "rootVolumeEncryptionEnabled", + "state", + "tags", + "userName", + "userVolumeEncryptionEnabled", + "volumeEncryptionKey", + "workspaceId", + "workspaceProperties", + "id" + ] + } } }, "language": { diff --git a/provider/go.mod b/provider/go.mod index 0dc31115d3f..6d4e5f468eb 100644 --- a/provider/go.mod +++ b/provider/go.mod @@ -16,5 +16,5 @@ replace ( github.com/Azure/go-autorest => github.com/Azure/go-autorest v12.4.3+incompatible github.com/hashicorp/terraform-plugin-sdk/v2 => github.com/pulumi/terraform-plugin-sdk/v2 v2.0.0-20200910230100-328eb4ff41df github.com/hashicorp/vault => github.com/hashicorp/vault v1.2.0 - github.com/terraform-providers/terraform-provider-aws => github.com/pulumi/terraform-provider-aws v1.38.1-0.20201030111810-846d2ca92b29 + github.com/terraform-providers/terraform-provider-aws => github.com/pulumi/terraform-provider-aws v1.38.1-0.20201106160513-9f38451091a0 ) diff --git a/provider/go.sum b/provider/go.sum index b2da49d13ea..0f0627239be 100644 --- a/provider/go.sum +++ b/provider/go.sum @@ -120,8 +120,8 @@ github.com/aws/aws-sdk-go v1.19.39/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpi github.com/aws/aws-sdk-go v1.25.3/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN924inxo= github.com/aws/aws-sdk-go v1.31.9/go.mod h1:5zCpMtNQVjRREroY7sYe8lOMRSxkhG6MZveU8YkpAk0= github.com/aws/aws-sdk-go v1.31.13/go.mod h1:5zCpMtNQVjRREroY7sYe8lOMRSxkhG6MZveU8YkpAk0= -github.com/aws/aws-sdk-go v1.35.9 h1:b1HiUpdkFLJyoOQ7zas36YHzjNHH0ivHx/G5lWBeg+U= -github.com/aws/aws-sdk-go v1.35.9/go.mod h1:tlPOdRjfxPBpNIwqDj61rmsnA85v9jc0Ps9+muhnW+k= +github.com/aws/aws-sdk-go v1.35.19 h1:vdIqQnOIqTNtvnOdt9r3Bf/FiCJ7KV/7O2BIj4TPx2w= +github.com/aws/aws-sdk-go v1.35.19/go.mod h1:tlPOdRjfxPBpNIwqDj61rmsnA85v9jc0Ps9+muhnW+k= github.com/beevik/etree v1.1.0 h1:T0xke/WvNtMoCqgzPhkX2r4rjY3GDZFi+FjpRZY2Jbs= github.com/beevik/etree v1.1.0/go.mod h1:r8Aw8JqVegEf0w2fDnATrX9VpkMcyFeM0FhwO62wh+A= github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q= @@ -554,8 +554,8 @@ github.com/pulumi/pulumi/sdk/v2 v2.12.0 h1:d2BQnOvRWCbxDG5DO0bz5FkhFbymABmOxlsx0 github.com/pulumi/pulumi/sdk/v2 v2.12.0/go.mod h1:WQ4WaHMA7mduVHAJi87iIqbWvqsuBUYccBiKK+FrayI= github.com/pulumi/terraform-plugin-sdk/v2 v2.0.0-20200910230100-328eb4ff41df h1:kXSvfAz43o0D0gfxUqVCOP3NrfnGbptJBshVsqZlBqA= github.com/pulumi/terraform-plugin-sdk/v2 v2.0.0-20200910230100-328eb4ff41df/go.mod h1:pVZLnLuSe/yv0XqTHFPb8xRGWPwgANT77jHeHqjXS5o= -github.com/pulumi/terraform-provider-aws v1.38.1-0.20201030111810-846d2ca92b29 h1:I2rbLRi1zTD0anrjKHZtxj9xXDU5ASTImLxFmBXRgbI= -github.com/pulumi/terraform-provider-aws v1.38.1-0.20201030111810-846d2ca92b29/go.mod h1:g4hEZE/aFUMjRTaJknpkKblCkUBZWo9tdhO3Sw181A4= +github.com/pulumi/terraform-provider-aws v1.38.1-0.20201106160513-9f38451091a0 h1:oTrnJy40Abz6LaPWiwwd8SmIRYM6jazBHXBRBEG15XE= +github.com/pulumi/terraform-provider-aws v1.38.1-0.20201106160513-9f38451091a0/go.mod h1:8BDELRx4yeryUJNleWrCcmKN4I8q6RQGgKGI6MOqLeA= github.com/rjeczalik/notify v0.9.2/go.mod h1:aErll2f0sUX9PXZnVNyeiObbmTlk5jnMoCa4QEjJeqM= github.com/rogpeppe/fastuuid v0.0.0-20150106093220-6724a57986af/go.mod h1:XWv6SoW27p1b0cqNHllgS5HIMJraePCO15w5zCzIWYg= github.com/rogpeppe/go-internal v1.3.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4= diff --git a/provider/resources.go b/provider/resources.go index f5b9b3d6641..8444fc660d8 100644 --- a/provider/resources.go +++ b/provider/resources.go @@ -1917,6 +1917,7 @@ func Provider() tfbridge.ProviderInfo { "aws_secretsmanager_secret": {Tok: awsResource(secretsmanagerMod, "Secret")}, "aws_secretsmanager_secret_version": {Tok: awsResource(secretsmanagerMod, "SecretVersion")}, "aws_secretsmanager_secret_rotation": {Tok: awsResource(secretsmanagerMod, "SecretRotation")}, + "aws_secretsmanager_secret_policy": {Tok: awsResource(secretsmanagerMod, "SecretPolicy")}, // Service Catalog "aws_servicecatalog_portfolio": {Tok: awsResource(servicecatalogMod, "Portfolio")}, // Security Hub @@ -3332,10 +3333,11 @@ func Provider() tfbridge.ProviderInfo { "aws_redshift_service_account": {Tok: awsDataSource(redshiftMod, "getServiceAccount")}, "aws_redshift_orderable_cluster": {Tok: awsDataSource(redshiftMod, "getOrderableCluster")}, // Route53 - "aws_route53_zone": {Tok: awsDataSource(route53Mod, "getZone")}, - "aws_route53_delegation_set": {Tok: awsDataSource(route53Mod, "getDelegationSet")}, - "aws_route53_resolver_rule": {Tok: awsDataSource(route53Mod, "getResolverRule")}, - "aws_route53_resolver_rules": {Tok: awsDataSource(route53Mod, "getResolverRules")}, + "aws_route53_zone": {Tok: awsDataSource(route53Mod, "getZone")}, + "aws_route53_delegation_set": {Tok: awsDataSource(route53Mod, "getDelegationSet")}, + "aws_route53_resolver_rule": {Tok: awsDataSource(route53Mod, "getResolverRule")}, + "aws_route53_resolver_rules": {Tok: awsDataSource(route53Mod, "getResolverRules")}, + "aws_route53_resolver_endpoint": {Tok: awsDataSource(route53Mod, "getResolverEndpoint")}, // S3 "aws_s3_bucket": {Tok: awsDataSource(s3Mod, "getBucket")}, "aws_s3_bucket_object": {Tok: awsDataSource(s3Mod, "getBucketObject")}, @@ -3360,6 +3362,7 @@ func Provider() tfbridge.ProviderInfo { "aws_workspaces_bundle": {Tok: awsDataSource(workspacesMod, "getBundle")}, "aws_workspaces_directory": {Tok: awsDataSource(workspacesMod, "getDirectory")}, "aws_workspaces_image": {Tok: awsDataSource(workspacesMod, "getImage")}, + "aws_workspaces_workspace": {Tok: awsDataSource(workspacesMod, "getWorkspace")}, // MSK "aws_msk_cluster": {Tok: awsDataSource(mskMod, "getCluster")}, // Service Quotas @@ -3419,6 +3422,7 @@ func Provider() tfbridge.ProviderInfo { "aws_neptune_engine_version": {Tok: awsDataSource(neptuneMod, "getEngineVersion")}, "aws_codeartifact_authorization_token": {Tok: awsDataSource(codeartifactMod, "getAuthorizationToken")}, "aws_codeartifact_repository_endpoint": {Tok: awsDataSource(codeartifactMod, "getRepositoryEndpoint")}, + "aws_sagemaker_prebuilt_ecr_image": {Tok: awsDataSource(sagemakerMod, "getPrebuiltEcrImage")}, }, JavaScript: &tfbridge.JavaScriptInfo{ Dependencies: map[string]string{ diff --git a/sdk/dotnet/Acmpca/Inputs/CertificateAuthorityCertificateAuthorityConfigurationSubjectArgs.cs b/sdk/dotnet/Acmpca/Inputs/CertificateAuthorityCertificateAuthorityConfigurationSubjectArgs.cs index 0e768783a65..f1975055ca9 100644 --- a/sdk/dotnet/Acmpca/Inputs/CertificateAuthorityCertificateAuthorityConfigurationSubjectArgs.cs +++ b/sdk/dotnet/Acmpca/Inputs/CertificateAuthorityCertificateAuthorityConfigurationSubjectArgs.cs @@ -13,79 +13,79 @@ namespace Pulumi.Aws.Acmpca.Inputs public sealed class CertificateAuthorityCertificateAuthorityConfigurationSubjectArgs : Pulumi.ResourceArgs { /// - /// Fully qualified domain name (FQDN) associated with the certificate subject. + /// Fully qualified domain name (FQDN) associated with the certificate subject. Must be less than or equal to 64 characters in length. /// [Input("commonName")] public Input? CommonName { get; set; } /// - /// Two digit code that specifies the country in which the certificate subject located. + /// Two digit code that specifies the country in which the certificate subject located. Must be less than or equal to 2 characters in length. /// [Input("country")] public Input? Country { get; set; } /// - /// Disambiguating information for the certificate subject. + /// Disambiguating information for the certificate subject. Must be less than or equal to 64 characters in length. /// [Input("distinguishedNameQualifier")] public Input? DistinguishedNameQualifier { get; set; } /// - /// Typically a qualifier appended to the name of an individual. Examples include Jr. for junior, Sr. for senior, and III for third. + /// Typically a qualifier appended to the name of an individual. Examples include Jr. for junior, Sr. for senior, and III for third. Must be less than or equal to 3 characters in length. /// [Input("generationQualifier")] public Input? GenerationQualifier { get; set; } /// - /// First name. + /// First name. Must be less than or equal to 16 characters in length. /// [Input("givenName")] public Input? GivenName { get; set; } /// - /// Concatenation that typically contains the first letter of the `given_name`, the first letter of the middle name if one exists, and the first letter of the `surname`. + /// Concatenation that typically contains the first letter of the `given_name`, the first letter of the middle name if one exists, and the first letter of the `surname`. Must be less than or equal to 5 characters in length. /// [Input("initials")] public Input? Initials { get; set; } /// - /// The locality (such as a city or town) in which the certificate subject is located. + /// The locality (such as a city or town) in which the certificate subject is located. Must be less than or equal to 128 characters in length. /// [Input("locality")] public Input? Locality { get; set; } /// - /// Legal name of the organization with which the certificate subject is affiliated. + /// Legal name of the organization with which the certificate subject is affiliated. Must be less than or equal to 64 characters in length. /// [Input("organization")] public Input? Organization { get; set; } /// - /// A subdivision or unit of the organization (such as sales or finance) with which the certificate subject is affiliated. + /// A subdivision or unit of the organization (such as sales or finance) with which the certificate subject is affiliated. Must be less than or equal to 64 characters in length. /// [Input("organizationalUnit")] public Input? OrganizationalUnit { get; set; } /// - /// Typically a shortened version of a longer `given_name`. For example, Jonathan is often shortened to John. Elizabeth is often shortened to Beth, Liz, or Eliza. + /// Typically a shortened version of a longer `given_name`. For example, Jonathan is often shortened to John. Elizabeth is often shortened to Beth, Liz, or Eliza. Must be less than or equal to 128 characters in length. /// [Input("pseudonym")] public Input? Pseudonym { get; set; } /// - /// State in which the subject of the certificate is located. + /// State in which the subject of the certificate is located. Must be less than or equal to 128 characters in length. /// [Input("state")] public Input? State { get; set; } /// - /// Family name. In the US and the UK for example, the surname of an individual is ordered last. In Asian cultures the surname is typically ordered first. + /// Family name. In the US and the UK for example, the surname of an individual is ordered last. In Asian cultures the surname is typically ordered first. Must be less than or equal to 40 characters in length. /// [Input("surname")] public Input? Surname { get; set; } /// - /// A title such as Mr. or Ms. which is pre-pended to the name to refer formally to the certificate subject. + /// A title such as Mr. or Ms. which is pre-pended to the name to refer formally to the certificate subject. Must be less than or equal to 64 characters in length. /// [Input("title")] public Input? Title { get; set; } diff --git a/sdk/dotnet/Acmpca/Inputs/CertificateAuthorityCertificateAuthorityConfigurationSubjectGetArgs.cs b/sdk/dotnet/Acmpca/Inputs/CertificateAuthorityCertificateAuthorityConfigurationSubjectGetArgs.cs index b6eec7eb57a..f5e3187a5c2 100644 --- a/sdk/dotnet/Acmpca/Inputs/CertificateAuthorityCertificateAuthorityConfigurationSubjectGetArgs.cs +++ b/sdk/dotnet/Acmpca/Inputs/CertificateAuthorityCertificateAuthorityConfigurationSubjectGetArgs.cs @@ -13,79 +13,79 @@ namespace Pulumi.Aws.Acmpca.Inputs public sealed class CertificateAuthorityCertificateAuthorityConfigurationSubjectGetArgs : Pulumi.ResourceArgs { /// - /// Fully qualified domain name (FQDN) associated with the certificate subject. + /// Fully qualified domain name (FQDN) associated with the certificate subject. Must be less than or equal to 64 characters in length. /// [Input("commonName")] public Input? CommonName { get; set; } /// - /// Two digit code that specifies the country in which the certificate subject located. + /// Two digit code that specifies the country in which the certificate subject located. Must be less than or equal to 2 characters in length. /// [Input("country")] public Input? Country { get; set; } /// - /// Disambiguating information for the certificate subject. + /// Disambiguating information for the certificate subject. Must be less than or equal to 64 characters in length. /// [Input("distinguishedNameQualifier")] public Input? DistinguishedNameQualifier { get; set; } /// - /// Typically a qualifier appended to the name of an individual. Examples include Jr. for junior, Sr. for senior, and III for third. + /// Typically a qualifier appended to the name of an individual. Examples include Jr. for junior, Sr. for senior, and III for third. Must be less than or equal to 3 characters in length. /// [Input("generationQualifier")] public Input? GenerationQualifier { get; set; } /// - /// First name. + /// First name. Must be less than or equal to 16 characters in length. /// [Input("givenName")] public Input? GivenName { get; set; } /// - /// Concatenation that typically contains the first letter of the `given_name`, the first letter of the middle name if one exists, and the first letter of the `surname`. + /// Concatenation that typically contains the first letter of the `given_name`, the first letter of the middle name if one exists, and the first letter of the `surname`. Must be less than or equal to 5 characters in length. /// [Input("initials")] public Input? Initials { get; set; } /// - /// The locality (such as a city or town) in which the certificate subject is located. + /// The locality (such as a city or town) in which the certificate subject is located. Must be less than or equal to 128 characters in length. /// [Input("locality")] public Input? Locality { get; set; } /// - /// Legal name of the organization with which the certificate subject is affiliated. + /// Legal name of the organization with which the certificate subject is affiliated. Must be less than or equal to 64 characters in length. /// [Input("organization")] public Input? Organization { get; set; } /// - /// A subdivision or unit of the organization (such as sales or finance) with which the certificate subject is affiliated. + /// A subdivision or unit of the organization (such as sales or finance) with which the certificate subject is affiliated. Must be less than or equal to 64 characters in length. /// [Input("organizationalUnit")] public Input? OrganizationalUnit { get; set; } /// - /// Typically a shortened version of a longer `given_name`. For example, Jonathan is often shortened to John. Elizabeth is often shortened to Beth, Liz, or Eliza. + /// Typically a shortened version of a longer `given_name`. For example, Jonathan is often shortened to John. Elizabeth is often shortened to Beth, Liz, or Eliza. Must be less than or equal to 128 characters in length. /// [Input("pseudonym")] public Input? Pseudonym { get; set; } /// - /// State in which the subject of the certificate is located. + /// State in which the subject of the certificate is located. Must be less than or equal to 128 characters in length. /// [Input("state")] public Input? State { get; set; } /// - /// Family name. In the US and the UK for example, the surname of an individual is ordered last. In Asian cultures the surname is typically ordered first. + /// Family name. In the US and the UK for example, the surname of an individual is ordered last. In Asian cultures the surname is typically ordered first. Must be less than or equal to 40 characters in length. /// [Input("surname")] public Input? Surname { get; set; } /// - /// A title such as Mr. or Ms. which is pre-pended to the name to refer formally to the certificate subject. + /// A title such as Mr. or Ms. which is pre-pended to the name to refer formally to the certificate subject. Must be less than or equal to 64 characters in length. /// [Input("title")] public Input? Title { get; set; } diff --git a/sdk/dotnet/Acmpca/Inputs/CertificateAuthorityRevocationConfigurationCrlConfigurationArgs.cs b/sdk/dotnet/Acmpca/Inputs/CertificateAuthorityRevocationConfigurationCrlConfigurationArgs.cs index 74e01e32e7e..b0fcb58b0e9 100644 --- a/sdk/dotnet/Acmpca/Inputs/CertificateAuthorityRevocationConfigurationCrlConfigurationArgs.cs +++ b/sdk/dotnet/Acmpca/Inputs/CertificateAuthorityRevocationConfigurationCrlConfigurationArgs.cs @@ -13,7 +13,7 @@ namespace Pulumi.Aws.Acmpca.Inputs public sealed class CertificateAuthorityRevocationConfigurationCrlConfigurationArgs : Pulumi.ResourceArgs { /// - /// Name inserted into the certificate CRL Distribution Points extension that enables the use of an alias for the CRL distribution point. Use this value if you don't want the name of your S3 bucket to be public. + /// Name inserted into the certificate CRL Distribution Points extension that enables the use of an alias for the CRL distribution point. Use this value if you don't want the name of your S3 bucket to be public. Must be less than or equal to 253 characters in length. /// [Input("customCname")] public Input? CustomCname { get; set; } @@ -31,7 +31,7 @@ public sealed class CertificateAuthorityRevocationConfigurationCrlConfigurationA public Input ExpirationInDays { get; set; } = null!; /// - /// Name of the S3 bucket that contains the CRL. If you do not provide a value for the `custom_cname` argument, the name of your S3 bucket is placed into the CRL Distribution Points extension of the issued certificate. You must specify a bucket policy that allows ACM PCA to write the CRL to your bucket. + /// Name of the S3 bucket that contains the CRL. If you do not provide a value for the `custom_cname` argument, the name of your S3 bucket is placed into the CRL Distribution Points extension of the issued certificate. You must specify a bucket policy that allows ACM PCA to write the CRL to your bucket. Must be less than or equal to 255 characters in length. /// [Input("s3BucketName")] public Input? S3BucketName { get; set; } diff --git a/sdk/dotnet/Acmpca/Inputs/CertificateAuthorityRevocationConfigurationCrlConfigurationGetArgs.cs b/sdk/dotnet/Acmpca/Inputs/CertificateAuthorityRevocationConfigurationCrlConfigurationGetArgs.cs index b525f1c1686..a3f83b0086a 100644 --- a/sdk/dotnet/Acmpca/Inputs/CertificateAuthorityRevocationConfigurationCrlConfigurationGetArgs.cs +++ b/sdk/dotnet/Acmpca/Inputs/CertificateAuthorityRevocationConfigurationCrlConfigurationGetArgs.cs @@ -13,7 +13,7 @@ namespace Pulumi.Aws.Acmpca.Inputs public sealed class CertificateAuthorityRevocationConfigurationCrlConfigurationGetArgs : Pulumi.ResourceArgs { /// - /// Name inserted into the certificate CRL Distribution Points extension that enables the use of an alias for the CRL distribution point. Use this value if you don't want the name of your S3 bucket to be public. + /// Name inserted into the certificate CRL Distribution Points extension that enables the use of an alias for the CRL distribution point. Use this value if you don't want the name of your S3 bucket to be public. Must be less than or equal to 253 characters in length. /// [Input("customCname")] public Input? CustomCname { get; set; } @@ -31,7 +31,7 @@ public sealed class CertificateAuthorityRevocationConfigurationCrlConfigurationG public Input ExpirationInDays { get; set; } = null!; /// - /// Name of the S3 bucket that contains the CRL. If you do not provide a value for the `custom_cname` argument, the name of your S3 bucket is placed into the CRL Distribution Points extension of the issued certificate. You must specify a bucket policy that allows ACM PCA to write the CRL to your bucket. + /// Name of the S3 bucket that contains the CRL. If you do not provide a value for the `custom_cname` argument, the name of your S3 bucket is placed into the CRL Distribution Points extension of the issued certificate. You must specify a bucket policy that allows ACM PCA to write the CRL to your bucket. Must be less than or equal to 255 characters in length. /// [Input("s3BucketName")] public Input? S3BucketName { get; set; } diff --git a/sdk/dotnet/Acmpca/Outputs/CertificateAuthorityCertificateAuthorityConfigurationSubject.cs b/sdk/dotnet/Acmpca/Outputs/CertificateAuthorityCertificateAuthorityConfigurationSubject.cs index b6e3d77029b..bb809e03db6 100644 --- a/sdk/dotnet/Acmpca/Outputs/CertificateAuthorityCertificateAuthorityConfigurationSubject.cs +++ b/sdk/dotnet/Acmpca/Outputs/CertificateAuthorityCertificateAuthorityConfigurationSubject.cs @@ -14,55 +14,55 @@ namespace Pulumi.Aws.Acmpca.Outputs public sealed class CertificateAuthorityCertificateAuthorityConfigurationSubject { /// - /// Fully qualified domain name (FQDN) associated with the certificate subject. + /// Fully qualified domain name (FQDN) associated with the certificate subject. Must be less than or equal to 64 characters in length. /// public readonly string? CommonName; /// - /// Two digit code that specifies the country in which the certificate subject located. + /// Two digit code that specifies the country in which the certificate subject located. Must be less than or equal to 2 characters in length. /// public readonly string? Country; /// - /// Disambiguating information for the certificate subject. + /// Disambiguating information for the certificate subject. Must be less than or equal to 64 characters in length. /// public readonly string? DistinguishedNameQualifier; /// - /// Typically a qualifier appended to the name of an individual. Examples include Jr. for junior, Sr. for senior, and III for third. + /// Typically a qualifier appended to the name of an individual. Examples include Jr. for junior, Sr. for senior, and III for third. Must be less than or equal to 3 characters in length. /// public readonly string? GenerationQualifier; /// - /// First name. + /// First name. Must be less than or equal to 16 characters in length. /// public readonly string? GivenName; /// - /// Concatenation that typically contains the first letter of the `given_name`, the first letter of the middle name if one exists, and the first letter of the `surname`. + /// Concatenation that typically contains the first letter of the `given_name`, the first letter of the middle name if one exists, and the first letter of the `surname`. Must be less than or equal to 5 characters in length. /// public readonly string? Initials; /// - /// The locality (such as a city or town) in which the certificate subject is located. + /// The locality (such as a city or town) in which the certificate subject is located. Must be less than or equal to 128 characters in length. /// public readonly string? Locality; /// - /// Legal name of the organization with which the certificate subject is affiliated. + /// Legal name of the organization with which the certificate subject is affiliated. Must be less than or equal to 64 characters in length. /// public readonly string? Organization; /// - /// A subdivision or unit of the organization (such as sales or finance) with which the certificate subject is affiliated. + /// A subdivision or unit of the organization (such as sales or finance) with which the certificate subject is affiliated. Must be less than or equal to 64 characters in length. /// public readonly string? OrganizationalUnit; /// - /// Typically a shortened version of a longer `given_name`. For example, Jonathan is often shortened to John. Elizabeth is often shortened to Beth, Liz, or Eliza. + /// Typically a shortened version of a longer `given_name`. For example, Jonathan is often shortened to John. Elizabeth is often shortened to Beth, Liz, or Eliza. Must be less than or equal to 128 characters in length. /// public readonly string? Pseudonym; /// - /// State in which the subject of the certificate is located. + /// State in which the subject of the certificate is located. Must be less than or equal to 128 characters in length. /// public readonly string? State; /// - /// Family name. In the US and the UK for example, the surname of an individual is ordered last. In Asian cultures the surname is typically ordered first. + /// Family name. In the US and the UK for example, the surname of an individual is ordered last. In Asian cultures the surname is typically ordered first. Must be less than or equal to 40 characters in length. /// public readonly string? Surname; /// - /// A title such as Mr. or Ms. which is pre-pended to the name to refer formally to the certificate subject. + /// A title such as Mr. or Ms. which is pre-pended to the name to refer formally to the certificate subject. Must be less than or equal to 64 characters in length. /// public readonly string? Title; diff --git a/sdk/dotnet/Acmpca/Outputs/CertificateAuthorityRevocationConfigurationCrlConfiguration.cs b/sdk/dotnet/Acmpca/Outputs/CertificateAuthorityRevocationConfigurationCrlConfiguration.cs index d9107c51ae8..c5dcfa8bbb8 100644 --- a/sdk/dotnet/Acmpca/Outputs/CertificateAuthorityRevocationConfigurationCrlConfiguration.cs +++ b/sdk/dotnet/Acmpca/Outputs/CertificateAuthorityRevocationConfigurationCrlConfiguration.cs @@ -14,7 +14,7 @@ namespace Pulumi.Aws.Acmpca.Outputs public sealed class CertificateAuthorityRevocationConfigurationCrlConfiguration { /// - /// Name inserted into the certificate CRL Distribution Points extension that enables the use of an alias for the CRL distribution point. Use this value if you don't want the name of your S3 bucket to be public. + /// Name inserted into the certificate CRL Distribution Points extension that enables the use of an alias for the CRL distribution point. Use this value if you don't want the name of your S3 bucket to be public. Must be less than or equal to 253 characters in length. /// public readonly string? CustomCname; /// @@ -26,7 +26,7 @@ public sealed class CertificateAuthorityRevocationConfigurationCrlConfiguration /// public readonly int ExpirationInDays; /// - /// Name of the S3 bucket that contains the CRL. If you do not provide a value for the `custom_cname` argument, the name of your S3 bucket is placed into the CRL Distribution Points extension of the issued certificate. You must specify a bucket policy that allows ACM PCA to write the CRL to your bucket. + /// Name of the S3 bucket that contains the CRL. If you do not provide a value for the `custom_cname` argument, the name of your S3 bucket is placed into the CRL Distribution Points extension of the issued certificate. You must specify a bucket policy that allows ACM PCA to write the CRL to your bucket. Must be less than or equal to 255 characters in length. /// public readonly string? S3BucketName; diff --git a/sdk/dotnet/ApiGatewayV2/Integration.cs b/sdk/dotnet/ApiGatewayV2/Integration.cs index 4686fa95f00..56a53574db9 100644 --- a/sdk/dotnet/ApiGatewayV2/Integration.cs +++ b/sdk/dotnet/ApiGatewayV2/Integration.cs @@ -195,11 +195,8 @@ public partial class Integration : Pulumi.CustomResource [Output("templateSelectionExpression")] public Output TemplateSelectionExpression { get; private set; } = null!; - /// - /// Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds or 29 seconds. - /// [Output("timeoutMilliseconds")] - public Output TimeoutMilliseconds { get; private set; } = null!; + public Output TimeoutMilliseconds { get; private set; } = null!; /// /// The TLS configuration for a private integration. Supported only for HTTP APIs. @@ -359,9 +356,6 @@ public InputMap RequestTemplates [Input("templateSelectionExpression")] public Input? TemplateSelectionExpression { get; set; } - /// - /// Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds or 29 seconds. - /// [Input("timeoutMilliseconds")] public Input? TimeoutMilliseconds { get; set; } @@ -490,9 +484,6 @@ public InputMap RequestTemplates [Input("templateSelectionExpression")] public Input? TemplateSelectionExpression { get; set; } - /// - /// Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds or 29 seconds. - /// [Input("timeoutMilliseconds")] public Input? TimeoutMilliseconds { get; set; } diff --git a/sdk/dotnet/CloudWatch/EventPermission.cs b/sdk/dotnet/CloudWatch/EventPermission.cs index 7fe0e124fcf..e009e67fc0a 100644 --- a/sdk/dotnet/CloudWatch/EventPermission.cs +++ b/sdk/dotnet/CloudWatch/EventPermission.cs @@ -74,6 +74,12 @@ public partial class EventPermission : Pulumi.CustomResource [Output("condition")] public Output Condition { get; private set; } = null!; + /// + /// The event bus to set the permissions on. If you omit this, the permissions are set on the `default` event bus. + /// + [Output("eventBusName")] + public Output EventBusName { get; private set; } = null!; + /// /// The 12-digit AWS account ID that you are permitting to put events to your default event bus. Specify `*` to permit any account to put events to your default event bus, optionally limited by `condition`. /// @@ -144,6 +150,12 @@ public sealed class EventPermissionArgs : Pulumi.ResourceArgs [Input("condition")] public Input? Condition { get; set; } + /// + /// The event bus to set the permissions on. If you omit this, the permissions are set on the `default` event bus. + /// + [Input("eventBusName")] + public Input? EventBusName { get; set; } + /// /// The 12-digit AWS account ID that you are permitting to put events to your default event bus. Specify `*` to permit any account to put events to your default event bus, optionally limited by `condition`. /// @@ -175,6 +187,12 @@ public sealed class EventPermissionState : Pulumi.ResourceArgs [Input("condition")] public Input? Condition { get; set; } + /// + /// The event bus to set the permissions on. If you omit this, the permissions are set on the `default` event bus. + /// + [Input("eventBusName")] + public Input? EventBusName { get; set; } + /// /// The 12-digit AWS account ID that you are permitting to put events to your default event bus. Specify `*` to permit any account to put events to your default event bus, optionally limited by `condition`. /// diff --git a/sdk/dotnet/CloudWatch/EventTarget.cs b/sdk/dotnet/CloudWatch/EventTarget.cs index 3452a572ed5..54b73656d68 100644 --- a/sdk/dotnet/CloudWatch/EventTarget.cs +++ b/sdk/dotnet/CloudWatch/EventTarget.cs @@ -242,6 +242,76 @@ namespace Pulumi.Aws.CloudWatch /// /// } /// ``` + /// + /// ## Example Input Transformer Usage - JSON Object + /// + /// ```csharp + /// using Pulumi; + /// using Aws = Pulumi.Aws; + /// + /// class MyStack : Stack + /// { + /// public MyStack() + /// { + /// var exampleEventRule = new Aws.CloudWatch.EventRule("exampleEventRule", new Aws.CloudWatch.EventRuleArgs + /// { + /// }); + /// // ... + /// var exampleEventTarget = new Aws.CloudWatch.EventTarget("exampleEventTarget", new Aws.CloudWatch.EventTargetArgs + /// { + /// Arn = aws_lambda_function.Example.Arn, + /// Rule = exampleEventRule.Id, + /// InputTransformer = new Aws.CloudWatch.Inputs.EventTargetInputTransformerArgs + /// { + /// InputPaths = + /// { + /// { "instance", "$.detail.instance" }, + /// { "status", "$.detail.status" }, + /// }, + /// InputTemplate = @"{ + /// ""instance_id"": <instance>, + /// ""instance_status"": <status> + /// } + /// ", + /// }, + /// }); + /// } + /// + /// } + /// ``` + /// + /// ## Example Input Transformer Usage - Simple String + /// + /// ```csharp + /// using Pulumi; + /// using Aws = Pulumi.Aws; + /// + /// class MyStack : Stack + /// { + /// public MyStack() + /// { + /// var exampleEventRule = new Aws.CloudWatch.EventRule("exampleEventRule", new Aws.CloudWatch.EventRuleArgs + /// { + /// }); + /// // ... + /// var exampleEventTarget = new Aws.CloudWatch.EventTarget("exampleEventTarget", new Aws.CloudWatch.EventTargetArgs + /// { + /// Arn = aws_lambda_function.Example.Arn, + /// Rule = exampleEventRule.Id, + /// InputTransformer = new Aws.CloudWatch.Inputs.EventTargetInputTransformerArgs + /// { + /// InputPaths = + /// { + /// { "instance", "$.detail.instance" }, + /// { "status", "$.detail.status" }, + /// }, + /// InputTemplate = "\"<instance> is in state <status>\"", + /// }, + /// }); + /// } + /// + /// } + /// ``` /// public partial class EventTarget : Pulumi.CustomResource { @@ -264,20 +334,26 @@ public partial class EventTarget : Pulumi.CustomResource public Output EcsTarget { get; private set; } = null!; /// - /// Valid JSON text passed to the target. + /// The event bus to associate with the rule. If you omit this, the `default` event bus is used. + /// + [Output("eventBusName")] + public Output EventBusName { get; private set; } = null!; + + /// + /// Valid JSON text passed to the target. Conflicts with `input_path` and `input_transformer`. /// [Output("input")] public Output Input { get; private set; } = null!; /// /// The value of the [JSONPath](http://goessner.net/articles/JsonPath/) - /// that is used for extracting part of the matched event when passing it to the target. + /// that is used for extracting part of the matched event when passing it to the target. Conflicts with `input` and `input_transformer`. /// [Output("inputPath")] public Output InputPath { get; private set; } = null!; /// - /// Parameters used when you are providing a custom input to a target based on certain event data. + /// Parameters used when you are providing a custom input to a target based on certain event data. Conflicts with `input` and `input_path`. /// [Output("inputTransformer")] public Output InputTransformer { get; private set; } = null!; @@ -383,20 +459,26 @@ public sealed class EventTargetArgs : Pulumi.ResourceArgs public Input? EcsTarget { get; set; } /// - /// Valid JSON text passed to the target. + /// The event bus to associate with the rule. If you omit this, the `default` event bus is used. + /// + [Input("eventBusName")] + public Input? EventBusName { get; set; } + + /// + /// Valid JSON text passed to the target. Conflicts with `input_path` and `input_transformer`. /// [Input("input")] public Input? Input { get; set; } /// /// The value of the [JSONPath](http://goessner.net/articles/JsonPath/) - /// that is used for extracting part of the matched event when passing it to the target. + /// that is used for extracting part of the matched event when passing it to the target. Conflicts with `input` and `input_transformer`. /// [Input("inputPath")] public Input? InputPath { get; set; } /// - /// Parameters used when you are providing a custom input to a target based on certain event data. + /// Parameters used when you are providing a custom input to a target based on certain event data. Conflicts with `input` and `input_path`. /// [Input("inputTransformer")] public Input? InputTransformer { get; set; } @@ -469,20 +551,26 @@ public sealed class EventTargetState : Pulumi.ResourceArgs public Input? EcsTarget { get; set; } /// - /// Valid JSON text passed to the target. + /// The event bus to associate with the rule. If you omit this, the `default` event bus is used. + /// + [Input("eventBusName")] + public Input? EventBusName { get; set; } + + /// + /// Valid JSON text passed to the target. Conflicts with `input_path` and `input_transformer`. /// [Input("input")] public Input? Input { get; set; } /// /// The value of the [JSONPath](http://goessner.net/articles/JsonPath/) - /// that is used for extracting part of the matched event when passing it to the target. + /// that is used for extracting part of the matched event when passing it to the target. Conflicts with `input` and `input_transformer`. /// [Input("inputPath")] public Input? InputPath { get; set; } /// - /// Parameters used when you are providing a custom input to a target based on certain event data. + /// Parameters used when you are providing a custom input to a target based on certain event data. Conflicts with `input` and `input_path`. /// [Input("inputTransformer")] public Input? InputTransformer { get; set; } diff --git a/sdk/dotnet/CloudWatch/Inputs/EventTargetEcsTargetArgs.cs b/sdk/dotnet/CloudWatch/Inputs/EventTargetEcsTargetArgs.cs index c0bd61e90be..ef70da2b792 100644 --- a/sdk/dotnet/CloudWatch/Inputs/EventTargetEcsTargetArgs.cs +++ b/sdk/dotnet/CloudWatch/Inputs/EventTargetEcsTargetArgs.cs @@ -19,7 +19,7 @@ public sealed class EventTargetEcsTargetArgs : Pulumi.ResourceArgs public Input? Group { get; set; } /// - /// Specifies the launch type on which your task is running. The launch type that you specify here must match one of the launch type (compatibilities) of the target task. Valid values are EC2 or FARGATE. + /// Specifies the launch type on which your task is running. The launch type that you specify here must match one of the launch type (compatibilities) of the target task. Valid values are `EC2` or `FARGATE`. /// [Input("launchType")] public Input? LaunchType { get; set; } diff --git a/sdk/dotnet/CloudWatch/Inputs/EventTargetEcsTargetGetArgs.cs b/sdk/dotnet/CloudWatch/Inputs/EventTargetEcsTargetGetArgs.cs index a25ebca02b8..02f9b3582ec 100644 --- a/sdk/dotnet/CloudWatch/Inputs/EventTargetEcsTargetGetArgs.cs +++ b/sdk/dotnet/CloudWatch/Inputs/EventTargetEcsTargetGetArgs.cs @@ -19,7 +19,7 @@ public sealed class EventTargetEcsTargetGetArgs : Pulumi.ResourceArgs public Input? Group { get; set; } /// - /// Specifies the launch type on which your task is running. The launch type that you specify here must match one of the launch type (compatibilities) of the target task. Valid values are EC2 or FARGATE. + /// Specifies the launch type on which your task is running. The launch type that you specify here must match one of the launch type (compatibilities) of the target task. Valid values are `EC2` or `FARGATE`. /// [Input("launchType")] public Input? LaunchType { get; set; } diff --git a/sdk/dotnet/CloudWatch/Inputs/EventTargetInputTransformerArgs.cs b/sdk/dotnet/CloudWatch/Inputs/EventTargetInputTransformerArgs.cs index d257a111502..2e7bdea0bf2 100644 --- a/sdk/dotnet/CloudWatch/Inputs/EventTargetInputTransformerArgs.cs +++ b/sdk/dotnet/CloudWatch/Inputs/EventTargetInputTransformerArgs.cs @@ -27,9 +27,6 @@ public InputMap InputPaths set => _inputPaths = value; } - /// - /// Structure containing the template body. - /// [Input("inputTemplate", required: true)] public Input InputTemplate { get; set; } = null!; diff --git a/sdk/dotnet/CloudWatch/Inputs/EventTargetInputTransformerGetArgs.cs b/sdk/dotnet/CloudWatch/Inputs/EventTargetInputTransformerGetArgs.cs index df014af8533..66e41cf5c00 100644 --- a/sdk/dotnet/CloudWatch/Inputs/EventTargetInputTransformerGetArgs.cs +++ b/sdk/dotnet/CloudWatch/Inputs/EventTargetInputTransformerGetArgs.cs @@ -27,9 +27,6 @@ public InputMap InputPaths set => _inputPaths = value; } - /// - /// Structure containing the template body. - /// [Input("inputTemplate", required: true)] public Input InputTemplate { get; set; } = null!; diff --git a/sdk/dotnet/CloudWatch/Outputs/EventTargetEcsTarget.cs b/sdk/dotnet/CloudWatch/Outputs/EventTargetEcsTarget.cs index ed435d67591..8a07c4b69bc 100644 --- a/sdk/dotnet/CloudWatch/Outputs/EventTargetEcsTarget.cs +++ b/sdk/dotnet/CloudWatch/Outputs/EventTargetEcsTarget.cs @@ -18,7 +18,7 @@ public sealed class EventTargetEcsTarget /// public readonly string? Group; /// - /// Specifies the launch type on which your task is running. The launch type that you specify here must match one of the launch type (compatibilities) of the target task. Valid values are EC2 or FARGATE. + /// Specifies the launch type on which your task is running. The launch type that you specify here must match one of the launch type (compatibilities) of the target task. Valid values are `EC2` or `FARGATE`. /// public readonly string? LaunchType; /// diff --git a/sdk/dotnet/CloudWatch/Outputs/EventTargetInputTransformer.cs b/sdk/dotnet/CloudWatch/Outputs/EventTargetInputTransformer.cs index a066870b71f..5dc76f88c22 100644 --- a/sdk/dotnet/CloudWatch/Outputs/EventTargetInputTransformer.cs +++ b/sdk/dotnet/CloudWatch/Outputs/EventTargetInputTransformer.cs @@ -20,9 +20,6 @@ public sealed class EventTargetInputTransformer /// * The keys can't start with "AWS". /// public readonly ImmutableDictionary? InputPaths; - /// - /// Structure containing the template body. - /// public readonly string InputTemplate; [OutputConstructor] diff --git a/sdk/dotnet/CodeArtifact/Domain.cs b/sdk/dotnet/CodeArtifact/Domain.cs index 83fc5a0534b..e3e4971a880 100644 --- a/sdk/dotnet/CodeArtifact/Domain.cs +++ b/sdk/dotnet/CodeArtifact/Domain.cs @@ -80,6 +80,12 @@ public partial class Domain : Pulumi.CustomResource [Output("repositoryCount")] public Output RepositoryCount { get; private set; } = null!; + /// + /// Key-value map of resource tags. + /// + [Output("tags")] + public Output?> Tags { get; private set; } = null!; + /// /// Create a Domain resource with the given unique name, arguments, and options. @@ -138,6 +144,18 @@ public sealed class DomainArgs : Pulumi.ResourceArgs [Input("encryptionKey", required: true)] public Input EncryptionKey { get; set; } = null!; + [Input("tags")] + private InputMap? _tags; + + /// + /// Key-value map of resource tags. + /// + public InputMap Tags + { + get => _tags ?? (_tags = new InputMap()); + set => _tags = value; + } + public DomainArgs() { } @@ -187,6 +205,18 @@ public sealed class DomainState : Pulumi.ResourceArgs [Input("repositoryCount")] public Input? RepositoryCount { get; set; } + [Input("tags")] + private InputMap? _tags; + + /// + /// Key-value map of resource tags. + /// + public InputMap Tags + { + get => _tags ?? (_tags = new InputMap()); + set => _tags = value; + } + public DomainState() { } diff --git a/sdk/dotnet/CodeArtifact/Repository.cs b/sdk/dotnet/CodeArtifact/Repository.cs index 55b8f8ca076..15fbcee2e93 100644 --- a/sdk/dotnet/CodeArtifact/Repository.cs +++ b/sdk/dotnet/CodeArtifact/Repository.cs @@ -144,6 +144,12 @@ public partial class Repository : Pulumi.CustomResource [Output("repository")] public Output RepositoryName { get; private set; } = null!; + /// + /// Key-value map of resource tags. + /// + [Output("tags")] + public Output?> Tags { get; private set; } = null!; + /// /// A list of upstream repositories to associate with the repository. The order of the upstream repositories in the list determines their priority order when AWS CodeArtifact looks for a requested package version. see Upstream /// @@ -226,6 +232,18 @@ public sealed class RepositoryArgs : Pulumi.ResourceArgs [Input("repository", required: true)] public Input RepositoryName { get; set; } = null!; + [Input("tags")] + private InputMap? _tags; + + /// + /// Key-value map of resource tags. + /// + public InputMap Tags + { + get => _tags ?? (_tags = new InputMap()); + set => _tags = value; + } + [Input("upstreams")] private InputList? _upstreams; @@ -287,6 +305,18 @@ public sealed class RepositoryState : Pulumi.ResourceArgs [Input("repository")] public Input? RepositoryName { get; set; } + [Input("tags")] + private InputMap? _tags; + + /// + /// Key-value map of resource tags. + /// + public InputMap Tags + { + get => _tags ?? (_tags = new InputMap()); + set => _tags = value; + } + [Input("upstreams")] private InputList? _upstreams; diff --git a/sdk/dotnet/Config/Config.cs b/sdk/dotnet/Config/Config.cs index 85b5e321f1f..d77172de056 100644 --- a/sdk/dotnet/Config/Config.cs +++ b/sdk/dotnet/Config/Config.cs @@ -139,6 +139,7 @@ public class Endpoints public string? Codecommit { get; set; } = null!; public string? Codedeploy { get; set; } = null!; public string? Codepipeline { get; set; } = null!; + public string? Codestarconnections { get; set; } = null!; public string? Cognitoidentity { get; set; } = null!; public string? Cognitoidp { get; set; } = null!; public string? Configservice { get; set; } = null!; diff --git a/sdk/dotnet/DirectConnect/GatewayAssociation.cs b/sdk/dotnet/DirectConnect/GatewayAssociation.cs index 0edeb5c077b..38f727b7da4 100644 --- a/sdk/dotnet/DirectConnect/GatewayAssociation.cs +++ b/sdk/dotnet/DirectConnect/GatewayAssociation.cs @@ -115,8 +115,6 @@ namespace Pulumi.Aws.DirectConnect /// /// } /// ``` - /// - /// A full example of how to create a VPN Gateway in one AWS account, create a Direct Connect Gateway in a second AWS account, and associate the VPN Gateway with the Direct Connect Gateway via the `aws.directconnect.GatewayAssociationProposal` and `aws.directconnect.GatewayAssociation` resources can be found in [the `./examples/dx-gateway-cross-account-vgw-association` directory within the Github Repository](https://github.com/providers/provider-aws/tree/master/examples/dx-gateway-cross-account-vgw-association). /// public partial class GatewayAssociation : Pulumi.CustomResource { diff --git a/sdk/dotnet/DirectConnect/GatewayAssociationProposal.cs b/sdk/dotnet/DirectConnect/GatewayAssociationProposal.cs index a2e772cc3d0..f92ab3d16bc 100644 --- a/sdk/dotnet/DirectConnect/GatewayAssociationProposal.cs +++ b/sdk/dotnet/DirectConnect/GatewayAssociationProposal.cs @@ -32,8 +32,6 @@ namespace Pulumi.Aws.DirectConnect /// /// } /// ``` - /// - /// A full example of how to create a VPN Gateway in one AWS account, create a Direct Connect Gateway in a second AWS account, and associate the VPN Gateway with the Direct Connect Gateway via the `aws.directconnect.GatewayAssociationProposal` and `aws.directconnect.GatewayAssociation` resources can be found in [the `./examples/dx-gateway-cross-account-vgw-association` directory within the Github Repository](https://github.com/providers/provider-aws/tree/master/examples/dx-gateway-cross-account-vgw-association). /// public partial class GatewayAssociationProposal : Pulumi.CustomResource { diff --git a/sdk/dotnet/Ec2/Eip.cs b/sdk/dotnet/Ec2/Eip.cs index 82ad475fd84..f48b4740632 100644 --- a/sdk/dotnet/Ec2/Eip.cs +++ b/sdk/dotnet/Ec2/Eip.cs @@ -189,6 +189,12 @@ public partial class Eip : Pulumi.CustomResource [Output("instance")] public Output Instance { get; private set; } = null!; + /// + /// The location from which the IP address is advertised. Use this parameter to limit the address to this location. + /// + [Output("networkBorderGroup")] + public Output NetworkBorderGroup { get; private set; } = null!; + /// /// Network interface ID to associate with. /// @@ -303,6 +309,12 @@ public sealed class EipArgs : Pulumi.ResourceArgs [Input("instance")] public Input? Instance { get; set; } + /// + /// The location from which the IP address is advertised. Use this parameter to limit the address to this location. + /// + [Input("networkBorderGroup")] + public Input? NetworkBorderGroup { get; set; } + /// /// Network interface ID to associate with. /// @@ -378,6 +390,12 @@ public sealed class EipState : Pulumi.ResourceArgs [Input("instance")] public Input? Instance { get; set; } + /// + /// The location from which the IP address is advertised. Use this parameter to limit the address to this location. + /// + [Input("networkBorderGroup")] + public Input? NetworkBorderGroup { get; set; } + /// /// Network interface ID to associate with. /// diff --git a/sdk/dotnet/Ec2TransitGateway/VpcAttachment.cs b/sdk/dotnet/Ec2TransitGateway/VpcAttachment.cs index d7185571c05..8309bef375d 100644 --- a/sdk/dotnet/Ec2TransitGateway/VpcAttachment.cs +++ b/sdk/dotnet/Ec2TransitGateway/VpcAttachment.cs @@ -35,8 +35,6 @@ namespace Pulumi.Aws.Ec2TransitGateway /// /// } /// ``` - /// - /// A full example of how to create a Transit Gateway in one AWS account, share it with a second AWS account, and attach a VPC in the second account to the Transit Gateway via the `aws.ec2transitgateway.VpcAttachment` and `aws.ec2transitgateway.VpcAttachmentAccepter` resources can be found in [the `./examples/transit-gateway-cross-account-vpc-attachment` directory within the Github Repository](https://github.com/providers/provider-aws/tree/master/examples/transit-gateway-cross-account-vpc-attachment). /// public partial class VpcAttachment : Pulumi.CustomResource { diff --git a/sdk/dotnet/Ec2TransitGateway/VpcAttachmentAccepter.cs b/sdk/dotnet/Ec2TransitGateway/VpcAttachmentAccepter.cs index a392e3dd2d8..7e09e104998 100644 --- a/sdk/dotnet/Ec2TransitGateway/VpcAttachmentAccepter.cs +++ b/sdk/dotnet/Ec2TransitGateway/VpcAttachmentAccepter.cs @@ -40,8 +40,6 @@ namespace Pulumi.Aws.Ec2TransitGateway /// /// } /// ``` - /// - /// A full example of how to how to create a Transit Gateway in one AWS account, share it with a second AWS account, and attach a VPC in the second account to the Transit Gateway via the `aws.ec2transitgateway.VpcAttachment` and `aws.ec2transitgateway.VpcAttachmentAccepter` resources can be found in [the `./examples/transit-gateway-cross-account-vpc-attachment` directory within the Github Repository](https://github.com/providers/provider-aws/tree/master/examples/transit-gateway-cross-account-vpc-attachment). /// public partial class VpcAttachmentAccepter : Pulumi.CustomResource { diff --git a/sdk/dotnet/Glue/Crawler.cs b/sdk/dotnet/Glue/Crawler.cs index aa5484f1034..68fa0f6d85c 100644 --- a/sdk/dotnet/Glue/Crawler.cs +++ b/sdk/dotnet/Glue/Crawler.cs @@ -133,6 +133,33 @@ namespace Pulumi.Aws.Glue /// /// } /// ``` + /// ### MongoDB Target + /// + /// ```csharp + /// using Pulumi; + /// using Aws = Pulumi.Aws; + /// + /// class MyStack : Stack + /// { + /// public MyStack() + /// { + /// var example = new Aws.Glue.Crawler("example", new Aws.Glue.CrawlerArgs + /// { + /// DatabaseName = aws_glue_catalog_database.Example.Name, + /// Role = aws_iam_role.Example.Arn, + /// MongodbTargets = + /// { + /// new Aws.Glue.Inputs.CrawlerMongodbTargetArgs + /// { + /// ConnectionName = aws_glue_connection.Example.Name, + /// Path = "database-name/%", + /// }, + /// }, + /// }); + /// } + /// + /// } + /// ``` /// public partial class Crawler : Pulumi.CustomResource { @@ -181,6 +208,12 @@ public partial class Crawler : Pulumi.CustomResource [Output("jdbcTargets")] public Output> JdbcTargets { get; private set; } = null!; + /// + /// List nested MongoDB target arguments. See below. + /// + [Output("mongodbTargets")] + public Output> MongodbTargets { get; private set; } = null!; + /// /// Name of the crawler. /// @@ -337,6 +370,18 @@ public InputList JdbcTargets set => _jdbcTargets = value; } + [Input("mongodbTargets")] + private InputList? _mongodbTargets; + + /// + /// List nested MongoDB target arguments. See below. + /// + public InputList MongodbTargets + { + get => _mongodbTargets ?? (_mongodbTargets = new InputList()); + set => _mongodbTargets = value; + } + /// /// Name of the crawler. /// @@ -472,6 +517,18 @@ public InputList JdbcTargets set => _jdbcTargets = value; } + [Input("mongodbTargets")] + private InputList? _mongodbTargets; + + /// + /// List nested MongoDB target arguments. See below. + /// + public InputList MongodbTargets + { + get => _mongodbTargets ?? (_mongodbTargets = new InputList()); + set => _mongodbTargets = value; + } + /// /// Name of the crawler. /// diff --git a/sdk/dotnet/Glue/Inputs/CrawlerMongodbTargetArgs.cs b/sdk/dotnet/Glue/Inputs/CrawlerMongodbTargetArgs.cs new file mode 100644 index 00000000000..c355fafffe2 --- /dev/null +++ b/sdk/dotnet/Glue/Inputs/CrawlerMongodbTargetArgs.cs @@ -0,0 +1,37 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Aws.Glue.Inputs +{ + + public sealed class CrawlerMongodbTargetArgs : Pulumi.ResourceArgs + { + /// + /// The name of the connection to use to connect to the Amazon DocumentDB or MongoDB target. + /// + [Input("connectionName", required: true)] + public Input ConnectionName { get; set; } = null!; + + /// + /// The path of the Amazon DocumentDB or MongoDB target (database/collection). + /// + [Input("path", required: true)] + public Input Path { get; set; } = null!; + + /// + /// Indicates whether to scan all the records, or to sample rows from the table. Scanning all the records can take a long time when the table is not a high throughput table. Default value is `true`. + /// + [Input("scanAll")] + public Input? ScanAll { get; set; } + + public CrawlerMongodbTargetArgs() + { + } + } +} diff --git a/sdk/dotnet/Glue/Inputs/CrawlerMongodbTargetGetArgs.cs b/sdk/dotnet/Glue/Inputs/CrawlerMongodbTargetGetArgs.cs new file mode 100644 index 00000000000..3bba1707d8f --- /dev/null +++ b/sdk/dotnet/Glue/Inputs/CrawlerMongodbTargetGetArgs.cs @@ -0,0 +1,37 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Aws.Glue.Inputs +{ + + public sealed class CrawlerMongodbTargetGetArgs : Pulumi.ResourceArgs + { + /// + /// The name of the connection to use to connect to the Amazon DocumentDB or MongoDB target. + /// + [Input("connectionName", required: true)] + public Input ConnectionName { get; set; } = null!; + + /// + /// The path of the Amazon DocumentDB or MongoDB target (database/collection). + /// + [Input("path", required: true)] + public Input Path { get; set; } = null!; + + /// + /// Indicates whether to scan all the records, or to sample rows from the table. Scanning all the records can take a long time when the table is not a high throughput table. Default value is `true`. + /// + [Input("scanAll")] + public Input? ScanAll { get; set; } + + public CrawlerMongodbTargetGetArgs() + { + } + } +} diff --git a/sdk/dotnet/Glue/Inputs/TriggerActionArgs.cs b/sdk/dotnet/Glue/Inputs/TriggerActionArgs.cs index cec5b736134..551eb4a1894 100644 --- a/sdk/dotnet/Glue/Inputs/TriggerActionArgs.cs +++ b/sdk/dotnet/Glue/Inputs/TriggerActionArgs.cs @@ -36,6 +36,18 @@ public InputMap Arguments [Input("jobName")] public Input? JobName { get; set; } + /// + /// Specifies configuration properties of a job run notification. see Notification Property details below. + /// + [Input("notificationProperty")] + public Input? NotificationProperty { get; set; } + + /// + /// The name of the Security Configuration structure to be used with this action. + /// + [Input("securityConfiguration")] + public Input? SecurityConfiguration { get; set; } + /// /// The job run timeout in minutes. It overrides the timeout value of the job. /// diff --git a/sdk/dotnet/Glue/Inputs/TriggerActionGetArgs.cs b/sdk/dotnet/Glue/Inputs/TriggerActionGetArgs.cs index 1d05584b440..c91e8e2adcb 100644 --- a/sdk/dotnet/Glue/Inputs/TriggerActionGetArgs.cs +++ b/sdk/dotnet/Glue/Inputs/TriggerActionGetArgs.cs @@ -36,6 +36,18 @@ public InputMap Arguments [Input("jobName")] public Input? JobName { get; set; } + /// + /// Specifies configuration properties of a job run notification. see Notification Property details below. + /// + [Input("notificationProperty")] + public Input? NotificationProperty { get; set; } + + /// + /// The name of the Security Configuration structure to be used with this action. + /// + [Input("securityConfiguration")] + public Input? SecurityConfiguration { get; set; } + /// /// The job run timeout in minutes. It overrides the timeout value of the job. /// diff --git a/sdk/dotnet/Glue/Inputs/TriggerActionNotificationPropertyArgs.cs b/sdk/dotnet/Glue/Inputs/TriggerActionNotificationPropertyArgs.cs new file mode 100644 index 00000000000..859471cbac2 --- /dev/null +++ b/sdk/dotnet/Glue/Inputs/TriggerActionNotificationPropertyArgs.cs @@ -0,0 +1,25 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Aws.Glue.Inputs +{ + + public sealed class TriggerActionNotificationPropertyArgs : Pulumi.ResourceArgs + { + /// + /// After a job run starts, the number of minutes to wait before sending a job run delay notification. + /// + [Input("notifyDelayAfter")] + public Input? NotifyDelayAfter { get; set; } + + public TriggerActionNotificationPropertyArgs() + { + } + } +} diff --git a/sdk/dotnet/Glue/Inputs/TriggerActionNotificationPropertyGetArgs.cs b/sdk/dotnet/Glue/Inputs/TriggerActionNotificationPropertyGetArgs.cs new file mode 100644 index 00000000000..bcac3030cba --- /dev/null +++ b/sdk/dotnet/Glue/Inputs/TriggerActionNotificationPropertyGetArgs.cs @@ -0,0 +1,25 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Aws.Glue.Inputs +{ + + public sealed class TriggerActionNotificationPropertyGetArgs : Pulumi.ResourceArgs + { + /// + /// After a job run starts, the number of minutes to wait before sending a job run delay notification. + /// + [Input("notifyDelayAfter")] + public Input? NotifyDelayAfter { get; set; } + + public TriggerActionNotificationPropertyGetArgs() + { + } + } +} diff --git a/sdk/dotnet/Glue/Outputs/CrawlerMongodbTarget.cs b/sdk/dotnet/Glue/Outputs/CrawlerMongodbTarget.cs new file mode 100644 index 00000000000..e53cf65a5be --- /dev/null +++ b/sdk/dotnet/Glue/Outputs/CrawlerMongodbTarget.cs @@ -0,0 +1,42 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Aws.Glue.Outputs +{ + + [OutputType] + public sealed class CrawlerMongodbTarget + { + /// + /// The name of the connection to use to connect to the Amazon DocumentDB or MongoDB target. + /// + public readonly string ConnectionName; + /// + /// The path of the Amazon DocumentDB or MongoDB target (database/collection). + /// + public readonly string Path; + /// + /// Indicates whether to scan all the records, or to sample rows from the table. Scanning all the records can take a long time when the table is not a high throughput table. Default value is `true`. + /// + public readonly bool? ScanAll; + + [OutputConstructor] + private CrawlerMongodbTarget( + string connectionName, + + string path, + + bool? scanAll) + { + ConnectionName = connectionName; + Path = path; + ScanAll = scanAll; + } + } +} diff --git a/sdk/dotnet/Glue/Outputs/TriggerAction.cs b/sdk/dotnet/Glue/Outputs/TriggerAction.cs index 5831b34d5fe..7d615367f36 100644 --- a/sdk/dotnet/Glue/Outputs/TriggerAction.cs +++ b/sdk/dotnet/Glue/Outputs/TriggerAction.cs @@ -26,6 +26,14 @@ public sealed class TriggerAction /// public readonly string? JobName; /// + /// Specifies configuration properties of a job run notification. see Notification Property details below. + /// + public readonly Outputs.TriggerActionNotificationProperty? NotificationProperty; + /// + /// The name of the Security Configuration structure to be used with this action. + /// + public readonly string? SecurityConfiguration; + /// /// The job run timeout in minutes. It overrides the timeout value of the job. /// public readonly int? Timeout; @@ -38,11 +46,17 @@ private TriggerAction( string? jobName, + Outputs.TriggerActionNotificationProperty? notificationProperty, + + string? securityConfiguration, + int? timeout) { Arguments = arguments; CrawlerName = crawlerName; JobName = jobName; + NotificationProperty = notificationProperty; + SecurityConfiguration = securityConfiguration; Timeout = timeout; } } diff --git a/sdk/dotnet/Glue/Outputs/TriggerActionNotificationProperty.cs b/sdk/dotnet/Glue/Outputs/TriggerActionNotificationProperty.cs new file mode 100644 index 00000000000..e9ad0613844 --- /dev/null +++ b/sdk/dotnet/Glue/Outputs/TriggerActionNotificationProperty.cs @@ -0,0 +1,27 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Aws.Glue.Outputs +{ + + [OutputType] + public sealed class TriggerActionNotificationProperty + { + /// + /// After a job run starts, the number of minutes to wait before sending a job run delay notification. + /// + public readonly int? NotifyDelayAfter; + + [OutputConstructor] + private TriggerActionNotificationProperty(int? notifyDelayAfter) + { + NotifyDelayAfter = notifyDelayAfter; + } + } +} diff --git a/sdk/dotnet/Inputs/ProviderEndpointArgs.cs b/sdk/dotnet/Inputs/ProviderEndpointArgs.cs index 0d5129bd623..b84135dfc04 100644 --- a/sdk/dotnet/Inputs/ProviderEndpointArgs.cs +++ b/sdk/dotnet/Inputs/ProviderEndpointArgs.cs @@ -102,6 +102,9 @@ public sealed class ProviderEndpointArgs : Pulumi.ResourceArgs [Input("codepipeline")] public Input? Codepipeline { get; set; } + [Input("codestarconnections")] + public Input? Codestarconnections { get; set; } + [Input("cognitoidentity")] public Input? Cognitoidentity { get; set; } diff --git a/sdk/dotnet/Kinesis/Inputs/AnalyticsApplicationInputsParallelismArgs.cs b/sdk/dotnet/Kinesis/Inputs/AnalyticsApplicationInputsParallelismArgs.cs index 82756dc108f..44b310c20af 100644 --- a/sdk/dotnet/Kinesis/Inputs/AnalyticsApplicationInputsParallelismArgs.cs +++ b/sdk/dotnet/Kinesis/Inputs/AnalyticsApplicationInputsParallelismArgs.cs @@ -15,8 +15,8 @@ public sealed class AnalyticsApplicationInputsParallelismArgs : Pulumi.ResourceA /// /// The Count of streams. /// - [Input("count", required: true)] - public Input Count { get; set; } = null!; + [Input("count")] + public Input? Count { get; set; } public AnalyticsApplicationInputsParallelismArgs() { diff --git a/sdk/dotnet/Kinesis/Inputs/AnalyticsApplicationInputsParallelismGetArgs.cs b/sdk/dotnet/Kinesis/Inputs/AnalyticsApplicationInputsParallelismGetArgs.cs index 6051585b954..e46cdf22b61 100644 --- a/sdk/dotnet/Kinesis/Inputs/AnalyticsApplicationInputsParallelismGetArgs.cs +++ b/sdk/dotnet/Kinesis/Inputs/AnalyticsApplicationInputsParallelismGetArgs.cs @@ -15,8 +15,8 @@ public sealed class AnalyticsApplicationInputsParallelismGetArgs : Pulumi.Resour /// /// The Count of streams. /// - [Input("count", required: true)] - public Input Count { get; set; } = null!; + [Input("count")] + public Input? Count { get; set; } public AnalyticsApplicationInputsParallelismGetArgs() { diff --git a/sdk/dotnet/Kinesis/Outputs/AnalyticsApplicationInputsParallelism.cs b/sdk/dotnet/Kinesis/Outputs/AnalyticsApplicationInputsParallelism.cs index b9fe9ed190c..29b1bcf92cb 100644 --- a/sdk/dotnet/Kinesis/Outputs/AnalyticsApplicationInputsParallelism.cs +++ b/sdk/dotnet/Kinesis/Outputs/AnalyticsApplicationInputsParallelism.cs @@ -16,10 +16,10 @@ public sealed class AnalyticsApplicationInputsParallelism /// /// The Count of streams. /// - public readonly int Count; + public readonly int? Count; [OutputConstructor] - private AnalyticsApplicationInputsParallelism(int count) + private AnalyticsApplicationInputsParallelism(int? count) { Count = count; } diff --git a/sdk/dotnet/Lex/Bot.cs b/sdk/dotnet/Lex/Bot.cs index aaa5cf33b9d..26b8bae3f98 100644 --- a/sdk/dotnet/Lex/Bot.cs +++ b/sdk/dotnet/Lex/Bot.cs @@ -113,7 +113,7 @@ public partial class Bot : Pulumi.CustomResource public Output CreatedDate { get; private set; } = null!; /// - /// A description of the bot. + /// A description of the bot. Must be less than or equal to 200 characters in length. /// [Output("description")] public Output Description { get; private set; } = null!; @@ -137,13 +137,13 @@ public partial class Bot : Pulumi.CustomResource public Output FailureReason { get; private set; } = null!; /// - /// The maximum time in seconds that Amazon Lex retains the data gathered in a conversation. Default is `300`. + /// The maximum time in seconds that Amazon Lex retains the data gathered in a conversation. Default is `300`. Must be a number between 60 and 86400 (inclusive). /// [Output("idleSessionTtlInSeconds")] public Output IdleSessionTtlInSeconds { get; private set; } = null!; /// - /// A set of Intent objects. Each intent represents a command that a user can express. Attributes are documented under intent. + /// A set of Intent objects. Each intent represents a command that a user can express. Attributes are documented under intent. Can have up to 100 Intent objects. /// [Output("intents")] public Output> Intents { get; private set; } = null!; @@ -161,13 +161,13 @@ public partial class Bot : Pulumi.CustomResource public Output Locale { get; private set; } = null!; /// - /// The name of the bot that you want to create, case sensitive. + /// The name of the bot that you want to create, case sensitive. Must be between 2 and 50 characters in length. /// [Output("name")] public Output Name { get; private set; } = null!; /// - /// Determines the threshold where Amazon Lex will insert the AMAZON.FallbackIntent, AMAZON.KendraSearchIntent, or both when returning alternative intents in a PostContent or PostText response. AMAZON.FallbackIntent and AMAZON.KendraSearchIntent are only inserted if they are configured for the bot. For more information see [Amazon Lex Bot PutBot API Docs](https://docs.aws.amazon.com/lex/latest/dg/API_PutBot.html#lex-PutBot-request-nluIntentConfidenceThreshold) This value requires `enable_model_improvements` to be set to `true` and the default is `0`. + /// Determines the threshold where Amazon Lex will insert the AMAZON.FallbackIntent, AMAZON.KendraSearchIntent, or both when returning alternative intents in a PostContent or PostText response. AMAZON.FallbackIntent and AMAZON.KendraSearchIntent are only inserted if they are configured for the bot. For more information see [Amazon Lex Bot PutBot API Docs](https://docs.aws.amazon.com/lex/latest/dg/API_PutBot.html#lex-PutBot-request-nluIntentConfidenceThreshold) This value requires `enable_model_improvements` to be set to `true` and the default is `0`. Must be a float between 0 and 1. /// [Output("nluIntentConfidenceThreshold")] public Output NluIntentConfidenceThreshold { get; private set; } = null!; @@ -270,7 +270,7 @@ public sealed class BotArgs : Pulumi.ResourceArgs public Input? CreateVersion { get; set; } /// - /// A description of the bot. + /// A description of the bot. Must be less than or equal to 200 characters in length. /// [Input("description")] public Input? Description { get; set; } @@ -288,7 +288,7 @@ public sealed class BotArgs : Pulumi.ResourceArgs public Input? EnableModelImprovements { get; set; } /// - /// The maximum time in seconds that Amazon Lex retains the data gathered in a conversation. Default is `300`. + /// The maximum time in seconds that Amazon Lex retains the data gathered in a conversation. Default is `300`. Must be a number between 60 and 86400 (inclusive). /// [Input("idleSessionTtlInSeconds")] public Input? IdleSessionTtlInSeconds { get; set; } @@ -297,7 +297,7 @@ public sealed class BotArgs : Pulumi.ResourceArgs private InputList? _intents; /// - /// A set of Intent objects. Each intent represents a command that a user can express. Attributes are documented under intent. + /// A set of Intent objects. Each intent represents a command that a user can express. Attributes are documented under intent. Can have up to 100 Intent objects. /// public InputList Intents { @@ -312,13 +312,13 @@ public InputList Intents public Input? Locale { get; set; } /// - /// The name of the bot that you want to create, case sensitive. + /// The name of the bot that you want to create, case sensitive. Must be between 2 and 50 characters in length. /// [Input("name")] public Input? Name { get; set; } /// - /// Determines the threshold where Amazon Lex will insert the AMAZON.FallbackIntent, AMAZON.KendraSearchIntent, or both when returning alternative intents in a PostContent or PostText response. AMAZON.FallbackIntent and AMAZON.KendraSearchIntent are only inserted if they are configured for the bot. For more information see [Amazon Lex Bot PutBot API Docs](https://docs.aws.amazon.com/lex/latest/dg/API_PutBot.html#lex-PutBot-request-nluIntentConfidenceThreshold) This value requires `enable_model_improvements` to be set to `true` and the default is `0`. + /// Determines the threshold where Amazon Lex will insert the AMAZON.FallbackIntent, AMAZON.KendraSearchIntent, or both when returning alternative intents in a PostContent or PostText response. AMAZON.FallbackIntent and AMAZON.KendraSearchIntent are only inserted if they are configured for the bot. For more information see [Amazon Lex Bot PutBot API Docs](https://docs.aws.amazon.com/lex/latest/dg/API_PutBot.html#lex-PutBot-request-nluIntentConfidenceThreshold) This value requires `enable_model_improvements` to be set to `true` and the default is `0`. Must be a float between 0 and 1. /// [Input("nluIntentConfidenceThreshold")] public Input? NluIntentConfidenceThreshold { get; set; } @@ -383,7 +383,7 @@ public sealed class BotState : Pulumi.ResourceArgs public Input? CreatedDate { get; set; } /// - /// A description of the bot. + /// A description of the bot. Must be less than or equal to 200 characters in length. /// [Input("description")] public Input? Description { get; set; } @@ -407,7 +407,7 @@ public sealed class BotState : Pulumi.ResourceArgs public Input? FailureReason { get; set; } /// - /// The maximum time in seconds that Amazon Lex retains the data gathered in a conversation. Default is `300`. + /// The maximum time in seconds that Amazon Lex retains the data gathered in a conversation. Default is `300`. Must be a number between 60 and 86400 (inclusive). /// [Input("idleSessionTtlInSeconds")] public Input? IdleSessionTtlInSeconds { get; set; } @@ -416,7 +416,7 @@ public sealed class BotState : Pulumi.ResourceArgs private InputList? _intents; /// - /// A set of Intent objects. Each intent represents a command that a user can express. Attributes are documented under intent. + /// A set of Intent objects. Each intent represents a command that a user can express. Attributes are documented under intent. Can have up to 100 Intent objects. /// public InputList Intents { @@ -437,13 +437,13 @@ public InputList Intents public Input? Locale { get; set; } /// - /// The name of the bot that you want to create, case sensitive. + /// The name of the bot that you want to create, case sensitive. Must be between 2 and 50 characters in length. /// [Input("name")] public Input? Name { get; set; } /// - /// Determines the threshold where Amazon Lex will insert the AMAZON.FallbackIntent, AMAZON.KendraSearchIntent, or both when returning alternative intents in a PostContent or PostText response. AMAZON.FallbackIntent and AMAZON.KendraSearchIntent are only inserted if they are configured for the bot. For more information see [Amazon Lex Bot PutBot API Docs](https://docs.aws.amazon.com/lex/latest/dg/API_PutBot.html#lex-PutBot-request-nluIntentConfidenceThreshold) This value requires `enable_model_improvements` to be set to `true` and the default is `0`. + /// Determines the threshold where Amazon Lex will insert the AMAZON.FallbackIntent, AMAZON.KendraSearchIntent, or both when returning alternative intents in a PostContent or PostText response. AMAZON.FallbackIntent and AMAZON.KendraSearchIntent are only inserted if they are configured for the bot. For more information see [Amazon Lex Bot PutBot API Docs](https://docs.aws.amazon.com/lex/latest/dg/API_PutBot.html#lex-PutBot-request-nluIntentConfidenceThreshold) This value requires `enable_model_improvements` to be set to `true` and the default is `0`. Must be a float between 0 and 1. /// [Input("nluIntentConfidenceThreshold")] public Input? NluIntentConfidenceThreshold { get; set; } diff --git a/sdk/dotnet/Lex/BotAlias.cs b/sdk/dotnet/Lex/BotAlias.cs index 405b10f8d6a..8693c9707b8 100644 --- a/sdk/dotnet/Lex/BotAlias.cs +++ b/sdk/dotnet/Lex/BotAlias.cs @@ -74,7 +74,7 @@ public partial class BotAlias : Pulumi.CustomResource public Output CreatedDate { get; private set; } = null!; /// - /// A description of the alias. + /// A description of the alias. Must be less than or equal to 200 characters in length. /// [Output("description")] public Output Description { get; private set; } = null!; @@ -86,7 +86,7 @@ public partial class BotAlias : Pulumi.CustomResource public Output LastUpdatedDate { get; private set; } = null!; /// - /// The name of the alias. The name is not case sensitive. + /// The name of the alias. The name is not case sensitive. Must be less than or equal to 100 characters in length. /// [Output("name")] public Output Name { get; private set; } = null!; @@ -156,13 +156,13 @@ public sealed class BotAliasArgs : Pulumi.ResourceArgs public Input? ConversationLogs { get; set; } /// - /// A description of the alias. + /// A description of the alias. Must be less than or equal to 200 characters in length. /// [Input("description")] public Input? Description { get; set; } /// - /// The name of the alias. The name is not case sensitive. + /// The name of the alias. The name is not case sensitive. Must be less than or equal to 100 characters in length. /// [Input("name")] public Input? Name { get; set; } @@ -211,7 +211,7 @@ public sealed class BotAliasState : Pulumi.ResourceArgs public Input? CreatedDate { get; set; } /// - /// A description of the alias. + /// A description of the alias. Must be less than or equal to 200 characters in length. /// [Input("description")] public Input? Description { get; set; } @@ -223,7 +223,7 @@ public sealed class BotAliasState : Pulumi.ResourceArgs public Input? LastUpdatedDate { get; set; } /// - /// The name of the alias. The name is not case sensitive. + /// The name of the alias. The name is not case sensitive. Must be less than or equal to 100 characters in length. /// [Input("name")] public Input? Name { get; set; } diff --git a/sdk/dotnet/Lex/Inputs/BotAliasConversationLogsArgs.cs b/sdk/dotnet/Lex/Inputs/BotAliasConversationLogsArgs.cs index 498e326153c..cbfb390a38f 100644 --- a/sdk/dotnet/Lex/Inputs/BotAliasConversationLogsArgs.cs +++ b/sdk/dotnet/Lex/Inputs/BotAliasConversationLogsArgs.cs @@ -13,7 +13,7 @@ namespace Pulumi.Aws.Lex.Inputs public sealed class BotAliasConversationLogsArgs : Pulumi.ResourceArgs { /// - /// The Amazon Resource Name (ARN) of the IAM role used to write your logs to CloudWatch Logs or an S3 bucket. + /// The Amazon Resource Name (ARN) of the IAM role used to write your logs to CloudWatch Logs or an S3 bucket. Must be between 20 and 2048 characters in length. /// [Input("iamRoleArn", required: true)] public Input IamRoleArn { get; set; } = null!; diff --git a/sdk/dotnet/Lex/Inputs/BotAliasConversationLogsGetArgs.cs b/sdk/dotnet/Lex/Inputs/BotAliasConversationLogsGetArgs.cs index ed9b786a32a..71d9b91fb16 100644 --- a/sdk/dotnet/Lex/Inputs/BotAliasConversationLogsGetArgs.cs +++ b/sdk/dotnet/Lex/Inputs/BotAliasConversationLogsGetArgs.cs @@ -13,7 +13,7 @@ namespace Pulumi.Aws.Lex.Inputs public sealed class BotAliasConversationLogsGetArgs : Pulumi.ResourceArgs { /// - /// The Amazon Resource Name (ARN) of the IAM role used to write your logs to CloudWatch Logs or an S3 bucket. + /// The Amazon Resource Name (ARN) of the IAM role used to write your logs to CloudWatch Logs or an S3 bucket. Must be between 20 and 2048 characters in length. /// [Input("iamRoleArn", required: true)] public Input IamRoleArn { get; set; } = null!; diff --git a/sdk/dotnet/Lex/Inputs/BotAliasConversationLogsLogSettingArgs.cs b/sdk/dotnet/Lex/Inputs/BotAliasConversationLogsLogSettingArgs.cs index 389f13c3226..228b69113c2 100644 --- a/sdk/dotnet/Lex/Inputs/BotAliasConversationLogsLogSettingArgs.cs +++ b/sdk/dotnet/Lex/Inputs/BotAliasConversationLogsLogSettingArgs.cs @@ -19,7 +19,7 @@ public sealed class BotAliasConversationLogsLogSettingArgs : Pulumi.ResourceArgs public Input Destination { get; set; } = null!; /// - /// The Amazon Resource Name (ARN) of the key used to encrypt audio logs in an S3 bucket. This can only be specified when `destination` is set to `S3`. + /// The Amazon Resource Name (ARN) of the key used to encrypt audio logs in an S3 bucket. This can only be specified when `destination` is set to `S3`. Must be between 20 and 2048 characters in length. /// [Input("kmsKeyArn")] public Input? KmsKeyArn { get; set; } @@ -31,7 +31,7 @@ public sealed class BotAliasConversationLogsLogSettingArgs : Pulumi.ResourceArgs public Input LogType { get; set; } = null!; /// - /// The Amazon Resource Name (ARN) of the CloudWatch Logs log group or S3 bucket where the logs are delivered. + /// The Amazon Resource Name (ARN) of the CloudWatch Logs log group or S3 bucket where the logs are delivered. Must be less than or equal to 2048 characters in length. /// [Input("resourceArn", required: true)] public Input ResourceArn { get; set; } = null!; diff --git a/sdk/dotnet/Lex/Inputs/BotAliasConversationLogsLogSettingGetArgs.cs b/sdk/dotnet/Lex/Inputs/BotAliasConversationLogsLogSettingGetArgs.cs index f65400f3d9e..506e3f8227a 100644 --- a/sdk/dotnet/Lex/Inputs/BotAliasConversationLogsLogSettingGetArgs.cs +++ b/sdk/dotnet/Lex/Inputs/BotAliasConversationLogsLogSettingGetArgs.cs @@ -19,7 +19,7 @@ public sealed class BotAliasConversationLogsLogSettingGetArgs : Pulumi.ResourceA public Input Destination { get; set; } = null!; /// - /// The Amazon Resource Name (ARN) of the key used to encrypt audio logs in an S3 bucket. This can only be specified when `destination` is set to `S3`. + /// The Amazon Resource Name (ARN) of the key used to encrypt audio logs in an S3 bucket. This can only be specified when `destination` is set to `S3`. Must be between 20 and 2048 characters in length. /// [Input("kmsKeyArn")] public Input? KmsKeyArn { get; set; } @@ -31,7 +31,7 @@ public sealed class BotAliasConversationLogsLogSettingGetArgs : Pulumi.ResourceA public Input LogType { get; set; } = null!; /// - /// The Amazon Resource Name (ARN) of the CloudWatch Logs log group or S3 bucket where the logs are delivered. + /// The Amazon Resource Name (ARN) of the CloudWatch Logs log group or S3 bucket where the logs are delivered. Must be less than or equal to 2048 characters in length. /// [Input("resourceArn", required: true)] public Input ResourceArn { get; set; } = null!; diff --git a/sdk/dotnet/Lex/Inputs/BotIntentArgs.cs b/sdk/dotnet/Lex/Inputs/BotIntentArgs.cs index 1c3c69d530a..48d2a00d115 100644 --- a/sdk/dotnet/Lex/Inputs/BotIntentArgs.cs +++ b/sdk/dotnet/Lex/Inputs/BotIntentArgs.cs @@ -13,13 +13,13 @@ namespace Pulumi.Aws.Lex.Inputs public sealed class BotIntentArgs : Pulumi.ResourceArgs { /// - /// The name of the intent. + /// The name of the intent. Must be less than or equal to 100 characters in length. /// [Input("intentName", required: true)] public Input IntentName { get; set; } = null!; /// - /// The version of the intent. + /// The version of the intent. Must be less than or equal to 64 characters in length. /// [Input("intentVersion", required: true)] public Input IntentVersion { get; set; } = null!; diff --git a/sdk/dotnet/Lex/Inputs/BotIntentGetArgs.cs b/sdk/dotnet/Lex/Inputs/BotIntentGetArgs.cs index 9049b75e518..4a619a07f70 100644 --- a/sdk/dotnet/Lex/Inputs/BotIntentGetArgs.cs +++ b/sdk/dotnet/Lex/Inputs/BotIntentGetArgs.cs @@ -13,13 +13,13 @@ namespace Pulumi.Aws.Lex.Inputs public sealed class BotIntentGetArgs : Pulumi.ResourceArgs { /// - /// The name of the intent. + /// The name of the intent. Must be less than or equal to 100 characters in length. /// [Input("intentName", required: true)] public Input IntentName { get; set; } = null!; /// - /// The version of the intent. + /// The version of the intent. Must be less than or equal to 64 characters in length. /// [Input("intentVersion", required: true)] public Input IntentVersion { get; set; } = null!; diff --git a/sdk/dotnet/Lex/Inputs/IntentConclusionStatementArgs.cs b/sdk/dotnet/Lex/Inputs/IntentConclusionStatementArgs.cs index de349811b3f..7cb0d4f6e97 100644 --- a/sdk/dotnet/Lex/Inputs/IntentConclusionStatementArgs.cs +++ b/sdk/dotnet/Lex/Inputs/IntentConclusionStatementArgs.cs @@ -18,7 +18,7 @@ public sealed class IntentConclusionStatementArgs : Pulumi.ResourceArgs /// /// A set of messages, each of which provides a message string and its type. /// You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - /// Attributes are documented under message. + /// Attributes are documented under message. Must contain between 1 and 15 messages. /// public InputList Messages { @@ -29,7 +29,7 @@ public InputList Messages /// /// The response card. Amazon Lex will substitute session attributes and /// slot values into the response card. For more information, see - /// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + /// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. /// [Input("responseCard")] public Input? ResponseCard { get; set; } diff --git a/sdk/dotnet/Lex/Inputs/IntentConclusionStatementGetArgs.cs b/sdk/dotnet/Lex/Inputs/IntentConclusionStatementGetArgs.cs index e8cea234f6c..d1e9df03ac8 100644 --- a/sdk/dotnet/Lex/Inputs/IntentConclusionStatementGetArgs.cs +++ b/sdk/dotnet/Lex/Inputs/IntentConclusionStatementGetArgs.cs @@ -18,7 +18,7 @@ public sealed class IntentConclusionStatementGetArgs : Pulumi.ResourceArgs /// /// A set of messages, each of which provides a message string and its type. /// You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - /// Attributes are documented under message. + /// Attributes are documented under message. Must contain between 1 and 15 messages. /// public InputList Messages { @@ -29,7 +29,7 @@ public InputList Messages /// /// The response card. Amazon Lex will substitute session attributes and /// slot values into the response card. For more information, see - /// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + /// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. /// [Input("responseCard")] public Input? ResponseCard { get; set; } diff --git a/sdk/dotnet/Lex/Inputs/IntentConclusionStatementMessageArgs.cs b/sdk/dotnet/Lex/Inputs/IntentConclusionStatementMessageArgs.cs index dde64af8185..8992172b349 100644 --- a/sdk/dotnet/Lex/Inputs/IntentConclusionStatementMessageArgs.cs +++ b/sdk/dotnet/Lex/Inputs/IntentConclusionStatementMessageArgs.cs @@ -13,7 +13,7 @@ namespace Pulumi.Aws.Lex.Inputs public sealed class IntentConclusionStatementMessageArgs : Pulumi.ResourceArgs { /// - /// The text of the message. + /// The text of the message. Must be less than or equal to 1000 characters in length. /// [Input("content", required: true)] public Input Content { get; set; } = null!; @@ -26,7 +26,7 @@ public sealed class IntentConclusionStatementMessageArgs : Pulumi.ResourceArgs /// /// Identifies the message group that the message belongs to. When a group - /// is assigned to a message, Amazon Lex returns one message from each group in the response. + /// is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). /// [Input("groupNumber")] public Input? GroupNumber { get; set; } diff --git a/sdk/dotnet/Lex/Inputs/IntentConclusionStatementMessageGetArgs.cs b/sdk/dotnet/Lex/Inputs/IntentConclusionStatementMessageGetArgs.cs index 119cb1de975..dcd00f2493f 100644 --- a/sdk/dotnet/Lex/Inputs/IntentConclusionStatementMessageGetArgs.cs +++ b/sdk/dotnet/Lex/Inputs/IntentConclusionStatementMessageGetArgs.cs @@ -13,7 +13,7 @@ namespace Pulumi.Aws.Lex.Inputs public sealed class IntentConclusionStatementMessageGetArgs : Pulumi.ResourceArgs { /// - /// The text of the message. + /// The text of the message. Must be less than or equal to 1000 characters in length. /// [Input("content", required: true)] public Input Content { get; set; } = null!; @@ -26,7 +26,7 @@ public sealed class IntentConclusionStatementMessageGetArgs : Pulumi.ResourceArg /// /// Identifies the message group that the message belongs to. When a group - /// is assigned to a message, Amazon Lex returns one message from each group in the response. + /// is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). /// [Input("groupNumber")] public Input? GroupNumber { get; set; } diff --git a/sdk/dotnet/Lex/Inputs/IntentConfirmationPromptArgs.cs b/sdk/dotnet/Lex/Inputs/IntentConfirmationPromptArgs.cs index 37a9ecf8a69..dcb1c3afb30 100644 --- a/sdk/dotnet/Lex/Inputs/IntentConfirmationPromptArgs.cs +++ b/sdk/dotnet/Lex/Inputs/IntentConfirmationPromptArgs.cs @@ -13,7 +13,7 @@ namespace Pulumi.Aws.Lex.Inputs public sealed class IntentConfirmationPromptArgs : Pulumi.ResourceArgs { /// - /// The number of times to prompt the user for information. + /// The number of times to prompt the user for information. Must be a number between 1 and 5 (inclusive). /// [Input("maxAttempts", required: true)] public Input MaxAttempts { get; set; } = null!; @@ -24,7 +24,7 @@ public sealed class IntentConfirmationPromptArgs : Pulumi.ResourceArgs /// /// A set of messages, each of which provides a message string and its type. /// You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - /// Attributes are documented under message. + /// Attributes are documented under message. Must contain between 1 and 15 messages. /// public InputList Messages { @@ -35,7 +35,7 @@ public InputList Messages /// /// The response card. Amazon Lex will substitute session attributes and /// slot values into the response card. For more information, see - /// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + /// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. /// [Input("responseCard")] public Input? ResponseCard { get; set; } diff --git a/sdk/dotnet/Lex/Inputs/IntentConfirmationPromptGetArgs.cs b/sdk/dotnet/Lex/Inputs/IntentConfirmationPromptGetArgs.cs index d916f75fbea..48541fec352 100644 --- a/sdk/dotnet/Lex/Inputs/IntentConfirmationPromptGetArgs.cs +++ b/sdk/dotnet/Lex/Inputs/IntentConfirmationPromptGetArgs.cs @@ -13,7 +13,7 @@ namespace Pulumi.Aws.Lex.Inputs public sealed class IntentConfirmationPromptGetArgs : Pulumi.ResourceArgs { /// - /// The number of times to prompt the user for information. + /// The number of times to prompt the user for information. Must be a number between 1 and 5 (inclusive). /// [Input("maxAttempts", required: true)] public Input MaxAttempts { get; set; } = null!; @@ -24,7 +24,7 @@ public sealed class IntentConfirmationPromptGetArgs : Pulumi.ResourceArgs /// /// A set of messages, each of which provides a message string and its type. /// You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - /// Attributes are documented under message. + /// Attributes are documented under message. Must contain between 1 and 15 messages. /// public InputList Messages { @@ -35,7 +35,7 @@ public InputList Messages /// /// The response card. Amazon Lex will substitute session attributes and /// slot values into the response card. For more information, see - /// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + /// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. /// [Input("responseCard")] public Input? ResponseCard { get; set; } diff --git a/sdk/dotnet/Lex/Inputs/IntentConfirmationPromptMessageArgs.cs b/sdk/dotnet/Lex/Inputs/IntentConfirmationPromptMessageArgs.cs index 9d9492abd61..2a21567a730 100644 --- a/sdk/dotnet/Lex/Inputs/IntentConfirmationPromptMessageArgs.cs +++ b/sdk/dotnet/Lex/Inputs/IntentConfirmationPromptMessageArgs.cs @@ -13,7 +13,7 @@ namespace Pulumi.Aws.Lex.Inputs public sealed class IntentConfirmationPromptMessageArgs : Pulumi.ResourceArgs { /// - /// The text of the message. + /// The text of the message. Must be less than or equal to 1000 characters in length. /// [Input("content", required: true)] public Input Content { get; set; } = null!; @@ -26,7 +26,7 @@ public sealed class IntentConfirmationPromptMessageArgs : Pulumi.ResourceArgs /// /// Identifies the message group that the message belongs to. When a group - /// is assigned to a message, Amazon Lex returns one message from each group in the response. + /// is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). /// [Input("groupNumber")] public Input? GroupNumber { get; set; } diff --git a/sdk/dotnet/Lex/Inputs/IntentConfirmationPromptMessageGetArgs.cs b/sdk/dotnet/Lex/Inputs/IntentConfirmationPromptMessageGetArgs.cs index 27942b4cb63..b8bb274d0c1 100644 --- a/sdk/dotnet/Lex/Inputs/IntentConfirmationPromptMessageGetArgs.cs +++ b/sdk/dotnet/Lex/Inputs/IntentConfirmationPromptMessageGetArgs.cs @@ -13,7 +13,7 @@ namespace Pulumi.Aws.Lex.Inputs public sealed class IntentConfirmationPromptMessageGetArgs : Pulumi.ResourceArgs { /// - /// The text of the message. + /// The text of the message. Must be less than or equal to 1000 characters in length. /// [Input("content", required: true)] public Input Content { get; set; } = null!; @@ -26,7 +26,7 @@ public sealed class IntentConfirmationPromptMessageGetArgs : Pulumi.ResourceArgs /// /// Identifies the message group that the message belongs to. When a group - /// is assigned to a message, Amazon Lex returns one message from each group in the response. + /// is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). /// [Input("groupNumber")] public Input? GroupNumber { get; set; } diff --git a/sdk/dotnet/Lex/Inputs/IntentDialogCodeHookArgs.cs b/sdk/dotnet/Lex/Inputs/IntentDialogCodeHookArgs.cs index 9c16271fd40..9e25b3ac6ca 100644 --- a/sdk/dotnet/Lex/Inputs/IntentDialogCodeHookArgs.cs +++ b/sdk/dotnet/Lex/Inputs/IntentDialogCodeHookArgs.cs @@ -15,7 +15,7 @@ public sealed class IntentDialogCodeHookArgs : Pulumi.ResourceArgs /// /// The version of the request-response that you want Amazon Lex to use /// to invoke your Lambda function. For more information, see - /// [Using Lambda Functions](https://docs.aws.amazon.com/lex/latest/dg/using-lambda.html). + /// [Using Lambda Functions](https://docs.aws.amazon.com/lex/latest/dg/using-lambda.html). Must be less than or equal to 5 characters in length. /// [Input("messageVersion", required: true)] public Input MessageVersion { get; set; } = null!; diff --git a/sdk/dotnet/Lex/Inputs/IntentDialogCodeHookGetArgs.cs b/sdk/dotnet/Lex/Inputs/IntentDialogCodeHookGetArgs.cs index b47a53d3456..259c4512fd8 100644 --- a/sdk/dotnet/Lex/Inputs/IntentDialogCodeHookGetArgs.cs +++ b/sdk/dotnet/Lex/Inputs/IntentDialogCodeHookGetArgs.cs @@ -15,7 +15,7 @@ public sealed class IntentDialogCodeHookGetArgs : Pulumi.ResourceArgs /// /// The version of the request-response that you want Amazon Lex to use /// to invoke your Lambda function. For more information, see - /// [Using Lambda Functions](https://docs.aws.amazon.com/lex/latest/dg/using-lambda.html). + /// [Using Lambda Functions](https://docs.aws.amazon.com/lex/latest/dg/using-lambda.html). Must be less than or equal to 5 characters in length. /// [Input("messageVersion", required: true)] public Input MessageVersion { get; set; } = null!; diff --git a/sdk/dotnet/Lex/Inputs/IntentFollowUpPromptPromptArgs.cs b/sdk/dotnet/Lex/Inputs/IntentFollowUpPromptPromptArgs.cs index bceea4b7b11..c6985eb458d 100644 --- a/sdk/dotnet/Lex/Inputs/IntentFollowUpPromptPromptArgs.cs +++ b/sdk/dotnet/Lex/Inputs/IntentFollowUpPromptPromptArgs.cs @@ -13,7 +13,7 @@ namespace Pulumi.Aws.Lex.Inputs public sealed class IntentFollowUpPromptPromptArgs : Pulumi.ResourceArgs { /// - /// The number of times to prompt the user for information. + /// The number of times to prompt the user for information. Must be a number between 1 and 5 (inclusive). /// [Input("maxAttempts", required: true)] public Input MaxAttempts { get; set; } = null!; @@ -24,7 +24,7 @@ public sealed class IntentFollowUpPromptPromptArgs : Pulumi.ResourceArgs /// /// A set of messages, each of which provides a message string and its type. /// You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - /// Attributes are documented under message. + /// Attributes are documented under message. Must contain between 1 and 15 messages. /// public InputList Messages { @@ -35,7 +35,7 @@ public InputList Messages /// /// The response card. Amazon Lex will substitute session attributes and /// slot values into the response card. For more information, see - /// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + /// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. /// [Input("responseCard")] public Input? ResponseCard { get; set; } diff --git a/sdk/dotnet/Lex/Inputs/IntentFollowUpPromptPromptGetArgs.cs b/sdk/dotnet/Lex/Inputs/IntentFollowUpPromptPromptGetArgs.cs index 515b1e492ef..e6882a49b93 100644 --- a/sdk/dotnet/Lex/Inputs/IntentFollowUpPromptPromptGetArgs.cs +++ b/sdk/dotnet/Lex/Inputs/IntentFollowUpPromptPromptGetArgs.cs @@ -13,7 +13,7 @@ namespace Pulumi.Aws.Lex.Inputs public sealed class IntentFollowUpPromptPromptGetArgs : Pulumi.ResourceArgs { /// - /// The number of times to prompt the user for information. + /// The number of times to prompt the user for information. Must be a number between 1 and 5 (inclusive). /// [Input("maxAttempts", required: true)] public Input MaxAttempts { get; set; } = null!; @@ -24,7 +24,7 @@ public sealed class IntentFollowUpPromptPromptGetArgs : Pulumi.ResourceArgs /// /// A set of messages, each of which provides a message string and its type. /// You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - /// Attributes are documented under message. + /// Attributes are documented under message. Must contain between 1 and 15 messages. /// public InputList Messages { @@ -35,7 +35,7 @@ public InputList Messages /// /// The response card. Amazon Lex will substitute session attributes and /// slot values into the response card. For more information, see - /// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + /// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. /// [Input("responseCard")] public Input? ResponseCard { get; set; } diff --git a/sdk/dotnet/Lex/Inputs/IntentFollowUpPromptPromptMessageArgs.cs b/sdk/dotnet/Lex/Inputs/IntentFollowUpPromptPromptMessageArgs.cs index ec5a1ba7b01..68cd486113b 100644 --- a/sdk/dotnet/Lex/Inputs/IntentFollowUpPromptPromptMessageArgs.cs +++ b/sdk/dotnet/Lex/Inputs/IntentFollowUpPromptPromptMessageArgs.cs @@ -13,7 +13,7 @@ namespace Pulumi.Aws.Lex.Inputs public sealed class IntentFollowUpPromptPromptMessageArgs : Pulumi.ResourceArgs { /// - /// The text of the message. + /// The text of the message. Must be less than or equal to 1000 characters in length. /// [Input("content", required: true)] public Input Content { get; set; } = null!; @@ -26,7 +26,7 @@ public sealed class IntentFollowUpPromptPromptMessageArgs : Pulumi.ResourceArgs /// /// Identifies the message group that the message belongs to. When a group - /// is assigned to a message, Amazon Lex returns one message from each group in the response. + /// is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). /// [Input("groupNumber")] public Input? GroupNumber { get; set; } diff --git a/sdk/dotnet/Lex/Inputs/IntentFollowUpPromptPromptMessageGetArgs.cs b/sdk/dotnet/Lex/Inputs/IntentFollowUpPromptPromptMessageGetArgs.cs index 30b6bca777b..bb4c0c7dbd6 100644 --- a/sdk/dotnet/Lex/Inputs/IntentFollowUpPromptPromptMessageGetArgs.cs +++ b/sdk/dotnet/Lex/Inputs/IntentFollowUpPromptPromptMessageGetArgs.cs @@ -13,7 +13,7 @@ namespace Pulumi.Aws.Lex.Inputs public sealed class IntentFollowUpPromptPromptMessageGetArgs : Pulumi.ResourceArgs { /// - /// The text of the message. + /// The text of the message. Must be less than or equal to 1000 characters in length. /// [Input("content", required: true)] public Input Content { get; set; } = null!; @@ -26,7 +26,7 @@ public sealed class IntentFollowUpPromptPromptMessageGetArgs : Pulumi.ResourceAr /// /// Identifies the message group that the message belongs to. When a group - /// is assigned to a message, Amazon Lex returns one message from each group in the response. + /// is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). /// [Input("groupNumber")] public Input? GroupNumber { get; set; } diff --git a/sdk/dotnet/Lex/Inputs/IntentFollowUpPromptRejectionStatementArgs.cs b/sdk/dotnet/Lex/Inputs/IntentFollowUpPromptRejectionStatementArgs.cs index 2e15f526d8a..670bd4da17d 100644 --- a/sdk/dotnet/Lex/Inputs/IntentFollowUpPromptRejectionStatementArgs.cs +++ b/sdk/dotnet/Lex/Inputs/IntentFollowUpPromptRejectionStatementArgs.cs @@ -18,7 +18,7 @@ public sealed class IntentFollowUpPromptRejectionStatementArgs : Pulumi.Resource /// /// A set of messages, each of which provides a message string and its type. /// You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - /// Attributes are documented under message. + /// Attributes are documented under message. Must contain between 1 and 15 messages. /// public InputList Messages { @@ -29,7 +29,7 @@ public InputList Messa /// /// The response card. Amazon Lex will substitute session attributes and /// slot values into the response card. For more information, see - /// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + /// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. /// [Input("responseCard")] public Input? ResponseCard { get; set; } diff --git a/sdk/dotnet/Lex/Inputs/IntentFollowUpPromptRejectionStatementGetArgs.cs b/sdk/dotnet/Lex/Inputs/IntentFollowUpPromptRejectionStatementGetArgs.cs index 2d71f28c620..8634d366114 100644 --- a/sdk/dotnet/Lex/Inputs/IntentFollowUpPromptRejectionStatementGetArgs.cs +++ b/sdk/dotnet/Lex/Inputs/IntentFollowUpPromptRejectionStatementGetArgs.cs @@ -18,7 +18,7 @@ public sealed class IntentFollowUpPromptRejectionStatementGetArgs : Pulumi.Resou /// /// A set of messages, each of which provides a message string and its type. /// You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - /// Attributes are documented under message. + /// Attributes are documented under message. Must contain between 1 and 15 messages. /// public InputList Messages { @@ -29,7 +29,7 @@ public InputList Me /// /// The response card. Amazon Lex will substitute session attributes and /// slot values into the response card. For more information, see - /// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + /// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. /// [Input("responseCard")] public Input? ResponseCard { get; set; } diff --git a/sdk/dotnet/Lex/Inputs/IntentFollowUpPromptRejectionStatementMessageArgs.cs b/sdk/dotnet/Lex/Inputs/IntentFollowUpPromptRejectionStatementMessageArgs.cs index 926bf922a78..46d517ab71f 100644 --- a/sdk/dotnet/Lex/Inputs/IntentFollowUpPromptRejectionStatementMessageArgs.cs +++ b/sdk/dotnet/Lex/Inputs/IntentFollowUpPromptRejectionStatementMessageArgs.cs @@ -13,7 +13,7 @@ namespace Pulumi.Aws.Lex.Inputs public sealed class IntentFollowUpPromptRejectionStatementMessageArgs : Pulumi.ResourceArgs { /// - /// The text of the message. + /// The text of the message. Must be less than or equal to 1000 characters in length. /// [Input("content", required: true)] public Input Content { get; set; } = null!; @@ -26,7 +26,7 @@ public sealed class IntentFollowUpPromptRejectionStatementMessageArgs : Pulumi.R /// /// Identifies the message group that the message belongs to. When a group - /// is assigned to a message, Amazon Lex returns one message from each group in the response. + /// is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). /// [Input("groupNumber")] public Input? GroupNumber { get; set; } diff --git a/sdk/dotnet/Lex/Inputs/IntentFollowUpPromptRejectionStatementMessageGetArgs.cs b/sdk/dotnet/Lex/Inputs/IntentFollowUpPromptRejectionStatementMessageGetArgs.cs index 528070f5617..bfbaec3ae42 100644 --- a/sdk/dotnet/Lex/Inputs/IntentFollowUpPromptRejectionStatementMessageGetArgs.cs +++ b/sdk/dotnet/Lex/Inputs/IntentFollowUpPromptRejectionStatementMessageGetArgs.cs @@ -13,7 +13,7 @@ namespace Pulumi.Aws.Lex.Inputs public sealed class IntentFollowUpPromptRejectionStatementMessageGetArgs : Pulumi.ResourceArgs { /// - /// The text of the message. + /// The text of the message. Must be less than or equal to 1000 characters in length. /// [Input("content", required: true)] public Input Content { get; set; } = null!; @@ -26,7 +26,7 @@ public sealed class IntentFollowUpPromptRejectionStatementMessageGetArgs : Pulum /// /// Identifies the message group that the message belongs to. When a group - /// is assigned to a message, Amazon Lex returns one message from each group in the response. + /// is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). /// [Input("groupNumber")] public Input? GroupNumber { get; set; } diff --git a/sdk/dotnet/Lex/Inputs/IntentFulfillmentActivityCodeHookArgs.cs b/sdk/dotnet/Lex/Inputs/IntentFulfillmentActivityCodeHookArgs.cs index 175b23a2f04..77356350f9a 100644 --- a/sdk/dotnet/Lex/Inputs/IntentFulfillmentActivityCodeHookArgs.cs +++ b/sdk/dotnet/Lex/Inputs/IntentFulfillmentActivityCodeHookArgs.cs @@ -15,7 +15,7 @@ public sealed class IntentFulfillmentActivityCodeHookArgs : Pulumi.ResourceArgs /// /// The version of the request-response that you want Amazon Lex to use /// to invoke your Lambda function. For more information, see - /// [Using Lambda Functions](https://docs.aws.amazon.com/lex/latest/dg/using-lambda.html). + /// [Using Lambda Functions](https://docs.aws.amazon.com/lex/latest/dg/using-lambda.html). Must be less than or equal to 5 characters in length. /// [Input("messageVersion", required: true)] public Input MessageVersion { get; set; } = null!; diff --git a/sdk/dotnet/Lex/Inputs/IntentFulfillmentActivityCodeHookGetArgs.cs b/sdk/dotnet/Lex/Inputs/IntentFulfillmentActivityCodeHookGetArgs.cs index f155af9d506..7c3aef63da8 100644 --- a/sdk/dotnet/Lex/Inputs/IntentFulfillmentActivityCodeHookGetArgs.cs +++ b/sdk/dotnet/Lex/Inputs/IntentFulfillmentActivityCodeHookGetArgs.cs @@ -15,7 +15,7 @@ public sealed class IntentFulfillmentActivityCodeHookGetArgs : Pulumi.ResourceAr /// /// The version of the request-response that you want Amazon Lex to use /// to invoke your Lambda function. For more information, see - /// [Using Lambda Functions](https://docs.aws.amazon.com/lex/latest/dg/using-lambda.html). + /// [Using Lambda Functions](https://docs.aws.amazon.com/lex/latest/dg/using-lambda.html). Must be less than or equal to 5 characters in length. /// [Input("messageVersion", required: true)] public Input MessageVersion { get; set; } = null!; diff --git a/sdk/dotnet/Lex/Inputs/IntentRejectionStatementArgs.cs b/sdk/dotnet/Lex/Inputs/IntentRejectionStatementArgs.cs index 5d86fbeded4..86e0b3fd963 100644 --- a/sdk/dotnet/Lex/Inputs/IntentRejectionStatementArgs.cs +++ b/sdk/dotnet/Lex/Inputs/IntentRejectionStatementArgs.cs @@ -18,7 +18,7 @@ public sealed class IntentRejectionStatementArgs : Pulumi.ResourceArgs /// /// A set of messages, each of which provides a message string and its type. /// You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - /// Attributes are documented under message. + /// Attributes are documented under message. Must contain between 1 and 15 messages. /// public InputList Messages { @@ -29,7 +29,7 @@ public InputList Messages /// /// The response card. Amazon Lex will substitute session attributes and /// slot values into the response card. For more information, see - /// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + /// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. /// [Input("responseCard")] public Input? ResponseCard { get; set; } diff --git a/sdk/dotnet/Lex/Inputs/IntentRejectionStatementGetArgs.cs b/sdk/dotnet/Lex/Inputs/IntentRejectionStatementGetArgs.cs index 99f10a9228e..0e66ae7c722 100644 --- a/sdk/dotnet/Lex/Inputs/IntentRejectionStatementGetArgs.cs +++ b/sdk/dotnet/Lex/Inputs/IntentRejectionStatementGetArgs.cs @@ -18,7 +18,7 @@ public sealed class IntentRejectionStatementGetArgs : Pulumi.ResourceArgs /// /// A set of messages, each of which provides a message string and its type. /// You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - /// Attributes are documented under message. + /// Attributes are documented under message. Must contain between 1 and 15 messages. /// public InputList Messages { @@ -29,7 +29,7 @@ public InputList Messages /// /// The response card. Amazon Lex will substitute session attributes and /// slot values into the response card. For more information, see - /// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + /// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. /// [Input("responseCard")] public Input? ResponseCard { get; set; } diff --git a/sdk/dotnet/Lex/Inputs/IntentRejectionStatementMessageArgs.cs b/sdk/dotnet/Lex/Inputs/IntentRejectionStatementMessageArgs.cs index 3d957a400bd..e61b3c077ec 100644 --- a/sdk/dotnet/Lex/Inputs/IntentRejectionStatementMessageArgs.cs +++ b/sdk/dotnet/Lex/Inputs/IntentRejectionStatementMessageArgs.cs @@ -13,7 +13,7 @@ namespace Pulumi.Aws.Lex.Inputs public sealed class IntentRejectionStatementMessageArgs : Pulumi.ResourceArgs { /// - /// The text of the message. + /// The text of the message. Must be less than or equal to 1000 characters in length. /// [Input("content", required: true)] public Input Content { get; set; } = null!; @@ -26,7 +26,7 @@ public sealed class IntentRejectionStatementMessageArgs : Pulumi.ResourceArgs /// /// Identifies the message group that the message belongs to. When a group - /// is assigned to a message, Amazon Lex returns one message from each group in the response. + /// is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). /// [Input("groupNumber")] public Input? GroupNumber { get; set; } diff --git a/sdk/dotnet/Lex/Inputs/IntentRejectionStatementMessageGetArgs.cs b/sdk/dotnet/Lex/Inputs/IntentRejectionStatementMessageGetArgs.cs index 39cbabfa970..75c00bac706 100644 --- a/sdk/dotnet/Lex/Inputs/IntentRejectionStatementMessageGetArgs.cs +++ b/sdk/dotnet/Lex/Inputs/IntentRejectionStatementMessageGetArgs.cs @@ -13,7 +13,7 @@ namespace Pulumi.Aws.Lex.Inputs public sealed class IntentRejectionStatementMessageGetArgs : Pulumi.ResourceArgs { /// - /// The text of the message. + /// The text of the message. Must be less than or equal to 1000 characters in length. /// [Input("content", required: true)] public Input Content { get; set; } = null!; @@ -26,7 +26,7 @@ public sealed class IntentRejectionStatementMessageGetArgs : Pulumi.ResourceArgs /// /// Identifies the message group that the message belongs to. When a group - /// is assigned to a message, Amazon Lex returns one message from each group in the response. + /// is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). /// [Input("groupNumber")] public Input? GroupNumber { get; set; } diff --git a/sdk/dotnet/Lex/Inputs/IntentSlotArgs.cs b/sdk/dotnet/Lex/Inputs/IntentSlotArgs.cs index 4643f649a41..1039bc19322 100644 --- a/sdk/dotnet/Lex/Inputs/IntentSlotArgs.cs +++ b/sdk/dotnet/Lex/Inputs/IntentSlotArgs.cs @@ -13,13 +13,13 @@ namespace Pulumi.Aws.Lex.Inputs public sealed class IntentSlotArgs : Pulumi.ResourceArgs { /// - /// A description of the bot. + /// A description of the bot. Must be less than or equal to 200 characters in length. /// [Input("description")] public Input? Description { get; set; } /// - /// The name of the intent slot that you want to create. The name is case sensitive. + /// The name of the intent slot that you want to create. The name is case sensitive. Must be less than or equal to 100 characters in length. /// [Input("name", required: true)] public Input Name { get; set; } = null!; @@ -28,7 +28,7 @@ public sealed class IntentSlotArgs : Pulumi.ResourceArgs /// Directs Lex the order in which to elicit this slot value from the user. /// For example, if the intent has two slots with priorities 1 and 2, AWS Lex first elicits a value for /// the slot with priority 1. If multiple slots share the same priority, the order in which Lex elicits - /// values is arbitrary. + /// values is arbitrary. Must be between 1 and 100. /// [Input("priority")] public Input? Priority { get; set; } @@ -36,7 +36,7 @@ public sealed class IntentSlotArgs : Pulumi.ResourceArgs /// /// The response card. Amazon Lex will substitute session attributes and /// slot values into the response card. For more information, see - /// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + /// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. /// [Input("responseCard")] public Input? ResponseCard { get; set; } @@ -47,7 +47,7 @@ public sealed class IntentSlotArgs : Pulumi.ResourceArgs /// /// If you know a specific pattern with which users might respond to /// an Amazon Lex request for a slot value, you can provide those utterances to improve accuracy. This - /// is optional. In most cases, Amazon Lex is capable of understanding user utterances. + /// is optional. In most cases, Amazon Lex is capable of understanding user utterances. Must have between 1 and 10 items in the list, and each item must be less than or equal to 200 characters in length. /// public InputList SampleUtterances { @@ -63,13 +63,13 @@ public InputList SampleUtterances /// /// The type of the slot, either a custom slot type that you defined or one of - /// the built-in slot types. + /// the built-in slot types. Must be less than or equal to 100 characters in length. /// [Input("slotType", required: true)] public Input SlotType { get; set; } = null!; /// - /// The version of the slot type. + /// The version of the slot type. Must be less than or equal to 64 characters in length. /// [Input("slotTypeVersion")] public Input? SlotTypeVersion { get; set; } diff --git a/sdk/dotnet/Lex/Inputs/IntentSlotGetArgs.cs b/sdk/dotnet/Lex/Inputs/IntentSlotGetArgs.cs index 2fcd319575c..aff72379e49 100644 --- a/sdk/dotnet/Lex/Inputs/IntentSlotGetArgs.cs +++ b/sdk/dotnet/Lex/Inputs/IntentSlotGetArgs.cs @@ -13,13 +13,13 @@ namespace Pulumi.Aws.Lex.Inputs public sealed class IntentSlotGetArgs : Pulumi.ResourceArgs { /// - /// A description of the bot. + /// A description of the bot. Must be less than or equal to 200 characters in length. /// [Input("description")] public Input? Description { get; set; } /// - /// The name of the intent slot that you want to create. The name is case sensitive. + /// The name of the intent slot that you want to create. The name is case sensitive. Must be less than or equal to 100 characters in length. /// [Input("name", required: true)] public Input Name { get; set; } = null!; @@ -28,7 +28,7 @@ public sealed class IntentSlotGetArgs : Pulumi.ResourceArgs /// Directs Lex the order in which to elicit this slot value from the user. /// For example, if the intent has two slots with priorities 1 and 2, AWS Lex first elicits a value for /// the slot with priority 1. If multiple slots share the same priority, the order in which Lex elicits - /// values is arbitrary. + /// values is arbitrary. Must be between 1 and 100. /// [Input("priority")] public Input? Priority { get; set; } @@ -36,7 +36,7 @@ public sealed class IntentSlotGetArgs : Pulumi.ResourceArgs /// /// The response card. Amazon Lex will substitute session attributes and /// slot values into the response card. For more information, see - /// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + /// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. /// [Input("responseCard")] public Input? ResponseCard { get; set; } @@ -47,7 +47,7 @@ public sealed class IntentSlotGetArgs : Pulumi.ResourceArgs /// /// If you know a specific pattern with which users might respond to /// an Amazon Lex request for a slot value, you can provide those utterances to improve accuracy. This - /// is optional. In most cases, Amazon Lex is capable of understanding user utterances. + /// is optional. In most cases, Amazon Lex is capable of understanding user utterances. Must have between 1 and 10 items in the list, and each item must be less than or equal to 200 characters in length. /// public InputList SampleUtterances { @@ -63,13 +63,13 @@ public InputList SampleUtterances /// /// The type of the slot, either a custom slot type that you defined or one of - /// the built-in slot types. + /// the built-in slot types. Must be less than or equal to 100 characters in length. /// [Input("slotType", required: true)] public Input SlotType { get; set; } = null!; /// - /// The version of the slot type. + /// The version of the slot type. Must be less than or equal to 64 characters in length. /// [Input("slotTypeVersion")] public Input? SlotTypeVersion { get; set; } diff --git a/sdk/dotnet/Lex/Inputs/IntentSlotValueElicitationPromptArgs.cs b/sdk/dotnet/Lex/Inputs/IntentSlotValueElicitationPromptArgs.cs index 375d54fe3ba..984abfe231e 100644 --- a/sdk/dotnet/Lex/Inputs/IntentSlotValueElicitationPromptArgs.cs +++ b/sdk/dotnet/Lex/Inputs/IntentSlotValueElicitationPromptArgs.cs @@ -13,7 +13,7 @@ namespace Pulumi.Aws.Lex.Inputs public sealed class IntentSlotValueElicitationPromptArgs : Pulumi.ResourceArgs { /// - /// The number of times to prompt the user for information. + /// The number of times to prompt the user for information. Must be a number between 1 and 5 (inclusive). /// [Input("maxAttempts", required: true)] public Input MaxAttempts { get; set; } = null!; @@ -24,7 +24,7 @@ public sealed class IntentSlotValueElicitationPromptArgs : Pulumi.ResourceArgs /// /// A set of messages, each of which provides a message string and its type. /// You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - /// Attributes are documented under message. + /// Attributes are documented under message. Must contain between 1 and 15 messages. /// public InputList Messages { @@ -35,7 +35,7 @@ public InputList Messages /// /// The response card. Amazon Lex will substitute session attributes and /// slot values into the response card. For more information, see - /// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + /// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. /// [Input("responseCard")] public Input? ResponseCard { get; set; } diff --git a/sdk/dotnet/Lex/Inputs/IntentSlotValueElicitationPromptGetArgs.cs b/sdk/dotnet/Lex/Inputs/IntentSlotValueElicitationPromptGetArgs.cs index 3ec48f1c9fa..1789f1ceb22 100644 --- a/sdk/dotnet/Lex/Inputs/IntentSlotValueElicitationPromptGetArgs.cs +++ b/sdk/dotnet/Lex/Inputs/IntentSlotValueElicitationPromptGetArgs.cs @@ -13,7 +13,7 @@ namespace Pulumi.Aws.Lex.Inputs public sealed class IntentSlotValueElicitationPromptGetArgs : Pulumi.ResourceArgs { /// - /// The number of times to prompt the user for information. + /// The number of times to prompt the user for information. Must be a number between 1 and 5 (inclusive). /// [Input("maxAttempts", required: true)] public Input MaxAttempts { get; set; } = null!; @@ -24,7 +24,7 @@ public sealed class IntentSlotValueElicitationPromptGetArgs : Pulumi.ResourceArg /// /// A set of messages, each of which provides a message string and its type. /// You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - /// Attributes are documented under message. + /// Attributes are documented under message. Must contain between 1 and 15 messages. /// public InputList Messages { @@ -35,7 +35,7 @@ public InputList Messages /// /// The response card. Amazon Lex will substitute session attributes and /// slot values into the response card. For more information, see - /// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + /// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. /// [Input("responseCard")] public Input? ResponseCard { get; set; } diff --git a/sdk/dotnet/Lex/Inputs/IntentSlotValueElicitationPromptMessageArgs.cs b/sdk/dotnet/Lex/Inputs/IntentSlotValueElicitationPromptMessageArgs.cs index eabcb8508a7..729109f19b1 100644 --- a/sdk/dotnet/Lex/Inputs/IntentSlotValueElicitationPromptMessageArgs.cs +++ b/sdk/dotnet/Lex/Inputs/IntentSlotValueElicitationPromptMessageArgs.cs @@ -13,7 +13,7 @@ namespace Pulumi.Aws.Lex.Inputs public sealed class IntentSlotValueElicitationPromptMessageArgs : Pulumi.ResourceArgs { /// - /// The text of the message. + /// The text of the message. Must be less than or equal to 1000 characters in length. /// [Input("content", required: true)] public Input Content { get; set; } = null!; @@ -26,7 +26,7 @@ public sealed class IntentSlotValueElicitationPromptMessageArgs : Pulumi.Resourc /// /// Identifies the message group that the message belongs to. When a group - /// is assigned to a message, Amazon Lex returns one message from each group in the response. + /// is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). /// [Input("groupNumber")] public Input? GroupNumber { get; set; } diff --git a/sdk/dotnet/Lex/Inputs/IntentSlotValueElicitationPromptMessageGetArgs.cs b/sdk/dotnet/Lex/Inputs/IntentSlotValueElicitationPromptMessageGetArgs.cs index 1f04aec19d9..07aaeebf333 100644 --- a/sdk/dotnet/Lex/Inputs/IntentSlotValueElicitationPromptMessageGetArgs.cs +++ b/sdk/dotnet/Lex/Inputs/IntentSlotValueElicitationPromptMessageGetArgs.cs @@ -13,7 +13,7 @@ namespace Pulumi.Aws.Lex.Inputs public sealed class IntentSlotValueElicitationPromptMessageGetArgs : Pulumi.ResourceArgs { /// - /// The text of the message. + /// The text of the message. Must be less than or equal to 1000 characters in length. /// [Input("content", required: true)] public Input Content { get; set; } = null!; @@ -26,7 +26,7 @@ public sealed class IntentSlotValueElicitationPromptMessageGetArgs : Pulumi.Reso /// /// Identifies the message group that the message belongs to. When a group - /// is assigned to a message, Amazon Lex returns one message from each group in the response. + /// is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). /// [Input("groupNumber")] public Input? GroupNumber { get; set; } diff --git a/sdk/dotnet/Lex/Inputs/SlotTypeEnumerationValueArgs.cs b/sdk/dotnet/Lex/Inputs/SlotTypeEnumerationValueArgs.cs index 301b055e1a4..2a9977549a4 100644 --- a/sdk/dotnet/Lex/Inputs/SlotTypeEnumerationValueArgs.cs +++ b/sdk/dotnet/Lex/Inputs/SlotTypeEnumerationValueArgs.cs @@ -16,7 +16,7 @@ public sealed class SlotTypeEnumerationValueArgs : Pulumi.ResourceArgs private InputList? _synonyms; /// - /// Additional values related to the slot type value. + /// Additional values related to the slot type value. Each item must be less than or equal to 140 characters in length. /// public InputList Synonyms { @@ -25,7 +25,7 @@ public InputList Synonyms } /// - /// The value of the slot type. + /// The value of the slot type. Must be less than or equal to 140 characters in length. /// [Input("value", required: true)] public Input Value { get; set; } = null!; diff --git a/sdk/dotnet/Lex/Inputs/SlotTypeEnumerationValueGetArgs.cs b/sdk/dotnet/Lex/Inputs/SlotTypeEnumerationValueGetArgs.cs index f0561b8fcf9..78418929158 100644 --- a/sdk/dotnet/Lex/Inputs/SlotTypeEnumerationValueGetArgs.cs +++ b/sdk/dotnet/Lex/Inputs/SlotTypeEnumerationValueGetArgs.cs @@ -16,7 +16,7 @@ public sealed class SlotTypeEnumerationValueGetArgs : Pulumi.ResourceArgs private InputList? _synonyms; /// - /// Additional values related to the slot type value. + /// Additional values related to the slot type value. Each item must be less than or equal to 140 characters in length. /// public InputList Synonyms { @@ -25,7 +25,7 @@ public InputList Synonyms } /// - /// The value of the slot type. + /// The value of the slot type. Must be less than or equal to 140 characters in length. /// [Input("value", required: true)] public Input Value { get; set; } = null!; diff --git a/sdk/dotnet/Lex/Intent.cs b/sdk/dotnet/Lex/Intent.cs index af40ffaa793..481e1bc10ca 100644 --- a/sdk/dotnet/Lex/Intent.cs +++ b/sdk/dotnet/Lex/Intent.cs @@ -190,7 +190,7 @@ public partial class Intent : Pulumi.CustomResource public Output CreatedDate { get; private set; } = null!; /// - /// A description of the bot. + /// A description of the bot. Must be less than or equal to 200 characters in length. /// [Output("description")] public Output Description { get; private set; } = null!; @@ -226,7 +226,7 @@ public partial class Intent : Pulumi.CustomResource public Output LastUpdatedDate { get; private set; } = null!; /// - /// The name of the intent slot that you want to create. The name is case sensitive. + /// The name of the intent slot that you want to create. The name is case sensitive. Must be less than or equal to 100 characters in length. /// [Output("name")] public Output Name { get; private set; } = null!; @@ -251,7 +251,7 @@ public partial class Intent : Pulumi.CustomResource /// /// If you know a specific pattern with which users might respond to /// an Amazon Lex request for a slot value, you can provide those utterances to improve accuracy. This - /// is optional. In most cases, Amazon Lex is capable of understanding user utterances. + /// is optional. In most cases, Amazon Lex is capable of understanding user utterances. Must have between 1 and 10 items in the list, and each item must be less than or equal to 200 characters in length. /// [Output("sampleUtterances")] public Output> SampleUtterances { get; private set; } = null!; @@ -341,7 +341,7 @@ public sealed class IntentArgs : Pulumi.ResourceArgs public Input? CreateVersion { get; set; } /// - /// A description of the bot. + /// A description of the bot. Must be less than or equal to 200 characters in length. /// [Input("description")] public Input? Description { get; set; } @@ -371,7 +371,7 @@ public sealed class IntentArgs : Pulumi.ResourceArgs public Input FulfillmentActivity { get; set; } = null!; /// - /// The name of the intent slot that you want to create. The name is case sensitive. + /// The name of the intent slot that you want to create. The name is case sensitive. Must be less than or equal to 100 characters in length. /// [Input("name")] public Input? Name { get; set; } @@ -399,7 +399,7 @@ public sealed class IntentArgs : Pulumi.ResourceArgs /// /// If you know a specific pattern with which users might respond to /// an Amazon Lex request for a slot value, you can provide those utterances to improve accuracy. This - /// is optional. In most cases, Amazon Lex is capable of understanding user utterances. + /// is optional. In most cases, Amazon Lex is capable of understanding user utterances. Must have between 1 and 10 items in the list, and each item must be less than or equal to 200 characters in length. /// public InputList SampleUtterances { @@ -472,7 +472,7 @@ public sealed class IntentState : Pulumi.ResourceArgs public Input? CreatedDate { get; set; } /// - /// A description of the bot. + /// A description of the bot. Must be less than or equal to 200 characters in length. /// [Input("description")] public Input? Description { get; set; } @@ -508,7 +508,7 @@ public sealed class IntentState : Pulumi.ResourceArgs public Input? LastUpdatedDate { get; set; } /// - /// The name of the intent slot that you want to create. The name is case sensitive. + /// The name of the intent slot that you want to create. The name is case sensitive. Must be less than or equal to 100 characters in length. /// [Input("name")] public Input? Name { get; set; } @@ -536,7 +536,7 @@ public sealed class IntentState : Pulumi.ResourceArgs /// /// If you know a specific pattern with which users might respond to /// an Amazon Lex request for a slot value, you can provide those utterances to improve accuracy. This - /// is optional. In most cases, Amazon Lex is capable of understanding user utterances. + /// is optional. In most cases, Amazon Lex is capable of understanding user utterances. Must have between 1 and 10 items in the list, and each item must be less than or equal to 200 characters in length. /// public InputList SampleUtterances { diff --git a/sdk/dotnet/Lex/Outputs/BotAliasConversationLogs.cs b/sdk/dotnet/Lex/Outputs/BotAliasConversationLogs.cs index 5a0081aff35..7c6d2c57b4a 100644 --- a/sdk/dotnet/Lex/Outputs/BotAliasConversationLogs.cs +++ b/sdk/dotnet/Lex/Outputs/BotAliasConversationLogs.cs @@ -14,7 +14,7 @@ namespace Pulumi.Aws.Lex.Outputs public sealed class BotAliasConversationLogs { /// - /// The Amazon Resource Name (ARN) of the IAM role used to write your logs to CloudWatch Logs or an S3 bucket. + /// The Amazon Resource Name (ARN) of the IAM role used to write your logs to CloudWatch Logs or an S3 bucket. Must be between 20 and 2048 characters in length. /// public readonly string IamRoleArn; /// diff --git a/sdk/dotnet/Lex/Outputs/BotAliasConversationLogsLogSetting.cs b/sdk/dotnet/Lex/Outputs/BotAliasConversationLogsLogSetting.cs index f01f02b4086..d824878c18a 100644 --- a/sdk/dotnet/Lex/Outputs/BotAliasConversationLogsLogSetting.cs +++ b/sdk/dotnet/Lex/Outputs/BotAliasConversationLogsLogSetting.cs @@ -18,7 +18,7 @@ public sealed class BotAliasConversationLogsLogSetting /// public readonly string Destination; /// - /// The Amazon Resource Name (ARN) of the key used to encrypt audio logs in an S3 bucket. This can only be specified when `destination` is set to `S3`. + /// The Amazon Resource Name (ARN) of the key used to encrypt audio logs in an S3 bucket. This can only be specified when `destination` is set to `S3`. Must be between 20 and 2048 characters in length. /// public readonly string? KmsKeyArn; /// @@ -26,7 +26,7 @@ public sealed class BotAliasConversationLogsLogSetting /// public readonly string LogType; /// - /// The Amazon Resource Name (ARN) of the CloudWatch Logs log group or S3 bucket where the logs are delivered. + /// The Amazon Resource Name (ARN) of the CloudWatch Logs log group or S3 bucket where the logs are delivered. Must be less than or equal to 2048 characters in length. /// public readonly string ResourceArn; /// diff --git a/sdk/dotnet/Lex/Outputs/BotIntent.cs b/sdk/dotnet/Lex/Outputs/BotIntent.cs index 5618fe6d377..087173345e5 100644 --- a/sdk/dotnet/Lex/Outputs/BotIntent.cs +++ b/sdk/dotnet/Lex/Outputs/BotIntent.cs @@ -14,11 +14,11 @@ namespace Pulumi.Aws.Lex.Outputs public sealed class BotIntent { /// - /// The name of the intent. + /// The name of the intent. Must be less than or equal to 100 characters in length. /// public readonly string IntentName; /// - /// The version of the intent. + /// The version of the intent. Must be less than or equal to 64 characters in length. /// public readonly string IntentVersion; diff --git a/sdk/dotnet/Lex/Outputs/IntentConclusionStatement.cs b/sdk/dotnet/Lex/Outputs/IntentConclusionStatement.cs index fc53b605f8b..b35bb2434fb 100644 --- a/sdk/dotnet/Lex/Outputs/IntentConclusionStatement.cs +++ b/sdk/dotnet/Lex/Outputs/IntentConclusionStatement.cs @@ -16,13 +16,13 @@ public sealed class IntentConclusionStatement /// /// A set of messages, each of which provides a message string and its type. /// You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - /// Attributes are documented under message. + /// Attributes are documented under message. Must contain between 1 and 15 messages. /// public readonly ImmutableArray Messages; /// /// The response card. Amazon Lex will substitute session attributes and /// slot values into the response card. For more information, see - /// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + /// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. /// public readonly string? ResponseCard; diff --git a/sdk/dotnet/Lex/Outputs/IntentConclusionStatementMessage.cs b/sdk/dotnet/Lex/Outputs/IntentConclusionStatementMessage.cs index 623c89c4614..3661d7c4df7 100644 --- a/sdk/dotnet/Lex/Outputs/IntentConclusionStatementMessage.cs +++ b/sdk/dotnet/Lex/Outputs/IntentConclusionStatementMessage.cs @@ -14,7 +14,7 @@ namespace Pulumi.Aws.Lex.Outputs public sealed class IntentConclusionStatementMessage { /// - /// The text of the message. + /// The text of the message. Must be less than or equal to 1000 characters in length. /// public readonly string Content; /// @@ -23,7 +23,7 @@ public sealed class IntentConclusionStatementMessage public readonly string ContentType; /// /// Identifies the message group that the message belongs to. When a group - /// is assigned to a message, Amazon Lex returns one message from each group in the response. + /// is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). /// public readonly int? GroupNumber; diff --git a/sdk/dotnet/Lex/Outputs/IntentConfirmationPrompt.cs b/sdk/dotnet/Lex/Outputs/IntentConfirmationPrompt.cs index 9dbf7fb9f04..9c64afd6755 100644 --- a/sdk/dotnet/Lex/Outputs/IntentConfirmationPrompt.cs +++ b/sdk/dotnet/Lex/Outputs/IntentConfirmationPrompt.cs @@ -14,19 +14,19 @@ namespace Pulumi.Aws.Lex.Outputs public sealed class IntentConfirmationPrompt { /// - /// The number of times to prompt the user for information. + /// The number of times to prompt the user for information. Must be a number between 1 and 5 (inclusive). /// public readonly int MaxAttempts; /// /// A set of messages, each of which provides a message string and its type. /// You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - /// Attributes are documented under message. + /// Attributes are documented under message. Must contain between 1 and 15 messages. /// public readonly ImmutableArray Messages; /// /// The response card. Amazon Lex will substitute session attributes and /// slot values into the response card. For more information, see - /// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + /// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. /// public readonly string? ResponseCard; diff --git a/sdk/dotnet/Lex/Outputs/IntentConfirmationPromptMessage.cs b/sdk/dotnet/Lex/Outputs/IntentConfirmationPromptMessage.cs index 50ccd263668..7006dd7e0ef 100644 --- a/sdk/dotnet/Lex/Outputs/IntentConfirmationPromptMessage.cs +++ b/sdk/dotnet/Lex/Outputs/IntentConfirmationPromptMessage.cs @@ -14,7 +14,7 @@ namespace Pulumi.Aws.Lex.Outputs public sealed class IntentConfirmationPromptMessage { /// - /// The text of the message. + /// The text of the message. Must be less than or equal to 1000 characters in length. /// public readonly string Content; /// @@ -23,7 +23,7 @@ public sealed class IntentConfirmationPromptMessage public readonly string ContentType; /// /// Identifies the message group that the message belongs to. When a group - /// is assigned to a message, Amazon Lex returns one message from each group in the response. + /// is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). /// public readonly int? GroupNumber; diff --git a/sdk/dotnet/Lex/Outputs/IntentDialogCodeHook.cs b/sdk/dotnet/Lex/Outputs/IntentDialogCodeHook.cs index 7b5b286e10e..d8764a2bb1b 100644 --- a/sdk/dotnet/Lex/Outputs/IntentDialogCodeHook.cs +++ b/sdk/dotnet/Lex/Outputs/IntentDialogCodeHook.cs @@ -16,7 +16,7 @@ public sealed class IntentDialogCodeHook /// /// The version of the request-response that you want Amazon Lex to use /// to invoke your Lambda function. For more information, see - /// [Using Lambda Functions](https://docs.aws.amazon.com/lex/latest/dg/using-lambda.html). + /// [Using Lambda Functions](https://docs.aws.amazon.com/lex/latest/dg/using-lambda.html). Must be less than or equal to 5 characters in length. /// public readonly string MessageVersion; /// diff --git a/sdk/dotnet/Lex/Outputs/IntentFollowUpPromptPrompt.cs b/sdk/dotnet/Lex/Outputs/IntentFollowUpPromptPrompt.cs index 5fb1bb60755..a3c7bc8a100 100644 --- a/sdk/dotnet/Lex/Outputs/IntentFollowUpPromptPrompt.cs +++ b/sdk/dotnet/Lex/Outputs/IntentFollowUpPromptPrompt.cs @@ -14,19 +14,19 @@ namespace Pulumi.Aws.Lex.Outputs public sealed class IntentFollowUpPromptPrompt { /// - /// The number of times to prompt the user for information. + /// The number of times to prompt the user for information. Must be a number between 1 and 5 (inclusive). /// public readonly int MaxAttempts; /// /// A set of messages, each of which provides a message string and its type. /// You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - /// Attributes are documented under message. + /// Attributes are documented under message. Must contain between 1 and 15 messages. /// public readonly ImmutableArray Messages; /// /// The response card. Amazon Lex will substitute session attributes and /// slot values into the response card. For more information, see - /// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + /// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. /// public readonly string? ResponseCard; diff --git a/sdk/dotnet/Lex/Outputs/IntentFollowUpPromptPromptMessage.cs b/sdk/dotnet/Lex/Outputs/IntentFollowUpPromptPromptMessage.cs index 2d40f4e34f9..bb0b9eacae2 100644 --- a/sdk/dotnet/Lex/Outputs/IntentFollowUpPromptPromptMessage.cs +++ b/sdk/dotnet/Lex/Outputs/IntentFollowUpPromptPromptMessage.cs @@ -14,7 +14,7 @@ namespace Pulumi.Aws.Lex.Outputs public sealed class IntentFollowUpPromptPromptMessage { /// - /// The text of the message. + /// The text of the message. Must be less than or equal to 1000 characters in length. /// public readonly string Content; /// @@ -23,7 +23,7 @@ public sealed class IntentFollowUpPromptPromptMessage public readonly string ContentType; /// /// Identifies the message group that the message belongs to. When a group - /// is assigned to a message, Amazon Lex returns one message from each group in the response. + /// is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). /// public readonly int? GroupNumber; diff --git a/sdk/dotnet/Lex/Outputs/IntentFollowUpPromptRejectionStatement.cs b/sdk/dotnet/Lex/Outputs/IntentFollowUpPromptRejectionStatement.cs index 668c4294887..21affba761f 100644 --- a/sdk/dotnet/Lex/Outputs/IntentFollowUpPromptRejectionStatement.cs +++ b/sdk/dotnet/Lex/Outputs/IntentFollowUpPromptRejectionStatement.cs @@ -16,13 +16,13 @@ public sealed class IntentFollowUpPromptRejectionStatement /// /// A set of messages, each of which provides a message string and its type. /// You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - /// Attributes are documented under message. + /// Attributes are documented under message. Must contain between 1 and 15 messages. /// public readonly ImmutableArray Messages; /// /// The response card. Amazon Lex will substitute session attributes and /// slot values into the response card. For more information, see - /// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + /// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. /// public readonly string? ResponseCard; diff --git a/sdk/dotnet/Lex/Outputs/IntentFollowUpPromptRejectionStatementMessage.cs b/sdk/dotnet/Lex/Outputs/IntentFollowUpPromptRejectionStatementMessage.cs index 3869289f5a7..c036601f935 100644 --- a/sdk/dotnet/Lex/Outputs/IntentFollowUpPromptRejectionStatementMessage.cs +++ b/sdk/dotnet/Lex/Outputs/IntentFollowUpPromptRejectionStatementMessage.cs @@ -14,7 +14,7 @@ namespace Pulumi.Aws.Lex.Outputs public sealed class IntentFollowUpPromptRejectionStatementMessage { /// - /// The text of the message. + /// The text of the message. Must be less than or equal to 1000 characters in length. /// public readonly string Content; /// @@ -23,7 +23,7 @@ public sealed class IntentFollowUpPromptRejectionStatementMessage public readonly string ContentType; /// /// Identifies the message group that the message belongs to. When a group - /// is assigned to a message, Amazon Lex returns one message from each group in the response. + /// is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). /// public readonly int? GroupNumber; diff --git a/sdk/dotnet/Lex/Outputs/IntentFulfillmentActivityCodeHook.cs b/sdk/dotnet/Lex/Outputs/IntentFulfillmentActivityCodeHook.cs index 12c154e35f4..20de180a73e 100644 --- a/sdk/dotnet/Lex/Outputs/IntentFulfillmentActivityCodeHook.cs +++ b/sdk/dotnet/Lex/Outputs/IntentFulfillmentActivityCodeHook.cs @@ -16,7 +16,7 @@ public sealed class IntentFulfillmentActivityCodeHook /// /// The version of the request-response that you want Amazon Lex to use /// to invoke your Lambda function. For more information, see - /// [Using Lambda Functions](https://docs.aws.amazon.com/lex/latest/dg/using-lambda.html). + /// [Using Lambda Functions](https://docs.aws.amazon.com/lex/latest/dg/using-lambda.html). Must be less than or equal to 5 characters in length. /// public readonly string MessageVersion; /// diff --git a/sdk/dotnet/Lex/Outputs/IntentRejectionStatement.cs b/sdk/dotnet/Lex/Outputs/IntentRejectionStatement.cs index 6336b500281..5985f1b0380 100644 --- a/sdk/dotnet/Lex/Outputs/IntentRejectionStatement.cs +++ b/sdk/dotnet/Lex/Outputs/IntentRejectionStatement.cs @@ -16,13 +16,13 @@ public sealed class IntentRejectionStatement /// /// A set of messages, each of which provides a message string and its type. /// You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - /// Attributes are documented under message. + /// Attributes are documented under message. Must contain between 1 and 15 messages. /// public readonly ImmutableArray Messages; /// /// The response card. Amazon Lex will substitute session attributes and /// slot values into the response card. For more information, see - /// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + /// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. /// public readonly string? ResponseCard; diff --git a/sdk/dotnet/Lex/Outputs/IntentRejectionStatementMessage.cs b/sdk/dotnet/Lex/Outputs/IntentRejectionStatementMessage.cs index 30919b59f26..6edde685789 100644 --- a/sdk/dotnet/Lex/Outputs/IntentRejectionStatementMessage.cs +++ b/sdk/dotnet/Lex/Outputs/IntentRejectionStatementMessage.cs @@ -14,7 +14,7 @@ namespace Pulumi.Aws.Lex.Outputs public sealed class IntentRejectionStatementMessage { /// - /// The text of the message. + /// The text of the message. Must be less than or equal to 1000 characters in length. /// public readonly string Content; /// @@ -23,7 +23,7 @@ public sealed class IntentRejectionStatementMessage public readonly string ContentType; /// /// Identifies the message group that the message belongs to. When a group - /// is assigned to a message, Amazon Lex returns one message from each group in the response. + /// is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). /// public readonly int? GroupNumber; diff --git a/sdk/dotnet/Lex/Outputs/IntentSlot.cs b/sdk/dotnet/Lex/Outputs/IntentSlot.cs index a5e89c54214..b2df6bda1a7 100644 --- a/sdk/dotnet/Lex/Outputs/IntentSlot.cs +++ b/sdk/dotnet/Lex/Outputs/IntentSlot.cs @@ -14,30 +14,30 @@ namespace Pulumi.Aws.Lex.Outputs public sealed class IntentSlot { /// - /// A description of the bot. + /// A description of the bot. Must be less than or equal to 200 characters in length. /// public readonly string? Description; /// - /// The name of the intent slot that you want to create. The name is case sensitive. + /// The name of the intent slot that you want to create. The name is case sensitive. Must be less than or equal to 100 characters in length. /// public readonly string Name; /// /// Directs Lex the order in which to elicit this slot value from the user. /// For example, if the intent has two slots with priorities 1 and 2, AWS Lex first elicits a value for /// the slot with priority 1. If multiple slots share the same priority, the order in which Lex elicits - /// values is arbitrary. + /// values is arbitrary. Must be between 1 and 100. /// public readonly int? Priority; /// /// The response card. Amazon Lex will substitute session attributes and /// slot values into the response card. For more information, see - /// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + /// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. /// public readonly string? ResponseCard; /// /// If you know a specific pattern with which users might respond to /// an Amazon Lex request for a slot value, you can provide those utterances to improve accuracy. This - /// is optional. In most cases, Amazon Lex is capable of understanding user utterances. + /// is optional. In most cases, Amazon Lex is capable of understanding user utterances. Must have between 1 and 10 items in the list, and each item must be less than or equal to 200 characters in length. /// public readonly ImmutableArray SampleUtterances; /// @@ -46,11 +46,11 @@ public sealed class IntentSlot public readonly string SlotConstraint; /// /// The type of the slot, either a custom slot type that you defined or one of - /// the built-in slot types. + /// the built-in slot types. Must be less than or equal to 100 characters in length. /// public readonly string SlotType; /// - /// The version of the slot type. + /// The version of the slot type. Must be less than or equal to 64 characters in length. /// public readonly string? SlotTypeVersion; /// diff --git a/sdk/dotnet/Lex/Outputs/IntentSlotValueElicitationPrompt.cs b/sdk/dotnet/Lex/Outputs/IntentSlotValueElicitationPrompt.cs index a6cfcc90799..9e565a32c39 100644 --- a/sdk/dotnet/Lex/Outputs/IntentSlotValueElicitationPrompt.cs +++ b/sdk/dotnet/Lex/Outputs/IntentSlotValueElicitationPrompt.cs @@ -14,19 +14,19 @@ namespace Pulumi.Aws.Lex.Outputs public sealed class IntentSlotValueElicitationPrompt { /// - /// The number of times to prompt the user for information. + /// The number of times to prompt the user for information. Must be a number between 1 and 5 (inclusive). /// public readonly int MaxAttempts; /// /// A set of messages, each of which provides a message string and its type. /// You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - /// Attributes are documented under message. + /// Attributes are documented under message. Must contain between 1 and 15 messages. /// public readonly ImmutableArray Messages; /// /// The response card. Amazon Lex will substitute session attributes and /// slot values into the response card. For more information, see - /// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + /// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. /// public readonly string? ResponseCard; diff --git a/sdk/dotnet/Lex/Outputs/IntentSlotValueElicitationPromptMessage.cs b/sdk/dotnet/Lex/Outputs/IntentSlotValueElicitationPromptMessage.cs index a8744d63973..b85b87d558f 100644 --- a/sdk/dotnet/Lex/Outputs/IntentSlotValueElicitationPromptMessage.cs +++ b/sdk/dotnet/Lex/Outputs/IntentSlotValueElicitationPromptMessage.cs @@ -14,7 +14,7 @@ namespace Pulumi.Aws.Lex.Outputs public sealed class IntentSlotValueElicitationPromptMessage { /// - /// The text of the message. + /// The text of the message. Must be less than or equal to 1000 characters in length. /// public readonly string Content; /// @@ -23,7 +23,7 @@ public sealed class IntentSlotValueElicitationPromptMessage public readonly string ContentType; /// /// Identifies the message group that the message belongs to. When a group - /// is assigned to a message, Amazon Lex returns one message from each group in the response. + /// is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). /// public readonly int? GroupNumber; diff --git a/sdk/dotnet/Lex/Outputs/SlotTypeEnumerationValue.cs b/sdk/dotnet/Lex/Outputs/SlotTypeEnumerationValue.cs index be1474ff1b0..4f2db0ac3af 100644 --- a/sdk/dotnet/Lex/Outputs/SlotTypeEnumerationValue.cs +++ b/sdk/dotnet/Lex/Outputs/SlotTypeEnumerationValue.cs @@ -14,11 +14,11 @@ namespace Pulumi.Aws.Lex.Outputs public sealed class SlotTypeEnumerationValue { /// - /// Additional values related to the slot type value. + /// Additional values related to the slot type value. Each item must be less than or equal to 140 characters in length. /// public readonly ImmutableArray Synonyms; /// - /// The value of the slot type. + /// The value of the slot type. Must be less than or equal to 140 characters in length. /// public readonly string Value; diff --git a/sdk/dotnet/Lex/SlotType.cs b/sdk/dotnet/Lex/SlotType.cs index 276a234bc05..cc761b3602d 100644 --- a/sdk/dotnet/Lex/SlotType.cs +++ b/sdk/dotnet/Lex/SlotType.cs @@ -79,7 +79,7 @@ public partial class SlotType : Pulumi.CustomResource public Output CreatedDate { get; private set; } = null!; /// - /// A description of the slot type. + /// A description of the slot type. Must be less than or equal to 200 characters in length. /// [Output("description")] public Output Description { get; private set; } = null!; @@ -100,7 +100,7 @@ public partial class SlotType : Pulumi.CustomResource public Output LastUpdatedDate { get; private set; } = null!; /// - /// The name of the slot type. The name is not case sensitive. + /// The name of the slot type. The name is not case sensitive. Must be less than or equal to 100 characters in length. /// [Output("name")] public Output Name { get; private set; } = null!; @@ -174,7 +174,7 @@ public sealed class SlotTypeArgs : Pulumi.ResourceArgs public Input? CreateVersion { get; set; } /// - /// A description of the slot type. + /// A description of the slot type. Must be less than or equal to 200 characters in length. /// [Input("description")] public Input? Description { get; set; } @@ -195,7 +195,7 @@ public InputList EnumerationValues } /// - /// The name of the slot type. The name is not case sensitive. + /// The name of the slot type. The name is not case sensitive. Must be less than or equal to 100 characters in length. /// [Input("name")] public Input? Name { get; set; } @@ -237,7 +237,7 @@ public sealed class SlotTypeState : Pulumi.ResourceArgs public Input? CreatedDate { get; set; } /// - /// A description of the slot type. + /// A description of the slot type. Must be less than or equal to 200 characters in length. /// [Input("description")] public Input? Description { get; set; } @@ -264,7 +264,7 @@ public InputList EnumerationValues public Input? LastUpdatedDate { get; set; } /// - /// The name of the slot type. The name is not case sensitive. + /// The name of the slot type. The name is not case sensitive. Must be less than or equal to 100 characters in length. /// [Input("name")] public Input? Name { get; set; } diff --git a/sdk/dotnet/Outputs/ProviderEndpoint.cs b/sdk/dotnet/Outputs/ProviderEndpoint.cs index a2b08e68deb..0cb98fa2148 100644 --- a/sdk/dotnet/Outputs/ProviderEndpoint.cs +++ b/sdk/dotnet/Outputs/ProviderEndpoint.cs @@ -43,6 +43,7 @@ public sealed class ProviderEndpoint public readonly string? Codecommit; public readonly string? Codedeploy; public readonly string? Codepipeline; + public readonly string? Codestarconnections; public readonly string? Cognitoidentity; public readonly string? Cognitoidp; public readonly string? Configservice; @@ -220,6 +221,8 @@ private ProviderEndpoint( string? codepipeline, + string? codestarconnections, + string? cognitoidentity, string? cognitoidp, @@ -478,6 +481,7 @@ private ProviderEndpoint( Codecommit = codecommit; Codedeploy = codedeploy; Codepipeline = codepipeline; + Codestarconnections = codestarconnections; Cognitoidentity = cognitoidentity; Cognitoidp = cognitoidp; Configservice = configservice; diff --git a/sdk/dotnet/Rds/Cluster.cs b/sdk/dotnet/Rds/Cluster.cs index a3c78b468c1..4e233e159e6 100644 --- a/sdk/dotnet/Rds/Cluster.cs +++ b/sdk/dotnet/Rds/Cluster.cs @@ -381,10 +381,10 @@ public partial class Cluster : Pulumi.CustomResource public Output SourceRegion { get; private set; } = null!; /// - /// Specifies whether the DB cluster is encrypted. The default is `false` for `provisioned` `engine_mode` and `true` for `serverless` `engine_mode`. + /// Specifies whether the DB cluster is encrypted /// [Output("storageEncrypted")] - public Output StorageEncrypted { get; private set; } = null!; + public Output StorageEncrypted { get; private set; } = null!; /// /// A map of tags to assign to the DB cluster. @@ -670,7 +670,7 @@ public InputList IamRoles public Input? SourceRegion { get; set; } /// - /// Specifies whether the DB cluster is encrypted. The default is `false` for `provisioned` `engine_mode` and `true` for `serverless` `engine_mode`. + /// Specifies whether the DB cluster is encrypted /// [Input("storageEncrypted")] public Input? StorageEncrypted { get; set; } @@ -963,7 +963,7 @@ public InputList IamRoles public Input? SourceRegion { get; set; } /// - /// Specifies whether the DB cluster is encrypted. The default is `false` for `provisioned` `engine_mode` and `true` for `serverless` `engine_mode`. + /// Specifies whether the DB cluster is encrypted /// [Input("storageEncrypted")] public Input? StorageEncrypted { get; set; } diff --git a/sdk/dotnet/Route53/GetResolverEndpoint.cs b/sdk/dotnet/Route53/GetResolverEndpoint.cs new file mode 100644 index 00000000000..5c5fea57de3 --- /dev/null +++ b/sdk/dotnet/Route53/GetResolverEndpoint.cs @@ -0,0 +1,149 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Aws.Route53 +{ + public static class GetResolverEndpoint + { + /// + /// `aws.route53.ResolverEndpoint` provides details about a specific Route53 Resolver Endpoint. + /// + /// This data source allows to find a list of IPaddresses associated with a specific Route53 Resolver Endpoint. + /// + /// {{% examples %}} + /// ## Example Usage + /// {{% example %}} + /// + /// ```csharp + /// using Pulumi; + /// using Aws = Pulumi.Aws; + /// + /// class MyStack : Stack + /// { + /// public MyStack() + /// { + /// var example = Output.Create(Aws.Route53.GetResolverEndpoint.InvokeAsync(new Aws.Route53.GetResolverEndpointArgs + /// { + /// ResolverEndpointId = "rslvr-in-1abc2345ef678g91h", + /// })); + /// } + /// + /// } + /// ``` + /// + /// ```csharp + /// using Pulumi; + /// using Aws = Pulumi.Aws; + /// + /// class MyStack : Stack + /// { + /// public MyStack() + /// { + /// var example = Output.Create(Aws.Route53.GetResolverEndpoint.InvokeAsync(new Aws.Route53.GetResolverEndpointArgs + /// { + /// Filters = + /// { + /// new Aws.Route53.Inputs.GetResolverEndpointFilterArgs + /// { + /// Name = "NAME", + /// Values = + /// { + /// "MyResolverExampleName", + /// }, + /// }, + /// }, + /// })); + /// } + /// + /// } + /// ``` + /// {{% /example %}} + /// {{% /examples %}} + /// + public static Task InvokeAsync(GetResolverEndpointArgs? args = null, InvokeOptions? options = null) + => Pulumi.Deployment.Instance.InvokeAsync("aws:route53/getResolverEndpoint:getResolverEndpoint", args ?? new GetResolverEndpointArgs(), options.WithVersion()); + } + + + public sealed class GetResolverEndpointArgs : Pulumi.InvokeArgs + { + [Input("filters")] + private List? _filters; + + /// + /// One or more name/value pairs to use as filters. There are + /// several valid keys, for a full reference, check out + /// [Route53resolver Filter value in the AWS API reference][1]. + /// + public List Filters + { + get => _filters ?? (_filters = new List()); + set => _filters = value; + } + + /// + /// The ID of the Route53 Resolver Endpoint. + /// + [Input("resolverEndpointId")] + public string? ResolverEndpointId { get; set; } + + public GetResolverEndpointArgs() + { + } + } + + + [OutputType] + public sealed class GetResolverEndpointResult + { + public readonly string Arn; + public readonly string Direction; + public readonly ImmutableArray Filters; + /// + /// The provider-assigned unique ID for this managed resource. + /// + public readonly string Id; + public readonly ImmutableArray IpAddresses; + public readonly string Name; + public readonly string? ResolverEndpointId; + public readonly string Status; + public readonly string VpcId; + + [OutputConstructor] + private GetResolverEndpointResult( + string arn, + + string direction, + + ImmutableArray filters, + + string id, + + ImmutableArray ipAddresses, + + string name, + + string? resolverEndpointId, + + string status, + + string vpcId) + { + Arn = arn; + Direction = direction; + Filters = filters; + Id = id; + IpAddresses = ipAddresses; + Name = name; + ResolverEndpointId = resolverEndpointId; + Status = status; + VpcId = vpcId; + } + } +} diff --git a/sdk/dotnet/Route53/Inputs/GetResolverEndpointFilterArgs.cs b/sdk/dotnet/Route53/Inputs/GetResolverEndpointFilterArgs.cs new file mode 100644 index 00000000000..4fe6d68abc3 --- /dev/null +++ b/sdk/dotnet/Route53/Inputs/GetResolverEndpointFilterArgs.cs @@ -0,0 +1,30 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Aws.Route53.Inputs +{ + + public sealed class GetResolverEndpointFilterArgs : Pulumi.InvokeArgs + { + [Input("name", required: true)] + public string Name { get; set; } = null!; + + [Input("values", required: true)] + private List? _values; + public List Values + { + get => _values ?? (_values = new List()); + set => _values = value; + } + + public GetResolverEndpointFilterArgs() + { + } + } +} diff --git a/sdk/dotnet/Route53/Outputs/GetResolverEndpointFilterResult.cs b/sdk/dotnet/Route53/Outputs/GetResolverEndpointFilterResult.cs new file mode 100644 index 00000000000..354d5cb85ed --- /dev/null +++ b/sdk/dotnet/Route53/Outputs/GetResolverEndpointFilterResult.cs @@ -0,0 +1,29 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Aws.Route53.Outputs +{ + + [OutputType] + public sealed class GetResolverEndpointFilterResult + { + public readonly string Name; + public readonly ImmutableArray Values; + + [OutputConstructor] + private GetResolverEndpointFilterResult( + string name, + + ImmutableArray values) + { + Name = name; + Values = values; + } + } +} diff --git a/sdk/dotnet/S3/Bucket.cs b/sdk/dotnet/S3/Bucket.cs index 36f0a5d1695..c8101486c68 100644 --- a/sdk/dotnet/S3/Bucket.cs +++ b/sdk/dotnet/S3/Bucket.cs @@ -472,7 +472,7 @@ public partial class Bucket : Pulumi.CustomResource public Output Arn { get; private set; } = null!; /// - /// The name of the bucket. If omitted, this provider will assign a random, unique name. + /// The name of the bucket. If omitted, this provider will assign a random, unique name. Must be less than or equal to 63 characters in length. /// [Output("bucket")] public Output BucketName { get; private set; } = null!; @@ -484,7 +484,7 @@ public partial class Bucket : Pulumi.CustomResource public Output BucketDomainName { get; private set; } = null!; /// - /// Creates a unique bucket name beginning with the specified prefix. Conflicts with `bucket`. + /// Creates a unique bucket name beginning with the specified prefix. Conflicts with `bucket`. Must be less than or equal to 37 characters in length. /// [Output("bucketPrefix")] public Output BucketPrefix { get; private set; } = null!; @@ -665,13 +665,13 @@ public sealed class BucketArgs : Pulumi.ResourceArgs public Input? Arn { get; set; } /// - /// The name of the bucket. If omitted, this provider will assign a random, unique name. + /// The name of the bucket. If omitted, this provider will assign a random, unique name. Must be less than or equal to 63 characters in length. /// [Input("bucket")] public Input? BucketName { get; set; } /// - /// Creates a unique bucket name beginning with the specified prefix. Conflicts with `bucket`. + /// Creates a unique bucket name beginning with the specified prefix. Conflicts with `bucket`. Must be less than or equal to 37 characters in length. /// [Input("bucketPrefix")] public Input? BucketPrefix { get; set; } @@ -831,7 +831,7 @@ public sealed class BucketState : Pulumi.ResourceArgs public Input? Arn { get; set; } /// - /// The name of the bucket. If omitted, this provider will assign a random, unique name. + /// The name of the bucket. If omitted, this provider will assign a random, unique name. Must be less than or equal to 63 characters in length. /// [Input("bucket")] public Input? BucketName { get; set; } @@ -843,7 +843,7 @@ public sealed class BucketState : Pulumi.ResourceArgs public Input? BucketDomainName { get; set; } /// - /// Creates a unique bucket name beginning with the specified prefix. Conflicts with `bucket`. + /// Creates a unique bucket name beginning with the specified prefix. Conflicts with `bucket`. Must be less than or equal to 37 characters in length. /// [Input("bucketPrefix")] public Input? BucketPrefix { get; set; } diff --git a/sdk/dotnet/S3/Inputs/BucketLifecycleRuleArgs.cs b/sdk/dotnet/S3/Inputs/BucketLifecycleRuleArgs.cs index 70c4ada00c6..4af0a157e06 100644 --- a/sdk/dotnet/S3/Inputs/BucketLifecycleRuleArgs.cs +++ b/sdk/dotnet/S3/Inputs/BucketLifecycleRuleArgs.cs @@ -31,7 +31,7 @@ public sealed class BucketLifecycleRuleArgs : Pulumi.ResourceArgs public Input? Expiration { get; set; } /// - /// Unique identifier for the rule. + /// Unique identifier for the rule. Must be less than or equal to 255 characters in length. /// [Input("id")] public Input? Id { get; set; } diff --git a/sdk/dotnet/S3/Inputs/BucketLifecycleRuleGetArgs.cs b/sdk/dotnet/S3/Inputs/BucketLifecycleRuleGetArgs.cs index 1ac24c1e2b1..8a3628c6ecb 100644 --- a/sdk/dotnet/S3/Inputs/BucketLifecycleRuleGetArgs.cs +++ b/sdk/dotnet/S3/Inputs/BucketLifecycleRuleGetArgs.cs @@ -31,7 +31,7 @@ public sealed class BucketLifecycleRuleGetArgs : Pulumi.ResourceArgs public Input? Expiration { get; set; } /// - /// Unique identifier for the rule. + /// Unique identifier for the rule. Must be less than or equal to 255 characters in length. /// [Input("id")] public Input? Id { get; set; } diff --git a/sdk/dotnet/S3/Inputs/BucketReplicationConfigurationRuleArgs.cs b/sdk/dotnet/S3/Inputs/BucketReplicationConfigurationRuleArgs.cs index 71ffdd67abe..e7df7cb2f81 100644 --- a/sdk/dotnet/S3/Inputs/BucketReplicationConfigurationRuleArgs.cs +++ b/sdk/dotnet/S3/Inputs/BucketReplicationConfigurationRuleArgs.cs @@ -25,13 +25,13 @@ public sealed class BucketReplicationConfigurationRuleArgs : Pulumi.ResourceArgs public Input? Filter { get; set; } /// - /// Unique identifier for the rule. + /// Unique identifier for the rule. Must be less than or equal to 255 characters in length. /// [Input("id")] public Input? Id { get; set; } /// - /// Object keyname prefix identifying one or more objects to which the rule applies. + /// Object keyname prefix identifying one or more objects to which the rule applies. Must be less than or equal to 1024 characters in length. /// [Input("prefix")] public Input? Prefix { get; set; } diff --git a/sdk/dotnet/S3/Inputs/BucketReplicationConfigurationRuleFilterArgs.cs b/sdk/dotnet/S3/Inputs/BucketReplicationConfigurationRuleFilterArgs.cs index 450e9a07a22..5a311d0e51a 100644 --- a/sdk/dotnet/S3/Inputs/BucketReplicationConfigurationRuleFilterArgs.cs +++ b/sdk/dotnet/S3/Inputs/BucketReplicationConfigurationRuleFilterArgs.cs @@ -13,7 +13,7 @@ namespace Pulumi.Aws.S3.Inputs public sealed class BucketReplicationConfigurationRuleFilterArgs : Pulumi.ResourceArgs { /// - /// Object keyname prefix that identifies subset of objects to which the rule applies. + /// Object keyname prefix that identifies subset of objects to which the rule applies. Must be less than or equal to 1024 characters in length. /// [Input("prefix")] public Input? Prefix { get; set; } diff --git a/sdk/dotnet/S3/Inputs/BucketReplicationConfigurationRuleFilterGetArgs.cs b/sdk/dotnet/S3/Inputs/BucketReplicationConfigurationRuleFilterGetArgs.cs index b9cabeab966..0b9792f5f3d 100644 --- a/sdk/dotnet/S3/Inputs/BucketReplicationConfigurationRuleFilterGetArgs.cs +++ b/sdk/dotnet/S3/Inputs/BucketReplicationConfigurationRuleFilterGetArgs.cs @@ -13,7 +13,7 @@ namespace Pulumi.Aws.S3.Inputs public sealed class BucketReplicationConfigurationRuleFilterGetArgs : Pulumi.ResourceArgs { /// - /// Object keyname prefix that identifies subset of objects to which the rule applies. + /// Object keyname prefix that identifies subset of objects to which the rule applies. Must be less than or equal to 1024 characters in length. /// [Input("prefix")] public Input? Prefix { get; set; } diff --git a/sdk/dotnet/S3/Inputs/BucketReplicationConfigurationRuleGetArgs.cs b/sdk/dotnet/S3/Inputs/BucketReplicationConfigurationRuleGetArgs.cs index d3f8f6f4801..1c19780daed 100644 --- a/sdk/dotnet/S3/Inputs/BucketReplicationConfigurationRuleGetArgs.cs +++ b/sdk/dotnet/S3/Inputs/BucketReplicationConfigurationRuleGetArgs.cs @@ -25,13 +25,13 @@ public sealed class BucketReplicationConfigurationRuleGetArgs : Pulumi.ResourceA public Input? Filter { get; set; } /// - /// Unique identifier for the rule. + /// Unique identifier for the rule. Must be less than or equal to 255 characters in length. /// [Input("id")] public Input? Id { get; set; } /// - /// Object keyname prefix identifying one or more objects to which the rule applies. + /// Object keyname prefix identifying one or more objects to which the rule applies. Must be less than or equal to 1024 characters in length. /// [Input("prefix")] public Input? Prefix { get; set; } diff --git a/sdk/dotnet/S3/Outputs/BucketLifecycleRule.cs b/sdk/dotnet/S3/Outputs/BucketLifecycleRule.cs index ac3ea914313..1068d72ea37 100644 --- a/sdk/dotnet/S3/Outputs/BucketLifecycleRule.cs +++ b/sdk/dotnet/S3/Outputs/BucketLifecycleRule.cs @@ -26,7 +26,7 @@ public sealed class BucketLifecycleRule /// public readonly Outputs.BucketLifecycleRuleExpiration? Expiration; /// - /// Unique identifier for the rule. + /// Unique identifier for the rule. Must be less than or equal to 255 characters in length. /// public readonly string? Id; /// diff --git a/sdk/dotnet/S3/Outputs/BucketReplicationConfigurationRule.cs b/sdk/dotnet/S3/Outputs/BucketReplicationConfigurationRule.cs index 7fbb5756a13..ced378a12a4 100644 --- a/sdk/dotnet/S3/Outputs/BucketReplicationConfigurationRule.cs +++ b/sdk/dotnet/S3/Outputs/BucketReplicationConfigurationRule.cs @@ -22,11 +22,11 @@ public sealed class BucketReplicationConfigurationRule /// public readonly Outputs.BucketReplicationConfigurationRuleFilter? Filter; /// - /// Unique identifier for the rule. + /// Unique identifier for the rule. Must be less than or equal to 255 characters in length. /// public readonly string? Id; /// - /// Object keyname prefix identifying one or more objects to which the rule applies. + /// Object keyname prefix identifying one or more objects to which the rule applies. Must be less than or equal to 1024 characters in length. /// public readonly string? Prefix; /// diff --git a/sdk/dotnet/S3/Outputs/BucketReplicationConfigurationRuleFilter.cs b/sdk/dotnet/S3/Outputs/BucketReplicationConfigurationRuleFilter.cs index 651009b9554..a2d5f9f4d3f 100644 --- a/sdk/dotnet/S3/Outputs/BucketReplicationConfigurationRuleFilter.cs +++ b/sdk/dotnet/S3/Outputs/BucketReplicationConfigurationRuleFilter.cs @@ -14,7 +14,7 @@ namespace Pulumi.Aws.S3.Outputs public sealed class BucketReplicationConfigurationRuleFilter { /// - /// Object keyname prefix that identifies subset of objects to which the rule applies. + /// Object keyname prefix that identifies subset of objects to which the rule applies. Must be less than or equal to 1024 characters in length. /// public readonly string? Prefix; /// diff --git a/sdk/dotnet/Sagemaker/EndpointConfiguration.cs b/sdk/dotnet/Sagemaker/EndpointConfiguration.cs index 5497b865a9f..8039d15a6d1 100644 --- a/sdk/dotnet/Sagemaker/EndpointConfiguration.cs +++ b/sdk/dotnet/Sagemaker/EndpointConfiguration.cs @@ -54,6 +54,12 @@ public partial class EndpointConfiguration : Pulumi.CustomResource [Output("arn")] public Output Arn { get; private set; } = null!; + /// + /// Specifies the parameters to capture input/output of Sagemaker models endpoints. Fields are documented below. + /// + [Output("dataCaptureConfig")] + public Output DataCaptureConfig { get; private set; } = null!; + /// /// Amazon Resource Name (ARN) of a AWS Key Management Service key that Amazon SageMaker uses to encrypt data on the storage volume attached to the ML compute instance that hosts the endpoint. /// @@ -124,6 +130,12 @@ public static EndpointConfiguration Get(string name, Input id, EndpointC public sealed class EndpointConfigurationArgs : Pulumi.ResourceArgs { + /// + /// Specifies the parameters to capture input/output of Sagemaker models endpoints. Fields are documented below. + /// + [Input("dataCaptureConfig")] + public Input? DataCaptureConfig { get; set; } + /// /// Amazon Resource Name (ARN) of a AWS Key Management Service key that Amazon SageMaker uses to encrypt data on the storage volume attached to the ML compute instance that hosts the endpoint. /// @@ -173,6 +185,12 @@ public sealed class EndpointConfigurationState : Pulumi.ResourceArgs [Input("arn")] public Input? Arn { get; set; } + /// + /// Specifies the parameters to capture input/output of Sagemaker models endpoints. Fields are documented below. + /// + [Input("dataCaptureConfig")] + public Input? DataCaptureConfig { get; set; } + /// /// Amazon Resource Name (ARN) of a AWS Key Management Service key that Amazon SageMaker uses to encrypt data on the storage volume attached to the ML compute instance that hosts the endpoint. /// diff --git a/sdk/dotnet/Sagemaker/GetPrebuiltEcrImage.cs b/sdk/dotnet/Sagemaker/GetPrebuiltEcrImage.cs new file mode 100644 index 00000000000..b693183fbf7 --- /dev/null +++ b/sdk/dotnet/Sagemaker/GetPrebuiltEcrImage.cs @@ -0,0 +1,127 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Aws.Sagemaker +{ + public static class GetPrebuiltEcrImage + { + /// + /// Get information about prebuilt Amazon SageMaker Docker images. + /// + /// > **NOTE:** The AWS provider creates a validly constructed `registry_path` but does not verify that the `registry_path` corresponds to an existing image. For example, using a `registry_path` containing an `image_tag` that does not correspond to a Docker image in the ECR repository, will result in an error. + /// + /// {{% examples %}} + /// ## Example Usage + /// {{% example %}} + /// + /// Basic usage: + /// + /// ```csharp + /// using Pulumi; + /// using Aws = Pulumi.Aws; + /// + /// class MyStack : Stack + /// { + /// public MyStack() + /// { + /// var test = Output.Create(Aws.Sagemaker.GetPrebuiltEcrImage.InvokeAsync(new Aws.Sagemaker.GetPrebuiltEcrImageArgs + /// { + /// ImageTag = "2.2-1.0.11.0", + /// RepositoryName = "sagemaker-scikit-learn", + /// })); + /// } + /// + /// } + /// ``` + /// {{% /example %}} + /// {{% /examples %}} + /// + public static Task InvokeAsync(GetPrebuiltEcrImageArgs args, InvokeOptions? options = null) + => Pulumi.Deployment.Instance.InvokeAsync("aws:sagemaker/getPrebuiltEcrImage:getPrebuiltEcrImage", args ?? new GetPrebuiltEcrImageArgs(), options.WithVersion()); + } + + + public sealed class GetPrebuiltEcrImageArgs : Pulumi.InvokeArgs + { + /// + /// The DNS suffix to use in the registry path. If not specified, the AWS provider sets it to the DNS suffix for the current region. + /// + [Input("dnsSuffix")] + public string? DnsSuffix { get; set; } + + /// + /// The image tag for the Docker image. If not specified, the AWS provider sets the value to `1`, which for many repositories indicates the latest version. Some repositories, such as XGBoost, do not support `1` or `latest` and specific version must be used. + /// + [Input("imageTag")] + public string? ImageTag { get; set; } + + /// + /// The region to use in the registry path. If not specified, the AWS provider sets it to the current region. + /// + [Input("region")] + public string? Region { get; set; } + + /// + /// The name of the repository, which is generally the algorithm or library. Values include `blazingtext`, `factorization-machines`, `forecasting-deepar`, `image-classification`, `ipinsights`, `kmeans`, `knn`, `lda`, `linear-learner`, `mxnet-inference-eia`, `mxnet-inference`, `mxnet-training`, `ntm`, `object-detection`, `object2vec`, `pca`, `pytorch-inference-eia`, `pytorch-inference`, `pytorch-training`, `randomcutforest`, `sagemaker-scikit-learn`, `sagemaker-sparkml-serving`, `sagemaker-xgboost`, `semantic-segmentation`, `seq2seq`, `tensorflow-inference-eia`, `tensorflow-inference`, and `tensorflow-training`. + /// + [Input("repositoryName", required: true)] + public string RepositoryName { get; set; } = null!; + + public GetPrebuiltEcrImageArgs() + { + } + } + + + [OutputType] + public sealed class GetPrebuiltEcrImageResult + { + public readonly string? DnsSuffix; + /// + /// The provider-assigned unique ID for this managed resource. + /// + public readonly string Id; + public readonly string? ImageTag; + public readonly string? Region; + /// + /// The account ID containing the image. For example, `469771592824`. + /// + public readonly string RegistryId; + /// + /// The Docker image URL. For example, `341280168497.dkr.ecr.ca-central-1.amazonaws.com/sagemaker-sparkml-serving:2.4`. + /// + public readonly string RegistryPath; + public readonly string RepositoryName; + + [OutputConstructor] + private GetPrebuiltEcrImageResult( + string? dnsSuffix, + + string id, + + string? imageTag, + + string? region, + + string registryId, + + string registryPath, + + string repositoryName) + { + DnsSuffix = dnsSuffix; + Id = id; + ImageTag = imageTag; + Region = region; + RegistryId = registryId; + RegistryPath = registryPath; + RepositoryName = repositoryName; + } + } +} diff --git a/sdk/dotnet/Sagemaker/Inputs/EndpointConfigurationDataCaptureConfigArgs.cs b/sdk/dotnet/Sagemaker/Inputs/EndpointConfigurationDataCaptureConfigArgs.cs new file mode 100644 index 00000000000..178c19246f5 --- /dev/null +++ b/sdk/dotnet/Sagemaker/Inputs/EndpointConfigurationDataCaptureConfigArgs.cs @@ -0,0 +1,61 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Aws.Sagemaker.Inputs +{ + + public sealed class EndpointConfigurationDataCaptureConfigArgs : Pulumi.ResourceArgs + { + /// + /// The content type headers to capture. Fields are documented below. + /// + [Input("captureContentTypeHeader")] + public Input? CaptureContentTypeHeader { get; set; } + + [Input("captureOptions", required: true)] + private InputList? _captureOptions; + + /// + /// Specifies what data to capture. Fields are documented below. + /// + public InputList CaptureOptions + { + get => _captureOptions ?? (_captureOptions = new InputList()); + set => _captureOptions = value; + } + + /// + /// The URL for S3 location where the captured data is stored. + /// + [Input("destinationS3Uri", required: true)] + public Input DestinationS3Uri { get; set; } = null!; + + /// + /// Flag to enable data capture. Defaults to `false`. + /// + [Input("enableCapture")] + public Input? EnableCapture { get; set; } + + /// + /// Portion of data to capture. Should be between 0 and 100. + /// + [Input("initialSamplingPercentage", required: true)] + public Input InitialSamplingPercentage { get; set; } = null!; + + /// + /// Amazon Resource Name (ARN) of a AWS Key Management Service key that Amazon SageMaker uses to encrypt the captured data on Amazon S3. + /// + [Input("kmsKeyId")] + public Input? KmsKeyId { get; set; } + + public EndpointConfigurationDataCaptureConfigArgs() + { + } + } +} diff --git a/sdk/dotnet/Sagemaker/Inputs/EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderArgs.cs b/sdk/dotnet/Sagemaker/Inputs/EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderArgs.cs new file mode 100644 index 00000000000..8605ce3a2ca --- /dev/null +++ b/sdk/dotnet/Sagemaker/Inputs/EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderArgs.cs @@ -0,0 +1,43 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Aws.Sagemaker.Inputs +{ + + public sealed class EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderArgs : Pulumi.ResourceArgs + { + [Input("csvContentTypes")] + private InputList? _csvContentTypes; + + /// + /// The CSV content type headers to capture. + /// + public InputList CsvContentTypes + { + get => _csvContentTypes ?? (_csvContentTypes = new InputList()); + set => _csvContentTypes = value; + } + + [Input("jsonContentTypes")] + private InputList? _jsonContentTypes; + + /// + /// The JSON content type headers to capture. + /// + public InputList JsonContentTypes + { + get => _jsonContentTypes ?? (_jsonContentTypes = new InputList()); + set => _jsonContentTypes = value; + } + + public EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderArgs() + { + } + } +} diff --git a/sdk/dotnet/Sagemaker/Inputs/EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderGetArgs.cs b/sdk/dotnet/Sagemaker/Inputs/EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderGetArgs.cs new file mode 100644 index 00000000000..df27e36bd36 --- /dev/null +++ b/sdk/dotnet/Sagemaker/Inputs/EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderGetArgs.cs @@ -0,0 +1,43 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Aws.Sagemaker.Inputs +{ + + public sealed class EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderGetArgs : Pulumi.ResourceArgs + { + [Input("csvContentTypes")] + private InputList? _csvContentTypes; + + /// + /// The CSV content type headers to capture. + /// + public InputList CsvContentTypes + { + get => _csvContentTypes ?? (_csvContentTypes = new InputList()); + set => _csvContentTypes = value; + } + + [Input("jsonContentTypes")] + private InputList? _jsonContentTypes; + + /// + /// The JSON content type headers to capture. + /// + public InputList JsonContentTypes + { + get => _jsonContentTypes ?? (_jsonContentTypes = new InputList()); + set => _jsonContentTypes = value; + } + + public EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderGetArgs() + { + } + } +} diff --git a/sdk/dotnet/Sagemaker/Inputs/EndpointConfigurationDataCaptureConfigCaptureOptionArgs.cs b/sdk/dotnet/Sagemaker/Inputs/EndpointConfigurationDataCaptureConfigCaptureOptionArgs.cs new file mode 100644 index 00000000000..71271b1a04d --- /dev/null +++ b/sdk/dotnet/Sagemaker/Inputs/EndpointConfigurationDataCaptureConfigCaptureOptionArgs.cs @@ -0,0 +1,25 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Aws.Sagemaker.Inputs +{ + + public sealed class EndpointConfigurationDataCaptureConfigCaptureOptionArgs : Pulumi.ResourceArgs + { + /// + /// Specifies the data to be captured. Should be one of `Input` or `Output`. + /// + [Input("captureMode", required: true)] + public Input CaptureMode { get; set; } = null!; + + public EndpointConfigurationDataCaptureConfigCaptureOptionArgs() + { + } + } +} diff --git a/sdk/dotnet/Sagemaker/Inputs/EndpointConfigurationDataCaptureConfigCaptureOptionGetArgs.cs b/sdk/dotnet/Sagemaker/Inputs/EndpointConfigurationDataCaptureConfigCaptureOptionGetArgs.cs new file mode 100644 index 00000000000..2d1f2e29556 --- /dev/null +++ b/sdk/dotnet/Sagemaker/Inputs/EndpointConfigurationDataCaptureConfigCaptureOptionGetArgs.cs @@ -0,0 +1,25 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Aws.Sagemaker.Inputs +{ + + public sealed class EndpointConfigurationDataCaptureConfigCaptureOptionGetArgs : Pulumi.ResourceArgs + { + /// + /// Specifies the data to be captured. Should be one of `Input` or `Output`. + /// + [Input("captureMode", required: true)] + public Input CaptureMode { get; set; } = null!; + + public EndpointConfigurationDataCaptureConfigCaptureOptionGetArgs() + { + } + } +} diff --git a/sdk/dotnet/Sagemaker/Inputs/EndpointConfigurationDataCaptureConfigGetArgs.cs b/sdk/dotnet/Sagemaker/Inputs/EndpointConfigurationDataCaptureConfigGetArgs.cs new file mode 100644 index 00000000000..81c640eeb06 --- /dev/null +++ b/sdk/dotnet/Sagemaker/Inputs/EndpointConfigurationDataCaptureConfigGetArgs.cs @@ -0,0 +1,61 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Aws.Sagemaker.Inputs +{ + + public sealed class EndpointConfigurationDataCaptureConfigGetArgs : Pulumi.ResourceArgs + { + /// + /// The content type headers to capture. Fields are documented below. + /// + [Input("captureContentTypeHeader")] + public Input? CaptureContentTypeHeader { get; set; } + + [Input("captureOptions", required: true)] + private InputList? _captureOptions; + + /// + /// Specifies what data to capture. Fields are documented below. + /// + public InputList CaptureOptions + { + get => _captureOptions ?? (_captureOptions = new InputList()); + set => _captureOptions = value; + } + + /// + /// The URL for S3 location where the captured data is stored. + /// + [Input("destinationS3Uri", required: true)] + public Input DestinationS3Uri { get; set; } = null!; + + /// + /// Flag to enable data capture. Defaults to `false`. + /// + [Input("enableCapture")] + public Input? EnableCapture { get; set; } + + /// + /// Portion of data to capture. Should be between 0 and 100. + /// + [Input("initialSamplingPercentage", required: true)] + public Input InitialSamplingPercentage { get; set; } = null!; + + /// + /// Amazon Resource Name (ARN) of a AWS Key Management Service key that Amazon SageMaker uses to encrypt the captured data on Amazon S3. + /// + [Input("kmsKeyId")] + public Input? KmsKeyId { get; set; } + + public EndpointConfigurationDataCaptureConfigGetArgs() + { + } + } +} diff --git a/sdk/dotnet/Sagemaker/Inputs/ModelContainerArgs.cs b/sdk/dotnet/Sagemaker/Inputs/ModelContainerArgs.cs index 37d6f3c70a5..84bafe44036 100644 --- a/sdk/dotnet/Sagemaker/Inputs/ModelContainerArgs.cs +++ b/sdk/dotnet/Sagemaker/Inputs/ModelContainerArgs.cs @@ -37,6 +37,12 @@ public InputMap Environment [Input("image", required: true)] public Input Image { get; set; } = null!; + /// + /// Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). For more information see [Using a Private Docker Registry for Real-Time Inference Containers](https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms-containers-inference-private.html). see Image Config. + /// + [Input("imageConfig")] + public Input? ImageConfig { get; set; } + /// /// The container hosts value `SingleModel/MultiModel`. The default value is `SingleModel`. /// diff --git a/sdk/dotnet/Sagemaker/Inputs/ModelContainerGetArgs.cs b/sdk/dotnet/Sagemaker/Inputs/ModelContainerGetArgs.cs index 815c9eaa900..03e3ae47502 100644 --- a/sdk/dotnet/Sagemaker/Inputs/ModelContainerGetArgs.cs +++ b/sdk/dotnet/Sagemaker/Inputs/ModelContainerGetArgs.cs @@ -37,6 +37,12 @@ public InputMap Environment [Input("image", required: true)] public Input Image { get; set; } = null!; + /// + /// Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). For more information see [Using a Private Docker Registry for Real-Time Inference Containers](https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms-containers-inference-private.html). see Image Config. + /// + [Input("imageConfig")] + public Input? ImageConfig { get; set; } + /// /// The container hosts value `SingleModel/MultiModel`. The default value is `SingleModel`. /// diff --git a/sdk/dotnet/Sagemaker/Inputs/ModelContainerImageConfigArgs.cs b/sdk/dotnet/Sagemaker/Inputs/ModelContainerImageConfigArgs.cs new file mode 100644 index 00000000000..516eb90875d --- /dev/null +++ b/sdk/dotnet/Sagemaker/Inputs/ModelContainerImageConfigArgs.cs @@ -0,0 +1,25 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Aws.Sagemaker.Inputs +{ + + public sealed class ModelContainerImageConfigArgs : Pulumi.ResourceArgs + { + /// + /// Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). Allowed values are: `Platform` and `Vpc`. + /// + [Input("repositoryAccessMode", required: true)] + public Input RepositoryAccessMode { get; set; } = null!; + + public ModelContainerImageConfigArgs() + { + } + } +} diff --git a/sdk/dotnet/Sagemaker/Inputs/ModelContainerImageConfigGetArgs.cs b/sdk/dotnet/Sagemaker/Inputs/ModelContainerImageConfigGetArgs.cs new file mode 100644 index 00000000000..185d35fc8ab --- /dev/null +++ b/sdk/dotnet/Sagemaker/Inputs/ModelContainerImageConfigGetArgs.cs @@ -0,0 +1,25 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Aws.Sagemaker.Inputs +{ + + public sealed class ModelContainerImageConfigGetArgs : Pulumi.ResourceArgs + { + /// + /// Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). Allowed values are: `Platform` and `Vpc`. + /// + [Input("repositoryAccessMode", required: true)] + public Input RepositoryAccessMode { get; set; } = null!; + + public ModelContainerImageConfigGetArgs() + { + } + } +} diff --git a/sdk/dotnet/Sagemaker/Inputs/ModelPrimaryContainerArgs.cs b/sdk/dotnet/Sagemaker/Inputs/ModelPrimaryContainerArgs.cs index d64a4e84eab..9f73d7a174d 100644 --- a/sdk/dotnet/Sagemaker/Inputs/ModelPrimaryContainerArgs.cs +++ b/sdk/dotnet/Sagemaker/Inputs/ModelPrimaryContainerArgs.cs @@ -37,6 +37,12 @@ public InputMap Environment [Input("image", required: true)] public Input Image { get; set; } = null!; + /// + /// Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). For more information see [Using a Private Docker Registry for Real-Time Inference Containers](https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms-containers-inference-private.html). see Image Config. + /// + [Input("imageConfig")] + public Input? ImageConfig { get; set; } + /// /// The container hosts value `SingleModel/MultiModel`. The default value is `SingleModel`. /// diff --git a/sdk/dotnet/Sagemaker/Inputs/ModelPrimaryContainerGetArgs.cs b/sdk/dotnet/Sagemaker/Inputs/ModelPrimaryContainerGetArgs.cs index ad5f81bb36b..87cb8f904b6 100644 --- a/sdk/dotnet/Sagemaker/Inputs/ModelPrimaryContainerGetArgs.cs +++ b/sdk/dotnet/Sagemaker/Inputs/ModelPrimaryContainerGetArgs.cs @@ -37,6 +37,12 @@ public InputMap Environment [Input("image", required: true)] public Input Image { get; set; } = null!; + /// + /// Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). For more information see [Using a Private Docker Registry for Real-Time Inference Containers](https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms-containers-inference-private.html). see Image Config. + /// + [Input("imageConfig")] + public Input? ImageConfig { get; set; } + /// /// The container hosts value `SingleModel/MultiModel`. The default value is `SingleModel`. /// diff --git a/sdk/dotnet/Sagemaker/Inputs/ModelPrimaryContainerImageConfigArgs.cs b/sdk/dotnet/Sagemaker/Inputs/ModelPrimaryContainerImageConfigArgs.cs new file mode 100644 index 00000000000..776008db3fa --- /dev/null +++ b/sdk/dotnet/Sagemaker/Inputs/ModelPrimaryContainerImageConfigArgs.cs @@ -0,0 +1,25 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Aws.Sagemaker.Inputs +{ + + public sealed class ModelPrimaryContainerImageConfigArgs : Pulumi.ResourceArgs + { + /// + /// Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). Allowed values are: `Platform` and `Vpc`. + /// + [Input("repositoryAccessMode", required: true)] + public Input RepositoryAccessMode { get; set; } = null!; + + public ModelPrimaryContainerImageConfigArgs() + { + } + } +} diff --git a/sdk/dotnet/Sagemaker/Inputs/ModelPrimaryContainerImageConfigGetArgs.cs b/sdk/dotnet/Sagemaker/Inputs/ModelPrimaryContainerImageConfigGetArgs.cs new file mode 100644 index 00000000000..849c54afa57 --- /dev/null +++ b/sdk/dotnet/Sagemaker/Inputs/ModelPrimaryContainerImageConfigGetArgs.cs @@ -0,0 +1,25 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Aws.Sagemaker.Inputs +{ + + public sealed class ModelPrimaryContainerImageConfigGetArgs : Pulumi.ResourceArgs + { + /// + /// Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). Allowed values are: `Platform` and `Vpc`. + /// + [Input("repositoryAccessMode", required: true)] + public Input RepositoryAccessMode { get; set; } = null!; + + public ModelPrimaryContainerImageConfigGetArgs() + { + } + } +} diff --git a/sdk/dotnet/Sagemaker/Model.cs b/sdk/dotnet/Sagemaker/Model.cs index 2d0fc920682..5b6a0e868db 100644 --- a/sdk/dotnet/Sagemaker/Model.cs +++ b/sdk/dotnet/Sagemaker/Model.cs @@ -24,14 +24,6 @@ namespace Pulumi.Aws.Sagemaker /// { /// public MyStack() /// { - /// var model = new Aws.Sagemaker.Model("model", new Aws.Sagemaker.ModelArgs - /// { - /// ExecutionRoleArn = aws_iam_role.Foo.Arn, - /// PrimaryContainer = new Aws.Sagemaker.Inputs.ModelPrimaryContainerArgs - /// { - /// Image = "174872318107.dkr.ecr.us-west-2.amazonaws.com/kmeans:1", - /// }, - /// }); /// var assumeRole = Output.Create(Aws.Iam.GetPolicyDocument.InvokeAsync(new Aws.Iam.GetPolicyDocumentArgs /// { /// Statements = @@ -56,10 +48,18 @@ namespace Pulumi.Aws.Sagemaker /// }, /// }, /// })); - /// var role = new Aws.Iam.Role("role", new Aws.Iam.RoleArgs + /// var exampleRole = new Aws.Iam.Role("exampleRole", new Aws.Iam.RoleArgs /// { /// AssumeRolePolicy = assumeRole.Apply(assumeRole => assumeRole.Json), /// }); + /// var exampleModel = new Aws.Sagemaker.Model("exampleModel", new Aws.Sagemaker.ModelArgs + /// { + /// ExecutionRoleArn = exampleRole.Arn, + /// PrimaryContainer = new Aws.Sagemaker.Inputs.ModelPrimaryContainerArgs + /// { + /// Image = "174872318107.dkr.ecr.us-west-2.amazonaws.com/kmeans:1", + /// }, + /// }); /// } /// /// } diff --git a/sdk/dotnet/Sagemaker/NotebookInstance.cs b/sdk/dotnet/Sagemaker/NotebookInstance.cs index 5b97cf42e90..09580916d01 100644 --- a/sdk/dotnet/Sagemaker/NotebookInstance.cs +++ b/sdk/dotnet/Sagemaker/NotebookInstance.cs @@ -51,7 +51,7 @@ namespace Pulumi.Aws.Sagemaker /// CodeRepositoryName = "my-notebook-instance-code-repo", /// GitConfig = new Aws.Sagemaker.Inputs.CodeRepositoryGitConfigArgs /// { - /// RepositoryUrl = "https://github.com/terraform-providers/terraform-provider-aws.git", + /// RepositoryUrl = "https://github.com/hashicorp/terraform-provider-aws.git", /// }, /// }); /// var ni = new Aws.Sagemaker.NotebookInstance("ni", new Aws.Sagemaker.NotebookInstanceArgs diff --git a/sdk/dotnet/Sagemaker/Outputs/EndpointConfigurationDataCaptureConfig.cs b/sdk/dotnet/Sagemaker/Outputs/EndpointConfigurationDataCaptureConfig.cs new file mode 100644 index 00000000000..ff60dabbbe2 --- /dev/null +++ b/sdk/dotnet/Sagemaker/Outputs/EndpointConfigurationDataCaptureConfig.cs @@ -0,0 +1,63 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Aws.Sagemaker.Outputs +{ + + [OutputType] + public sealed class EndpointConfigurationDataCaptureConfig + { + /// + /// The content type headers to capture. Fields are documented below. + /// + public readonly Outputs.EndpointConfigurationDataCaptureConfigCaptureContentTypeHeader? CaptureContentTypeHeader; + /// + /// Specifies what data to capture. Fields are documented below. + /// + public readonly ImmutableArray CaptureOptions; + /// + /// The URL for S3 location where the captured data is stored. + /// + public readonly string DestinationS3Uri; + /// + /// Flag to enable data capture. Defaults to `false`. + /// + public readonly bool? EnableCapture; + /// + /// Portion of data to capture. Should be between 0 and 100. + /// + public readonly int InitialSamplingPercentage; + /// + /// Amazon Resource Name (ARN) of a AWS Key Management Service key that Amazon SageMaker uses to encrypt the captured data on Amazon S3. + /// + public readonly string? KmsKeyId; + + [OutputConstructor] + private EndpointConfigurationDataCaptureConfig( + Outputs.EndpointConfigurationDataCaptureConfigCaptureContentTypeHeader? captureContentTypeHeader, + + ImmutableArray captureOptions, + + string destinationS3Uri, + + bool? enableCapture, + + int initialSamplingPercentage, + + string? kmsKeyId) + { + CaptureContentTypeHeader = captureContentTypeHeader; + CaptureOptions = captureOptions; + DestinationS3Uri = destinationS3Uri; + EnableCapture = enableCapture; + InitialSamplingPercentage = initialSamplingPercentage; + KmsKeyId = kmsKeyId; + } + } +} diff --git a/sdk/dotnet/Sagemaker/Outputs/EndpointConfigurationDataCaptureConfigCaptureContentTypeHeader.cs b/sdk/dotnet/Sagemaker/Outputs/EndpointConfigurationDataCaptureConfigCaptureContentTypeHeader.cs new file mode 100644 index 00000000000..37b1e696922 --- /dev/null +++ b/sdk/dotnet/Sagemaker/Outputs/EndpointConfigurationDataCaptureConfigCaptureContentTypeHeader.cs @@ -0,0 +1,35 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Aws.Sagemaker.Outputs +{ + + [OutputType] + public sealed class EndpointConfigurationDataCaptureConfigCaptureContentTypeHeader + { + /// + /// The CSV content type headers to capture. + /// + public readonly ImmutableArray CsvContentTypes; + /// + /// The JSON content type headers to capture. + /// + public readonly ImmutableArray JsonContentTypes; + + [OutputConstructor] + private EndpointConfigurationDataCaptureConfigCaptureContentTypeHeader( + ImmutableArray csvContentTypes, + + ImmutableArray jsonContentTypes) + { + CsvContentTypes = csvContentTypes; + JsonContentTypes = jsonContentTypes; + } + } +} diff --git a/sdk/dotnet/Sagemaker/Outputs/EndpointConfigurationDataCaptureConfigCaptureOption.cs b/sdk/dotnet/Sagemaker/Outputs/EndpointConfigurationDataCaptureConfigCaptureOption.cs new file mode 100644 index 00000000000..a63db7550fc --- /dev/null +++ b/sdk/dotnet/Sagemaker/Outputs/EndpointConfigurationDataCaptureConfigCaptureOption.cs @@ -0,0 +1,27 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Aws.Sagemaker.Outputs +{ + + [OutputType] + public sealed class EndpointConfigurationDataCaptureConfigCaptureOption + { + /// + /// Specifies the data to be captured. Should be one of `Input` or `Output`. + /// + public readonly string CaptureMode; + + [OutputConstructor] + private EndpointConfigurationDataCaptureConfigCaptureOption(string captureMode) + { + CaptureMode = captureMode; + } + } +} diff --git a/sdk/dotnet/Sagemaker/Outputs/ModelContainer.cs b/sdk/dotnet/Sagemaker/Outputs/ModelContainer.cs index 73cf49a9591..68267e58f1a 100644 --- a/sdk/dotnet/Sagemaker/Outputs/ModelContainer.cs +++ b/sdk/dotnet/Sagemaker/Outputs/ModelContainer.cs @@ -27,6 +27,10 @@ public sealed class ModelContainer /// public readonly string Image; /// + /// Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). For more information see [Using a Private Docker Registry for Real-Time Inference Containers](https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms-containers-inference-private.html). see Image Config. + /// + public readonly Outputs.ModelContainerImageConfig? ImageConfig; + /// /// The container hosts value `SingleModel/MultiModel`. The default value is `SingleModel`. /// public readonly string? Mode; @@ -43,6 +47,8 @@ private ModelContainer( string image, + Outputs.ModelContainerImageConfig? imageConfig, + string? mode, string? modelDataUrl) @@ -50,6 +56,7 @@ private ModelContainer( ContainerHostname = containerHostname; Environment = environment; Image = image; + ImageConfig = imageConfig; Mode = mode; ModelDataUrl = modelDataUrl; } diff --git a/sdk/dotnet/Sagemaker/Outputs/ModelContainerImageConfig.cs b/sdk/dotnet/Sagemaker/Outputs/ModelContainerImageConfig.cs new file mode 100644 index 00000000000..60cca529c50 --- /dev/null +++ b/sdk/dotnet/Sagemaker/Outputs/ModelContainerImageConfig.cs @@ -0,0 +1,27 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Aws.Sagemaker.Outputs +{ + + [OutputType] + public sealed class ModelContainerImageConfig + { + /// + /// Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). Allowed values are: `Platform` and `Vpc`. + /// + public readonly string RepositoryAccessMode; + + [OutputConstructor] + private ModelContainerImageConfig(string repositoryAccessMode) + { + RepositoryAccessMode = repositoryAccessMode; + } + } +} diff --git a/sdk/dotnet/Sagemaker/Outputs/ModelPrimaryContainer.cs b/sdk/dotnet/Sagemaker/Outputs/ModelPrimaryContainer.cs index c84f1ef0ef6..c8b3f907164 100644 --- a/sdk/dotnet/Sagemaker/Outputs/ModelPrimaryContainer.cs +++ b/sdk/dotnet/Sagemaker/Outputs/ModelPrimaryContainer.cs @@ -27,6 +27,10 @@ public sealed class ModelPrimaryContainer /// public readonly string Image; /// + /// Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). For more information see [Using a Private Docker Registry for Real-Time Inference Containers](https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms-containers-inference-private.html). see Image Config. + /// + public readonly Outputs.ModelPrimaryContainerImageConfig? ImageConfig; + /// /// The container hosts value `SingleModel/MultiModel`. The default value is `SingleModel`. /// public readonly string? Mode; @@ -43,6 +47,8 @@ private ModelPrimaryContainer( string image, + Outputs.ModelPrimaryContainerImageConfig? imageConfig, + string? mode, string? modelDataUrl) @@ -50,6 +56,7 @@ private ModelPrimaryContainer( ContainerHostname = containerHostname; Environment = environment; Image = image; + ImageConfig = imageConfig; Mode = mode; ModelDataUrl = modelDataUrl; } diff --git a/sdk/dotnet/Sagemaker/Outputs/ModelPrimaryContainerImageConfig.cs b/sdk/dotnet/Sagemaker/Outputs/ModelPrimaryContainerImageConfig.cs new file mode 100644 index 00000000000..4378d30741b --- /dev/null +++ b/sdk/dotnet/Sagemaker/Outputs/ModelPrimaryContainerImageConfig.cs @@ -0,0 +1,27 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Aws.Sagemaker.Outputs +{ + + [OutputType] + public sealed class ModelPrimaryContainerImageConfig + { + /// + /// Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). Allowed values are: `Platform` and `Vpc`. + /// + public readonly string RepositoryAccessMode; + + [OutputConstructor] + private ModelPrimaryContainerImageConfig(string repositoryAccessMode) + { + RepositoryAccessMode = repositoryAccessMode; + } + } +} diff --git a/sdk/dotnet/SecretsManager/Secret.cs b/sdk/dotnet/SecretsManager/Secret.cs index 909e48ae634..ca484d03fa1 100644 --- a/sdk/dotnet/SecretsManager/Secret.cs +++ b/sdk/dotnet/SecretsManager/Secret.cs @@ -95,7 +95,7 @@ public partial class Secret : Pulumi.CustomResource /// A valid JSON document representing a [resource policy](https://docs.aws.amazon.com/secretsmanager/latest/userguide/auth-and-access_resource-based-policies.html). /// [Output("policy")] - public Output Policy { get; private set; } = null!; + public Output Policy { get; private set; } = null!; /// /// Specifies the number of days that AWS Secrets Manager waits before it can delete the secret. This value can be `0` to force deletion without recovery or range from `7` to `30` days. The default value is `30`. diff --git a/sdk/dotnet/SecretsManager/SecretPolicy.cs b/sdk/dotnet/SecretsManager/SecretPolicy.cs new file mode 100644 index 00000000000..d4537f0e294 --- /dev/null +++ b/sdk/dotnet/SecretsManager/SecretPolicy.cs @@ -0,0 +1,157 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Aws.SecretsManager +{ + /// + /// Provides a resource to manage AWS Secrets Manager secret policy. + /// + /// ## Example Usage + /// ### Basic + /// + /// ```csharp + /// using Pulumi; + /// using Aws = Pulumi.Aws; + /// + /// class MyStack : Stack + /// { + /// public MyStack() + /// { + /// var exampleSecret = new Aws.SecretsManager.Secret("exampleSecret", new Aws.SecretsManager.SecretArgs + /// { + /// }); + /// var exampleSecretPolicy = new Aws.SecretsManager.SecretPolicy("exampleSecretPolicy", new Aws.SecretsManager.SecretPolicyArgs + /// { + /// SecretArn = exampleSecret.Arn, + /// Policy = @"{ + /// ""Version"": ""2012-10-17"", + /// ""Statement"": [ + /// { + /// ""Sid"": ""EnableAllPermissions"", + /// ""Effect"": ""Allow"", + /// ""Principal"": { + /// ""AWS"": ""*"" + /// }, + /// ""Action"": ""secretsmanager:GetSecretValue"", + /// ""Resource"": ""*"" + /// } + /// ] + /// } + /// ", + /// }); + /// } + /// + /// } + /// ``` + /// + public partial class SecretPolicy : Pulumi.CustomResource + { + /// + /// Makes an optional API call to Zelkova to validate the Resource Policy to prevent broad access to your secret. + /// + [Output("blockPublicPolicy")] + public Output BlockPublicPolicy { get; private set; } = null!; + + [Output("policy")] + public Output Policy { get; private set; } = null!; + + /// + /// Secret ARN. + /// + [Output("secretArn")] + public Output SecretArn { get; private set; } = null!; + + + /// + /// Create a SecretPolicy 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 SecretPolicy(string name, SecretPolicyArgs args, CustomResourceOptions? options = null) + : base("aws:secretsmanager/secretPolicy:SecretPolicy", name, args ?? new SecretPolicyArgs(), MakeResourceOptions(options, "")) + { + } + + private SecretPolicy(string name, Input id, SecretPolicyState? state = null, CustomResourceOptions? options = null) + : base("aws:secretsmanager/secretPolicy:SecretPolicy", name, state, MakeResourceOptions(options, id)) + { + } + + private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id) + { + var defaultOptions = new CustomResourceOptions + { + Version = Utilities.Version, + }; + var merged = CustomResourceOptions.Merge(defaultOptions, options); + // Override the ID if one was specified for consistency with other language SDKs. + merged.Id = id ?? merged.Id; + return merged; + } + /// + /// Get an existing SecretPolicy 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. + /// Any extra arguments used during the lookup. + /// A bag of options that control this resource's behavior + public static SecretPolicy Get(string name, Input id, SecretPolicyState? state = null, CustomResourceOptions? options = null) + { + return new SecretPolicy(name, id, state, options); + } + } + + public sealed class SecretPolicyArgs : Pulumi.ResourceArgs + { + /// + /// Makes an optional API call to Zelkova to validate the Resource Policy to prevent broad access to your secret. + /// + [Input("blockPublicPolicy")] + public Input? BlockPublicPolicy { get; set; } + + [Input("policy", required: true)] + public Input Policy { get; set; } = null!; + + /// + /// Secret ARN. + /// + [Input("secretArn", required: true)] + public Input SecretArn { get; set; } = null!; + + public SecretPolicyArgs() + { + } + } + + public sealed class SecretPolicyState : Pulumi.ResourceArgs + { + /// + /// Makes an optional API call to Zelkova to validate the Resource Policy to prevent broad access to your secret. + /// + [Input("blockPublicPolicy")] + public Input? BlockPublicPolicy { get; set; } + + [Input("policy")] + public Input? Policy { get; set; } + + /// + /// Secret ARN. + /// + [Input("secretArn")] + public Input? SecretArn { get; set; } + + public SecretPolicyState() + { + } + } +} diff --git a/sdk/dotnet/Workspaces/GetWorkspace.cs b/sdk/dotnet/Workspaces/GetWorkspace.cs new file mode 100644 index 00000000000..4442ddaf5de --- /dev/null +++ b/sdk/dotnet/Workspaces/GetWorkspace.cs @@ -0,0 +1,177 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Aws.Workspaces +{ + public static class GetWorkspace + { + /// + /// Use this data source to get information about a workspace in [AWS Workspaces](https://docs.aws.amazon.com/workspaces/latest/adminguide/amazon-workspaces.html) Service. + /// + /// {{% examples %}} + /// ## Example Usage + /// {{% example %}} + /// ### Filter By Workspace ID + /// + /// ```csharp + /// using Pulumi; + /// using Aws = Pulumi.Aws; + /// + /// class MyStack : Stack + /// { + /// public MyStack() + /// { + /// var example = Output.Create(Aws.Workspaces.GetWorkspace.InvokeAsync(new Aws.Workspaces.GetWorkspaceArgs + /// { + /// WorkspaceId = "ws-cj5xcxsz5", + /// })); + /// } + /// + /// } + /// ``` + /// {{% /example %}} + /// {{% example %}} + /// ### Filter By Directory ID & User Name + /// + /// ```csharp + /// using Pulumi; + /// using Aws = Pulumi.Aws; + /// + /// class MyStack : Stack + /// { + /// public MyStack() + /// { + /// var example = Output.Create(Aws.Workspaces.GetWorkspace.InvokeAsync(new Aws.Workspaces.GetWorkspaceArgs + /// { + /// DirectoryId = "d-9967252f57", + /// UserName = "Example", + /// })); + /// } + /// + /// } + /// ``` + /// {{% /example %}} + /// {{% /examples %}} + /// + public static Task InvokeAsync(GetWorkspaceArgs? args = null, InvokeOptions? options = null) + => Pulumi.Deployment.Instance.InvokeAsync("aws:workspaces/getWorkspace:getWorkspace", args ?? new GetWorkspaceArgs(), options.WithVersion()); + } + + + public sealed class GetWorkspaceArgs : Pulumi.InvokeArgs + { + /// + /// The ID of the directory for the WorkSpace. You have to specify `user_name` along with `directory_id`. You cannot combine this parameter with `workspace_id`. + /// + [Input("directoryId")] + public string? DirectoryId { get; set; } + + [Input("tags")] + private Dictionary? _tags; + + /// + /// The tags for the WorkSpace. + /// + public Dictionary Tags + { + get => _tags ?? (_tags = new Dictionary()); + set => _tags = value; + } + + /// + /// The user name of the user for the WorkSpace. This user name must exist in the directory for the WorkSpace. You cannot combine this parameter with `workspace_id`. + /// + [Input("userName")] + public string? UserName { get; set; } + + /// + /// The ID of the WorkSpace. You cannot combine this parameter with `directory_id`. + /// + [Input("workspaceId")] + public string? WorkspaceId { get; set; } + + public GetWorkspaceArgs() + { + } + } + + + [OutputType] + public sealed class GetWorkspaceResult + { + public readonly string BundleId; + /// + /// The name of the WorkSpace, as seen by the operating system. + /// + public readonly string ComputerName; + public readonly string DirectoryId; + /// + /// The provider-assigned unique ID for this managed resource. + /// + public readonly string Id; + /// + /// The IP address of the WorkSpace. + /// + public readonly string IpAddress; + public readonly bool RootVolumeEncryptionEnabled; + /// + /// The operational state of the WorkSpace. + /// + public readonly string State; + public readonly ImmutableDictionary Tags; + public readonly string UserName; + public readonly bool UserVolumeEncryptionEnabled; + public readonly string VolumeEncryptionKey; + public readonly string WorkspaceId; + public readonly ImmutableArray WorkspaceProperties; + + [OutputConstructor] + private GetWorkspaceResult( + string bundleId, + + string computerName, + + string directoryId, + + string id, + + string ipAddress, + + bool rootVolumeEncryptionEnabled, + + string state, + + ImmutableDictionary tags, + + string userName, + + bool userVolumeEncryptionEnabled, + + string volumeEncryptionKey, + + string workspaceId, + + ImmutableArray workspaceProperties) + { + BundleId = bundleId; + ComputerName = computerName; + DirectoryId = directoryId; + Id = id; + IpAddress = ipAddress; + RootVolumeEncryptionEnabled = rootVolumeEncryptionEnabled; + State = state; + Tags = tags; + UserName = userName; + UserVolumeEncryptionEnabled = userVolumeEncryptionEnabled; + VolumeEncryptionKey = volumeEncryptionKey; + WorkspaceId = workspaceId; + WorkspaceProperties = workspaceProperties; + } + } +} diff --git a/sdk/dotnet/Workspaces/Outputs/GetWorkspaceWorkspacePropertyResult.cs b/sdk/dotnet/Workspaces/Outputs/GetWorkspaceWorkspacePropertyResult.cs new file mode 100644 index 00000000000..1d3b2933687 --- /dev/null +++ b/sdk/dotnet/Workspaces/Outputs/GetWorkspaceWorkspacePropertyResult.cs @@ -0,0 +1,56 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Aws.Workspaces.Outputs +{ + + [OutputType] + public sealed class GetWorkspaceWorkspacePropertyResult + { + /// + /// The compute type. For more information, see [Amazon WorkSpaces Bundles](http://aws.amazon.com/workspaces/details/#Amazon_WorkSpaces_Bundles). Valid values are `VALUE`, `STANDARD`, `PERFORMANCE`, `POWER`, `GRAPHICS`, `POWERPRO` and `GRAPHICSPRO`. + /// + public readonly string ComputeTypeName; + /// + /// The size of the root volume. + /// + public readonly int RootVolumeSizeGib; + /// + /// The running mode. For more information, see [Manage the WorkSpace Running Mode](https://docs.aws.amazon.com/workspaces/latest/adminguide/running-mode.html). Valid values are `AUTO_STOP` and `ALWAYS_ON`. + /// + public readonly string RunningMode; + /// + /// The time after a user logs off when WorkSpaces are automatically stopped. Configured in 60-minute intervals. + /// + public readonly int RunningModeAutoStopTimeoutInMinutes; + /// + /// The size of the user storage. + /// + public readonly int UserVolumeSizeGib; + + [OutputConstructor] + private GetWorkspaceWorkspacePropertyResult( + string computeTypeName, + + int rootVolumeSizeGib, + + string runningMode, + + int runningModeAutoStopTimeoutInMinutes, + + int userVolumeSizeGib) + { + ComputeTypeName = computeTypeName; + RootVolumeSizeGib = rootVolumeSizeGib; + RunningMode = runningMode; + RunningModeAutoStopTimeoutInMinutes = runningModeAutoStopTimeoutInMinutes; + UserVolumeSizeGib = userVolumeSizeGib; + } + } +} diff --git a/sdk/go/aws/acmpca/pulumiTypes.go b/sdk/go/aws/acmpca/pulumiTypes.go index 46704dd9c7d..115e29733bf 100644 --- a/sdk/go/aws/acmpca/pulumiTypes.go +++ b/sdk/go/aws/acmpca/pulumiTypes.go @@ -184,31 +184,31 @@ func (o CertificateAuthorityCertificateAuthorityConfigurationPtrOutput) Subject( } type CertificateAuthorityCertificateAuthorityConfigurationSubject struct { - // Fully qualified domain name (FQDN) associated with the certificate subject. + // Fully qualified domain name (FQDN) associated with the certificate subject. Must be less than or equal to 64 characters in length. CommonName *string `pulumi:"commonName"` - // Two digit code that specifies the country in which the certificate subject located. + // Two digit code that specifies the country in which the certificate subject located. Must be less than or equal to 2 characters in length. Country *string `pulumi:"country"` - // Disambiguating information for the certificate subject. + // Disambiguating information for the certificate subject. Must be less than or equal to 64 characters in length. DistinguishedNameQualifier *string `pulumi:"distinguishedNameQualifier"` - // Typically a qualifier appended to the name of an individual. Examples include Jr. for junior, Sr. for senior, and III for third. + // Typically a qualifier appended to the name of an individual. Examples include Jr. for junior, Sr. for senior, and III for third. Must be less than or equal to 3 characters in length. GenerationQualifier *string `pulumi:"generationQualifier"` - // First name. + // First name. Must be less than or equal to 16 characters in length. GivenName *string `pulumi:"givenName"` - // Concatenation that typically contains the first letter of the `givenName`, the first letter of the middle name if one exists, and the first letter of the `surname`. + // Concatenation that typically contains the first letter of the `givenName`, the first letter of the middle name if one exists, and the first letter of the `surname`. Must be less than or equal to 5 characters in length. Initials *string `pulumi:"initials"` - // The locality (such as a city or town) in which the certificate subject is located. + // The locality (such as a city or town) in which the certificate subject is located. Must be less than or equal to 128 characters in length. Locality *string `pulumi:"locality"` - // Legal name of the organization with which the certificate subject is affiliated. + // Legal name of the organization with which the certificate subject is affiliated. Must be less than or equal to 64 characters in length. Organization *string `pulumi:"organization"` - // A subdivision or unit of the organization (such as sales or finance) with which the certificate subject is affiliated. + // A subdivision or unit of the organization (such as sales or finance) with which the certificate subject is affiliated. Must be less than or equal to 64 characters in length. OrganizationalUnit *string `pulumi:"organizationalUnit"` - // Typically a shortened version of a longer `givenName`. For example, Jonathan is often shortened to John. Elizabeth is often shortened to Beth, Liz, or Eliza. + // Typically a shortened version of a longer `givenName`. For example, Jonathan is often shortened to John. Elizabeth is often shortened to Beth, Liz, or Eliza. Must be less than or equal to 128 characters in length. Pseudonym *string `pulumi:"pseudonym"` - // State in which the subject of the certificate is located. + // State in which the subject of the certificate is located. Must be less than or equal to 128 characters in length. State *string `pulumi:"state"` - // Family name. In the US and the UK for example, the surname of an individual is ordered last. In Asian cultures the surname is typically ordered first. + // Family name. In the US and the UK for example, the surname of an individual is ordered last. In Asian cultures the surname is typically ordered first. Must be less than or equal to 40 characters in length. Surname *string `pulumi:"surname"` - // A title such as Mr. or Ms. which is pre-pended to the name to refer formally to the certificate subject. + // A title such as Mr. or Ms. which is pre-pended to the name to refer formally to the certificate subject. Must be less than or equal to 64 characters in length. Title *string `pulumi:"title"` } @@ -224,31 +224,31 @@ type CertificateAuthorityCertificateAuthorityConfigurationSubjectInput interface } type CertificateAuthorityCertificateAuthorityConfigurationSubjectArgs struct { - // Fully qualified domain name (FQDN) associated with the certificate subject. + // Fully qualified domain name (FQDN) associated with the certificate subject. Must be less than or equal to 64 characters in length. CommonName pulumi.StringPtrInput `pulumi:"commonName"` - // Two digit code that specifies the country in which the certificate subject located. + // Two digit code that specifies the country in which the certificate subject located. Must be less than or equal to 2 characters in length. Country pulumi.StringPtrInput `pulumi:"country"` - // Disambiguating information for the certificate subject. + // Disambiguating information for the certificate subject. Must be less than or equal to 64 characters in length. DistinguishedNameQualifier pulumi.StringPtrInput `pulumi:"distinguishedNameQualifier"` - // Typically a qualifier appended to the name of an individual. Examples include Jr. for junior, Sr. for senior, and III for third. + // Typically a qualifier appended to the name of an individual. Examples include Jr. for junior, Sr. for senior, and III for third. Must be less than or equal to 3 characters in length. GenerationQualifier pulumi.StringPtrInput `pulumi:"generationQualifier"` - // First name. + // First name. Must be less than or equal to 16 characters in length. GivenName pulumi.StringPtrInput `pulumi:"givenName"` - // Concatenation that typically contains the first letter of the `givenName`, the first letter of the middle name if one exists, and the first letter of the `surname`. + // Concatenation that typically contains the first letter of the `givenName`, the first letter of the middle name if one exists, and the first letter of the `surname`. Must be less than or equal to 5 characters in length. Initials pulumi.StringPtrInput `pulumi:"initials"` - // The locality (such as a city or town) in which the certificate subject is located. + // The locality (such as a city or town) in which the certificate subject is located. Must be less than or equal to 128 characters in length. Locality pulumi.StringPtrInput `pulumi:"locality"` - // Legal name of the organization with which the certificate subject is affiliated. + // Legal name of the organization with which the certificate subject is affiliated. Must be less than or equal to 64 characters in length. Organization pulumi.StringPtrInput `pulumi:"organization"` - // A subdivision or unit of the organization (such as sales or finance) with which the certificate subject is affiliated. + // A subdivision or unit of the organization (such as sales or finance) with which the certificate subject is affiliated. Must be less than or equal to 64 characters in length. OrganizationalUnit pulumi.StringPtrInput `pulumi:"organizationalUnit"` - // Typically a shortened version of a longer `givenName`. For example, Jonathan is often shortened to John. Elizabeth is often shortened to Beth, Liz, or Eliza. + // Typically a shortened version of a longer `givenName`. For example, Jonathan is often shortened to John. Elizabeth is often shortened to Beth, Liz, or Eliza. Must be less than or equal to 128 characters in length. Pseudonym pulumi.StringPtrInput `pulumi:"pseudonym"` - // State in which the subject of the certificate is located. + // State in which the subject of the certificate is located. Must be less than or equal to 128 characters in length. State pulumi.StringPtrInput `pulumi:"state"` - // Family name. In the US and the UK for example, the surname of an individual is ordered last. In Asian cultures the surname is typically ordered first. + // Family name. In the US and the UK for example, the surname of an individual is ordered last. In Asian cultures the surname is typically ordered first. Must be less than or equal to 40 characters in length. Surname pulumi.StringPtrInput `pulumi:"surname"` - // A title such as Mr. or Ms. which is pre-pended to the name to refer formally to the certificate subject. + // A title such as Mr. or Ms. which is pre-pended to the name to refer formally to the certificate subject. Must be less than or equal to 64 characters in length. Title pulumi.StringPtrInput `pulumi:"title"` } @@ -329,73 +329,73 @@ func (o CertificateAuthorityCertificateAuthorityConfigurationSubjectOutput) ToCe }).(CertificateAuthorityCertificateAuthorityConfigurationSubjectPtrOutput) } -// Fully qualified domain name (FQDN) associated with the certificate subject. +// Fully qualified domain name (FQDN) associated with the certificate subject. Must be less than or equal to 64 characters in length. func (o CertificateAuthorityCertificateAuthorityConfigurationSubjectOutput) CommonName() pulumi.StringPtrOutput { return o.ApplyT(func(v CertificateAuthorityCertificateAuthorityConfigurationSubject) *string { return v.CommonName }).(pulumi.StringPtrOutput) } -// Two digit code that specifies the country in which the certificate subject located. +// Two digit code that specifies the country in which the certificate subject located. Must be less than or equal to 2 characters in length. func (o CertificateAuthorityCertificateAuthorityConfigurationSubjectOutput) Country() pulumi.StringPtrOutput { return o.ApplyT(func(v CertificateAuthorityCertificateAuthorityConfigurationSubject) *string { return v.Country }).(pulumi.StringPtrOutput) } -// Disambiguating information for the certificate subject. +// Disambiguating information for the certificate subject. Must be less than or equal to 64 characters in length. func (o CertificateAuthorityCertificateAuthorityConfigurationSubjectOutput) DistinguishedNameQualifier() pulumi.StringPtrOutput { return o.ApplyT(func(v CertificateAuthorityCertificateAuthorityConfigurationSubject) *string { return v.DistinguishedNameQualifier }).(pulumi.StringPtrOutput) } -// Typically a qualifier appended to the name of an individual. Examples include Jr. for junior, Sr. for senior, and III for third. +// Typically a qualifier appended to the name of an individual. Examples include Jr. for junior, Sr. for senior, and III for third. Must be less than or equal to 3 characters in length. func (o CertificateAuthorityCertificateAuthorityConfigurationSubjectOutput) GenerationQualifier() pulumi.StringPtrOutput { return o.ApplyT(func(v CertificateAuthorityCertificateAuthorityConfigurationSubject) *string { return v.GenerationQualifier }).(pulumi.StringPtrOutput) } -// First name. +// First name. Must be less than or equal to 16 characters in length. func (o CertificateAuthorityCertificateAuthorityConfigurationSubjectOutput) GivenName() pulumi.StringPtrOutput { return o.ApplyT(func(v CertificateAuthorityCertificateAuthorityConfigurationSubject) *string { return v.GivenName }).(pulumi.StringPtrOutput) } -// Concatenation that typically contains the first letter of the `givenName`, the first letter of the middle name if one exists, and the first letter of the `surname`. +// Concatenation that typically contains the first letter of the `givenName`, the first letter of the middle name if one exists, and the first letter of the `surname`. Must be less than or equal to 5 characters in length. func (o CertificateAuthorityCertificateAuthorityConfigurationSubjectOutput) Initials() pulumi.StringPtrOutput { return o.ApplyT(func(v CertificateAuthorityCertificateAuthorityConfigurationSubject) *string { return v.Initials }).(pulumi.StringPtrOutput) } -// The locality (such as a city or town) in which the certificate subject is located. +// The locality (such as a city or town) in which the certificate subject is located. Must be less than or equal to 128 characters in length. func (o CertificateAuthorityCertificateAuthorityConfigurationSubjectOutput) Locality() pulumi.StringPtrOutput { return o.ApplyT(func(v CertificateAuthorityCertificateAuthorityConfigurationSubject) *string { return v.Locality }).(pulumi.StringPtrOutput) } -// Legal name of the organization with which the certificate subject is affiliated. +// Legal name of the organization with which the certificate subject is affiliated. Must be less than or equal to 64 characters in length. func (o CertificateAuthorityCertificateAuthorityConfigurationSubjectOutput) Organization() pulumi.StringPtrOutput { return o.ApplyT(func(v CertificateAuthorityCertificateAuthorityConfigurationSubject) *string { return v.Organization }).(pulumi.StringPtrOutput) } -// A subdivision or unit of the organization (such as sales or finance) with which the certificate subject is affiliated. +// A subdivision or unit of the organization (such as sales or finance) with which the certificate subject is affiliated. Must be less than or equal to 64 characters in length. func (o CertificateAuthorityCertificateAuthorityConfigurationSubjectOutput) OrganizationalUnit() pulumi.StringPtrOutput { return o.ApplyT(func(v CertificateAuthorityCertificateAuthorityConfigurationSubject) *string { return v.OrganizationalUnit }).(pulumi.StringPtrOutput) } -// Typically a shortened version of a longer `givenName`. For example, Jonathan is often shortened to John. Elizabeth is often shortened to Beth, Liz, or Eliza. +// Typically a shortened version of a longer `givenName`. For example, Jonathan is often shortened to John. Elizabeth is often shortened to Beth, Liz, or Eliza. Must be less than or equal to 128 characters in length. func (o CertificateAuthorityCertificateAuthorityConfigurationSubjectOutput) Pseudonym() pulumi.StringPtrOutput { return o.ApplyT(func(v CertificateAuthorityCertificateAuthorityConfigurationSubject) *string { return v.Pseudonym }).(pulumi.StringPtrOutput) } -// State in which the subject of the certificate is located. +// State in which the subject of the certificate is located. Must be less than or equal to 128 characters in length. func (o CertificateAuthorityCertificateAuthorityConfigurationSubjectOutput) State() pulumi.StringPtrOutput { return o.ApplyT(func(v CertificateAuthorityCertificateAuthorityConfigurationSubject) *string { return v.State }).(pulumi.StringPtrOutput) } -// Family name. In the US and the UK for example, the surname of an individual is ordered last. In Asian cultures the surname is typically ordered first. +// Family name. In the US and the UK for example, the surname of an individual is ordered last. In Asian cultures the surname is typically ordered first. Must be less than or equal to 40 characters in length. func (o CertificateAuthorityCertificateAuthorityConfigurationSubjectOutput) Surname() pulumi.StringPtrOutput { return o.ApplyT(func(v CertificateAuthorityCertificateAuthorityConfigurationSubject) *string { return v.Surname }).(pulumi.StringPtrOutput) } -// A title such as Mr. or Ms. which is pre-pended to the name to refer formally to the certificate subject. +// A title such as Mr. or Ms. which is pre-pended to the name to refer formally to the certificate subject. Must be less than or equal to 64 characters in length. func (o CertificateAuthorityCertificateAuthorityConfigurationSubjectOutput) Title() pulumi.StringPtrOutput { return o.ApplyT(func(v CertificateAuthorityCertificateAuthorityConfigurationSubject) *string { return v.Title }).(pulumi.StringPtrOutput) } @@ -420,7 +420,7 @@ func (o CertificateAuthorityCertificateAuthorityConfigurationSubjectPtrOutput) E }).(CertificateAuthorityCertificateAuthorityConfigurationSubjectOutput) } -// Fully qualified domain name (FQDN) associated with the certificate subject. +// Fully qualified domain name (FQDN) associated with the certificate subject. Must be less than or equal to 64 characters in length. func (o CertificateAuthorityCertificateAuthorityConfigurationSubjectPtrOutput) CommonName() pulumi.StringPtrOutput { return o.ApplyT(func(v *CertificateAuthorityCertificateAuthorityConfigurationSubject) *string { if v == nil { @@ -430,7 +430,7 @@ func (o CertificateAuthorityCertificateAuthorityConfigurationSubjectPtrOutput) C }).(pulumi.StringPtrOutput) } -// Two digit code that specifies the country in which the certificate subject located. +// Two digit code that specifies the country in which the certificate subject located. Must be less than or equal to 2 characters in length. func (o CertificateAuthorityCertificateAuthorityConfigurationSubjectPtrOutput) Country() pulumi.StringPtrOutput { return o.ApplyT(func(v *CertificateAuthorityCertificateAuthorityConfigurationSubject) *string { if v == nil { @@ -440,7 +440,7 @@ func (o CertificateAuthorityCertificateAuthorityConfigurationSubjectPtrOutput) C }).(pulumi.StringPtrOutput) } -// Disambiguating information for the certificate subject. +// Disambiguating information for the certificate subject. Must be less than or equal to 64 characters in length. func (o CertificateAuthorityCertificateAuthorityConfigurationSubjectPtrOutput) DistinguishedNameQualifier() pulumi.StringPtrOutput { return o.ApplyT(func(v *CertificateAuthorityCertificateAuthorityConfigurationSubject) *string { if v == nil { @@ -450,7 +450,7 @@ func (o CertificateAuthorityCertificateAuthorityConfigurationSubjectPtrOutput) D }).(pulumi.StringPtrOutput) } -// Typically a qualifier appended to the name of an individual. Examples include Jr. for junior, Sr. for senior, and III for third. +// Typically a qualifier appended to the name of an individual. Examples include Jr. for junior, Sr. for senior, and III for third. Must be less than or equal to 3 characters in length. func (o CertificateAuthorityCertificateAuthorityConfigurationSubjectPtrOutput) GenerationQualifier() pulumi.StringPtrOutput { return o.ApplyT(func(v *CertificateAuthorityCertificateAuthorityConfigurationSubject) *string { if v == nil { @@ -460,7 +460,7 @@ func (o CertificateAuthorityCertificateAuthorityConfigurationSubjectPtrOutput) G }).(pulumi.StringPtrOutput) } -// First name. +// First name. Must be less than or equal to 16 characters in length. func (o CertificateAuthorityCertificateAuthorityConfigurationSubjectPtrOutput) GivenName() pulumi.StringPtrOutput { return o.ApplyT(func(v *CertificateAuthorityCertificateAuthorityConfigurationSubject) *string { if v == nil { @@ -470,7 +470,7 @@ func (o CertificateAuthorityCertificateAuthorityConfigurationSubjectPtrOutput) G }).(pulumi.StringPtrOutput) } -// Concatenation that typically contains the first letter of the `givenName`, the first letter of the middle name if one exists, and the first letter of the `surname`. +// Concatenation that typically contains the first letter of the `givenName`, the first letter of the middle name if one exists, and the first letter of the `surname`. Must be less than or equal to 5 characters in length. func (o CertificateAuthorityCertificateAuthorityConfigurationSubjectPtrOutput) Initials() pulumi.StringPtrOutput { return o.ApplyT(func(v *CertificateAuthorityCertificateAuthorityConfigurationSubject) *string { if v == nil { @@ -480,7 +480,7 @@ func (o CertificateAuthorityCertificateAuthorityConfigurationSubjectPtrOutput) I }).(pulumi.StringPtrOutput) } -// The locality (such as a city or town) in which the certificate subject is located. +// The locality (such as a city or town) in which the certificate subject is located. Must be less than or equal to 128 characters in length. func (o CertificateAuthorityCertificateAuthorityConfigurationSubjectPtrOutput) Locality() pulumi.StringPtrOutput { return o.ApplyT(func(v *CertificateAuthorityCertificateAuthorityConfigurationSubject) *string { if v == nil { @@ -490,7 +490,7 @@ func (o CertificateAuthorityCertificateAuthorityConfigurationSubjectPtrOutput) L }).(pulumi.StringPtrOutput) } -// Legal name of the organization with which the certificate subject is affiliated. +// Legal name of the organization with which the certificate subject is affiliated. Must be less than or equal to 64 characters in length. func (o CertificateAuthorityCertificateAuthorityConfigurationSubjectPtrOutput) Organization() pulumi.StringPtrOutput { return o.ApplyT(func(v *CertificateAuthorityCertificateAuthorityConfigurationSubject) *string { if v == nil { @@ -500,7 +500,7 @@ func (o CertificateAuthorityCertificateAuthorityConfigurationSubjectPtrOutput) O }).(pulumi.StringPtrOutput) } -// A subdivision or unit of the organization (such as sales or finance) with which the certificate subject is affiliated. +// A subdivision or unit of the organization (such as sales or finance) with which the certificate subject is affiliated. Must be less than or equal to 64 characters in length. func (o CertificateAuthorityCertificateAuthorityConfigurationSubjectPtrOutput) OrganizationalUnit() pulumi.StringPtrOutput { return o.ApplyT(func(v *CertificateAuthorityCertificateAuthorityConfigurationSubject) *string { if v == nil { @@ -510,7 +510,7 @@ func (o CertificateAuthorityCertificateAuthorityConfigurationSubjectPtrOutput) O }).(pulumi.StringPtrOutput) } -// Typically a shortened version of a longer `givenName`. For example, Jonathan is often shortened to John. Elizabeth is often shortened to Beth, Liz, or Eliza. +// Typically a shortened version of a longer `givenName`. For example, Jonathan is often shortened to John. Elizabeth is often shortened to Beth, Liz, or Eliza. Must be less than or equal to 128 characters in length. func (o CertificateAuthorityCertificateAuthorityConfigurationSubjectPtrOutput) Pseudonym() pulumi.StringPtrOutput { return o.ApplyT(func(v *CertificateAuthorityCertificateAuthorityConfigurationSubject) *string { if v == nil { @@ -520,7 +520,7 @@ func (o CertificateAuthorityCertificateAuthorityConfigurationSubjectPtrOutput) P }).(pulumi.StringPtrOutput) } -// State in which the subject of the certificate is located. +// State in which the subject of the certificate is located. Must be less than or equal to 128 characters in length. func (o CertificateAuthorityCertificateAuthorityConfigurationSubjectPtrOutput) State() pulumi.StringPtrOutput { return o.ApplyT(func(v *CertificateAuthorityCertificateAuthorityConfigurationSubject) *string { if v == nil { @@ -530,7 +530,7 @@ func (o CertificateAuthorityCertificateAuthorityConfigurationSubjectPtrOutput) S }).(pulumi.StringPtrOutput) } -// Family name. In the US and the UK for example, the surname of an individual is ordered last. In Asian cultures the surname is typically ordered first. +// Family name. In the US and the UK for example, the surname of an individual is ordered last. In Asian cultures the surname is typically ordered first. Must be less than or equal to 40 characters in length. func (o CertificateAuthorityCertificateAuthorityConfigurationSubjectPtrOutput) Surname() pulumi.StringPtrOutput { return o.ApplyT(func(v *CertificateAuthorityCertificateAuthorityConfigurationSubject) *string { if v == nil { @@ -540,7 +540,7 @@ func (o CertificateAuthorityCertificateAuthorityConfigurationSubjectPtrOutput) S }).(pulumi.StringPtrOutput) } -// A title such as Mr. or Ms. which is pre-pended to the name to refer formally to the certificate subject. +// A title such as Mr. or Ms. which is pre-pended to the name to refer formally to the certificate subject. Must be less than or equal to 64 characters in length. func (o CertificateAuthorityCertificateAuthorityConfigurationSubjectPtrOutput) Title() pulumi.StringPtrOutput { return o.ApplyT(func(v *CertificateAuthorityCertificateAuthorityConfigurationSubject) *string { if v == nil { @@ -686,13 +686,13 @@ func (o CertificateAuthorityRevocationConfigurationPtrOutput) CrlConfiguration() } type CertificateAuthorityRevocationConfigurationCrlConfiguration struct { - // Name inserted into the certificate CRL Distribution Points extension that enables the use of an alias for the CRL distribution point. Use this value if you don't want the name of your S3 bucket to be public. + // Name inserted into the certificate CRL Distribution Points extension that enables the use of an alias for the CRL distribution point. Use this value if you don't want the name of your S3 bucket to be public. Must be less than or equal to 253 characters in length. CustomCname *string `pulumi:"customCname"` // Boolean value that specifies whether certificate revocation lists (CRLs) are enabled. Defaults to `false`. Enabled *bool `pulumi:"enabled"` // Number of days until a certificate expires. Must be between 1 and 5000. ExpirationInDays int `pulumi:"expirationInDays"` - // Name of the S3 bucket that contains the CRL. If you do not provide a value for the `customCname` argument, the name of your S3 bucket is placed into the CRL Distribution Points extension of the issued certificate. You must specify a bucket policy that allows ACM PCA to write the CRL to your bucket. + // Name of the S3 bucket that contains the CRL. If you do not provide a value for the `customCname` argument, the name of your S3 bucket is placed into the CRL Distribution Points extension of the issued certificate. You must specify a bucket policy that allows ACM PCA to write the CRL to your bucket. Must be less than or equal to 255 characters in length. S3BucketName *string `pulumi:"s3BucketName"` } @@ -708,13 +708,13 @@ type CertificateAuthorityRevocationConfigurationCrlConfigurationInput interface } type CertificateAuthorityRevocationConfigurationCrlConfigurationArgs struct { - // Name inserted into the certificate CRL Distribution Points extension that enables the use of an alias for the CRL distribution point. Use this value if you don't want the name of your S3 bucket to be public. + // Name inserted into the certificate CRL Distribution Points extension that enables the use of an alias for the CRL distribution point. Use this value if you don't want the name of your S3 bucket to be public. Must be less than or equal to 253 characters in length. CustomCname pulumi.StringPtrInput `pulumi:"customCname"` // Boolean value that specifies whether certificate revocation lists (CRLs) are enabled. Defaults to `false`. Enabled pulumi.BoolPtrInput `pulumi:"enabled"` // Number of days until a certificate expires. Must be between 1 and 5000. ExpirationInDays pulumi.IntInput `pulumi:"expirationInDays"` - // Name of the S3 bucket that contains the CRL. If you do not provide a value for the `customCname` argument, the name of your S3 bucket is placed into the CRL Distribution Points extension of the issued certificate. You must specify a bucket policy that allows ACM PCA to write the CRL to your bucket. + // Name of the S3 bucket that contains the CRL. If you do not provide a value for the `customCname` argument, the name of your S3 bucket is placed into the CRL Distribution Points extension of the issued certificate. You must specify a bucket policy that allows ACM PCA to write the CRL to your bucket. Must be less than or equal to 255 characters in length. S3BucketName pulumi.StringPtrInput `pulumi:"s3BucketName"` } @@ -795,7 +795,7 @@ func (o CertificateAuthorityRevocationConfigurationCrlConfigurationOutput) ToCer }).(CertificateAuthorityRevocationConfigurationCrlConfigurationPtrOutput) } -// Name inserted into the certificate CRL Distribution Points extension that enables the use of an alias for the CRL distribution point. Use this value if you don't want the name of your S3 bucket to be public. +// Name inserted into the certificate CRL Distribution Points extension that enables the use of an alias for the CRL distribution point. Use this value if you don't want the name of your S3 bucket to be public. Must be less than or equal to 253 characters in length. func (o CertificateAuthorityRevocationConfigurationCrlConfigurationOutput) CustomCname() pulumi.StringPtrOutput { return o.ApplyT(func(v CertificateAuthorityRevocationConfigurationCrlConfiguration) *string { return v.CustomCname }).(pulumi.StringPtrOutput) } @@ -810,7 +810,7 @@ func (o CertificateAuthorityRevocationConfigurationCrlConfigurationOutput) Expir return o.ApplyT(func(v CertificateAuthorityRevocationConfigurationCrlConfiguration) int { return v.ExpirationInDays }).(pulumi.IntOutput) } -// Name of the S3 bucket that contains the CRL. If you do not provide a value for the `customCname` argument, the name of your S3 bucket is placed into the CRL Distribution Points extension of the issued certificate. You must specify a bucket policy that allows ACM PCA to write the CRL to your bucket. +// Name of the S3 bucket that contains the CRL. If you do not provide a value for the `customCname` argument, the name of your S3 bucket is placed into the CRL Distribution Points extension of the issued certificate. You must specify a bucket policy that allows ACM PCA to write the CRL to your bucket. Must be less than or equal to 255 characters in length. func (o CertificateAuthorityRevocationConfigurationCrlConfigurationOutput) S3BucketName() pulumi.StringPtrOutput { return o.ApplyT(func(v CertificateAuthorityRevocationConfigurationCrlConfiguration) *string { return v.S3BucketName }).(pulumi.StringPtrOutput) } @@ -835,7 +835,7 @@ func (o CertificateAuthorityRevocationConfigurationCrlConfigurationPtrOutput) El }).(CertificateAuthorityRevocationConfigurationCrlConfigurationOutput) } -// Name inserted into the certificate CRL Distribution Points extension that enables the use of an alias for the CRL distribution point. Use this value if you don't want the name of your S3 bucket to be public. +// Name inserted into the certificate CRL Distribution Points extension that enables the use of an alias for the CRL distribution point. Use this value if you don't want the name of your S3 bucket to be public. Must be less than or equal to 253 characters in length. func (o CertificateAuthorityRevocationConfigurationCrlConfigurationPtrOutput) CustomCname() pulumi.StringPtrOutput { return o.ApplyT(func(v *CertificateAuthorityRevocationConfigurationCrlConfiguration) *string { if v == nil { @@ -865,7 +865,7 @@ func (o CertificateAuthorityRevocationConfigurationCrlConfigurationPtrOutput) Ex }).(pulumi.IntPtrOutput) } -// Name of the S3 bucket that contains the CRL. If you do not provide a value for the `customCname` argument, the name of your S3 bucket is placed into the CRL Distribution Points extension of the issued certificate. You must specify a bucket policy that allows ACM PCA to write the CRL to your bucket. +// Name of the S3 bucket that contains the CRL. If you do not provide a value for the `customCname` argument, the name of your S3 bucket is placed into the CRL Distribution Points extension of the issued certificate. You must specify a bucket policy that allows ACM PCA to write the CRL to your bucket. Must be less than or equal to 255 characters in length. func (o CertificateAuthorityRevocationConfigurationCrlConfigurationPtrOutput) S3BucketName() pulumi.StringPtrOutput { return o.ApplyT(func(v *CertificateAuthorityRevocationConfigurationCrlConfiguration) *string { if v == nil { diff --git a/sdk/go/aws/apigatewayv2/integration.go b/sdk/go/aws/apigatewayv2/integration.go index c18d41679dc..2b8223ec5ae 100644 --- a/sdk/go/aws/apigatewayv2/integration.go +++ b/sdk/go/aws/apigatewayv2/integration.go @@ -108,8 +108,7 @@ type Integration struct { RequestTemplates pulumi.StringMapOutput `pulumi:"requestTemplates"` // The [template selection expression](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-template-selection-expressions) for the integration. TemplateSelectionExpression pulumi.StringPtrOutput `pulumi:"templateSelectionExpression"` - // Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds or 29 seconds. - TimeoutMilliseconds pulumi.IntPtrOutput `pulumi:"timeoutMilliseconds"` + TimeoutMilliseconds pulumi.IntOutput `pulumi:"timeoutMilliseconds"` // The TLS configuration for a private integration. Supported only for HTTP APIs. TlsConfig IntegrationTlsConfigPtrOutput `pulumi:"tlsConfig"` } @@ -184,8 +183,7 @@ type integrationState struct { RequestTemplates map[string]string `pulumi:"requestTemplates"` // The [template selection expression](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-template-selection-expressions) for the integration. TemplateSelectionExpression *string `pulumi:"templateSelectionExpression"` - // Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds or 29 seconds. - TimeoutMilliseconds *int `pulumi:"timeoutMilliseconds"` + TimeoutMilliseconds *int `pulumi:"timeoutMilliseconds"` // The TLS configuration for a private integration. Supported only for HTTP APIs. TlsConfig *IntegrationTlsConfig `pulumi:"tlsConfig"` } @@ -227,8 +225,7 @@ type IntegrationState struct { RequestTemplates pulumi.StringMapInput // The [template selection expression](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-template-selection-expressions) for the integration. TemplateSelectionExpression pulumi.StringPtrInput - // Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds or 29 seconds. - TimeoutMilliseconds pulumi.IntPtrInput + TimeoutMilliseconds pulumi.IntPtrInput // The TLS configuration for a private integration. Supported only for HTTP APIs. TlsConfig IntegrationTlsConfigPtrInput } @@ -272,8 +269,7 @@ type integrationArgs struct { RequestTemplates map[string]string `pulumi:"requestTemplates"` // The [template selection expression](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-template-selection-expressions) for the integration. TemplateSelectionExpression *string `pulumi:"templateSelectionExpression"` - // Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds or 29 seconds. - TimeoutMilliseconds *int `pulumi:"timeoutMilliseconds"` + TimeoutMilliseconds *int `pulumi:"timeoutMilliseconds"` // The TLS configuration for a private integration. Supported only for HTTP APIs. TlsConfig *IntegrationTlsConfig `pulumi:"tlsConfig"` } @@ -314,8 +310,7 @@ type IntegrationArgs struct { RequestTemplates pulumi.StringMapInput // The [template selection expression](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-template-selection-expressions) for the integration. TemplateSelectionExpression pulumi.StringPtrInput - // Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds or 29 seconds. - TimeoutMilliseconds pulumi.IntPtrInput + TimeoutMilliseconds pulumi.IntPtrInput // The TLS configuration for a private integration. Supported only for HTTP APIs. TlsConfig IntegrationTlsConfigPtrInput } diff --git a/sdk/go/aws/cloudwatch/eventPermission.go b/sdk/go/aws/cloudwatch/eventPermission.go index fe371324e5f..7fad718e87b 100644 --- a/sdk/go/aws/cloudwatch/eventPermission.go +++ b/sdk/go/aws/cloudwatch/eventPermission.go @@ -73,6 +73,8 @@ type EventPermission struct { Action pulumi.StringPtrOutput `pulumi:"action"` // Configuration block to limit the event bus permissions you are granting to only accounts that fulfill the condition. Specified below. Condition EventPermissionConditionPtrOutput `pulumi:"condition"` + // The event bus to set the permissions on. If you omit this, the permissions are set on the `default` event bus. + EventBusName pulumi.StringPtrOutput `pulumi:"eventBusName"` // The 12-digit AWS account ID that you are permitting to put events to your default event bus. Specify `*` to permit any account to put events to your default event bus, optionally limited by `condition`. Principal pulumi.StringOutput `pulumi:"principal"` // An identifier string for the external account that you are granting permissions to. @@ -117,6 +119,8 @@ type eventPermissionState struct { Action *string `pulumi:"action"` // Configuration block to limit the event bus permissions you are granting to only accounts that fulfill the condition. Specified below. Condition *EventPermissionCondition `pulumi:"condition"` + // The event bus to set the permissions on. If you omit this, the permissions are set on the `default` event bus. + EventBusName *string `pulumi:"eventBusName"` // The 12-digit AWS account ID that you are permitting to put events to your default event bus. Specify `*` to permit any account to put events to your default event bus, optionally limited by `condition`. Principal *string `pulumi:"principal"` // An identifier string for the external account that you are granting permissions to. @@ -128,6 +132,8 @@ type EventPermissionState struct { Action pulumi.StringPtrInput // Configuration block to limit the event bus permissions you are granting to only accounts that fulfill the condition. Specified below. Condition EventPermissionConditionPtrInput + // The event bus to set the permissions on. If you omit this, the permissions are set on the `default` event bus. + EventBusName pulumi.StringPtrInput // The 12-digit AWS account ID that you are permitting to put events to your default event bus. Specify `*` to permit any account to put events to your default event bus, optionally limited by `condition`. Principal pulumi.StringPtrInput // An identifier string for the external account that you are granting permissions to. @@ -143,6 +149,8 @@ type eventPermissionArgs struct { Action *string `pulumi:"action"` // Configuration block to limit the event bus permissions you are granting to only accounts that fulfill the condition. Specified below. Condition *EventPermissionCondition `pulumi:"condition"` + // The event bus to set the permissions on. If you omit this, the permissions are set on the `default` event bus. + EventBusName *string `pulumi:"eventBusName"` // The 12-digit AWS account ID that you are permitting to put events to your default event bus. Specify `*` to permit any account to put events to your default event bus, optionally limited by `condition`. Principal string `pulumi:"principal"` // An identifier string for the external account that you are granting permissions to. @@ -155,6 +163,8 @@ type EventPermissionArgs struct { Action pulumi.StringPtrInput // Configuration block to limit the event bus permissions you are granting to only accounts that fulfill the condition. Specified below. Condition EventPermissionConditionPtrInput + // The event bus to set the permissions on. If you omit this, the permissions are set on the `default` event bus. + EventBusName pulumi.StringPtrInput // The 12-digit AWS account ID that you are permitting to put events to your default event bus. Specify `*` to permit any account to put events to your default event bus, optionally limited by `condition`. Principal pulumi.StringInput // An identifier string for the external account that you are granting permissions to. diff --git a/sdk/go/aws/cloudwatch/eventTarget.go b/sdk/go/aws/cloudwatch/eventTarget.go index ccb8865faab..14fade9207c 100644 --- a/sdk/go/aws/cloudwatch/eventTarget.go +++ b/sdk/go/aws/cloudwatch/eventTarget.go @@ -194,6 +194,80 @@ import ( // }) // } // ``` +// +// ## Example Input Transformer Usage - JSON Object +// +// ```go +// package main +// +// import ( +// "fmt" +// +// "github.com/pulumi/pulumi-aws/sdk/v3/go/aws/cloudwatch" +// "github.com/pulumi/pulumi/sdk/v2/go/pulumi" +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// exampleEventRule, err := cloudwatch.NewEventRule(ctx, "exampleEventRule", nil) +// if err != nil { +// return err +// } +// _, err = cloudwatch.NewEventTarget(ctx, "exampleEventTarget", &cloudwatch.EventTargetArgs{ +// Arn: pulumi.Any(aws_lambda_function.Example.Arn), +// Rule: exampleEventRule.ID(), +// InputTransformer: &cloudwatch.EventTargetInputTransformerArgs{ +// InputPaths: pulumi.StringMap{ +// "instance": pulumi.String(fmt.Sprintf("%v%v", "$", ".detail.instance")), +// "status": pulumi.String(fmt.Sprintf("%v%v", "$", ".detail.status")), +// }, +// InputTemplate: pulumi.String(fmt.Sprintf("%v%v%v%v", "{\n", " \"instance_id\": ,\n", " \"instance_status\": \n", "}\n")), +// }, +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// ``` +// +// ## Example Input Transformer Usage - Simple String +// +// ```go +// package main +// +// import ( +// "fmt" +// +// "github.com/pulumi/pulumi-aws/sdk/v3/go/aws/cloudwatch" +// "github.com/pulumi/pulumi/sdk/v2/go/pulumi" +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// exampleEventRule, err := cloudwatch.NewEventRule(ctx, "exampleEventRule", nil) +// if err != nil { +// return err +// } +// _, err = cloudwatch.NewEventTarget(ctx, "exampleEventTarget", &cloudwatch.EventTargetArgs{ +// Arn: pulumi.Any(aws_lambda_function.Example.Arn), +// Rule: exampleEventRule.ID(), +// InputTransformer: &cloudwatch.EventTargetInputTransformerArgs{ +// InputPaths: pulumi.StringMap{ +// "instance": pulumi.String(fmt.Sprintf("%v%v", "$", ".detail.instance")), +// "status": pulumi.String(fmt.Sprintf("%v%v", "$", ".detail.status")), +// }, +// InputTemplate: pulumi.String("\" is in state \""), +// }, +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// ``` type EventTarget struct { pulumi.CustomResourceState @@ -203,12 +277,14 @@ type EventTarget struct { BatchTarget EventTargetBatchTargetPtrOutput `pulumi:"batchTarget"` // Parameters used when you are using the rule to invoke Amazon ECS Task. Documented below. A maximum of 1 are allowed. EcsTarget EventTargetEcsTargetPtrOutput `pulumi:"ecsTarget"` - // Valid JSON text passed to the target. + // The event bus to associate with the rule. If you omit this, the `default` event bus is used. + EventBusName pulumi.StringPtrOutput `pulumi:"eventBusName"` + // Valid JSON text passed to the target. Conflicts with `inputPath` and `inputTransformer`. Input pulumi.StringPtrOutput `pulumi:"input"` // The value of the [JSONPath](http://goessner.net/articles/JsonPath/) - // that is used for extracting part of the matched event when passing it to the target. + // that is used for extracting part of the matched event when passing it to the target. Conflicts with `input` and `inputTransformer`. InputPath pulumi.StringPtrOutput `pulumi:"inputPath"` - // Parameters used when you are providing a custom input to a target based on certain event data. + // Parameters used when you are providing a custom input to a target based on certain event data. Conflicts with `input` and `inputPath`. InputTransformer EventTargetInputTransformerPtrOutput `pulumi:"inputTransformer"` // Parameters used when you are using the rule to invoke an Amazon Kinesis Stream. Documented below. A maximum of 1 are allowed. KinesisTarget EventTargetKinesisTargetPtrOutput `pulumi:"kinesisTarget"` @@ -264,12 +340,14 @@ type eventTargetState struct { BatchTarget *EventTargetBatchTarget `pulumi:"batchTarget"` // Parameters used when you are using the rule to invoke Amazon ECS Task. Documented below. A maximum of 1 are allowed. EcsTarget *EventTargetEcsTarget `pulumi:"ecsTarget"` - // Valid JSON text passed to the target. + // The event bus to associate with the rule. If you omit this, the `default` event bus is used. + EventBusName *string `pulumi:"eventBusName"` + // Valid JSON text passed to the target. Conflicts with `inputPath` and `inputTransformer`. Input *string `pulumi:"input"` // The value of the [JSONPath](http://goessner.net/articles/JsonPath/) - // that is used for extracting part of the matched event when passing it to the target. + // that is used for extracting part of the matched event when passing it to the target. Conflicts with `input` and `inputTransformer`. InputPath *string `pulumi:"inputPath"` - // Parameters used when you are providing a custom input to a target based on certain event data. + // Parameters used when you are providing a custom input to a target based on certain event data. Conflicts with `input` and `inputPath`. InputTransformer *EventTargetInputTransformer `pulumi:"inputTransformer"` // Parameters used when you are using the rule to invoke an Amazon Kinesis Stream. Documented below. A maximum of 1 are allowed. KinesisTarget *EventTargetKinesisTarget `pulumi:"kinesisTarget"` @@ -292,12 +370,14 @@ type EventTargetState struct { BatchTarget EventTargetBatchTargetPtrInput // Parameters used when you are using the rule to invoke Amazon ECS Task. Documented below. A maximum of 1 are allowed. EcsTarget EventTargetEcsTargetPtrInput - // Valid JSON text passed to the target. + // The event bus to associate with the rule. If you omit this, the `default` event bus is used. + EventBusName pulumi.StringPtrInput + // Valid JSON text passed to the target. Conflicts with `inputPath` and `inputTransformer`. Input pulumi.StringPtrInput // The value of the [JSONPath](http://goessner.net/articles/JsonPath/) - // that is used for extracting part of the matched event when passing it to the target. + // that is used for extracting part of the matched event when passing it to the target. Conflicts with `input` and `inputTransformer`. InputPath pulumi.StringPtrInput - // Parameters used when you are providing a custom input to a target based on certain event data. + // Parameters used when you are providing a custom input to a target based on certain event data. Conflicts with `input` and `inputPath`. InputTransformer EventTargetInputTransformerPtrInput // Parameters used when you are using the rule to invoke an Amazon Kinesis Stream. Documented below. A maximum of 1 are allowed. KinesisTarget EventTargetKinesisTargetPtrInput @@ -324,12 +404,14 @@ type eventTargetArgs struct { BatchTarget *EventTargetBatchTarget `pulumi:"batchTarget"` // Parameters used when you are using the rule to invoke Amazon ECS Task. Documented below. A maximum of 1 are allowed. EcsTarget *EventTargetEcsTarget `pulumi:"ecsTarget"` - // Valid JSON text passed to the target. + // The event bus to associate with the rule. If you omit this, the `default` event bus is used. + EventBusName *string `pulumi:"eventBusName"` + // Valid JSON text passed to the target. Conflicts with `inputPath` and `inputTransformer`. Input *string `pulumi:"input"` // The value of the [JSONPath](http://goessner.net/articles/JsonPath/) - // that is used for extracting part of the matched event when passing it to the target. + // that is used for extracting part of the matched event when passing it to the target. Conflicts with `input` and `inputTransformer`. InputPath *string `pulumi:"inputPath"` - // Parameters used when you are providing a custom input to a target based on certain event data. + // Parameters used when you are providing a custom input to a target based on certain event data. Conflicts with `input` and `inputPath`. InputTransformer *EventTargetInputTransformer `pulumi:"inputTransformer"` // Parameters used when you are using the rule to invoke an Amazon Kinesis Stream. Documented below. A maximum of 1 are allowed. KinesisTarget *EventTargetKinesisTarget `pulumi:"kinesisTarget"` @@ -353,12 +435,14 @@ type EventTargetArgs struct { BatchTarget EventTargetBatchTargetPtrInput // Parameters used when you are using the rule to invoke Amazon ECS Task. Documented below. A maximum of 1 are allowed. EcsTarget EventTargetEcsTargetPtrInput - // Valid JSON text passed to the target. + // The event bus to associate with the rule. If you omit this, the `default` event bus is used. + EventBusName pulumi.StringPtrInput + // Valid JSON text passed to the target. Conflicts with `inputPath` and `inputTransformer`. Input pulumi.StringPtrInput // The value of the [JSONPath](http://goessner.net/articles/JsonPath/) - // that is used for extracting part of the matched event when passing it to the target. + // that is used for extracting part of the matched event when passing it to the target. Conflicts with `input` and `inputTransformer`. InputPath pulumi.StringPtrInput - // Parameters used when you are providing a custom input to a target based on certain event data. + // Parameters used when you are providing a custom input to a target based on certain event data. Conflicts with `input` and `inputPath`. InputTransformer EventTargetInputTransformerPtrInput // Parameters used when you are using the rule to invoke an Amazon Kinesis Stream. Documented below. A maximum of 1 are allowed. KinesisTarget EventTargetKinesisTargetPtrInput diff --git a/sdk/go/aws/cloudwatch/pulumiTypes.go b/sdk/go/aws/cloudwatch/pulumiTypes.go index b4f89075014..61dae3b6994 100644 --- a/sdk/go/aws/cloudwatch/pulumiTypes.go +++ b/sdk/go/aws/cloudwatch/pulumiTypes.go @@ -370,7 +370,7 @@ func (o EventTargetBatchTargetPtrOutput) JobName() pulumi.StringPtrOutput { type EventTargetEcsTarget struct { // Specifies an ECS task group for the task. The maximum length is 255 characters. Group *string `pulumi:"group"` - // Specifies the launch type on which your task is running. The launch type that you specify here must match one of the launch type (compatibilities) of the target task. Valid values are EC2 or FARGATE. + // Specifies the launch type on which your task is running. The launch type that you specify here must match one of the launch type (compatibilities) of the target task. Valid values are `EC2` or `FARGATE`. LaunchType *string `pulumi:"launchType"` // Use this if the ECS task uses the awsvpc network mode. This specifies the VPC subnets and security groups associated with the task, and whether a public IP address is to be used. Required if launchType is FARGATE because the awsvpc mode is required for Fargate tasks. NetworkConfiguration *EventTargetEcsTargetNetworkConfiguration `pulumi:"networkConfiguration"` @@ -396,7 +396,7 @@ type EventTargetEcsTargetInput interface { type EventTargetEcsTargetArgs struct { // Specifies an ECS task group for the task. The maximum length is 255 characters. Group pulumi.StringPtrInput `pulumi:"group"` - // Specifies the launch type on which your task is running. The launch type that you specify here must match one of the launch type (compatibilities) of the target task. Valid values are EC2 or FARGATE. + // Specifies the launch type on which your task is running. The launch type that you specify here must match one of the launch type (compatibilities) of the target task. Valid values are `EC2` or `FARGATE`. LaunchType pulumi.StringPtrInput `pulumi:"launchType"` // Use this if the ECS task uses the awsvpc network mode. This specifies the VPC subnets and security groups associated with the task, and whether a public IP address is to be used. Required if launchType is FARGATE because the awsvpc mode is required for Fargate tasks. NetworkConfiguration EventTargetEcsTargetNetworkConfigurationPtrInput `pulumi:"networkConfiguration"` @@ -490,7 +490,7 @@ func (o EventTargetEcsTargetOutput) Group() pulumi.StringPtrOutput { return o.ApplyT(func(v EventTargetEcsTarget) *string { return v.Group }).(pulumi.StringPtrOutput) } -// Specifies the launch type on which your task is running. The launch type that you specify here must match one of the launch type (compatibilities) of the target task. Valid values are EC2 or FARGATE. +// Specifies the launch type on which your task is running. The launch type that you specify here must match one of the launch type (compatibilities) of the target task. Valid values are `EC2` or `FARGATE`. func (o EventTargetEcsTargetOutput) LaunchType() pulumi.StringPtrOutput { return o.ApplyT(func(v EventTargetEcsTarget) *string { return v.LaunchType }).(pulumi.StringPtrOutput) } @@ -543,7 +543,7 @@ func (o EventTargetEcsTargetPtrOutput) Group() pulumi.StringPtrOutput { }).(pulumi.StringPtrOutput) } -// Specifies the launch type on which your task is running. The launch type that you specify here must match one of the launch type (compatibilities) of the target task. Valid values are EC2 or FARGATE. +// Specifies the launch type on which your task is running. The launch type that you specify here must match one of the launch type (compatibilities) of the target task. Valid values are `EC2` or `FARGATE`. func (o EventTargetEcsTargetPtrOutput) LaunchType() pulumi.StringPtrOutput { return o.ApplyT(func(v *EventTargetEcsTarget) *string { if v == nil { @@ -767,9 +767,8 @@ type EventTargetInputTransformer struct { // * You can have as many as 10 key-value pairs. // * You must use JSON dot notation, not bracket notation. // * The keys can't start with "AWS". - InputPaths map[string]string `pulumi:"inputPaths"` - // Structure containing the template body. - InputTemplate string `pulumi:"inputTemplate"` + InputPaths map[string]string `pulumi:"inputPaths"` + InputTemplate string `pulumi:"inputTemplate"` } // EventTargetInputTransformerInput is an input type that accepts EventTargetInputTransformerArgs and EventTargetInputTransformerOutput values. @@ -788,9 +787,8 @@ type EventTargetInputTransformerArgs struct { // * You can have as many as 10 key-value pairs. // * You must use JSON dot notation, not bracket notation. // * The keys can't start with "AWS". - InputPaths pulumi.StringMapInput `pulumi:"inputPaths"` - // Structure containing the template body. - InputTemplate pulumi.StringInput `pulumi:"inputTemplate"` + InputPaths pulumi.StringMapInput `pulumi:"inputPaths"` + InputTemplate pulumi.StringInput `pulumi:"inputTemplate"` } func (EventTargetInputTransformerArgs) ElementType() reflect.Type { @@ -878,7 +876,6 @@ func (o EventTargetInputTransformerOutput) InputPaths() pulumi.StringMapOutput { return o.ApplyT(func(v EventTargetInputTransformer) map[string]string { return v.InputPaths }).(pulumi.StringMapOutput) } -// Structure containing the template body. func (o EventTargetInputTransformerOutput) InputTemplate() pulumi.StringOutput { return o.ApplyT(func(v EventTargetInputTransformer) string { return v.InputTemplate }).(pulumi.StringOutput) } @@ -914,7 +911,6 @@ func (o EventTargetInputTransformerPtrOutput) InputPaths() pulumi.StringMapOutpu }).(pulumi.StringMapOutput) } -// Structure containing the template body. func (o EventTargetInputTransformerPtrOutput) InputTemplate() pulumi.StringPtrOutput { return o.ApplyT(func(v *EventTargetInputTransformer) *string { if v == nil { diff --git a/sdk/go/aws/codeartifact/domain.go b/sdk/go/aws/codeartifact/domain.go index ebc3b44b727..6fa3807fc47 100644 --- a/sdk/go/aws/codeartifact/domain.go +++ b/sdk/go/aws/codeartifact/domain.go @@ -59,6 +59,8 @@ type Domain struct { Owner pulumi.StringOutput `pulumi:"owner"` // The number of repositories in the domain. RepositoryCount pulumi.IntOutput `pulumi:"repositoryCount"` + // Key-value map of resource tags. + Tags pulumi.StringMapOutput `pulumi:"tags"` } // NewDomain registers a new resource with the given unique name, arguments, and options. @@ -109,6 +111,8 @@ type domainState struct { Owner *string `pulumi:"owner"` // The number of repositories in the domain. RepositoryCount *int `pulumi:"repositoryCount"` + // Key-value map of resource tags. + Tags map[string]string `pulumi:"tags"` } type DomainState struct { @@ -126,6 +130,8 @@ type DomainState struct { Owner pulumi.StringPtrInput // The number of repositories in the domain. RepositoryCount pulumi.IntPtrInput + // Key-value map of resource tags. + Tags pulumi.StringMapInput } func (DomainState) ElementType() reflect.Type { @@ -137,6 +143,8 @@ type domainArgs struct { Domain string `pulumi:"domain"` // The encryption key for the domain. This is used to encrypt content stored in a domain. The KMS Key Amazon Resource Name (ARN). EncryptionKey string `pulumi:"encryptionKey"` + // Key-value map of resource tags. + Tags map[string]string `pulumi:"tags"` } // The set of arguments for constructing a Domain resource. @@ -145,6 +153,8 @@ type DomainArgs struct { Domain pulumi.StringInput // The encryption key for the domain. This is used to encrypt content stored in a domain. The KMS Key Amazon Resource Name (ARN). EncryptionKey pulumi.StringInput + // Key-value map of resource tags. + Tags pulumi.StringMapInput } func (DomainArgs) ElementType() reflect.Type { diff --git a/sdk/go/aws/codeartifact/repository.go b/sdk/go/aws/codeartifact/repository.go index 5d3c5306b1b..5ae861a11fa 100644 --- a/sdk/go/aws/codeartifact/repository.go +++ b/sdk/go/aws/codeartifact/repository.go @@ -134,6 +134,8 @@ type Repository struct { ExternalConnections RepositoryExternalConnectionsPtrOutput `pulumi:"externalConnections"` // The name of the repository to create. Repository pulumi.StringOutput `pulumi:"repository"` + // Key-value map of resource tags. + Tags pulumi.StringMapOutput `pulumi:"tags"` // A list of upstream repositories to associate with the repository. The order of the upstream repositories in the list determines their priority order when AWS CodeArtifact looks for a requested package version. see Upstream Upstreams RepositoryUpstreamArrayOutput `pulumi:"upstreams"` } @@ -186,6 +188,8 @@ type repositoryState struct { ExternalConnections *RepositoryExternalConnections `pulumi:"externalConnections"` // The name of the repository to create. Repository *string `pulumi:"repository"` + // Key-value map of resource tags. + Tags map[string]string `pulumi:"tags"` // A list of upstream repositories to associate with the repository. The order of the upstream repositories in the list determines their priority order when AWS CodeArtifact looks for a requested package version. see Upstream Upstreams []RepositoryUpstream `pulumi:"upstreams"` } @@ -205,6 +209,8 @@ type RepositoryState struct { ExternalConnections RepositoryExternalConnectionsPtrInput // The name of the repository to create. Repository pulumi.StringPtrInput + // Key-value map of resource tags. + Tags pulumi.StringMapInput // A list of upstream repositories to associate with the repository. The order of the upstream repositories in the list determines their priority order when AWS CodeArtifact looks for a requested package version. see Upstream Upstreams RepositoryUpstreamArrayInput } @@ -224,6 +230,8 @@ type repositoryArgs struct { ExternalConnections *RepositoryExternalConnections `pulumi:"externalConnections"` // The name of the repository to create. Repository string `pulumi:"repository"` + // Key-value map of resource tags. + Tags map[string]string `pulumi:"tags"` // A list of upstream repositories to associate with the repository. The order of the upstream repositories in the list determines their priority order when AWS CodeArtifact looks for a requested package version. see Upstream Upstreams []RepositoryUpstream `pulumi:"upstreams"` } @@ -240,6 +248,8 @@ type RepositoryArgs struct { ExternalConnections RepositoryExternalConnectionsPtrInput // The name of the repository to create. Repository pulumi.StringInput + // Key-value map of resource tags. + Tags pulumi.StringMapInput // A list of upstream repositories to associate with the repository. The order of the upstream repositories in the list determines their priority order when AWS CodeArtifact looks for a requested package version. see Upstream Upstreams RepositoryUpstreamArrayInput } diff --git a/sdk/go/aws/config/pulumiTypes.go b/sdk/go/aws/config/pulumiTypes.go index 025b2588b82..23566b12989 100644 --- a/sdk/go/aws/config/pulumiTypes.go +++ b/sdk/go/aws/config/pulumiTypes.go @@ -132,6 +132,7 @@ type Endpoints struct { Codecommit *string `pulumi:"codecommit"` Codedeploy *string `pulumi:"codedeploy"` Codepipeline *string `pulumi:"codepipeline"` + Codestarconnections *string `pulumi:"codestarconnections"` Cognitoidentity *string `pulumi:"cognitoidentity"` Cognitoidp *string `pulumi:"cognitoidp"` Configservice *string `pulumi:"configservice"` @@ -290,6 +291,7 @@ type EndpointsArgs struct { Codecommit pulumi.StringPtrInput `pulumi:"codecommit"` Codedeploy pulumi.StringPtrInput `pulumi:"codedeploy"` Codepipeline pulumi.StringPtrInput `pulumi:"codepipeline"` + Codestarconnections pulumi.StringPtrInput `pulumi:"codestarconnections"` Cognitoidentity pulumi.StringPtrInput `pulumi:"cognitoidentity"` Cognitoidp pulumi.StringPtrInput `pulumi:"cognitoidp"` Configservice pulumi.StringPtrInput `pulumi:"configservice"` @@ -577,6 +579,10 @@ func (o EndpointsOutput) Codepipeline() pulumi.StringPtrOutput { return o.ApplyT(func(v Endpoints) *string { return v.Codepipeline }).(pulumi.StringPtrOutput) } +func (o EndpointsOutput) Codestarconnections() pulumi.StringPtrOutput { + return o.ApplyT(func(v Endpoints) *string { return v.Codestarconnections }).(pulumi.StringPtrOutput) +} + func (o EndpointsOutput) Cognitoidentity() pulumi.StringPtrOutput { return o.ApplyT(func(v Endpoints) *string { return v.Cognitoidentity }).(pulumi.StringPtrOutput) } diff --git a/sdk/go/aws/directconnect/gatewayAssociation.go b/sdk/go/aws/directconnect/gatewayAssociation.go index 427e027176a..377722b6eda 100644 --- a/sdk/go/aws/directconnect/gatewayAssociation.go +++ b/sdk/go/aws/directconnect/gatewayAssociation.go @@ -143,8 +143,6 @@ import ( // }) // } // ``` -// -// A full example of how to create a VPN Gateway in one AWS account, create a Direct Connect Gateway in a second AWS account, and associate the VPN Gateway with the Direct Connect Gateway via the `directconnect.GatewayAssociationProposal` and `directconnect.GatewayAssociation` resources can be found in [the `./examples/dx-gateway-cross-account-vgw-association` directory within the Github Repository](https://github.com/providers/provider-aws/tree/master/examples/dx-gateway-cross-account-vgw-association). type GatewayAssociation struct { pulumi.CustomResourceState diff --git a/sdk/go/aws/directconnect/gatewayAssociationProposal.go b/sdk/go/aws/directconnect/gatewayAssociationProposal.go index 5b4baf8eb25..ceb4a47aa5d 100644 --- a/sdk/go/aws/directconnect/gatewayAssociationProposal.go +++ b/sdk/go/aws/directconnect/gatewayAssociationProposal.go @@ -36,8 +36,6 @@ import ( // }) // } // ``` -// -// A full example of how to create a VPN Gateway in one AWS account, create a Direct Connect Gateway in a second AWS account, and associate the VPN Gateway with the Direct Connect Gateway via the `directconnect.GatewayAssociationProposal` and `directconnect.GatewayAssociation` resources can be found in [the `./examples/dx-gateway-cross-account-vgw-association` directory within the Github Repository](https://github.com/providers/provider-aws/tree/master/examples/dx-gateway-cross-account-vgw-association). type GatewayAssociationProposal struct { pulumi.CustomResourceState diff --git a/sdk/go/aws/ec2/eip.go b/sdk/go/aws/ec2/eip.go index a5bfca99b64..a506394e5b9 100644 --- a/sdk/go/aws/ec2/eip.go +++ b/sdk/go/aws/ec2/eip.go @@ -183,6 +183,8 @@ type Eip struct { Domain pulumi.StringOutput `pulumi:"domain"` // EC2 instance ID. Instance pulumi.StringOutput `pulumi:"instance"` + // The location from which the IP address is advertised. Use this parameter to limit the address to this location. + NetworkBorderGroup pulumi.StringOutput `pulumi:"networkBorderGroup"` // Network interface ID to associate with. NetworkInterface pulumi.StringOutput `pulumi:"networkInterface"` // The Private DNS associated with the Elastic IP address (if in VPC). @@ -243,6 +245,8 @@ type eipState struct { Domain *string `pulumi:"domain"` // EC2 instance ID. Instance *string `pulumi:"instance"` + // The location from which the IP address is advertised. Use this parameter to limit the address to this location. + NetworkBorderGroup *string `pulumi:"networkBorderGroup"` // Network interface ID to associate with. NetworkInterface *string `pulumi:"networkInterface"` // The Private DNS associated with the Elastic IP address (if in VPC). @@ -276,6 +280,8 @@ type EipState struct { Domain pulumi.StringPtrInput // EC2 instance ID. Instance pulumi.StringPtrInput + // The location from which the IP address is advertised. Use this parameter to limit the address to this location. + NetworkBorderGroup pulumi.StringPtrInput // Network interface ID to associate with. NetworkInterface pulumi.StringPtrInput // The Private DNS associated with the Elastic IP address (if in VPC). @@ -307,6 +313,8 @@ type eipArgs struct { CustomerOwnedIpv4Pool *string `pulumi:"customerOwnedIpv4Pool"` // EC2 instance ID. Instance *string `pulumi:"instance"` + // The location from which the IP address is advertised. Use this parameter to limit the address to this location. + NetworkBorderGroup *string `pulumi:"networkBorderGroup"` // Network interface ID to associate with. NetworkInterface *string `pulumi:"networkInterface"` // EC2 IPv4 address pool identifier or `amazon`. This option is only available for VPC EIPs. @@ -327,6 +335,8 @@ type EipArgs struct { CustomerOwnedIpv4Pool pulumi.StringPtrInput // EC2 instance ID. Instance pulumi.StringPtrInput + // The location from which the IP address is advertised. Use this parameter to limit the address to this location. + NetworkBorderGroup pulumi.StringPtrInput // Network interface ID to associate with. NetworkInterface pulumi.StringPtrInput // EC2 IPv4 address pool identifier or `amazon`. This option is only available for VPC EIPs. diff --git a/sdk/go/aws/ec2transitgateway/vpcAttachment.go b/sdk/go/aws/ec2transitgateway/vpcAttachment.go index eee5bd44378..af982830ec3 100644 --- a/sdk/go/aws/ec2transitgateway/vpcAttachment.go +++ b/sdk/go/aws/ec2transitgateway/vpcAttachment.go @@ -38,8 +38,6 @@ import ( // }) // } // ``` -// -// A full example of how to create a Transit Gateway in one AWS account, share it with a second AWS account, and attach a VPC in the second account to the Transit Gateway via the `ec2transitgateway.VpcAttachment` and `ec2transitgateway.VpcAttachmentAccepter` resources can be found in [the `./examples/transit-gateway-cross-account-vpc-attachment` directory within the Github Repository](https://github.com/providers/provider-aws/tree/master/examples/transit-gateway-cross-account-vpc-attachment). type VpcAttachment struct { pulumi.CustomResourceState diff --git a/sdk/go/aws/ec2transitgateway/vpcAttachmentAccepter.go b/sdk/go/aws/ec2transitgateway/vpcAttachmentAccepter.go index fd3d4860990..b619616e907 100644 --- a/sdk/go/aws/ec2transitgateway/vpcAttachmentAccepter.go +++ b/sdk/go/aws/ec2transitgateway/vpcAttachmentAccepter.go @@ -43,8 +43,6 @@ import ( // }) // } // ``` -// -// A full example of how to how to create a Transit Gateway in one AWS account, share it with a second AWS account, and attach a VPC in the second account to the Transit Gateway via the `ec2transitgateway.VpcAttachment` and `ec2transitgateway.VpcAttachmentAccepter` resources can be found in [the `./examples/transit-gateway-cross-account-vpc-attachment` directory within the Github Repository](https://github.com/providers/provider-aws/tree/master/examples/transit-gateway-cross-account-vpc-attachment). type VpcAttachmentAccepter struct { pulumi.CustomResourceState diff --git a/sdk/go/aws/glue/crawler.go b/sdk/go/aws/glue/crawler.go index b9d9cc49d53..c706ce3fa10 100644 --- a/sdk/go/aws/glue/crawler.go +++ b/sdk/go/aws/glue/crawler.go @@ -102,6 +102,37 @@ import ( // }) // } // ``` +// ### MongoDB Target +// +// ```go +// package main +// +// import ( +// "fmt" +// +// "github.com/pulumi/pulumi-aws/sdk/v3/go/aws/glue" +// "github.com/pulumi/pulumi/sdk/v2/go/pulumi" +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := glue.NewCrawler(ctx, "example", &glue.CrawlerArgs{ +// DatabaseName: pulumi.Any(aws_glue_catalog_database.Example.Name), +// Role: pulumi.Any(aws_iam_role.Example.Arn), +// MongodbTargets: glue.CrawlerMongodbTargetArray{ +// &glue.CrawlerMongodbTargetArgs{ +// ConnectionName: pulumi.Any(aws_glue_connection.Example.Name), +// Path: pulumi.String(fmt.Sprintf("%v%v", "database-name/", "%")), +// }, +// }, +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// ``` type Crawler struct { pulumi.CustomResourceState @@ -120,6 +151,8 @@ type Crawler struct { DynamodbTargets CrawlerDynamodbTargetArrayOutput `pulumi:"dynamodbTargets"` // List of nested JBDC target arguments. See below. JdbcTargets CrawlerJdbcTargetArrayOutput `pulumi:"jdbcTargets"` + // List nested MongoDB target arguments. See below. + MongodbTargets CrawlerMongodbTargetArrayOutput `pulumi:"mongodbTargets"` // Name of the crawler. Name pulumi.StringOutput `pulumi:"name"` // The IAM role friendly name (including path without leading slash), or ARN of an IAM role, used by the crawler to access other resources. @@ -187,6 +220,8 @@ type crawlerState struct { DynamodbTargets []CrawlerDynamodbTarget `pulumi:"dynamodbTargets"` // List of nested JBDC target arguments. See below. JdbcTargets []CrawlerJdbcTarget `pulumi:"jdbcTargets"` + // List nested MongoDB target arguments. See below. + MongodbTargets []CrawlerMongodbTarget `pulumi:"mongodbTargets"` // Name of the crawler. Name *string `pulumi:"name"` // The IAM role friendly name (including path without leading slash), or ARN of an IAM role, used by the crawler to access other resources. @@ -221,6 +256,8 @@ type CrawlerState struct { DynamodbTargets CrawlerDynamodbTargetArrayInput // List of nested JBDC target arguments. See below. JdbcTargets CrawlerJdbcTargetArrayInput + // List nested MongoDB target arguments. See below. + MongodbTargets CrawlerMongodbTargetArrayInput // Name of the crawler. Name pulumi.StringPtrInput // The IAM role friendly name (including path without leading slash), or ARN of an IAM role, used by the crawler to access other resources. @@ -257,6 +294,8 @@ type crawlerArgs struct { DynamodbTargets []CrawlerDynamodbTarget `pulumi:"dynamodbTargets"` // List of nested JBDC target arguments. See below. JdbcTargets []CrawlerJdbcTarget `pulumi:"jdbcTargets"` + // List nested MongoDB target arguments. See below. + MongodbTargets []CrawlerMongodbTarget `pulumi:"mongodbTargets"` // Name of the crawler. Name *string `pulumi:"name"` // The IAM role friendly name (including path without leading slash), or ARN of an IAM role, used by the crawler to access other resources. @@ -290,6 +329,8 @@ type CrawlerArgs struct { DynamodbTargets CrawlerDynamodbTargetArrayInput // List of nested JBDC target arguments. See below. JdbcTargets CrawlerJdbcTargetArrayInput + // List nested MongoDB target arguments. See below. + MongodbTargets CrawlerMongodbTargetArrayInput // Name of the crawler. Name pulumi.StringPtrInput // The IAM role friendly name (including path without leading slash), or ARN of an IAM role, used by the crawler to access other resources. diff --git a/sdk/go/aws/glue/pulumiTypes.go b/sdk/go/aws/glue/pulumiTypes.go index 3a0bc1aca91..63e4b2a3d99 100644 --- a/sdk/go/aws/glue/pulumiTypes.go +++ b/sdk/go/aws/glue/pulumiTypes.go @@ -2207,6 +2207,121 @@ func (o CrawlerJdbcTargetArrayOutput) Index(i pulumi.IntInput) CrawlerJdbcTarget }).(CrawlerJdbcTargetOutput) } +type CrawlerMongodbTarget struct { + // The name of the connection to use to connect to the Amazon DocumentDB or MongoDB target. + ConnectionName string `pulumi:"connectionName"` + // The path of the Amazon DocumentDB or MongoDB target (database/collection). + Path string `pulumi:"path"` + // Indicates whether to scan all the records, or to sample rows from the table. Scanning all the records can take a long time when the table is not a high throughput table. Default value is `true`. + ScanAll *bool `pulumi:"scanAll"` +} + +// CrawlerMongodbTargetInput is an input type that accepts CrawlerMongodbTargetArgs and CrawlerMongodbTargetOutput values. +// You can construct a concrete instance of `CrawlerMongodbTargetInput` via: +// +// CrawlerMongodbTargetArgs{...} +type CrawlerMongodbTargetInput interface { + pulumi.Input + + ToCrawlerMongodbTargetOutput() CrawlerMongodbTargetOutput + ToCrawlerMongodbTargetOutputWithContext(context.Context) CrawlerMongodbTargetOutput +} + +type CrawlerMongodbTargetArgs struct { + // The name of the connection to use to connect to the Amazon DocumentDB or MongoDB target. + ConnectionName pulumi.StringInput `pulumi:"connectionName"` + // The path of the Amazon DocumentDB or MongoDB target (database/collection). + Path pulumi.StringInput `pulumi:"path"` + // Indicates whether to scan all the records, or to sample rows from the table. Scanning all the records can take a long time when the table is not a high throughput table. Default value is `true`. + ScanAll pulumi.BoolPtrInput `pulumi:"scanAll"` +} + +func (CrawlerMongodbTargetArgs) ElementType() reflect.Type { + return reflect.TypeOf((*CrawlerMongodbTarget)(nil)).Elem() +} + +func (i CrawlerMongodbTargetArgs) ToCrawlerMongodbTargetOutput() CrawlerMongodbTargetOutput { + return i.ToCrawlerMongodbTargetOutputWithContext(context.Background()) +} + +func (i CrawlerMongodbTargetArgs) ToCrawlerMongodbTargetOutputWithContext(ctx context.Context) CrawlerMongodbTargetOutput { + return pulumi.ToOutputWithContext(ctx, i).(CrawlerMongodbTargetOutput) +} + +// CrawlerMongodbTargetArrayInput is an input type that accepts CrawlerMongodbTargetArray and CrawlerMongodbTargetArrayOutput values. +// You can construct a concrete instance of `CrawlerMongodbTargetArrayInput` via: +// +// CrawlerMongodbTargetArray{ CrawlerMongodbTargetArgs{...} } +type CrawlerMongodbTargetArrayInput interface { + pulumi.Input + + ToCrawlerMongodbTargetArrayOutput() CrawlerMongodbTargetArrayOutput + ToCrawlerMongodbTargetArrayOutputWithContext(context.Context) CrawlerMongodbTargetArrayOutput +} + +type CrawlerMongodbTargetArray []CrawlerMongodbTargetInput + +func (CrawlerMongodbTargetArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]CrawlerMongodbTarget)(nil)).Elem() +} + +func (i CrawlerMongodbTargetArray) ToCrawlerMongodbTargetArrayOutput() CrawlerMongodbTargetArrayOutput { + return i.ToCrawlerMongodbTargetArrayOutputWithContext(context.Background()) +} + +func (i CrawlerMongodbTargetArray) ToCrawlerMongodbTargetArrayOutputWithContext(ctx context.Context) CrawlerMongodbTargetArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(CrawlerMongodbTargetArrayOutput) +} + +type CrawlerMongodbTargetOutput struct{ *pulumi.OutputState } + +func (CrawlerMongodbTargetOutput) ElementType() reflect.Type { + return reflect.TypeOf((*CrawlerMongodbTarget)(nil)).Elem() +} + +func (o CrawlerMongodbTargetOutput) ToCrawlerMongodbTargetOutput() CrawlerMongodbTargetOutput { + return o +} + +func (o CrawlerMongodbTargetOutput) ToCrawlerMongodbTargetOutputWithContext(ctx context.Context) CrawlerMongodbTargetOutput { + return o +} + +// The name of the connection to use to connect to the Amazon DocumentDB or MongoDB target. +func (o CrawlerMongodbTargetOutput) ConnectionName() pulumi.StringOutput { + return o.ApplyT(func(v CrawlerMongodbTarget) string { return v.ConnectionName }).(pulumi.StringOutput) +} + +// The path of the Amazon DocumentDB or MongoDB target (database/collection). +func (o CrawlerMongodbTargetOutput) Path() pulumi.StringOutput { + return o.ApplyT(func(v CrawlerMongodbTarget) string { return v.Path }).(pulumi.StringOutput) +} + +// Indicates whether to scan all the records, or to sample rows from the table. Scanning all the records can take a long time when the table is not a high throughput table. Default value is `true`. +func (o CrawlerMongodbTargetOutput) ScanAll() pulumi.BoolPtrOutput { + return o.ApplyT(func(v CrawlerMongodbTarget) *bool { return v.ScanAll }).(pulumi.BoolPtrOutput) +} + +type CrawlerMongodbTargetArrayOutput struct{ *pulumi.OutputState } + +func (CrawlerMongodbTargetArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]CrawlerMongodbTarget)(nil)).Elem() +} + +func (o CrawlerMongodbTargetArrayOutput) ToCrawlerMongodbTargetArrayOutput() CrawlerMongodbTargetArrayOutput { + return o +} + +func (o CrawlerMongodbTargetArrayOutput) ToCrawlerMongodbTargetArrayOutputWithContext(ctx context.Context) CrawlerMongodbTargetArrayOutput { + return o +} + +func (o CrawlerMongodbTargetArrayOutput) Index(i pulumi.IntInput) CrawlerMongodbTargetOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) CrawlerMongodbTarget { + return vs[0].([]CrawlerMongodbTarget)[vs[1].(int)] + }).(CrawlerMongodbTargetOutput) +} + type CrawlerS3Target struct { // The name of the connection to use to connect to the JDBC target. ConnectionName *string `pulumi:"connectionName"` @@ -5477,6 +5592,10 @@ type TriggerAction struct { CrawlerName *string `pulumi:"crawlerName"` // The name of a job to be executed. Conflicts with `crawlerName`. JobName *string `pulumi:"jobName"` + // Specifies configuration properties of a job run notification. see Notification Property details below. + NotificationProperty *TriggerActionNotificationProperty `pulumi:"notificationProperty"` + // The name of the Security Configuration structure to be used with this action. + SecurityConfiguration *string `pulumi:"securityConfiguration"` // The job run timeout in minutes. It overrides the timeout value of the job. Timeout *int `pulumi:"timeout"` } @@ -5499,6 +5618,10 @@ type TriggerActionArgs struct { CrawlerName pulumi.StringPtrInput `pulumi:"crawlerName"` // The name of a job to be executed. Conflicts with `crawlerName`. JobName pulumi.StringPtrInput `pulumi:"jobName"` + // Specifies configuration properties of a job run notification. see Notification Property details below. + NotificationProperty TriggerActionNotificationPropertyPtrInput `pulumi:"notificationProperty"` + // The name of the Security Configuration structure to be used with this action. + SecurityConfiguration pulumi.StringPtrInput `pulumi:"securityConfiguration"` // The job run timeout in minutes. It overrides the timeout value of the job. Timeout pulumi.IntPtrInput `pulumi:"timeout"` } @@ -5569,6 +5692,16 @@ func (o TriggerActionOutput) JobName() pulumi.StringPtrOutput { return o.ApplyT(func(v TriggerAction) *string { return v.JobName }).(pulumi.StringPtrOutput) } +// Specifies configuration properties of a job run notification. see Notification Property details below. +func (o TriggerActionOutput) NotificationProperty() TriggerActionNotificationPropertyPtrOutput { + return o.ApplyT(func(v TriggerAction) *TriggerActionNotificationProperty { return v.NotificationProperty }).(TriggerActionNotificationPropertyPtrOutput) +} + +// The name of the Security Configuration structure to be used with this action. +func (o TriggerActionOutput) SecurityConfiguration() pulumi.StringPtrOutput { + return o.ApplyT(func(v TriggerAction) *string { return v.SecurityConfiguration }).(pulumi.StringPtrOutput) +} + // The job run timeout in minutes. It overrides the timeout value of the job. func (o TriggerActionOutput) Timeout() pulumi.IntPtrOutput { return o.ApplyT(func(v TriggerAction) *int { return v.Timeout }).(pulumi.IntPtrOutput) @@ -5594,6 +5727,137 @@ func (o TriggerActionArrayOutput) Index(i pulumi.IntInput) TriggerActionOutput { }).(TriggerActionOutput) } +type TriggerActionNotificationProperty struct { + // After a job run starts, the number of minutes to wait before sending a job run delay notification. + NotifyDelayAfter *int `pulumi:"notifyDelayAfter"` +} + +// TriggerActionNotificationPropertyInput is an input type that accepts TriggerActionNotificationPropertyArgs and TriggerActionNotificationPropertyOutput values. +// You can construct a concrete instance of `TriggerActionNotificationPropertyInput` via: +// +// TriggerActionNotificationPropertyArgs{...} +type TriggerActionNotificationPropertyInput interface { + pulumi.Input + + ToTriggerActionNotificationPropertyOutput() TriggerActionNotificationPropertyOutput + ToTriggerActionNotificationPropertyOutputWithContext(context.Context) TriggerActionNotificationPropertyOutput +} + +type TriggerActionNotificationPropertyArgs struct { + // After a job run starts, the number of minutes to wait before sending a job run delay notification. + NotifyDelayAfter pulumi.IntPtrInput `pulumi:"notifyDelayAfter"` +} + +func (TriggerActionNotificationPropertyArgs) ElementType() reflect.Type { + return reflect.TypeOf((*TriggerActionNotificationProperty)(nil)).Elem() +} + +func (i TriggerActionNotificationPropertyArgs) ToTriggerActionNotificationPropertyOutput() TriggerActionNotificationPropertyOutput { + return i.ToTriggerActionNotificationPropertyOutputWithContext(context.Background()) +} + +func (i TriggerActionNotificationPropertyArgs) ToTriggerActionNotificationPropertyOutputWithContext(ctx context.Context) TriggerActionNotificationPropertyOutput { + return pulumi.ToOutputWithContext(ctx, i).(TriggerActionNotificationPropertyOutput) +} + +func (i TriggerActionNotificationPropertyArgs) ToTriggerActionNotificationPropertyPtrOutput() TriggerActionNotificationPropertyPtrOutput { + return i.ToTriggerActionNotificationPropertyPtrOutputWithContext(context.Background()) +} + +func (i TriggerActionNotificationPropertyArgs) ToTriggerActionNotificationPropertyPtrOutputWithContext(ctx context.Context) TriggerActionNotificationPropertyPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(TriggerActionNotificationPropertyOutput).ToTriggerActionNotificationPropertyPtrOutputWithContext(ctx) +} + +// TriggerActionNotificationPropertyPtrInput is an input type that accepts TriggerActionNotificationPropertyArgs, TriggerActionNotificationPropertyPtr and TriggerActionNotificationPropertyPtrOutput values. +// You can construct a concrete instance of `TriggerActionNotificationPropertyPtrInput` via: +// +// TriggerActionNotificationPropertyArgs{...} +// +// or: +// +// nil +type TriggerActionNotificationPropertyPtrInput interface { + pulumi.Input + + ToTriggerActionNotificationPropertyPtrOutput() TriggerActionNotificationPropertyPtrOutput + ToTriggerActionNotificationPropertyPtrOutputWithContext(context.Context) TriggerActionNotificationPropertyPtrOutput +} + +type triggerActionNotificationPropertyPtrType TriggerActionNotificationPropertyArgs + +func TriggerActionNotificationPropertyPtr(v *TriggerActionNotificationPropertyArgs) TriggerActionNotificationPropertyPtrInput { + return (*triggerActionNotificationPropertyPtrType)(v) +} + +func (*triggerActionNotificationPropertyPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**TriggerActionNotificationProperty)(nil)).Elem() +} + +func (i *triggerActionNotificationPropertyPtrType) ToTriggerActionNotificationPropertyPtrOutput() TriggerActionNotificationPropertyPtrOutput { + return i.ToTriggerActionNotificationPropertyPtrOutputWithContext(context.Background()) +} + +func (i *triggerActionNotificationPropertyPtrType) ToTriggerActionNotificationPropertyPtrOutputWithContext(ctx context.Context) TriggerActionNotificationPropertyPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(TriggerActionNotificationPropertyPtrOutput) +} + +type TriggerActionNotificationPropertyOutput struct{ *pulumi.OutputState } + +func (TriggerActionNotificationPropertyOutput) ElementType() reflect.Type { + return reflect.TypeOf((*TriggerActionNotificationProperty)(nil)).Elem() +} + +func (o TriggerActionNotificationPropertyOutput) ToTriggerActionNotificationPropertyOutput() TriggerActionNotificationPropertyOutput { + return o +} + +func (o TriggerActionNotificationPropertyOutput) ToTriggerActionNotificationPropertyOutputWithContext(ctx context.Context) TriggerActionNotificationPropertyOutput { + return o +} + +func (o TriggerActionNotificationPropertyOutput) ToTriggerActionNotificationPropertyPtrOutput() TriggerActionNotificationPropertyPtrOutput { + return o.ToTriggerActionNotificationPropertyPtrOutputWithContext(context.Background()) +} + +func (o TriggerActionNotificationPropertyOutput) ToTriggerActionNotificationPropertyPtrOutputWithContext(ctx context.Context) TriggerActionNotificationPropertyPtrOutput { + return o.ApplyT(func(v TriggerActionNotificationProperty) *TriggerActionNotificationProperty { + return &v + }).(TriggerActionNotificationPropertyPtrOutput) +} + +// After a job run starts, the number of minutes to wait before sending a job run delay notification. +func (o TriggerActionNotificationPropertyOutput) NotifyDelayAfter() pulumi.IntPtrOutput { + return o.ApplyT(func(v TriggerActionNotificationProperty) *int { return v.NotifyDelayAfter }).(pulumi.IntPtrOutput) +} + +type TriggerActionNotificationPropertyPtrOutput struct{ *pulumi.OutputState } + +func (TriggerActionNotificationPropertyPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**TriggerActionNotificationProperty)(nil)).Elem() +} + +func (o TriggerActionNotificationPropertyPtrOutput) ToTriggerActionNotificationPropertyPtrOutput() TriggerActionNotificationPropertyPtrOutput { + return o +} + +func (o TriggerActionNotificationPropertyPtrOutput) ToTriggerActionNotificationPropertyPtrOutputWithContext(ctx context.Context) TriggerActionNotificationPropertyPtrOutput { + return o +} + +func (o TriggerActionNotificationPropertyPtrOutput) Elem() TriggerActionNotificationPropertyOutput { + return o.ApplyT(func(v *TriggerActionNotificationProperty) TriggerActionNotificationProperty { return *v }).(TriggerActionNotificationPropertyOutput) +} + +// After a job run starts, the number of minutes to wait before sending a job run delay notification. +func (o TriggerActionNotificationPropertyPtrOutput) NotifyDelayAfter() pulumi.IntPtrOutput { + return o.ApplyT(func(v *TriggerActionNotificationProperty) *int { + if v == nil { + return nil + } + return v.NotifyDelayAfter + }).(pulumi.IntPtrOutput) +} + type TriggerPredicate struct { // A list of the conditions that determine when the trigger will fire. Defined below. Conditions []TriggerPredicateCondition `pulumi:"conditions"` @@ -6366,6 +6630,8 @@ func init() { pulumi.RegisterOutputType(CrawlerDynamodbTargetArrayOutput{}) pulumi.RegisterOutputType(CrawlerJdbcTargetOutput{}) pulumi.RegisterOutputType(CrawlerJdbcTargetArrayOutput{}) + pulumi.RegisterOutputType(CrawlerMongodbTargetOutput{}) + pulumi.RegisterOutputType(CrawlerMongodbTargetArrayOutput{}) pulumi.RegisterOutputType(CrawlerS3TargetOutput{}) pulumi.RegisterOutputType(CrawlerS3TargetArrayOutput{}) pulumi.RegisterOutputType(CrawlerSchemaChangePolicyOutput{}) @@ -6410,6 +6676,8 @@ func init() { pulumi.RegisterOutputType(SecurityConfigurationEncryptionConfigurationS3EncryptionPtrOutput{}) pulumi.RegisterOutputType(TriggerActionOutput{}) pulumi.RegisterOutputType(TriggerActionArrayOutput{}) + pulumi.RegisterOutputType(TriggerActionNotificationPropertyOutput{}) + pulumi.RegisterOutputType(TriggerActionNotificationPropertyPtrOutput{}) pulumi.RegisterOutputType(TriggerPredicateOutput{}) pulumi.RegisterOutputType(TriggerPredicatePtrOutput{}) pulumi.RegisterOutputType(TriggerPredicateConditionOutput{}) diff --git a/sdk/go/aws/kinesis/pulumiTypes.go b/sdk/go/aws/kinesis/pulumiTypes.go index a9bf9d1a869..d043f593071 100644 --- a/sdk/go/aws/kinesis/pulumiTypes.go +++ b/sdk/go/aws/kinesis/pulumiTypes.go @@ -782,7 +782,7 @@ func (o AnalyticsApplicationInputsKinesisStreamPtrOutput) RoleArn() pulumi.Strin type AnalyticsApplicationInputsParallelism struct { // The Count of streams. - Count int `pulumi:"count"` + Count *int `pulumi:"count"` } // AnalyticsApplicationInputsParallelismInput is an input type that accepts AnalyticsApplicationInputsParallelismArgs and AnalyticsApplicationInputsParallelismOutput values. @@ -798,7 +798,7 @@ type AnalyticsApplicationInputsParallelismInput interface { type AnalyticsApplicationInputsParallelismArgs struct { // The Count of streams. - Count pulumi.IntInput `pulumi:"count"` + Count pulumi.IntPtrInput `pulumi:"count"` } func (AnalyticsApplicationInputsParallelismArgs) ElementType() reflect.Type { @@ -879,8 +879,8 @@ func (o AnalyticsApplicationInputsParallelismOutput) ToAnalyticsApplicationInput } // The Count of streams. -func (o AnalyticsApplicationInputsParallelismOutput) Count() pulumi.IntOutput { - return o.ApplyT(func(v AnalyticsApplicationInputsParallelism) int { return v.Count }).(pulumi.IntOutput) +func (o AnalyticsApplicationInputsParallelismOutput) Count() pulumi.IntPtrOutput { + return o.ApplyT(func(v AnalyticsApplicationInputsParallelism) *int { return v.Count }).(pulumi.IntPtrOutput) } type AnalyticsApplicationInputsParallelismPtrOutput struct{ *pulumi.OutputState } @@ -907,7 +907,7 @@ func (o AnalyticsApplicationInputsParallelismPtrOutput) Count() pulumi.IntPtrOut if v == nil { return nil } - return &v.Count + return v.Count }).(pulumi.IntPtrOutput) } diff --git a/sdk/go/aws/lex/bot.go b/sdk/go/aws/lex/bot.go index 550efc2e2cb..fa90b0733c2 100644 --- a/sdk/go/aws/lex/bot.go +++ b/sdk/go/aws/lex/bot.go @@ -82,7 +82,7 @@ type Bot struct { CreateVersion pulumi.BoolPtrOutput `pulumi:"createVersion"` // The date when the bot version was created. CreatedDate pulumi.StringOutput `pulumi:"createdDate"` - // A description of the bot. + // A description of the bot. Must be less than or equal to 200 characters in length. Description pulumi.StringPtrOutput `pulumi:"description"` // When set to true user utterances are sent to Amazon Comprehend for sentiment analysis. If you don't specify detectSentiment, the default is `false`. DetectSentiment pulumi.BoolPtrOutput `pulumi:"detectSentiment"` @@ -90,17 +90,17 @@ type Bot struct { EnableModelImprovements pulumi.BoolPtrOutput `pulumi:"enableModelImprovements"` // If status is FAILED, Amazon Lex provides the reason that it failed to build the bot. FailureReason pulumi.StringOutput `pulumi:"failureReason"` - // The maximum time in seconds that Amazon Lex retains the data gathered in a conversation. Default is `300`. + // The maximum time in seconds that Amazon Lex retains the data gathered in a conversation. Default is `300`. Must be a number between 60 and 86400 (inclusive). IdleSessionTtlInSeconds pulumi.IntPtrOutput `pulumi:"idleSessionTtlInSeconds"` - // A set of Intent objects. Each intent represents a command that a user can express. Attributes are documented under intent. + // A set of Intent objects. Each intent represents a command that a user can express. Attributes are documented under intent. Can have up to 100 Intent objects. Intents BotIntentArrayOutput `pulumi:"intents"` // The date when the $LATEST version of this bot was updated. LastUpdatedDate pulumi.StringOutput `pulumi:"lastUpdatedDate"` // Specifies the target locale for the bot. Any intent used in the bot must be compatible with the locale of the bot. For available locales, see [Amazon Lex Bot PutBot API Docs](https://docs.aws.amazon.com/lex/latest/dg/API_PutBot.html#lex-PutBot-request-locale). Default is `en-US`. Locale pulumi.StringPtrOutput `pulumi:"locale"` - // The name of the bot that you want to create, case sensitive. + // The name of the bot that you want to create, case sensitive. Must be between 2 and 50 characters in length. Name pulumi.StringOutput `pulumi:"name"` - // Determines the threshold where Amazon Lex will insert the AMAZON.FallbackIntent, AMAZON.KendraSearchIntent, or both when returning alternative intents in a PostContent or PostText response. AMAZON.FallbackIntent and AMAZON.KendraSearchIntent are only inserted if they are configured for the bot. For more information see [Amazon Lex Bot PutBot API Docs](https://docs.aws.amazon.com/lex/latest/dg/API_PutBot.html#lex-PutBot-request-nluIntentConfidenceThreshold) This value requires `enableModelImprovements` to be set to `true` and the default is `0`. + // Determines the threshold where Amazon Lex will insert the AMAZON.FallbackIntent, AMAZON.KendraSearchIntent, or both when returning alternative intents in a PostContent or PostText response. AMAZON.FallbackIntent and AMAZON.KendraSearchIntent are only inserted if they are configured for the bot. For more information see [Amazon Lex Bot PutBot API Docs](https://docs.aws.amazon.com/lex/latest/dg/API_PutBot.html#lex-PutBot-request-nluIntentConfidenceThreshold) This value requires `enableModelImprovements` to be set to `true` and the default is `0`. Must be a float between 0 and 1. NluIntentConfidenceThreshold pulumi.Float64PtrOutput `pulumi:"nluIntentConfidenceThreshold"` // If you set the `processBehavior` element to `BUILD`, Amazon Lex builds the bot so that it can be run. If you set the element to `SAVE` Amazon Lex saves the bot, but doesn't build it. Default is `SAVE`. ProcessBehavior pulumi.StringPtrOutput `pulumi:"processBehavior"` @@ -166,7 +166,7 @@ type botState struct { CreateVersion *bool `pulumi:"createVersion"` // The date when the bot version was created. CreatedDate *string `pulumi:"createdDate"` - // A description of the bot. + // A description of the bot. Must be less than or equal to 200 characters in length. Description *string `pulumi:"description"` // When set to true user utterances are sent to Amazon Comprehend for sentiment analysis. If you don't specify detectSentiment, the default is `false`. DetectSentiment *bool `pulumi:"detectSentiment"` @@ -174,17 +174,17 @@ type botState struct { EnableModelImprovements *bool `pulumi:"enableModelImprovements"` // If status is FAILED, Amazon Lex provides the reason that it failed to build the bot. FailureReason *string `pulumi:"failureReason"` - // The maximum time in seconds that Amazon Lex retains the data gathered in a conversation. Default is `300`. + // The maximum time in seconds that Amazon Lex retains the data gathered in a conversation. Default is `300`. Must be a number between 60 and 86400 (inclusive). IdleSessionTtlInSeconds *int `pulumi:"idleSessionTtlInSeconds"` - // A set of Intent objects. Each intent represents a command that a user can express. Attributes are documented under intent. + // A set of Intent objects. Each intent represents a command that a user can express. Attributes are documented under intent. Can have up to 100 Intent objects. Intents []BotIntent `pulumi:"intents"` // The date when the $LATEST version of this bot was updated. LastUpdatedDate *string `pulumi:"lastUpdatedDate"` // Specifies the target locale for the bot. Any intent used in the bot must be compatible with the locale of the bot. For available locales, see [Amazon Lex Bot PutBot API Docs](https://docs.aws.amazon.com/lex/latest/dg/API_PutBot.html#lex-PutBot-request-locale). Default is `en-US`. Locale *string `pulumi:"locale"` - // The name of the bot that you want to create, case sensitive. + // The name of the bot that you want to create, case sensitive. Must be between 2 and 50 characters in length. Name *string `pulumi:"name"` - // Determines the threshold where Amazon Lex will insert the AMAZON.FallbackIntent, AMAZON.KendraSearchIntent, or both when returning alternative intents in a PostContent or PostText response. AMAZON.FallbackIntent and AMAZON.KendraSearchIntent are only inserted if they are configured for the bot. For more information see [Amazon Lex Bot PutBot API Docs](https://docs.aws.amazon.com/lex/latest/dg/API_PutBot.html#lex-PutBot-request-nluIntentConfidenceThreshold) This value requires `enableModelImprovements` to be set to `true` and the default is `0`. + // Determines the threshold where Amazon Lex will insert the AMAZON.FallbackIntent, AMAZON.KendraSearchIntent, or both when returning alternative intents in a PostContent or PostText response. AMAZON.FallbackIntent and AMAZON.KendraSearchIntent are only inserted if they are configured for the bot. For more information see [Amazon Lex Bot PutBot API Docs](https://docs.aws.amazon.com/lex/latest/dg/API_PutBot.html#lex-PutBot-request-nluIntentConfidenceThreshold) This value requires `enableModelImprovements` to be set to `true` and the default is `0`. Must be a float between 0 and 1. NluIntentConfidenceThreshold *float64 `pulumi:"nluIntentConfidenceThreshold"` // If you set the `processBehavior` element to `BUILD`, Amazon Lex builds the bot so that it can be run. If you set the element to `SAVE` Amazon Lex saves the bot, but doesn't build it. Default is `SAVE`. ProcessBehavior *string `pulumi:"processBehavior"` @@ -214,7 +214,7 @@ type BotState struct { CreateVersion pulumi.BoolPtrInput // The date when the bot version was created. CreatedDate pulumi.StringPtrInput - // A description of the bot. + // A description of the bot. Must be less than or equal to 200 characters in length. Description pulumi.StringPtrInput // When set to true user utterances are sent to Amazon Comprehend for sentiment analysis. If you don't specify detectSentiment, the default is `false`. DetectSentiment pulumi.BoolPtrInput @@ -222,17 +222,17 @@ type BotState struct { EnableModelImprovements pulumi.BoolPtrInput // If status is FAILED, Amazon Lex provides the reason that it failed to build the bot. FailureReason pulumi.StringPtrInput - // The maximum time in seconds that Amazon Lex retains the data gathered in a conversation. Default is `300`. + // The maximum time in seconds that Amazon Lex retains the data gathered in a conversation. Default is `300`. Must be a number between 60 and 86400 (inclusive). IdleSessionTtlInSeconds pulumi.IntPtrInput - // A set of Intent objects. Each intent represents a command that a user can express. Attributes are documented under intent. + // A set of Intent objects. Each intent represents a command that a user can express. Attributes are documented under intent. Can have up to 100 Intent objects. Intents BotIntentArrayInput // The date when the $LATEST version of this bot was updated. LastUpdatedDate pulumi.StringPtrInput // Specifies the target locale for the bot. Any intent used in the bot must be compatible with the locale of the bot. For available locales, see [Amazon Lex Bot PutBot API Docs](https://docs.aws.amazon.com/lex/latest/dg/API_PutBot.html#lex-PutBot-request-locale). Default is `en-US`. Locale pulumi.StringPtrInput - // The name of the bot that you want to create, case sensitive. + // The name of the bot that you want to create, case sensitive. Must be between 2 and 50 characters in length. Name pulumi.StringPtrInput - // Determines the threshold where Amazon Lex will insert the AMAZON.FallbackIntent, AMAZON.KendraSearchIntent, or both when returning alternative intents in a PostContent or PostText response. AMAZON.FallbackIntent and AMAZON.KendraSearchIntent are only inserted if they are configured for the bot. For more information see [Amazon Lex Bot PutBot API Docs](https://docs.aws.amazon.com/lex/latest/dg/API_PutBot.html#lex-PutBot-request-nluIntentConfidenceThreshold) This value requires `enableModelImprovements` to be set to `true` and the default is `0`. + // Determines the threshold where Amazon Lex will insert the AMAZON.FallbackIntent, AMAZON.KendraSearchIntent, or both when returning alternative intents in a PostContent or PostText response. AMAZON.FallbackIntent and AMAZON.KendraSearchIntent are only inserted if they are configured for the bot. For more information see [Amazon Lex Bot PutBot API Docs](https://docs.aws.amazon.com/lex/latest/dg/API_PutBot.html#lex-PutBot-request-nluIntentConfidenceThreshold) This value requires `enableModelImprovements` to be set to `true` and the default is `0`. Must be a float between 0 and 1. NluIntentConfidenceThreshold pulumi.Float64PtrInput // If you set the `processBehavior` element to `BUILD`, Amazon Lex builds the bot so that it can be run. If you set the element to `SAVE` Amazon Lex saves the bot, but doesn't build it. Default is `SAVE`. ProcessBehavior pulumi.StringPtrInput @@ -260,21 +260,21 @@ type botArgs struct { ClarificationPrompt *BotClarificationPrompt `pulumi:"clarificationPrompt"` // Determines if a new bot version is created when the initial resource is created and on each update. Defaults to `false`. CreateVersion *bool `pulumi:"createVersion"` - // A description of the bot. + // A description of the bot. Must be less than or equal to 200 characters in length. Description *string `pulumi:"description"` // When set to true user utterances are sent to Amazon Comprehend for sentiment analysis. If you don't specify detectSentiment, the default is `false`. DetectSentiment *bool `pulumi:"detectSentiment"` // Set to `true` to enable access to natural language understanding improvements. When you set the `enableModelImprovements` parameter to true you can use the `nluIntentConfidenceThreshold` parameter to configure confidence scores. For more information, see [Confidence Scores](https://docs.aws.amazon.com/lex/latest/dg/confidence-scores.html). You can only set the `enableModelImprovements` parameter in certain Regions. If you set the parameter to true, your bot has access to accuracy improvements. For more information see the [Amazon Lex Bot PutBot API Docs](https://docs.aws.amazon.com/lex/latest/dg/API_PutBot.html#lex-PutBot-request-enableModelImprovements). EnableModelImprovements *bool `pulumi:"enableModelImprovements"` - // The maximum time in seconds that Amazon Lex retains the data gathered in a conversation. Default is `300`. + // The maximum time in seconds that Amazon Lex retains the data gathered in a conversation. Default is `300`. Must be a number between 60 and 86400 (inclusive). IdleSessionTtlInSeconds *int `pulumi:"idleSessionTtlInSeconds"` - // A set of Intent objects. Each intent represents a command that a user can express. Attributes are documented under intent. + // A set of Intent objects. Each intent represents a command that a user can express. Attributes are documented under intent. Can have up to 100 Intent objects. Intents []BotIntent `pulumi:"intents"` // Specifies the target locale for the bot. Any intent used in the bot must be compatible with the locale of the bot. For available locales, see [Amazon Lex Bot PutBot API Docs](https://docs.aws.amazon.com/lex/latest/dg/API_PutBot.html#lex-PutBot-request-locale). Default is `en-US`. Locale *string `pulumi:"locale"` - // The name of the bot that you want to create, case sensitive. + // The name of the bot that you want to create, case sensitive. Must be between 2 and 50 characters in length. Name *string `pulumi:"name"` - // Determines the threshold where Amazon Lex will insert the AMAZON.FallbackIntent, AMAZON.KendraSearchIntent, or both when returning alternative intents in a PostContent or PostText response. AMAZON.FallbackIntent and AMAZON.KendraSearchIntent are only inserted if they are configured for the bot. For more information see [Amazon Lex Bot PutBot API Docs](https://docs.aws.amazon.com/lex/latest/dg/API_PutBot.html#lex-PutBot-request-nluIntentConfidenceThreshold) This value requires `enableModelImprovements` to be set to `true` and the default is `0`. + // Determines the threshold where Amazon Lex will insert the AMAZON.FallbackIntent, AMAZON.KendraSearchIntent, or both when returning alternative intents in a PostContent or PostText response. AMAZON.FallbackIntent and AMAZON.KendraSearchIntent are only inserted if they are configured for the bot. For more information see [Amazon Lex Bot PutBot API Docs](https://docs.aws.amazon.com/lex/latest/dg/API_PutBot.html#lex-PutBot-request-nluIntentConfidenceThreshold) This value requires `enableModelImprovements` to be set to `true` and the default is `0`. Must be a float between 0 and 1. NluIntentConfidenceThreshold *float64 `pulumi:"nluIntentConfidenceThreshold"` // If you set the `processBehavior` element to `BUILD`, Amazon Lex builds the bot so that it can be run. If you set the element to `SAVE` Amazon Lex saves the bot, but doesn't build it. Default is `SAVE`. ProcessBehavior *string `pulumi:"processBehavior"` @@ -292,21 +292,21 @@ type BotArgs struct { ClarificationPrompt BotClarificationPromptPtrInput // Determines if a new bot version is created when the initial resource is created and on each update. Defaults to `false`. CreateVersion pulumi.BoolPtrInput - // A description of the bot. + // A description of the bot. Must be less than or equal to 200 characters in length. Description pulumi.StringPtrInput // When set to true user utterances are sent to Amazon Comprehend for sentiment analysis. If you don't specify detectSentiment, the default is `false`. DetectSentiment pulumi.BoolPtrInput // Set to `true` to enable access to natural language understanding improvements. When you set the `enableModelImprovements` parameter to true you can use the `nluIntentConfidenceThreshold` parameter to configure confidence scores. For more information, see [Confidence Scores](https://docs.aws.amazon.com/lex/latest/dg/confidence-scores.html). You can only set the `enableModelImprovements` parameter in certain Regions. If you set the parameter to true, your bot has access to accuracy improvements. For more information see the [Amazon Lex Bot PutBot API Docs](https://docs.aws.amazon.com/lex/latest/dg/API_PutBot.html#lex-PutBot-request-enableModelImprovements). EnableModelImprovements pulumi.BoolPtrInput - // The maximum time in seconds that Amazon Lex retains the data gathered in a conversation. Default is `300`. + // The maximum time in seconds that Amazon Lex retains the data gathered in a conversation. Default is `300`. Must be a number between 60 and 86400 (inclusive). IdleSessionTtlInSeconds pulumi.IntPtrInput - // A set of Intent objects. Each intent represents a command that a user can express. Attributes are documented under intent. + // A set of Intent objects. Each intent represents a command that a user can express. Attributes are documented under intent. Can have up to 100 Intent objects. Intents BotIntentArrayInput // Specifies the target locale for the bot. Any intent used in the bot must be compatible with the locale of the bot. For available locales, see [Amazon Lex Bot PutBot API Docs](https://docs.aws.amazon.com/lex/latest/dg/API_PutBot.html#lex-PutBot-request-locale). Default is `en-US`. Locale pulumi.StringPtrInput - // The name of the bot that you want to create, case sensitive. + // The name of the bot that you want to create, case sensitive. Must be between 2 and 50 characters in length. Name pulumi.StringPtrInput - // Determines the threshold where Amazon Lex will insert the AMAZON.FallbackIntent, AMAZON.KendraSearchIntent, or both when returning alternative intents in a PostContent or PostText response. AMAZON.FallbackIntent and AMAZON.KendraSearchIntent are only inserted if they are configured for the bot. For more information see [Amazon Lex Bot PutBot API Docs](https://docs.aws.amazon.com/lex/latest/dg/API_PutBot.html#lex-PutBot-request-nluIntentConfidenceThreshold) This value requires `enableModelImprovements` to be set to `true` and the default is `0`. + // Determines the threshold where Amazon Lex will insert the AMAZON.FallbackIntent, AMAZON.KendraSearchIntent, or both when returning alternative intents in a PostContent or PostText response. AMAZON.FallbackIntent and AMAZON.KendraSearchIntent are only inserted if they are configured for the bot. For more information see [Amazon Lex Bot PutBot API Docs](https://docs.aws.amazon.com/lex/latest/dg/API_PutBot.html#lex-PutBot-request-nluIntentConfidenceThreshold) This value requires `enableModelImprovements` to be set to `true` and the default is `0`. Must be a float between 0 and 1. NluIntentConfidenceThreshold pulumi.Float64PtrInput // If you set the `processBehavior` element to `BUILD`, Amazon Lex builds the bot so that it can be run. If you set the element to `SAVE` Amazon Lex saves the bot, but doesn't build it. Default is `SAVE`. ProcessBehavior pulumi.StringPtrInput diff --git a/sdk/go/aws/lex/botAlias.go b/sdk/go/aws/lex/botAlias.go index 20a10763857..7adf850de94 100644 --- a/sdk/go/aws/lex/botAlias.go +++ b/sdk/go/aws/lex/botAlias.go @@ -53,11 +53,11 @@ type BotAlias struct { ConversationLogs BotAliasConversationLogsPtrOutput `pulumi:"conversationLogs"` // The date that the bot alias was created. CreatedDate pulumi.StringOutput `pulumi:"createdDate"` - // A description of the alias. + // A description of the alias. Must be less than or equal to 200 characters in length. Description pulumi.StringPtrOutput `pulumi:"description"` // The date that the bot alias was updated. When you create a resource, the creation date and the last updated date are the same. LastUpdatedDate pulumi.StringOutput `pulumi:"lastUpdatedDate"` - // The name of the alias. The name is not case sensitive. + // The name of the alias. The name is not case sensitive. Must be less than or equal to 100 characters in length. Name pulumi.StringOutput `pulumi:"name"` } @@ -107,11 +107,11 @@ type botAliasState struct { ConversationLogs *BotAliasConversationLogs `pulumi:"conversationLogs"` // The date that the bot alias was created. CreatedDate *string `pulumi:"createdDate"` - // A description of the alias. + // A description of the alias. Must be less than or equal to 200 characters in length. Description *string `pulumi:"description"` // The date that the bot alias was updated. When you create a resource, the creation date and the last updated date are the same. LastUpdatedDate *string `pulumi:"lastUpdatedDate"` - // The name of the alias. The name is not case sensitive. + // The name of the alias. The name is not case sensitive. Must be less than or equal to 100 characters in length. Name *string `pulumi:"name"` } @@ -128,11 +128,11 @@ type BotAliasState struct { ConversationLogs BotAliasConversationLogsPtrInput // The date that the bot alias was created. CreatedDate pulumi.StringPtrInput - // A description of the alias. + // A description of the alias. Must be less than or equal to 200 characters in length. Description pulumi.StringPtrInput // The date that the bot alias was updated. When you create a resource, the creation date and the last updated date are the same. LastUpdatedDate pulumi.StringPtrInput - // The name of the alias. The name is not case sensitive. + // The name of the alias. The name is not case sensitive. Must be less than or equal to 100 characters in length. Name pulumi.StringPtrInput } @@ -147,9 +147,9 @@ type botAliasArgs struct { BotVersion string `pulumi:"botVersion"` // The settings that determine how Amazon Lex uses conversation logs for the alias. Attributes are documented under conversation_logs. ConversationLogs *BotAliasConversationLogs `pulumi:"conversationLogs"` - // A description of the alias. + // A description of the alias. Must be less than or equal to 200 characters in length. Description *string `pulumi:"description"` - // The name of the alias. The name is not case sensitive. + // The name of the alias. The name is not case sensitive. Must be less than or equal to 100 characters in length. Name *string `pulumi:"name"` } @@ -161,9 +161,9 @@ type BotAliasArgs struct { BotVersion pulumi.StringInput // The settings that determine how Amazon Lex uses conversation logs for the alias. Attributes are documented under conversation_logs. ConversationLogs BotAliasConversationLogsPtrInput - // A description of the alias. + // A description of the alias. Must be less than or equal to 200 characters in length. Description pulumi.StringPtrInput - // The name of the alias. The name is not case sensitive. + // The name of the alias. The name is not case sensitive. Must be less than or equal to 100 characters in length. Name pulumi.StringPtrInput } diff --git a/sdk/go/aws/lex/intent.go b/sdk/go/aws/lex/intent.go index 3431e881883..cb34335c8d4 100644 --- a/sdk/go/aws/lex/intent.go +++ b/sdk/go/aws/lex/intent.go @@ -147,7 +147,7 @@ type Intent struct { CreateVersion pulumi.BoolPtrOutput `pulumi:"createVersion"` // The date when the intent version was created. CreatedDate pulumi.StringOutput `pulumi:"createdDate"` - // A description of the bot. + // A description of the bot. Must be less than or equal to 200 characters in length. Description pulumi.StringPtrOutput `pulumi:"description"` // Specifies a Lambda function to invoke for each user input. You can // invoke this Lambda function to personalize user interaction. Attributes are documented under code_hook. @@ -163,7 +163,7 @@ type Intent struct { FulfillmentActivity IntentFulfillmentActivityOutput `pulumi:"fulfillmentActivity"` // The date when the $LATEST version of this intent was updated. LastUpdatedDate pulumi.StringOutput `pulumi:"lastUpdatedDate"` - // The name of the intent slot that you want to create. The name is case sensitive. + // The name of the intent slot that you want to create. The name is case sensitive. Must be less than or equal to 100 characters in length. Name pulumi.StringOutput `pulumi:"name"` // A unique identifier for the built-in intent to base this // intent on. To find the signature for an intent, see @@ -176,7 +176,7 @@ type Intent struct { RejectionStatement IntentRejectionStatementPtrOutput `pulumi:"rejectionStatement"` // If you know a specific pattern with which users might respond to // an Amazon Lex request for a slot value, you can provide those utterances to improve accuracy. This - // is optional. In most cases, Amazon Lex is capable of understanding user utterances. + // is optional. In most cases, Amazon Lex is capable of understanding user utterances. Must have between 1 and 10 items in the list, and each item must be less than or equal to 200 characters in length. SampleUtterances pulumi.StringArrayOutput `pulumi:"sampleUtterances"` // An list of intent slots. At runtime, Amazon Lex elicits required slot values // from the user using prompts defined in the slots. Attributes are documented under slot. @@ -236,7 +236,7 @@ type intentState struct { CreateVersion *bool `pulumi:"createVersion"` // The date when the intent version was created. CreatedDate *string `pulumi:"createdDate"` - // A description of the bot. + // A description of the bot. Must be less than or equal to 200 characters in length. Description *string `pulumi:"description"` // Specifies a Lambda function to invoke for each user input. You can // invoke this Lambda function to personalize user interaction. Attributes are documented under code_hook. @@ -252,7 +252,7 @@ type intentState struct { FulfillmentActivity *IntentFulfillmentActivity `pulumi:"fulfillmentActivity"` // The date when the $LATEST version of this intent was updated. LastUpdatedDate *string `pulumi:"lastUpdatedDate"` - // The name of the intent slot that you want to create. The name is case sensitive. + // The name of the intent slot that you want to create. The name is case sensitive. Must be less than or equal to 100 characters in length. Name *string `pulumi:"name"` // A unique identifier for the built-in intent to base this // intent on. To find the signature for an intent, see @@ -265,7 +265,7 @@ type intentState struct { RejectionStatement *IntentRejectionStatement `pulumi:"rejectionStatement"` // If you know a specific pattern with which users might respond to // an Amazon Lex request for a slot value, you can provide those utterances to improve accuracy. This - // is optional. In most cases, Amazon Lex is capable of understanding user utterances. + // is optional. In most cases, Amazon Lex is capable of understanding user utterances. Must have between 1 and 10 items in the list, and each item must be less than or equal to 200 characters in length. SampleUtterances []string `pulumi:"sampleUtterances"` // An list of intent slots. At runtime, Amazon Lex elicits required slot values // from the user using prompts defined in the slots. Attributes are documented under slot. @@ -295,7 +295,7 @@ type IntentState struct { CreateVersion pulumi.BoolPtrInput // The date when the intent version was created. CreatedDate pulumi.StringPtrInput - // A description of the bot. + // A description of the bot. Must be less than or equal to 200 characters in length. Description pulumi.StringPtrInput // Specifies a Lambda function to invoke for each user input. You can // invoke this Lambda function to personalize user interaction. Attributes are documented under code_hook. @@ -311,7 +311,7 @@ type IntentState struct { FulfillmentActivity IntentFulfillmentActivityPtrInput // The date when the $LATEST version of this intent was updated. LastUpdatedDate pulumi.StringPtrInput - // The name of the intent slot that you want to create. The name is case sensitive. + // The name of the intent slot that you want to create. The name is case sensitive. Must be less than or equal to 100 characters in length. Name pulumi.StringPtrInput // A unique identifier for the built-in intent to base this // intent on. To find the signature for an intent, see @@ -324,7 +324,7 @@ type IntentState struct { RejectionStatement IntentRejectionStatementPtrInput // If you know a specific pattern with which users might respond to // an Amazon Lex request for a slot value, you can provide those utterances to improve accuracy. This - // is optional. In most cases, Amazon Lex is capable of understanding user utterances. + // is optional. In most cases, Amazon Lex is capable of understanding user utterances. Must have between 1 and 10 items in the list, and each item must be less than or equal to 200 characters in length. SampleUtterances pulumi.StringArrayInput // An list of intent slots. At runtime, Amazon Lex elicits required slot values // from the user using prompts defined in the slots. Attributes are documented under slot. @@ -351,7 +351,7 @@ type intentArgs struct { // Determines if a new slot type version is created when the initial // resource is created and on each update. Defaults to `false`. CreateVersion *bool `pulumi:"createVersion"` - // A description of the bot. + // A description of the bot. Must be less than or equal to 200 characters in length. Description *string `pulumi:"description"` // Specifies a Lambda function to invoke for each user input. You can // invoke this Lambda function to personalize user interaction. Attributes are documented under code_hook. @@ -365,7 +365,7 @@ type intentArgs struct { // user provides all of the information for a pizza order, `fulfillmentActivity` defines how the bot // places an order with a local pizza store. Attributes are documented under fulfillment_activity. FulfillmentActivity IntentFulfillmentActivity `pulumi:"fulfillmentActivity"` - // The name of the intent slot that you want to create. The name is case sensitive. + // The name of the intent slot that you want to create. The name is case sensitive. Must be less than or equal to 100 characters in length. Name *string `pulumi:"name"` // A unique identifier for the built-in intent to base this // intent on. To find the signature for an intent, see @@ -378,7 +378,7 @@ type intentArgs struct { RejectionStatement *IntentRejectionStatement `pulumi:"rejectionStatement"` // If you know a specific pattern with which users might respond to // an Amazon Lex request for a slot value, you can provide those utterances to improve accuracy. This - // is optional. In most cases, Amazon Lex is capable of understanding user utterances. + // is optional. In most cases, Amazon Lex is capable of understanding user utterances. Must have between 1 and 10 items in the list, and each item must be less than or equal to 200 characters in length. SampleUtterances []string `pulumi:"sampleUtterances"` // An list of intent slots. At runtime, Amazon Lex elicits required slot values // from the user using prompts defined in the slots. Attributes are documented under slot. @@ -400,7 +400,7 @@ type IntentArgs struct { // Determines if a new slot type version is created when the initial // resource is created and on each update. Defaults to `false`. CreateVersion pulumi.BoolPtrInput - // A description of the bot. + // A description of the bot. Must be less than or equal to 200 characters in length. Description pulumi.StringPtrInput // Specifies a Lambda function to invoke for each user input. You can // invoke this Lambda function to personalize user interaction. Attributes are documented under code_hook. @@ -414,7 +414,7 @@ type IntentArgs struct { // user provides all of the information for a pizza order, `fulfillmentActivity` defines how the bot // places an order with a local pizza store. Attributes are documented under fulfillment_activity. FulfillmentActivity IntentFulfillmentActivityInput - // The name of the intent slot that you want to create. The name is case sensitive. + // The name of the intent slot that you want to create. The name is case sensitive. Must be less than or equal to 100 characters in length. Name pulumi.StringPtrInput // A unique identifier for the built-in intent to base this // intent on. To find the signature for an intent, see @@ -427,7 +427,7 @@ type IntentArgs struct { RejectionStatement IntentRejectionStatementPtrInput // If you know a specific pattern with which users might respond to // an Amazon Lex request for a slot value, you can provide those utterances to improve accuracy. This - // is optional. In most cases, Amazon Lex is capable of understanding user utterances. + // is optional. In most cases, Amazon Lex is capable of understanding user utterances. Must have between 1 and 10 items in the list, and each item must be less than or equal to 200 characters in length. SampleUtterances pulumi.StringArrayInput // An list of intent slots. At runtime, Amazon Lex elicits required slot values // from the user using prompts defined in the slots. Attributes are documented under slot. diff --git a/sdk/go/aws/lex/pulumiTypes.go b/sdk/go/aws/lex/pulumiTypes.go index 13a265a3e51..f81459f4036 100644 --- a/sdk/go/aws/lex/pulumiTypes.go +++ b/sdk/go/aws/lex/pulumiTypes.go @@ -295,7 +295,7 @@ func (o BotAbortStatementMessageArrayOutput) Index(i pulumi.IntInput) BotAbortSt } type BotAliasConversationLogs struct { - // The Amazon Resource Name (ARN) of the IAM role used to write your logs to CloudWatch Logs or an S3 bucket. + // The Amazon Resource Name (ARN) of the IAM role used to write your logs to CloudWatch Logs or an S3 bucket. Must be between 20 and 2048 characters in length. IamRoleArn string `pulumi:"iamRoleArn"` // The settings for your conversation logs. You can log text, audio, or both. Attributes are documented under log_settings. LogSettings []BotAliasConversationLogsLogSetting `pulumi:"logSettings"` @@ -313,7 +313,7 @@ type BotAliasConversationLogsInput interface { } type BotAliasConversationLogsArgs struct { - // The Amazon Resource Name (ARN) of the IAM role used to write your logs to CloudWatch Logs or an S3 bucket. + // The Amazon Resource Name (ARN) of the IAM role used to write your logs to CloudWatch Logs or an S3 bucket. Must be between 20 and 2048 characters in length. IamRoleArn pulumi.StringInput `pulumi:"iamRoleArn"` // The settings for your conversation logs. You can log text, audio, or both. Attributes are documented under log_settings. LogSettings BotAliasConversationLogsLogSettingArrayInput `pulumi:"logSettings"` @@ -396,7 +396,7 @@ func (o BotAliasConversationLogsOutput) ToBotAliasConversationLogsPtrOutputWithC }).(BotAliasConversationLogsPtrOutput) } -// The Amazon Resource Name (ARN) of the IAM role used to write your logs to CloudWatch Logs or an S3 bucket. +// The Amazon Resource Name (ARN) of the IAM role used to write your logs to CloudWatch Logs or an S3 bucket. Must be between 20 and 2048 characters in length. func (o BotAliasConversationLogsOutput) IamRoleArn() pulumi.StringOutput { return o.ApplyT(func(v BotAliasConversationLogs) string { return v.IamRoleArn }).(pulumi.StringOutput) } @@ -424,7 +424,7 @@ func (o BotAliasConversationLogsPtrOutput) Elem() BotAliasConversationLogsOutput return o.ApplyT(func(v *BotAliasConversationLogs) BotAliasConversationLogs { return *v }).(BotAliasConversationLogsOutput) } -// The Amazon Resource Name (ARN) of the IAM role used to write your logs to CloudWatch Logs or an S3 bucket. +// The Amazon Resource Name (ARN) of the IAM role used to write your logs to CloudWatch Logs or an S3 bucket. Must be between 20 and 2048 characters in length. func (o BotAliasConversationLogsPtrOutput) IamRoleArn() pulumi.StringPtrOutput { return o.ApplyT(func(v *BotAliasConversationLogs) *string { if v == nil { @@ -447,11 +447,11 @@ func (o BotAliasConversationLogsPtrOutput) LogSettings() BotAliasConversationLog type BotAliasConversationLogsLogSetting struct { // The destination where logs are delivered. Options are `CLOUDWATCH_LOGS` or `S3`. Destination string `pulumi:"destination"` - // The Amazon Resource Name (ARN) of the key used to encrypt audio logs in an S3 bucket. This can only be specified when `destination` is set to `S3`. + // The Amazon Resource Name (ARN) of the key used to encrypt audio logs in an S3 bucket. This can only be specified when `destination` is set to `S3`. Must be between 20 and 2048 characters in length. KmsKeyArn *string `pulumi:"kmsKeyArn"` // The type of logging that is enabled. Options are `AUDIO` or `TEXT`. LogType string `pulumi:"logType"` - // The Amazon Resource Name (ARN) of the CloudWatch Logs log group or S3 bucket where the logs are delivered. + // The Amazon Resource Name (ARN) of the CloudWatch Logs log group or S3 bucket where the logs are delivered. Must be less than or equal to 2048 characters in length. ResourceArn string `pulumi:"resourceArn"` // The prefix of the S3 object key for `AUDIO` logs or the log stream name for `TEXT` logs. ResourcePrefix *string `pulumi:"resourcePrefix"` @@ -471,11 +471,11 @@ type BotAliasConversationLogsLogSettingInput interface { type BotAliasConversationLogsLogSettingArgs struct { // The destination where logs are delivered. Options are `CLOUDWATCH_LOGS` or `S3`. Destination pulumi.StringInput `pulumi:"destination"` - // The Amazon Resource Name (ARN) of the key used to encrypt audio logs in an S3 bucket. This can only be specified when `destination` is set to `S3`. + // The Amazon Resource Name (ARN) of the key used to encrypt audio logs in an S3 bucket. This can only be specified when `destination` is set to `S3`. Must be between 20 and 2048 characters in length. KmsKeyArn pulumi.StringPtrInput `pulumi:"kmsKeyArn"` // The type of logging that is enabled. Options are `AUDIO` or `TEXT`. LogType pulumi.StringInput `pulumi:"logType"` - // The Amazon Resource Name (ARN) of the CloudWatch Logs log group or S3 bucket where the logs are delivered. + // The Amazon Resource Name (ARN) of the CloudWatch Logs log group or S3 bucket where the logs are delivered. Must be less than or equal to 2048 characters in length. ResourceArn pulumi.StringInput `pulumi:"resourceArn"` // The prefix of the S3 object key for `AUDIO` logs or the log stream name for `TEXT` logs. ResourcePrefix pulumi.StringPtrInput `pulumi:"resourcePrefix"` @@ -537,7 +537,7 @@ func (o BotAliasConversationLogsLogSettingOutput) Destination() pulumi.StringOut return o.ApplyT(func(v BotAliasConversationLogsLogSetting) string { return v.Destination }).(pulumi.StringOutput) } -// The Amazon Resource Name (ARN) of the key used to encrypt audio logs in an S3 bucket. This can only be specified when `destination` is set to `S3`. +// The Amazon Resource Name (ARN) of the key used to encrypt audio logs in an S3 bucket. This can only be specified when `destination` is set to `S3`. Must be between 20 and 2048 characters in length. func (o BotAliasConversationLogsLogSettingOutput) KmsKeyArn() pulumi.StringPtrOutput { return o.ApplyT(func(v BotAliasConversationLogsLogSetting) *string { return v.KmsKeyArn }).(pulumi.StringPtrOutput) } @@ -547,7 +547,7 @@ func (o BotAliasConversationLogsLogSettingOutput) LogType() pulumi.StringOutput return o.ApplyT(func(v BotAliasConversationLogsLogSetting) string { return v.LogType }).(pulumi.StringOutput) } -// The Amazon Resource Name (ARN) of the CloudWatch Logs log group or S3 bucket where the logs are delivered. +// The Amazon Resource Name (ARN) of the CloudWatch Logs log group or S3 bucket where the logs are delivered. Must be less than or equal to 2048 characters in length. func (o BotAliasConversationLogsLogSettingOutput) ResourceArn() pulumi.StringOutput { return o.ApplyT(func(v BotAliasConversationLogsLogSetting) string { return v.ResourceArn }).(pulumi.StringOutput) } @@ -881,9 +881,9 @@ func (o BotClarificationPromptMessageArrayOutput) Index(i pulumi.IntInput) BotCl } type BotIntent struct { - // The name of the intent. + // The name of the intent. Must be less than or equal to 100 characters in length. IntentName string `pulumi:"intentName"` - // The version of the intent. + // The version of the intent. Must be less than or equal to 64 characters in length. IntentVersion string `pulumi:"intentVersion"` } @@ -899,9 +899,9 @@ type BotIntentInput interface { } type BotIntentArgs struct { - // The name of the intent. + // The name of the intent. Must be less than or equal to 100 characters in length. IntentName pulumi.StringInput `pulumi:"intentName"` - // The version of the intent. + // The version of the intent. Must be less than or equal to 64 characters in length. IntentVersion pulumi.StringInput `pulumi:"intentVersion"` } @@ -956,12 +956,12 @@ func (o BotIntentOutput) ToBotIntentOutputWithContext(ctx context.Context) BotIn return o } -// The name of the intent. +// The name of the intent. Must be less than or equal to 100 characters in length. func (o BotIntentOutput) IntentName() pulumi.StringOutput { return o.ApplyT(func(v BotIntent) string { return v.IntentName }).(pulumi.StringOutput) } -// The version of the intent. +// The version of the intent. Must be less than or equal to 64 characters in length. func (o BotIntentOutput) IntentVersion() pulumi.StringOutput { return o.ApplyT(func(v BotIntent) string { return v.IntentVersion }).(pulumi.StringOutput) } @@ -989,11 +989,11 @@ func (o BotIntentArrayOutput) Index(i pulumi.IntInput) BotIntentOutput { type IntentConclusionStatement struct { // A set of messages, each of which provides a message string and its type. // You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - // Attributes are documented under message. + // Attributes are documented under message. Must contain between 1 and 15 messages. Messages []IntentConclusionStatementMessage `pulumi:"messages"` // The response card. Amazon Lex will substitute session attributes and // slot values into the response card. For more information, see - // [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + // [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. ResponseCard *string `pulumi:"responseCard"` } @@ -1011,11 +1011,11 @@ type IntentConclusionStatementInput interface { type IntentConclusionStatementArgs struct { // A set of messages, each of which provides a message string and its type. // You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - // Attributes are documented under message. + // Attributes are documented under message. Must contain between 1 and 15 messages. Messages IntentConclusionStatementMessageArrayInput `pulumi:"messages"` // The response card. Amazon Lex will substitute session attributes and // slot values into the response card. For more information, see - // [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + // [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. ResponseCard pulumi.StringPtrInput `pulumi:"responseCard"` } @@ -1098,14 +1098,14 @@ func (o IntentConclusionStatementOutput) ToIntentConclusionStatementPtrOutputWit // A set of messages, each of which provides a message string and its type. // You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). -// Attributes are documented under message. +// Attributes are documented under message. Must contain between 1 and 15 messages. func (o IntentConclusionStatementOutput) Messages() IntentConclusionStatementMessageArrayOutput { return o.ApplyT(func(v IntentConclusionStatement) []IntentConclusionStatementMessage { return v.Messages }).(IntentConclusionStatementMessageArrayOutput) } // The response card. Amazon Lex will substitute session attributes and // slot values into the response card. For more information, see -// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). +// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. func (o IntentConclusionStatementOutput) ResponseCard() pulumi.StringPtrOutput { return o.ApplyT(func(v IntentConclusionStatement) *string { return v.ResponseCard }).(pulumi.StringPtrOutput) } @@ -1130,7 +1130,7 @@ func (o IntentConclusionStatementPtrOutput) Elem() IntentConclusionStatementOutp // A set of messages, each of which provides a message string and its type. // You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). -// Attributes are documented under message. +// Attributes are documented under message. Must contain between 1 and 15 messages. func (o IntentConclusionStatementPtrOutput) Messages() IntentConclusionStatementMessageArrayOutput { return o.ApplyT(func(v *IntentConclusionStatement) []IntentConclusionStatementMessage { if v == nil { @@ -1142,7 +1142,7 @@ func (o IntentConclusionStatementPtrOutput) Messages() IntentConclusionStatement // The response card. Amazon Lex will substitute session attributes and // slot values into the response card. For more information, see -// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). +// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. func (o IntentConclusionStatementPtrOutput) ResponseCard() pulumi.StringPtrOutput { return o.ApplyT(func(v *IntentConclusionStatement) *string { if v == nil { @@ -1153,12 +1153,12 @@ func (o IntentConclusionStatementPtrOutput) ResponseCard() pulumi.StringPtrOutpu } type IntentConclusionStatementMessage struct { - // The text of the message. + // The text of the message. Must be less than or equal to 1000 characters in length. Content string `pulumi:"content"` // The content type of the message string. ContentType string `pulumi:"contentType"` // Identifies the message group that the message belongs to. When a group - // is assigned to a message, Amazon Lex returns one message from each group in the response. + // is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). GroupNumber *int `pulumi:"groupNumber"` } @@ -1174,12 +1174,12 @@ type IntentConclusionStatementMessageInput interface { } type IntentConclusionStatementMessageArgs struct { - // The text of the message. + // The text of the message. Must be less than or equal to 1000 characters in length. Content pulumi.StringInput `pulumi:"content"` // The content type of the message string. ContentType pulumi.StringInput `pulumi:"contentType"` // Identifies the message group that the message belongs to. When a group - // is assigned to a message, Amazon Lex returns one message from each group in the response. + // is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). GroupNumber pulumi.IntPtrInput `pulumi:"groupNumber"` } @@ -1234,7 +1234,7 @@ func (o IntentConclusionStatementMessageOutput) ToIntentConclusionStatementMessa return o } -// The text of the message. +// The text of the message. Must be less than or equal to 1000 characters in length. func (o IntentConclusionStatementMessageOutput) Content() pulumi.StringOutput { return o.ApplyT(func(v IntentConclusionStatementMessage) string { return v.Content }).(pulumi.StringOutput) } @@ -1245,7 +1245,7 @@ func (o IntentConclusionStatementMessageOutput) ContentType() pulumi.StringOutpu } // Identifies the message group that the message belongs to. When a group -// is assigned to a message, Amazon Lex returns one message from each group in the response. +// is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). func (o IntentConclusionStatementMessageOutput) GroupNumber() pulumi.IntPtrOutput { return o.ApplyT(func(v IntentConclusionStatementMessage) *int { return v.GroupNumber }).(pulumi.IntPtrOutput) } @@ -1271,15 +1271,15 @@ func (o IntentConclusionStatementMessageArrayOutput) Index(i pulumi.IntInput) In } type IntentConfirmationPrompt struct { - // The number of times to prompt the user for information. + // The number of times to prompt the user for information. Must be a number between 1 and 5 (inclusive). MaxAttempts int `pulumi:"maxAttempts"` // A set of messages, each of which provides a message string and its type. // You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - // Attributes are documented under message. + // Attributes are documented under message. Must contain between 1 and 15 messages. Messages []IntentConfirmationPromptMessage `pulumi:"messages"` // The response card. Amazon Lex will substitute session attributes and // slot values into the response card. For more information, see - // [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + // [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. ResponseCard *string `pulumi:"responseCard"` } @@ -1295,15 +1295,15 @@ type IntentConfirmationPromptInput interface { } type IntentConfirmationPromptArgs struct { - // The number of times to prompt the user for information. + // The number of times to prompt the user for information. Must be a number between 1 and 5 (inclusive). MaxAttempts pulumi.IntInput `pulumi:"maxAttempts"` // A set of messages, each of which provides a message string and its type. // You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - // Attributes are documented under message. + // Attributes are documented under message. Must contain between 1 and 15 messages. Messages IntentConfirmationPromptMessageArrayInput `pulumi:"messages"` // The response card. Amazon Lex will substitute session attributes and // slot values into the response card. For more information, see - // [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + // [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. ResponseCard pulumi.StringPtrInput `pulumi:"responseCard"` } @@ -1384,21 +1384,21 @@ func (o IntentConfirmationPromptOutput) ToIntentConfirmationPromptPtrOutputWithC }).(IntentConfirmationPromptPtrOutput) } -// The number of times to prompt the user for information. +// The number of times to prompt the user for information. Must be a number between 1 and 5 (inclusive). func (o IntentConfirmationPromptOutput) MaxAttempts() pulumi.IntOutput { return o.ApplyT(func(v IntentConfirmationPrompt) int { return v.MaxAttempts }).(pulumi.IntOutput) } // A set of messages, each of which provides a message string and its type. // You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). -// Attributes are documented under message. +// Attributes are documented under message. Must contain between 1 and 15 messages. func (o IntentConfirmationPromptOutput) Messages() IntentConfirmationPromptMessageArrayOutput { return o.ApplyT(func(v IntentConfirmationPrompt) []IntentConfirmationPromptMessage { return v.Messages }).(IntentConfirmationPromptMessageArrayOutput) } // The response card. Amazon Lex will substitute session attributes and // slot values into the response card. For more information, see -// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). +// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. func (o IntentConfirmationPromptOutput) ResponseCard() pulumi.StringPtrOutput { return o.ApplyT(func(v IntentConfirmationPrompt) *string { return v.ResponseCard }).(pulumi.StringPtrOutput) } @@ -1421,7 +1421,7 @@ func (o IntentConfirmationPromptPtrOutput) Elem() IntentConfirmationPromptOutput return o.ApplyT(func(v *IntentConfirmationPrompt) IntentConfirmationPrompt { return *v }).(IntentConfirmationPromptOutput) } -// The number of times to prompt the user for information. +// The number of times to prompt the user for information. Must be a number between 1 and 5 (inclusive). func (o IntentConfirmationPromptPtrOutput) MaxAttempts() pulumi.IntPtrOutput { return o.ApplyT(func(v *IntentConfirmationPrompt) *int { if v == nil { @@ -1433,7 +1433,7 @@ func (o IntentConfirmationPromptPtrOutput) MaxAttempts() pulumi.IntPtrOutput { // A set of messages, each of which provides a message string and its type. // You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). -// Attributes are documented under message. +// Attributes are documented under message. Must contain between 1 and 15 messages. func (o IntentConfirmationPromptPtrOutput) Messages() IntentConfirmationPromptMessageArrayOutput { return o.ApplyT(func(v *IntentConfirmationPrompt) []IntentConfirmationPromptMessage { if v == nil { @@ -1445,7 +1445,7 @@ func (o IntentConfirmationPromptPtrOutput) Messages() IntentConfirmationPromptMe // The response card. Amazon Lex will substitute session attributes and // slot values into the response card. For more information, see -// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). +// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. func (o IntentConfirmationPromptPtrOutput) ResponseCard() pulumi.StringPtrOutput { return o.ApplyT(func(v *IntentConfirmationPrompt) *string { if v == nil { @@ -1456,12 +1456,12 @@ func (o IntentConfirmationPromptPtrOutput) ResponseCard() pulumi.StringPtrOutput } type IntentConfirmationPromptMessage struct { - // The text of the message. + // The text of the message. Must be less than or equal to 1000 characters in length. Content string `pulumi:"content"` // The content type of the message string. ContentType string `pulumi:"contentType"` // Identifies the message group that the message belongs to. When a group - // is assigned to a message, Amazon Lex returns one message from each group in the response. + // is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). GroupNumber *int `pulumi:"groupNumber"` } @@ -1477,12 +1477,12 @@ type IntentConfirmationPromptMessageInput interface { } type IntentConfirmationPromptMessageArgs struct { - // The text of the message. + // The text of the message. Must be less than or equal to 1000 characters in length. Content pulumi.StringInput `pulumi:"content"` // The content type of the message string. ContentType pulumi.StringInput `pulumi:"contentType"` // Identifies the message group that the message belongs to. When a group - // is assigned to a message, Amazon Lex returns one message from each group in the response. + // is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). GroupNumber pulumi.IntPtrInput `pulumi:"groupNumber"` } @@ -1537,7 +1537,7 @@ func (o IntentConfirmationPromptMessageOutput) ToIntentConfirmationPromptMessage return o } -// The text of the message. +// The text of the message. Must be less than or equal to 1000 characters in length. func (o IntentConfirmationPromptMessageOutput) Content() pulumi.StringOutput { return o.ApplyT(func(v IntentConfirmationPromptMessage) string { return v.Content }).(pulumi.StringOutput) } @@ -1548,7 +1548,7 @@ func (o IntentConfirmationPromptMessageOutput) ContentType() pulumi.StringOutput } // Identifies the message group that the message belongs to. When a group -// is assigned to a message, Amazon Lex returns one message from each group in the response. +// is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). func (o IntentConfirmationPromptMessageOutput) GroupNumber() pulumi.IntPtrOutput { return o.ApplyT(func(v IntentConfirmationPromptMessage) *int { return v.GroupNumber }).(pulumi.IntPtrOutput) } @@ -1576,7 +1576,7 @@ func (o IntentConfirmationPromptMessageArrayOutput) Index(i pulumi.IntInput) Int type IntentDialogCodeHook struct { // The version of the request-response that you want Amazon Lex to use // to invoke your Lambda function. For more information, see - // [Using Lambda Functions](https://docs.aws.amazon.com/lex/latest/dg/using-lambda.html). + // [Using Lambda Functions](https://docs.aws.amazon.com/lex/latest/dg/using-lambda.html). Must be less than or equal to 5 characters in length. MessageVersion string `pulumi:"messageVersion"` // The Amazon Resource Name (ARN) of the Lambda function. Uri string `pulumi:"uri"` @@ -1596,7 +1596,7 @@ type IntentDialogCodeHookInput interface { type IntentDialogCodeHookArgs struct { // The version of the request-response that you want Amazon Lex to use // to invoke your Lambda function. For more information, see - // [Using Lambda Functions](https://docs.aws.amazon.com/lex/latest/dg/using-lambda.html). + // [Using Lambda Functions](https://docs.aws.amazon.com/lex/latest/dg/using-lambda.html). Must be less than or equal to 5 characters in length. MessageVersion pulumi.StringInput `pulumi:"messageVersion"` // The Amazon Resource Name (ARN) of the Lambda function. Uri pulumi.StringInput `pulumi:"uri"` @@ -1681,7 +1681,7 @@ func (o IntentDialogCodeHookOutput) ToIntentDialogCodeHookPtrOutputWithContext(c // The version of the request-response that you want Amazon Lex to use // to invoke your Lambda function. For more information, see -// [Using Lambda Functions](https://docs.aws.amazon.com/lex/latest/dg/using-lambda.html). +// [Using Lambda Functions](https://docs.aws.amazon.com/lex/latest/dg/using-lambda.html). Must be less than or equal to 5 characters in length. func (o IntentDialogCodeHookOutput) MessageVersion() pulumi.StringOutput { return o.ApplyT(func(v IntentDialogCodeHook) string { return v.MessageVersion }).(pulumi.StringOutput) } @@ -1711,7 +1711,7 @@ func (o IntentDialogCodeHookPtrOutput) Elem() IntentDialogCodeHookOutput { // The version of the request-response that you want Amazon Lex to use // to invoke your Lambda function. For more information, see -// [Using Lambda Functions](https://docs.aws.amazon.com/lex/latest/dg/using-lambda.html). +// [Using Lambda Functions](https://docs.aws.amazon.com/lex/latest/dg/using-lambda.html). Must be less than or equal to 5 characters in length. func (o IntentDialogCodeHookPtrOutput) MessageVersion() pulumi.StringPtrOutput { return o.ApplyT(func(v *IntentDialogCodeHook) *string { if v == nil { @@ -1890,15 +1890,15 @@ func (o IntentFollowUpPromptPtrOutput) RejectionStatement() IntentFollowUpPrompt } type IntentFollowUpPromptPrompt struct { - // The number of times to prompt the user for information. + // The number of times to prompt the user for information. Must be a number between 1 and 5 (inclusive). MaxAttempts int `pulumi:"maxAttempts"` // A set of messages, each of which provides a message string and its type. // You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - // Attributes are documented under message. + // Attributes are documented under message. Must contain between 1 and 15 messages. Messages []IntentFollowUpPromptPromptMessage `pulumi:"messages"` // The response card. Amazon Lex will substitute session attributes and // slot values into the response card. For more information, see - // [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + // [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. ResponseCard *string `pulumi:"responseCard"` } @@ -1914,15 +1914,15 @@ type IntentFollowUpPromptPromptInput interface { } type IntentFollowUpPromptPromptArgs struct { - // The number of times to prompt the user for information. + // The number of times to prompt the user for information. Must be a number between 1 and 5 (inclusive). MaxAttempts pulumi.IntInput `pulumi:"maxAttempts"` // A set of messages, each of which provides a message string and its type. // You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - // Attributes are documented under message. + // Attributes are documented under message. Must contain between 1 and 15 messages. Messages IntentFollowUpPromptPromptMessageArrayInput `pulumi:"messages"` // The response card. Amazon Lex will substitute session attributes and // slot values into the response card. For more information, see - // [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + // [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. ResponseCard pulumi.StringPtrInput `pulumi:"responseCard"` } @@ -2003,21 +2003,21 @@ func (o IntentFollowUpPromptPromptOutput) ToIntentFollowUpPromptPromptPtrOutputW }).(IntentFollowUpPromptPromptPtrOutput) } -// The number of times to prompt the user for information. +// The number of times to prompt the user for information. Must be a number between 1 and 5 (inclusive). func (o IntentFollowUpPromptPromptOutput) MaxAttempts() pulumi.IntOutput { return o.ApplyT(func(v IntentFollowUpPromptPrompt) int { return v.MaxAttempts }).(pulumi.IntOutput) } // A set of messages, each of which provides a message string and its type. // You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). -// Attributes are documented under message. +// Attributes are documented under message. Must contain between 1 and 15 messages. func (o IntentFollowUpPromptPromptOutput) Messages() IntentFollowUpPromptPromptMessageArrayOutput { return o.ApplyT(func(v IntentFollowUpPromptPrompt) []IntentFollowUpPromptPromptMessage { return v.Messages }).(IntentFollowUpPromptPromptMessageArrayOutput) } // The response card. Amazon Lex will substitute session attributes and // slot values into the response card. For more information, see -// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). +// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. func (o IntentFollowUpPromptPromptOutput) ResponseCard() pulumi.StringPtrOutput { return o.ApplyT(func(v IntentFollowUpPromptPrompt) *string { return v.ResponseCard }).(pulumi.StringPtrOutput) } @@ -2040,7 +2040,7 @@ func (o IntentFollowUpPromptPromptPtrOutput) Elem() IntentFollowUpPromptPromptOu return o.ApplyT(func(v *IntentFollowUpPromptPrompt) IntentFollowUpPromptPrompt { return *v }).(IntentFollowUpPromptPromptOutput) } -// The number of times to prompt the user for information. +// The number of times to prompt the user for information. Must be a number between 1 and 5 (inclusive). func (o IntentFollowUpPromptPromptPtrOutput) MaxAttempts() pulumi.IntPtrOutput { return o.ApplyT(func(v *IntentFollowUpPromptPrompt) *int { if v == nil { @@ -2052,7 +2052,7 @@ func (o IntentFollowUpPromptPromptPtrOutput) MaxAttempts() pulumi.IntPtrOutput { // A set of messages, each of which provides a message string and its type. // You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). -// Attributes are documented under message. +// Attributes are documented under message. Must contain between 1 and 15 messages. func (o IntentFollowUpPromptPromptPtrOutput) Messages() IntentFollowUpPromptPromptMessageArrayOutput { return o.ApplyT(func(v *IntentFollowUpPromptPrompt) []IntentFollowUpPromptPromptMessage { if v == nil { @@ -2064,7 +2064,7 @@ func (o IntentFollowUpPromptPromptPtrOutput) Messages() IntentFollowUpPromptProm // The response card. Amazon Lex will substitute session attributes and // slot values into the response card. For more information, see -// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). +// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. func (o IntentFollowUpPromptPromptPtrOutput) ResponseCard() pulumi.StringPtrOutput { return o.ApplyT(func(v *IntentFollowUpPromptPrompt) *string { if v == nil { @@ -2075,12 +2075,12 @@ func (o IntentFollowUpPromptPromptPtrOutput) ResponseCard() pulumi.StringPtrOutp } type IntentFollowUpPromptPromptMessage struct { - // The text of the message. + // The text of the message. Must be less than or equal to 1000 characters in length. Content string `pulumi:"content"` // The content type of the message string. ContentType string `pulumi:"contentType"` // Identifies the message group that the message belongs to. When a group - // is assigned to a message, Amazon Lex returns one message from each group in the response. + // is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). GroupNumber *int `pulumi:"groupNumber"` } @@ -2096,12 +2096,12 @@ type IntentFollowUpPromptPromptMessageInput interface { } type IntentFollowUpPromptPromptMessageArgs struct { - // The text of the message. + // The text of the message. Must be less than or equal to 1000 characters in length. Content pulumi.StringInput `pulumi:"content"` // The content type of the message string. ContentType pulumi.StringInput `pulumi:"contentType"` // Identifies the message group that the message belongs to. When a group - // is assigned to a message, Amazon Lex returns one message from each group in the response. + // is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). GroupNumber pulumi.IntPtrInput `pulumi:"groupNumber"` } @@ -2156,7 +2156,7 @@ func (o IntentFollowUpPromptPromptMessageOutput) ToIntentFollowUpPromptPromptMes return o } -// The text of the message. +// The text of the message. Must be less than or equal to 1000 characters in length. func (o IntentFollowUpPromptPromptMessageOutput) Content() pulumi.StringOutput { return o.ApplyT(func(v IntentFollowUpPromptPromptMessage) string { return v.Content }).(pulumi.StringOutput) } @@ -2167,7 +2167,7 @@ func (o IntentFollowUpPromptPromptMessageOutput) ContentType() pulumi.StringOutp } // Identifies the message group that the message belongs to. When a group -// is assigned to a message, Amazon Lex returns one message from each group in the response. +// is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). func (o IntentFollowUpPromptPromptMessageOutput) GroupNumber() pulumi.IntPtrOutput { return o.ApplyT(func(v IntentFollowUpPromptPromptMessage) *int { return v.GroupNumber }).(pulumi.IntPtrOutput) } @@ -2195,11 +2195,11 @@ func (o IntentFollowUpPromptPromptMessageArrayOutput) Index(i pulumi.IntInput) I type IntentFollowUpPromptRejectionStatement struct { // A set of messages, each of which provides a message string and its type. // You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - // Attributes are documented under message. + // Attributes are documented under message. Must contain between 1 and 15 messages. Messages []IntentFollowUpPromptRejectionStatementMessage `pulumi:"messages"` // The response card. Amazon Lex will substitute session attributes and // slot values into the response card. For more information, see - // [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + // [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. ResponseCard *string `pulumi:"responseCard"` } @@ -2217,11 +2217,11 @@ type IntentFollowUpPromptRejectionStatementInput interface { type IntentFollowUpPromptRejectionStatementArgs struct { // A set of messages, each of which provides a message string and its type. // You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - // Attributes are documented under message. + // Attributes are documented under message. Must contain between 1 and 15 messages. Messages IntentFollowUpPromptRejectionStatementMessageArrayInput `pulumi:"messages"` // The response card. Amazon Lex will substitute session attributes and // slot values into the response card. For more information, see - // [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + // [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. ResponseCard pulumi.StringPtrInput `pulumi:"responseCard"` } @@ -2304,7 +2304,7 @@ func (o IntentFollowUpPromptRejectionStatementOutput) ToIntentFollowUpPromptReje // A set of messages, each of which provides a message string and its type. // You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). -// Attributes are documented under message. +// Attributes are documented under message. Must contain between 1 and 15 messages. func (o IntentFollowUpPromptRejectionStatementOutput) Messages() IntentFollowUpPromptRejectionStatementMessageArrayOutput { return o.ApplyT(func(v IntentFollowUpPromptRejectionStatement) []IntentFollowUpPromptRejectionStatementMessage { return v.Messages @@ -2313,7 +2313,7 @@ func (o IntentFollowUpPromptRejectionStatementOutput) Messages() IntentFollowUpP // The response card. Amazon Lex will substitute session attributes and // slot values into the response card. For more information, see -// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). +// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. func (o IntentFollowUpPromptRejectionStatementOutput) ResponseCard() pulumi.StringPtrOutput { return o.ApplyT(func(v IntentFollowUpPromptRejectionStatement) *string { return v.ResponseCard }).(pulumi.StringPtrOutput) } @@ -2338,7 +2338,7 @@ func (o IntentFollowUpPromptRejectionStatementPtrOutput) Elem() IntentFollowUpPr // A set of messages, each of which provides a message string and its type. // You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). -// Attributes are documented under message. +// Attributes are documented under message. Must contain between 1 and 15 messages. func (o IntentFollowUpPromptRejectionStatementPtrOutput) Messages() IntentFollowUpPromptRejectionStatementMessageArrayOutput { return o.ApplyT(func(v *IntentFollowUpPromptRejectionStatement) []IntentFollowUpPromptRejectionStatementMessage { if v == nil { @@ -2350,7 +2350,7 @@ func (o IntentFollowUpPromptRejectionStatementPtrOutput) Messages() IntentFollow // The response card. Amazon Lex will substitute session attributes and // slot values into the response card. For more information, see -// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). +// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. func (o IntentFollowUpPromptRejectionStatementPtrOutput) ResponseCard() pulumi.StringPtrOutput { return o.ApplyT(func(v *IntentFollowUpPromptRejectionStatement) *string { if v == nil { @@ -2361,12 +2361,12 @@ func (o IntentFollowUpPromptRejectionStatementPtrOutput) ResponseCard() pulumi.S } type IntentFollowUpPromptRejectionStatementMessage struct { - // The text of the message. + // The text of the message. Must be less than or equal to 1000 characters in length. Content string `pulumi:"content"` // The content type of the message string. ContentType string `pulumi:"contentType"` // Identifies the message group that the message belongs to. When a group - // is assigned to a message, Amazon Lex returns one message from each group in the response. + // is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). GroupNumber *int `pulumi:"groupNumber"` } @@ -2382,12 +2382,12 @@ type IntentFollowUpPromptRejectionStatementMessageInput interface { } type IntentFollowUpPromptRejectionStatementMessageArgs struct { - // The text of the message. + // The text of the message. Must be less than or equal to 1000 characters in length. Content pulumi.StringInput `pulumi:"content"` // The content type of the message string. ContentType pulumi.StringInput `pulumi:"contentType"` // Identifies the message group that the message belongs to. When a group - // is assigned to a message, Amazon Lex returns one message from each group in the response. + // is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). GroupNumber pulumi.IntPtrInput `pulumi:"groupNumber"` } @@ -2442,7 +2442,7 @@ func (o IntentFollowUpPromptRejectionStatementMessageOutput) ToIntentFollowUpPro return o } -// The text of the message. +// The text of the message. Must be less than or equal to 1000 characters in length. func (o IntentFollowUpPromptRejectionStatementMessageOutput) Content() pulumi.StringOutput { return o.ApplyT(func(v IntentFollowUpPromptRejectionStatementMessage) string { return v.Content }).(pulumi.StringOutput) } @@ -2453,7 +2453,7 @@ func (o IntentFollowUpPromptRejectionStatementMessageOutput) ContentType() pulum } // Identifies the message group that the message belongs to. When a group -// is assigned to a message, Amazon Lex returns one message from each group in the response. +// is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). func (o IntentFollowUpPromptRejectionStatementMessageOutput) GroupNumber() pulumi.IntPtrOutput { return o.ApplyT(func(v IntentFollowUpPromptRejectionStatementMessage) *int { return v.GroupNumber }).(pulumi.IntPtrOutput) } @@ -2639,7 +2639,7 @@ func (o IntentFulfillmentActivityPtrOutput) Type() pulumi.StringPtrOutput { type IntentFulfillmentActivityCodeHook struct { // The version of the request-response that you want Amazon Lex to use // to invoke your Lambda function. For more information, see - // [Using Lambda Functions](https://docs.aws.amazon.com/lex/latest/dg/using-lambda.html). + // [Using Lambda Functions](https://docs.aws.amazon.com/lex/latest/dg/using-lambda.html). Must be less than or equal to 5 characters in length. MessageVersion string `pulumi:"messageVersion"` // The Amazon Resource Name (ARN) of the Lambda function. Uri string `pulumi:"uri"` @@ -2659,7 +2659,7 @@ type IntentFulfillmentActivityCodeHookInput interface { type IntentFulfillmentActivityCodeHookArgs struct { // The version of the request-response that you want Amazon Lex to use // to invoke your Lambda function. For more information, see - // [Using Lambda Functions](https://docs.aws.amazon.com/lex/latest/dg/using-lambda.html). + // [Using Lambda Functions](https://docs.aws.amazon.com/lex/latest/dg/using-lambda.html). Must be less than or equal to 5 characters in length. MessageVersion pulumi.StringInput `pulumi:"messageVersion"` // The Amazon Resource Name (ARN) of the Lambda function. Uri pulumi.StringInput `pulumi:"uri"` @@ -2744,7 +2744,7 @@ func (o IntentFulfillmentActivityCodeHookOutput) ToIntentFulfillmentActivityCode // The version of the request-response that you want Amazon Lex to use // to invoke your Lambda function. For more information, see -// [Using Lambda Functions](https://docs.aws.amazon.com/lex/latest/dg/using-lambda.html). +// [Using Lambda Functions](https://docs.aws.amazon.com/lex/latest/dg/using-lambda.html). Must be less than or equal to 5 characters in length. func (o IntentFulfillmentActivityCodeHookOutput) MessageVersion() pulumi.StringOutput { return o.ApplyT(func(v IntentFulfillmentActivityCodeHook) string { return v.MessageVersion }).(pulumi.StringOutput) } @@ -2774,7 +2774,7 @@ func (o IntentFulfillmentActivityCodeHookPtrOutput) Elem() IntentFulfillmentActi // The version of the request-response that you want Amazon Lex to use // to invoke your Lambda function. For more information, see -// [Using Lambda Functions](https://docs.aws.amazon.com/lex/latest/dg/using-lambda.html). +// [Using Lambda Functions](https://docs.aws.amazon.com/lex/latest/dg/using-lambda.html). Must be less than or equal to 5 characters in length. func (o IntentFulfillmentActivityCodeHookPtrOutput) MessageVersion() pulumi.StringPtrOutput { return o.ApplyT(func(v *IntentFulfillmentActivityCodeHook) *string { if v == nil { @@ -2797,11 +2797,11 @@ func (o IntentFulfillmentActivityCodeHookPtrOutput) Uri() pulumi.StringPtrOutput type IntentRejectionStatement struct { // A set of messages, each of which provides a message string and its type. // You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - // Attributes are documented under message. + // Attributes are documented under message. Must contain between 1 and 15 messages. Messages []IntentRejectionStatementMessage `pulumi:"messages"` // The response card. Amazon Lex will substitute session attributes and // slot values into the response card. For more information, see - // [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + // [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. ResponseCard *string `pulumi:"responseCard"` } @@ -2819,11 +2819,11 @@ type IntentRejectionStatementInput interface { type IntentRejectionStatementArgs struct { // A set of messages, each of which provides a message string and its type. // You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - // Attributes are documented under message. + // Attributes are documented under message. Must contain between 1 and 15 messages. Messages IntentRejectionStatementMessageArrayInput `pulumi:"messages"` // The response card. Amazon Lex will substitute session attributes and // slot values into the response card. For more information, see - // [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + // [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. ResponseCard pulumi.StringPtrInput `pulumi:"responseCard"` } @@ -2906,14 +2906,14 @@ func (o IntentRejectionStatementOutput) ToIntentRejectionStatementPtrOutputWithC // A set of messages, each of which provides a message string and its type. // You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). -// Attributes are documented under message. +// Attributes are documented under message. Must contain between 1 and 15 messages. func (o IntentRejectionStatementOutput) Messages() IntentRejectionStatementMessageArrayOutput { return o.ApplyT(func(v IntentRejectionStatement) []IntentRejectionStatementMessage { return v.Messages }).(IntentRejectionStatementMessageArrayOutput) } // The response card. Amazon Lex will substitute session attributes and // slot values into the response card. For more information, see -// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). +// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. func (o IntentRejectionStatementOutput) ResponseCard() pulumi.StringPtrOutput { return o.ApplyT(func(v IntentRejectionStatement) *string { return v.ResponseCard }).(pulumi.StringPtrOutput) } @@ -2938,7 +2938,7 @@ func (o IntentRejectionStatementPtrOutput) Elem() IntentRejectionStatementOutput // A set of messages, each of which provides a message string and its type. // You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). -// Attributes are documented under message. +// Attributes are documented under message. Must contain between 1 and 15 messages. func (o IntentRejectionStatementPtrOutput) Messages() IntentRejectionStatementMessageArrayOutput { return o.ApplyT(func(v *IntentRejectionStatement) []IntentRejectionStatementMessage { if v == nil { @@ -2950,7 +2950,7 @@ func (o IntentRejectionStatementPtrOutput) Messages() IntentRejectionStatementMe // The response card. Amazon Lex will substitute session attributes and // slot values into the response card. For more information, see -// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). +// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. func (o IntentRejectionStatementPtrOutput) ResponseCard() pulumi.StringPtrOutput { return o.ApplyT(func(v *IntentRejectionStatement) *string { if v == nil { @@ -2961,12 +2961,12 @@ func (o IntentRejectionStatementPtrOutput) ResponseCard() pulumi.StringPtrOutput } type IntentRejectionStatementMessage struct { - // The text of the message. + // The text of the message. Must be less than or equal to 1000 characters in length. Content string `pulumi:"content"` // The content type of the message string. ContentType string `pulumi:"contentType"` // Identifies the message group that the message belongs to. When a group - // is assigned to a message, Amazon Lex returns one message from each group in the response. + // is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). GroupNumber *int `pulumi:"groupNumber"` } @@ -2982,12 +2982,12 @@ type IntentRejectionStatementMessageInput interface { } type IntentRejectionStatementMessageArgs struct { - // The text of the message. + // The text of the message. Must be less than or equal to 1000 characters in length. Content pulumi.StringInput `pulumi:"content"` // The content type of the message string. ContentType pulumi.StringInput `pulumi:"contentType"` // Identifies the message group that the message belongs to. When a group - // is assigned to a message, Amazon Lex returns one message from each group in the response. + // is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). GroupNumber pulumi.IntPtrInput `pulumi:"groupNumber"` } @@ -3042,7 +3042,7 @@ func (o IntentRejectionStatementMessageOutput) ToIntentRejectionStatementMessage return o } -// The text of the message. +// The text of the message. Must be less than or equal to 1000 characters in length. func (o IntentRejectionStatementMessageOutput) Content() pulumi.StringOutput { return o.ApplyT(func(v IntentRejectionStatementMessage) string { return v.Content }).(pulumi.StringOutput) } @@ -3053,7 +3053,7 @@ func (o IntentRejectionStatementMessageOutput) ContentType() pulumi.StringOutput } // Identifies the message group that the message belongs to. When a group -// is assigned to a message, Amazon Lex returns one message from each group in the response. +// is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). func (o IntentRejectionStatementMessageOutput) GroupNumber() pulumi.IntPtrOutput { return o.ApplyT(func(v IntentRejectionStatementMessage) *int { return v.GroupNumber }).(pulumi.IntPtrOutput) } @@ -3079,29 +3079,29 @@ func (o IntentRejectionStatementMessageArrayOutput) Index(i pulumi.IntInput) Int } type IntentSlot struct { - // A description of the bot. + // A description of the bot. Must be less than or equal to 200 characters in length. Description *string `pulumi:"description"` - // The name of the intent slot that you want to create. The name is case sensitive. + // The name of the intent slot that you want to create. The name is case sensitive. Must be less than or equal to 100 characters in length. Name string `pulumi:"name"` // Directs Lex the order in which to elicit this slot value from the user. // For example, if the intent has two slots with priorities 1 and 2, AWS Lex first elicits a value for // the slot with priority 1. If multiple slots share the same priority, the order in which Lex elicits - // values is arbitrary. + // values is arbitrary. Must be between 1 and 100. Priority *int `pulumi:"priority"` // The response card. Amazon Lex will substitute session attributes and // slot values into the response card. For more information, see - // [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + // [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. ResponseCard *string `pulumi:"responseCard"` // If you know a specific pattern with which users might respond to // an Amazon Lex request for a slot value, you can provide those utterances to improve accuracy. This - // is optional. In most cases, Amazon Lex is capable of understanding user utterances. + // is optional. In most cases, Amazon Lex is capable of understanding user utterances. Must have between 1 and 10 items in the list, and each item must be less than or equal to 200 characters in length. SampleUtterances []string `pulumi:"sampleUtterances"` // Specifies whether the slot is required or optional. SlotConstraint string `pulumi:"slotConstraint"` // The type of the slot, either a custom slot type that you defined or one of - // the built-in slot types. + // the built-in slot types. Must be less than or equal to 100 characters in length. SlotType string `pulumi:"slotType"` - // The version of the slot type. + // The version of the slot type. Must be less than or equal to 64 characters in length. SlotTypeVersion *string `pulumi:"slotTypeVersion"` // The prompt that Amazon Lex uses to elicit the slot value // from the user. Attributes are documented under prompt. @@ -3120,29 +3120,29 @@ type IntentSlotInput interface { } type IntentSlotArgs struct { - // A description of the bot. + // A description of the bot. Must be less than or equal to 200 characters in length. Description pulumi.StringPtrInput `pulumi:"description"` - // The name of the intent slot that you want to create. The name is case sensitive. + // The name of the intent slot that you want to create. The name is case sensitive. Must be less than or equal to 100 characters in length. Name pulumi.StringInput `pulumi:"name"` // Directs Lex the order in which to elicit this slot value from the user. // For example, if the intent has two slots with priorities 1 and 2, AWS Lex first elicits a value for // the slot with priority 1. If multiple slots share the same priority, the order in which Lex elicits - // values is arbitrary. + // values is arbitrary. Must be between 1 and 100. Priority pulumi.IntPtrInput `pulumi:"priority"` // The response card. Amazon Lex will substitute session attributes and // slot values into the response card. For more information, see - // [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + // [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. ResponseCard pulumi.StringPtrInput `pulumi:"responseCard"` // If you know a specific pattern with which users might respond to // an Amazon Lex request for a slot value, you can provide those utterances to improve accuracy. This - // is optional. In most cases, Amazon Lex is capable of understanding user utterances. + // is optional. In most cases, Amazon Lex is capable of understanding user utterances. Must have between 1 and 10 items in the list, and each item must be less than or equal to 200 characters in length. SampleUtterances pulumi.StringArrayInput `pulumi:"sampleUtterances"` // Specifies whether the slot is required or optional. SlotConstraint pulumi.StringInput `pulumi:"slotConstraint"` // The type of the slot, either a custom slot type that you defined or one of - // the built-in slot types. + // the built-in slot types. Must be less than or equal to 100 characters in length. SlotType pulumi.StringInput `pulumi:"slotType"` - // The version of the slot type. + // The version of the slot type. Must be less than or equal to 64 characters in length. SlotTypeVersion pulumi.StringPtrInput `pulumi:"slotTypeVersion"` // The prompt that Amazon Lex uses to elicit the slot value // from the user. Attributes are documented under prompt. @@ -3200,12 +3200,12 @@ func (o IntentSlotOutput) ToIntentSlotOutputWithContext(ctx context.Context) Int return o } -// A description of the bot. +// A description of the bot. Must be less than or equal to 200 characters in length. func (o IntentSlotOutput) Description() pulumi.StringPtrOutput { return o.ApplyT(func(v IntentSlot) *string { return v.Description }).(pulumi.StringPtrOutput) } -// The name of the intent slot that you want to create. The name is case sensitive. +// The name of the intent slot that you want to create. The name is case sensitive. Must be less than or equal to 100 characters in length. func (o IntentSlotOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v IntentSlot) string { return v.Name }).(pulumi.StringOutput) } @@ -3213,21 +3213,21 @@ func (o IntentSlotOutput) Name() pulumi.StringOutput { // Directs Lex the order in which to elicit this slot value from the user. // For example, if the intent has two slots with priorities 1 and 2, AWS Lex first elicits a value for // the slot with priority 1. If multiple slots share the same priority, the order in which Lex elicits -// values is arbitrary. +// values is arbitrary. Must be between 1 and 100. func (o IntentSlotOutput) Priority() pulumi.IntPtrOutput { return o.ApplyT(func(v IntentSlot) *int { return v.Priority }).(pulumi.IntPtrOutput) } // The response card. Amazon Lex will substitute session attributes and // slot values into the response card. For more information, see -// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). +// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. func (o IntentSlotOutput) ResponseCard() pulumi.StringPtrOutput { return o.ApplyT(func(v IntentSlot) *string { return v.ResponseCard }).(pulumi.StringPtrOutput) } // If you know a specific pattern with which users might respond to // an Amazon Lex request for a slot value, you can provide those utterances to improve accuracy. This -// is optional. In most cases, Amazon Lex is capable of understanding user utterances. +// is optional. In most cases, Amazon Lex is capable of understanding user utterances. Must have between 1 and 10 items in the list, and each item must be less than or equal to 200 characters in length. func (o IntentSlotOutput) SampleUtterances() pulumi.StringArrayOutput { return o.ApplyT(func(v IntentSlot) []string { return v.SampleUtterances }).(pulumi.StringArrayOutput) } @@ -3238,12 +3238,12 @@ func (o IntentSlotOutput) SlotConstraint() pulumi.StringOutput { } // The type of the slot, either a custom slot type that you defined or one of -// the built-in slot types. +// the built-in slot types. Must be less than or equal to 100 characters in length. func (o IntentSlotOutput) SlotType() pulumi.StringOutput { return o.ApplyT(func(v IntentSlot) string { return v.SlotType }).(pulumi.StringOutput) } -// The version of the slot type. +// The version of the slot type. Must be less than or equal to 64 characters in length. func (o IntentSlotOutput) SlotTypeVersion() pulumi.StringPtrOutput { return o.ApplyT(func(v IntentSlot) *string { return v.SlotTypeVersion }).(pulumi.StringPtrOutput) } @@ -3275,15 +3275,15 @@ func (o IntentSlotArrayOutput) Index(i pulumi.IntInput) IntentSlotOutput { } type IntentSlotValueElicitationPrompt struct { - // The number of times to prompt the user for information. + // The number of times to prompt the user for information. Must be a number between 1 and 5 (inclusive). MaxAttempts int `pulumi:"maxAttempts"` // A set of messages, each of which provides a message string and its type. // You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - // Attributes are documented under message. + // Attributes are documented under message. Must contain between 1 and 15 messages. Messages []IntentSlotValueElicitationPromptMessage `pulumi:"messages"` // The response card. Amazon Lex will substitute session attributes and // slot values into the response card. For more information, see - // [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + // [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. ResponseCard *string `pulumi:"responseCard"` } @@ -3299,15 +3299,15 @@ type IntentSlotValueElicitationPromptInput interface { } type IntentSlotValueElicitationPromptArgs struct { - // The number of times to prompt the user for information. + // The number of times to prompt the user for information. Must be a number between 1 and 5 (inclusive). MaxAttempts pulumi.IntInput `pulumi:"maxAttempts"` // A set of messages, each of which provides a message string and its type. // You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - // Attributes are documented under message. + // Attributes are documented under message. Must contain between 1 and 15 messages. Messages IntentSlotValueElicitationPromptMessageArrayInput `pulumi:"messages"` // The response card. Amazon Lex will substitute session attributes and // slot values into the response card. For more information, see - // [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + // [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. ResponseCard pulumi.StringPtrInput `pulumi:"responseCard"` } @@ -3388,21 +3388,21 @@ func (o IntentSlotValueElicitationPromptOutput) ToIntentSlotValueElicitationProm }).(IntentSlotValueElicitationPromptPtrOutput) } -// The number of times to prompt the user for information. +// The number of times to prompt the user for information. Must be a number between 1 and 5 (inclusive). func (o IntentSlotValueElicitationPromptOutput) MaxAttempts() pulumi.IntOutput { return o.ApplyT(func(v IntentSlotValueElicitationPrompt) int { return v.MaxAttempts }).(pulumi.IntOutput) } // A set of messages, each of which provides a message string and its type. // You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). -// Attributes are documented under message. +// Attributes are documented under message. Must contain between 1 and 15 messages. func (o IntentSlotValueElicitationPromptOutput) Messages() IntentSlotValueElicitationPromptMessageArrayOutput { return o.ApplyT(func(v IntentSlotValueElicitationPrompt) []IntentSlotValueElicitationPromptMessage { return v.Messages }).(IntentSlotValueElicitationPromptMessageArrayOutput) } // The response card. Amazon Lex will substitute session attributes and // slot values into the response card. For more information, see -// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). +// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. func (o IntentSlotValueElicitationPromptOutput) ResponseCard() pulumi.StringPtrOutput { return o.ApplyT(func(v IntentSlotValueElicitationPrompt) *string { return v.ResponseCard }).(pulumi.StringPtrOutput) } @@ -3425,7 +3425,7 @@ func (o IntentSlotValueElicitationPromptPtrOutput) Elem() IntentSlotValueElicita return o.ApplyT(func(v *IntentSlotValueElicitationPrompt) IntentSlotValueElicitationPrompt { return *v }).(IntentSlotValueElicitationPromptOutput) } -// The number of times to prompt the user for information. +// The number of times to prompt the user for information. Must be a number between 1 and 5 (inclusive). func (o IntentSlotValueElicitationPromptPtrOutput) MaxAttempts() pulumi.IntPtrOutput { return o.ApplyT(func(v *IntentSlotValueElicitationPrompt) *int { if v == nil { @@ -3437,7 +3437,7 @@ func (o IntentSlotValueElicitationPromptPtrOutput) MaxAttempts() pulumi.IntPtrOu // A set of messages, each of which provides a message string and its type. // You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). -// Attributes are documented under message. +// Attributes are documented under message. Must contain between 1 and 15 messages. func (o IntentSlotValueElicitationPromptPtrOutput) Messages() IntentSlotValueElicitationPromptMessageArrayOutput { return o.ApplyT(func(v *IntentSlotValueElicitationPrompt) []IntentSlotValueElicitationPromptMessage { if v == nil { @@ -3449,7 +3449,7 @@ func (o IntentSlotValueElicitationPromptPtrOutput) Messages() IntentSlotValueEli // The response card. Amazon Lex will substitute session attributes and // slot values into the response card. For more information, see -// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). +// [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. func (o IntentSlotValueElicitationPromptPtrOutput) ResponseCard() pulumi.StringPtrOutput { return o.ApplyT(func(v *IntentSlotValueElicitationPrompt) *string { if v == nil { @@ -3460,12 +3460,12 @@ func (o IntentSlotValueElicitationPromptPtrOutput) ResponseCard() pulumi.StringP } type IntentSlotValueElicitationPromptMessage struct { - // The text of the message. + // The text of the message. Must be less than or equal to 1000 characters in length. Content string `pulumi:"content"` // The content type of the message string. ContentType string `pulumi:"contentType"` // Identifies the message group that the message belongs to. When a group - // is assigned to a message, Amazon Lex returns one message from each group in the response. + // is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). GroupNumber *int `pulumi:"groupNumber"` } @@ -3481,12 +3481,12 @@ type IntentSlotValueElicitationPromptMessageInput interface { } type IntentSlotValueElicitationPromptMessageArgs struct { - // The text of the message. + // The text of the message. Must be less than or equal to 1000 characters in length. Content pulumi.StringInput `pulumi:"content"` // The content type of the message string. ContentType pulumi.StringInput `pulumi:"contentType"` // Identifies the message group that the message belongs to. When a group - // is assigned to a message, Amazon Lex returns one message from each group in the response. + // is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). GroupNumber pulumi.IntPtrInput `pulumi:"groupNumber"` } @@ -3541,7 +3541,7 @@ func (o IntentSlotValueElicitationPromptMessageOutput) ToIntentSlotValueElicitat return o } -// The text of the message. +// The text of the message. Must be less than or equal to 1000 characters in length. func (o IntentSlotValueElicitationPromptMessageOutput) Content() pulumi.StringOutput { return o.ApplyT(func(v IntentSlotValueElicitationPromptMessage) string { return v.Content }).(pulumi.StringOutput) } @@ -3552,7 +3552,7 @@ func (o IntentSlotValueElicitationPromptMessageOutput) ContentType() pulumi.Stri } // Identifies the message group that the message belongs to. When a group -// is assigned to a message, Amazon Lex returns one message from each group in the response. +// is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). func (o IntentSlotValueElicitationPromptMessageOutput) GroupNumber() pulumi.IntPtrOutput { return o.ApplyT(func(v IntentSlotValueElicitationPromptMessage) *int { return v.GroupNumber }).(pulumi.IntPtrOutput) } @@ -3578,9 +3578,9 @@ func (o IntentSlotValueElicitationPromptMessageArrayOutput) Index(i pulumi.IntIn } type SlotTypeEnumerationValue struct { - // Additional values related to the slot type value. + // Additional values related to the slot type value. Each item must be less than or equal to 140 characters in length. Synonyms []string `pulumi:"synonyms"` - // The value of the slot type. + // The value of the slot type. Must be less than or equal to 140 characters in length. Value string `pulumi:"value"` } @@ -3596,9 +3596,9 @@ type SlotTypeEnumerationValueInput interface { } type SlotTypeEnumerationValueArgs struct { - // Additional values related to the slot type value. + // Additional values related to the slot type value. Each item must be less than or equal to 140 characters in length. Synonyms pulumi.StringArrayInput `pulumi:"synonyms"` - // The value of the slot type. + // The value of the slot type. Must be less than or equal to 140 characters in length. Value pulumi.StringInput `pulumi:"value"` } @@ -3653,12 +3653,12 @@ func (o SlotTypeEnumerationValueOutput) ToSlotTypeEnumerationValueOutputWithCont return o } -// Additional values related to the slot type value. +// Additional values related to the slot type value. Each item must be less than or equal to 140 characters in length. func (o SlotTypeEnumerationValueOutput) Synonyms() pulumi.StringArrayOutput { return o.ApplyT(func(v SlotTypeEnumerationValue) []string { return v.Synonyms }).(pulumi.StringArrayOutput) } -// The value of the slot type. +// The value of the slot type. Must be less than or equal to 140 characters in length. func (o SlotTypeEnumerationValueOutput) Value() pulumi.StringOutput { return o.ApplyT(func(v SlotTypeEnumerationValue) string { return v.Value }).(pulumi.StringOutput) } diff --git a/sdk/go/aws/lex/slotType.go b/sdk/go/aws/lex/slotType.go index 21d5312a5ab..a21ab0f824c 100644 --- a/sdk/go/aws/lex/slotType.go +++ b/sdk/go/aws/lex/slotType.go @@ -65,7 +65,7 @@ type SlotType struct { CreateVersion pulumi.BoolPtrOutput `pulumi:"createVersion"` // The date when the slot type version was created. CreatedDate pulumi.StringOutput `pulumi:"createdDate"` - // A description of the slot type. + // A description of the slot type. Must be less than or equal to 200 characters in length. Description pulumi.StringPtrOutput `pulumi:"description"` // A list of EnumerationValue objects that defines the values that // the slot type can take. Each value can have a list of synonyms, which are additional values that help @@ -74,7 +74,7 @@ type SlotType struct { EnumerationValues SlotTypeEnumerationValueArrayOutput `pulumi:"enumerationValues"` // The date when the `$LATEST` version of this slot type was updated. LastUpdatedDate pulumi.StringOutput `pulumi:"lastUpdatedDate"` - // The name of the slot type. The name is not case sensitive. + // The name of the slot type. The name is not case sensitive. Must be less than or equal to 100 characters in length. Name pulumi.StringOutput `pulumi:"name"` // Determines the slot resolution strategy that Amazon Lex // uses to return slot type values. `ORIGINAL_VALUE` returns the value entered by the user if the user @@ -124,7 +124,7 @@ type slotTypeState struct { CreateVersion *bool `pulumi:"createVersion"` // The date when the slot type version was created. CreatedDate *string `pulumi:"createdDate"` - // A description of the slot type. + // A description of the slot type. Must be less than or equal to 200 characters in length. Description *string `pulumi:"description"` // A list of EnumerationValue objects that defines the values that // the slot type can take. Each value can have a list of synonyms, which are additional values that help @@ -133,7 +133,7 @@ type slotTypeState struct { EnumerationValues []SlotTypeEnumerationValue `pulumi:"enumerationValues"` // The date when the `$LATEST` version of this slot type was updated. LastUpdatedDate *string `pulumi:"lastUpdatedDate"` - // The name of the slot type. The name is not case sensitive. + // The name of the slot type. The name is not case sensitive. Must be less than or equal to 100 characters in length. Name *string `pulumi:"name"` // Determines the slot resolution strategy that Amazon Lex // uses to return slot type values. `ORIGINAL_VALUE` returns the value entered by the user if the user @@ -153,7 +153,7 @@ type SlotTypeState struct { CreateVersion pulumi.BoolPtrInput // The date when the slot type version was created. CreatedDate pulumi.StringPtrInput - // A description of the slot type. + // A description of the slot type. Must be less than or equal to 200 characters in length. Description pulumi.StringPtrInput // A list of EnumerationValue objects that defines the values that // the slot type can take. Each value can have a list of synonyms, which are additional values that help @@ -162,7 +162,7 @@ type SlotTypeState struct { EnumerationValues SlotTypeEnumerationValueArrayInput // The date when the `$LATEST` version of this slot type was updated. LastUpdatedDate pulumi.StringPtrInput - // The name of the slot type. The name is not case sensitive. + // The name of the slot type. The name is not case sensitive. Must be less than or equal to 100 characters in length. Name pulumi.StringPtrInput // Determines the slot resolution strategy that Amazon Lex // uses to return slot type values. `ORIGINAL_VALUE` returns the value entered by the user if the user @@ -181,14 +181,14 @@ type slotTypeArgs struct { // Determines if a new slot type version is created when the initial resource is created and on each // update. Defaults to `false`. CreateVersion *bool `pulumi:"createVersion"` - // A description of the slot type. + // A description of the slot type. Must be less than or equal to 200 characters in length. Description *string `pulumi:"description"` // A list of EnumerationValue objects that defines the values that // the slot type can take. Each value can have a list of synonyms, which are additional values that help // train the machine learning model about the values that it resolves for a slot. Attributes are // documented under enumeration_value. EnumerationValues []SlotTypeEnumerationValue `pulumi:"enumerationValues"` - // The name of the slot type. The name is not case sensitive. + // The name of the slot type. The name is not case sensitive. Must be less than or equal to 100 characters in length. Name *string `pulumi:"name"` // Determines the slot resolution strategy that Amazon Lex // uses to return slot type values. `ORIGINAL_VALUE` returns the value entered by the user if the user @@ -202,14 +202,14 @@ type SlotTypeArgs struct { // Determines if a new slot type version is created when the initial resource is created and on each // update. Defaults to `false`. CreateVersion pulumi.BoolPtrInput - // A description of the slot type. + // A description of the slot type. Must be less than or equal to 200 characters in length. Description pulumi.StringPtrInput // A list of EnumerationValue objects that defines the values that // the slot type can take. Each value can have a list of synonyms, which are additional values that help // train the machine learning model about the values that it resolves for a slot. Attributes are // documented under enumeration_value. EnumerationValues SlotTypeEnumerationValueArrayInput - // The name of the slot type. The name is not case sensitive. + // The name of the slot type. The name is not case sensitive. Must be less than or equal to 100 characters in length. Name pulumi.StringPtrInput // Determines the slot resolution strategy that Amazon Lex // uses to return slot type values. `ORIGINAL_VALUE` returns the value entered by the user if the user diff --git a/sdk/go/aws/pulumiTypes.go b/sdk/go/aws/pulumiTypes.go index 4cd2b338f28..c60fdf76964 100644 --- a/sdk/go/aws/pulumiTypes.go +++ b/sdk/go/aws/pulumiTypes.go @@ -272,6 +272,7 @@ type ProviderEndpoint struct { Codecommit *string `pulumi:"codecommit"` Codedeploy *string `pulumi:"codedeploy"` Codepipeline *string `pulumi:"codepipeline"` + Codestarconnections *string `pulumi:"codestarconnections"` Cognitoidentity *string `pulumi:"cognitoidentity"` Cognitoidp *string `pulumi:"cognitoidp"` Configservice *string `pulumi:"configservice"` @@ -430,6 +431,7 @@ type ProviderEndpointArgs struct { Codecommit pulumi.StringPtrInput `pulumi:"codecommit"` Codedeploy pulumi.StringPtrInput `pulumi:"codedeploy"` Codepipeline pulumi.StringPtrInput `pulumi:"codepipeline"` + Codestarconnections pulumi.StringPtrInput `pulumi:"codestarconnections"` Cognitoidentity pulumi.StringPtrInput `pulumi:"cognitoidentity"` Cognitoidp pulumi.StringPtrInput `pulumi:"cognitoidp"` Configservice pulumi.StringPtrInput `pulumi:"configservice"` @@ -717,6 +719,10 @@ func (o ProviderEndpointOutput) Codepipeline() pulumi.StringPtrOutput { return o.ApplyT(func(v ProviderEndpoint) *string { return v.Codepipeline }).(pulumi.StringPtrOutput) } +func (o ProviderEndpointOutput) Codestarconnections() pulumi.StringPtrOutput { + return o.ApplyT(func(v ProviderEndpoint) *string { return v.Codestarconnections }).(pulumi.StringPtrOutput) +} + func (o ProviderEndpointOutput) Cognitoidentity() pulumi.StringPtrOutput { return o.ApplyT(func(v ProviderEndpoint) *string { return v.Cognitoidentity }).(pulumi.StringPtrOutput) } diff --git a/sdk/go/aws/rds/cluster.go b/sdk/go/aws/rds/cluster.go index f5a54c8a518..efc0c0c587a 100644 --- a/sdk/go/aws/rds/cluster.go +++ b/sdk/go/aws/rds/cluster.go @@ -238,8 +238,8 @@ type Cluster struct { SnapshotIdentifier pulumi.StringPtrOutput `pulumi:"snapshotIdentifier"` // The source region for an encrypted replica DB cluster. SourceRegion pulumi.StringPtrOutput `pulumi:"sourceRegion"` - // Specifies whether the DB cluster is encrypted. The default is `false` for `provisioned` `engineMode` and `true` for `serverless` `engineMode`. - StorageEncrypted pulumi.BoolPtrOutput `pulumi:"storageEncrypted"` + // Specifies whether the DB cluster is encrypted + StorageEncrypted pulumi.BoolOutput `pulumi:"storageEncrypted"` // A map of tags to assign to the DB cluster. Tags pulumi.StringMapOutput `pulumi:"tags"` // List of VPC security groups to associate with the Cluster @@ -352,7 +352,7 @@ type clusterState struct { SnapshotIdentifier *string `pulumi:"snapshotIdentifier"` // The source region for an encrypted replica DB cluster. SourceRegion *string `pulumi:"sourceRegion"` - // Specifies whether the DB cluster is encrypted. The default is `false` for `provisioned` `engineMode` and `true` for `serverless` `engineMode`. + // Specifies whether the DB cluster is encrypted StorageEncrypted *bool `pulumi:"storageEncrypted"` // A map of tags to assign to the DB cluster. Tags map[string]string `pulumi:"tags"` @@ -439,7 +439,7 @@ type ClusterState struct { SnapshotIdentifier pulumi.StringPtrInput // The source region for an encrypted replica DB cluster. SourceRegion pulumi.StringPtrInput - // Specifies whether the DB cluster is encrypted. The default is `false` for `provisioned` `engineMode` and `true` for `serverless` `engineMode`. + // Specifies whether the DB cluster is encrypted StorageEncrypted pulumi.BoolPtrInput // A map of tags to assign to the DB cluster. Tags pulumi.StringMapInput @@ -519,7 +519,7 @@ type clusterArgs struct { SnapshotIdentifier *string `pulumi:"snapshotIdentifier"` // The source region for an encrypted replica DB cluster. SourceRegion *string `pulumi:"sourceRegion"` - // Specifies whether the DB cluster is encrypted. The default is `false` for `provisioned` `engineMode` and `true` for `serverless` `engineMode`. + // Specifies whether the DB cluster is encrypted StorageEncrypted *bool `pulumi:"storageEncrypted"` // A map of tags to assign to the DB cluster. Tags map[string]string `pulumi:"tags"` @@ -596,7 +596,7 @@ type ClusterArgs struct { SnapshotIdentifier pulumi.StringPtrInput // The source region for an encrypted replica DB cluster. SourceRegion pulumi.StringPtrInput - // Specifies whether the DB cluster is encrypted. The default is `false` for `provisioned` `engineMode` and `true` for `serverless` `engineMode`. + // Specifies whether the DB cluster is encrypted StorageEncrypted pulumi.BoolPtrInput // A map of tags to assign to the DB cluster. Tags pulumi.StringMapInput diff --git a/sdk/go/aws/route53/getResolverEndpoint.go b/sdk/go/aws/route53/getResolverEndpoint.go new file mode 100644 index 00000000000..337e3cf0887 --- /dev/null +++ b/sdk/go/aws/route53/getResolverEndpoint.go @@ -0,0 +1,96 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package route53 + +import ( + "github.com/pulumi/pulumi/sdk/v2/go/pulumi" +) + +// `route53.ResolverEndpoint` provides details about a specific Route53 Resolver Endpoint. +// +// This data source allows to find a list of IPaddresses associated with a specific Route53 Resolver Endpoint. +// +// ## Example Usage +// +// ```go +// package main +// +// import ( +// "github.com/pulumi/pulumi-aws/sdk/v3/go/aws/route53" +// "github.com/pulumi/pulumi/sdk/v2/go/pulumi" +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// opt0 := "rslvr-in-1abc2345ef678g91h" +// _, err := route53.LookupResolverEndpoint(ctx, &route53.LookupResolverEndpointArgs{ +// ResolverEndpointId: &opt0, +// }, nil) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// ``` +// +// ```go +// package main +// +// import ( +// "github.com/pulumi/pulumi-aws/sdk/v3/go/aws/route53" +// "github.com/pulumi/pulumi/sdk/v2/go/pulumi" +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := route53.LookupResolverEndpoint(ctx, &route53.LookupResolverEndpointArgs{ +// Filters: []route53.GetResolverEndpointFilter{ +// route53.GetResolverEndpointFilter{ +// Name: "NAME", +// Values: []string{ +// "MyResolverExampleName", +// }, +// }, +// }, +// }, nil) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// ``` +func LookupResolverEndpoint(ctx *pulumi.Context, args *LookupResolverEndpointArgs, opts ...pulumi.InvokeOption) (*LookupResolverEndpointResult, error) { + var rv LookupResolverEndpointResult + err := ctx.Invoke("aws:route53/getResolverEndpoint:getResolverEndpoint", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +// A collection of arguments for invoking getResolverEndpoint. +type LookupResolverEndpointArgs struct { + // One or more name/value pairs to use as filters. There are + // several valid keys, for a full reference, check out + // [Route53resolver Filter value in the AWS API reference][1]. + Filters []GetResolverEndpointFilter `pulumi:"filters"` + // The ID of the Route53 Resolver Endpoint. + ResolverEndpointId *string `pulumi:"resolverEndpointId"` +} + +// A collection of values returned by getResolverEndpoint. +type LookupResolverEndpointResult struct { + Arn string `pulumi:"arn"` + Direction string `pulumi:"direction"` + Filters []GetResolverEndpointFilter `pulumi:"filters"` + // The provider-assigned unique ID for this managed resource. + Id string `pulumi:"id"` + IpAddresses []string `pulumi:"ipAddresses"` + Name string `pulumi:"name"` + ResolverEndpointId *string `pulumi:"resolverEndpointId"` + Status string `pulumi:"status"` + VpcId string `pulumi:"vpcId"` +} diff --git a/sdk/go/aws/route53/pulumiTypes.go b/sdk/go/aws/route53/pulumiTypes.go index cadd7f237db..e8513da9270 100644 --- a/sdk/go/aws/route53/pulumiTypes.go +++ b/sdk/go/aws/route53/pulumiTypes.go @@ -855,6 +855,106 @@ func (o ZoneVpcArrayOutput) Index(i pulumi.IntInput) ZoneVpcOutput { }).(ZoneVpcOutput) } +type GetResolverEndpointFilter struct { + Name string `pulumi:"name"` + Values []string `pulumi:"values"` +} + +// GetResolverEndpointFilterInput is an input type that accepts GetResolverEndpointFilterArgs and GetResolverEndpointFilterOutput values. +// You can construct a concrete instance of `GetResolverEndpointFilterInput` via: +// +// GetResolverEndpointFilterArgs{...} +type GetResolverEndpointFilterInput interface { + pulumi.Input + + ToGetResolverEndpointFilterOutput() GetResolverEndpointFilterOutput + ToGetResolverEndpointFilterOutputWithContext(context.Context) GetResolverEndpointFilterOutput +} + +type GetResolverEndpointFilterArgs struct { + Name pulumi.StringInput `pulumi:"name"` + Values pulumi.StringArrayInput `pulumi:"values"` +} + +func (GetResolverEndpointFilterArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetResolverEndpointFilter)(nil)).Elem() +} + +func (i GetResolverEndpointFilterArgs) ToGetResolverEndpointFilterOutput() GetResolverEndpointFilterOutput { + return i.ToGetResolverEndpointFilterOutputWithContext(context.Background()) +} + +func (i GetResolverEndpointFilterArgs) ToGetResolverEndpointFilterOutputWithContext(ctx context.Context) GetResolverEndpointFilterOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetResolverEndpointFilterOutput) +} + +// GetResolverEndpointFilterArrayInput is an input type that accepts GetResolverEndpointFilterArray and GetResolverEndpointFilterArrayOutput values. +// You can construct a concrete instance of `GetResolverEndpointFilterArrayInput` via: +// +// GetResolverEndpointFilterArray{ GetResolverEndpointFilterArgs{...} } +type GetResolverEndpointFilterArrayInput interface { + pulumi.Input + + ToGetResolverEndpointFilterArrayOutput() GetResolverEndpointFilterArrayOutput + ToGetResolverEndpointFilterArrayOutputWithContext(context.Context) GetResolverEndpointFilterArrayOutput +} + +type GetResolverEndpointFilterArray []GetResolverEndpointFilterInput + +func (GetResolverEndpointFilterArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetResolverEndpointFilter)(nil)).Elem() +} + +func (i GetResolverEndpointFilterArray) ToGetResolverEndpointFilterArrayOutput() GetResolverEndpointFilterArrayOutput { + return i.ToGetResolverEndpointFilterArrayOutputWithContext(context.Background()) +} + +func (i GetResolverEndpointFilterArray) ToGetResolverEndpointFilterArrayOutputWithContext(ctx context.Context) GetResolverEndpointFilterArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetResolverEndpointFilterArrayOutput) +} + +type GetResolverEndpointFilterOutput struct{ *pulumi.OutputState } + +func (GetResolverEndpointFilterOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetResolverEndpointFilter)(nil)).Elem() +} + +func (o GetResolverEndpointFilterOutput) ToGetResolverEndpointFilterOutput() GetResolverEndpointFilterOutput { + return o +} + +func (o GetResolverEndpointFilterOutput) ToGetResolverEndpointFilterOutputWithContext(ctx context.Context) GetResolverEndpointFilterOutput { + return o +} + +func (o GetResolverEndpointFilterOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v GetResolverEndpointFilter) string { return v.Name }).(pulumi.StringOutput) +} + +func (o GetResolverEndpointFilterOutput) Values() pulumi.StringArrayOutput { + return o.ApplyT(func(v GetResolverEndpointFilter) []string { return v.Values }).(pulumi.StringArrayOutput) +} + +type GetResolverEndpointFilterArrayOutput struct{ *pulumi.OutputState } + +func (GetResolverEndpointFilterArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetResolverEndpointFilter)(nil)).Elem() +} + +func (o GetResolverEndpointFilterArrayOutput) ToGetResolverEndpointFilterArrayOutput() GetResolverEndpointFilterArrayOutput { + return o +} + +func (o GetResolverEndpointFilterArrayOutput) ToGetResolverEndpointFilterArrayOutputWithContext(ctx context.Context) GetResolverEndpointFilterArrayOutput { + return o +} + +func (o GetResolverEndpointFilterArrayOutput) Index(i pulumi.IntInput) GetResolverEndpointFilterOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) GetResolverEndpointFilter { + return vs[0].([]GetResolverEndpointFilter)[vs[1].(int)] + }).(GetResolverEndpointFilterOutput) +} + func init() { pulumi.RegisterOutputType(RecordAliasOutput{}) pulumi.RegisterOutputType(RecordAliasArrayOutput{}) @@ -872,4 +972,6 @@ func init() { pulumi.RegisterOutputType(ResolverRuleTargetIpArrayOutput{}) pulumi.RegisterOutputType(ZoneVpcOutput{}) pulumi.RegisterOutputType(ZoneVpcArrayOutput{}) + pulumi.RegisterOutputType(GetResolverEndpointFilterOutput{}) + pulumi.RegisterOutputType(GetResolverEndpointFilterArrayOutput{}) } diff --git a/sdk/go/aws/s3/bucket.go b/sdk/go/aws/s3/bucket.go index 01c9c3e3ccb..2f7418f3356 100644 --- a/sdk/go/aws/s3/bucket.go +++ b/sdk/go/aws/s3/bucket.go @@ -391,11 +391,11 @@ type Bucket struct { Acl pulumi.StringPtrOutput `pulumi:"acl"` // The ARN of the bucket. Will be of format `arn:aws:s3:::bucketname`. Arn pulumi.StringOutput `pulumi:"arn"` - // The name of the bucket. If omitted, this provider will assign a random, unique name. + // The name of the bucket. If omitted, this provider will assign a random, unique name. Must be less than or equal to 63 characters in length. Bucket pulumi.StringOutput `pulumi:"bucket"` // The bucket domain name. Will be of format `bucketname.s3.amazonaws.com`. BucketDomainName pulumi.StringOutput `pulumi:"bucketDomainName"` - // Creates a unique bucket name beginning with the specified prefix. Conflicts with `bucket`. + // Creates a unique bucket name beginning with the specified prefix. Conflicts with `bucket`. Must be less than or equal to 37 characters in length. BucketPrefix pulumi.StringPtrOutput `pulumi:"bucketPrefix"` // The bucket region-specific domain name. The bucket domain name including the region name, please refer [here](https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region) for format. Note: The AWS CloudFront allows specifying S3 region-specific endpoint when creating S3 origin, it will prevent [redirect issues](https://forums.aws.amazon.com/thread.jspa?threadID=216814) from CloudFront to S3 Origin URL. BucketRegionalDomainName pulumi.StringOutput `pulumi:"bucketRegionalDomainName"` @@ -472,11 +472,11 @@ type bucketState struct { Acl *string `pulumi:"acl"` // The ARN of the bucket. Will be of format `arn:aws:s3:::bucketname`. Arn *string `pulumi:"arn"` - // The name of the bucket. If omitted, this provider will assign a random, unique name. + // The name of the bucket. If omitted, this provider will assign a random, unique name. Must be less than or equal to 63 characters in length. Bucket *string `pulumi:"bucket"` // The bucket domain name. Will be of format `bucketname.s3.amazonaws.com`. BucketDomainName *string `pulumi:"bucketDomainName"` - // Creates a unique bucket name beginning with the specified prefix. Conflicts with `bucket`. + // Creates a unique bucket name beginning with the specified prefix. Conflicts with `bucket`. Must be less than or equal to 37 characters in length. BucketPrefix *string `pulumi:"bucketPrefix"` // The bucket region-specific domain name. The bucket domain name including the region name, please refer [here](https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region) for format. Note: The AWS CloudFront allows specifying S3 region-specific endpoint when creating S3 origin, it will prevent [redirect issues](https://forums.aws.amazon.com/thread.jspa?threadID=216814) from CloudFront to S3 Origin URL. BucketRegionalDomainName *string `pulumi:"bucketRegionalDomainName"` @@ -526,11 +526,11 @@ type BucketState struct { Acl pulumi.StringPtrInput // The ARN of the bucket. Will be of format `arn:aws:s3:::bucketname`. Arn pulumi.StringPtrInput - // The name of the bucket. If omitted, this provider will assign a random, unique name. + // The name of the bucket. If omitted, this provider will assign a random, unique name. Must be less than or equal to 63 characters in length. Bucket pulumi.StringPtrInput // The bucket domain name. Will be of format `bucketname.s3.amazonaws.com`. BucketDomainName pulumi.StringPtrInput - // Creates a unique bucket name beginning with the specified prefix. Conflicts with `bucket`. + // Creates a unique bucket name beginning with the specified prefix. Conflicts with `bucket`. Must be less than or equal to 37 characters in length. BucketPrefix pulumi.StringPtrInput // The bucket region-specific domain name. The bucket domain name including the region name, please refer [here](https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region) for format. Note: The AWS CloudFront allows specifying S3 region-specific endpoint when creating S3 origin, it will prevent [redirect issues](https://forums.aws.amazon.com/thread.jspa?threadID=216814) from CloudFront to S3 Origin URL. BucketRegionalDomainName pulumi.StringPtrInput @@ -584,9 +584,9 @@ type bucketArgs struct { Acl interface{} `pulumi:"acl"` // The ARN of the bucket. Will be of format `arn:aws:s3:::bucketname`. Arn *string `pulumi:"arn"` - // The name of the bucket. If omitted, this provider will assign a random, unique name. + // The name of the bucket. If omitted, this provider will assign a random, unique name. Must be less than or equal to 63 characters in length. Bucket *string `pulumi:"bucket"` - // Creates a unique bucket name beginning with the specified prefix. Conflicts with `bucket`. + // Creates a unique bucket name beginning with the specified prefix. Conflicts with `bucket`. Must be less than or equal to 37 characters in length. BucketPrefix *string `pulumi:"bucketPrefix"` // A rule of [Cross-Origin Resource Sharing](https://docs.aws.amazon.com/AmazonS3/latest/dev/cors.html) (documented below). CorsRules []BucketCorsRule `pulumi:"corsRules"` @@ -633,9 +633,9 @@ type BucketArgs struct { Acl pulumi.Input // The ARN of the bucket. Will be of format `arn:aws:s3:::bucketname`. Arn pulumi.StringPtrInput - // The name of the bucket. If omitted, this provider will assign a random, unique name. + // The name of the bucket. If omitted, this provider will assign a random, unique name. Must be less than or equal to 63 characters in length. Bucket pulumi.StringPtrInput - // Creates a unique bucket name beginning with the specified prefix. Conflicts with `bucket`. + // Creates a unique bucket name beginning with the specified prefix. Conflicts with `bucket`. Must be less than or equal to 37 characters in length. BucketPrefix pulumi.StringPtrInput // A rule of [Cross-Origin Resource Sharing](https://docs.aws.amazon.com/AmazonS3/latest/dev/cors.html) (documented below). CorsRules BucketCorsRuleArrayInput diff --git a/sdk/go/aws/s3/pulumiTypes.go b/sdk/go/aws/s3/pulumiTypes.go index ebba2d4dca4..df3986ee279 100644 --- a/sdk/go/aws/s3/pulumiTypes.go +++ b/sdk/go/aws/s3/pulumiTypes.go @@ -1391,7 +1391,7 @@ type BucketLifecycleRule struct { Enabled bool `pulumi:"enabled"` // Specifies a period in the object's expire (documented below). Expiration *BucketLifecycleRuleExpiration `pulumi:"expiration"` - // Unique identifier for the rule. + // Unique identifier for the rule. Must be less than or equal to 255 characters in length. Id *string `pulumi:"id"` // Specifies when noncurrent object versions expire (documented below). NoncurrentVersionExpiration *BucketLifecycleRuleNoncurrentVersionExpiration `pulumi:"noncurrentVersionExpiration"` @@ -1423,7 +1423,7 @@ type BucketLifecycleRuleArgs struct { Enabled pulumi.BoolInput `pulumi:"enabled"` // Specifies a period in the object's expire (documented below). Expiration BucketLifecycleRuleExpirationPtrInput `pulumi:"expiration"` - // Unique identifier for the rule. + // Unique identifier for the rule. Must be less than or equal to 255 characters in length. Id pulumi.StringPtrInput `pulumi:"id"` // Specifies when noncurrent object versions expire (documented below). NoncurrentVersionExpiration BucketLifecycleRuleNoncurrentVersionExpirationPtrInput `pulumi:"noncurrentVersionExpiration"` @@ -1503,7 +1503,7 @@ func (o BucketLifecycleRuleOutput) Expiration() BucketLifecycleRuleExpirationPtr return o.ApplyT(func(v BucketLifecycleRule) *BucketLifecycleRuleExpiration { return v.Expiration }).(BucketLifecycleRuleExpirationPtrOutput) } -// Unique identifier for the rule. +// Unique identifier for the rule. Must be less than or equal to 255 characters in length. func (o BucketLifecycleRuleOutput) Id() pulumi.StringPtrOutput { return o.ApplyT(func(v BucketLifecycleRule) *string { return v.Id }).(pulumi.StringPtrOutput) } @@ -3475,9 +3475,9 @@ type BucketReplicationConfigurationRule struct { Destination BucketReplicationConfigurationRuleDestination `pulumi:"destination"` // Filter that identifies subset of objects to which the replication rule applies (documented below). Filter *BucketReplicationConfigurationRuleFilter `pulumi:"filter"` - // Unique identifier for the rule. + // Unique identifier for the rule. Must be less than or equal to 255 characters in length. Id *string `pulumi:"id"` - // Object keyname prefix identifying one or more objects to which the rule applies. + // Object keyname prefix identifying one or more objects to which the rule applies. Must be less than or equal to 1024 characters in length. Prefix *string `pulumi:"prefix"` // is optional (with a default value of `0`) but must be unique between multiple rules Priority *int `pulumi:"priority"` @@ -3503,9 +3503,9 @@ type BucketReplicationConfigurationRuleArgs struct { Destination BucketReplicationConfigurationRuleDestinationInput `pulumi:"destination"` // Filter that identifies subset of objects to which the replication rule applies (documented below). Filter BucketReplicationConfigurationRuleFilterPtrInput `pulumi:"filter"` - // Unique identifier for the rule. + // Unique identifier for the rule. Must be less than or equal to 255 characters in length. Id pulumi.StringPtrInput `pulumi:"id"` - // Object keyname prefix identifying one or more objects to which the rule applies. + // Object keyname prefix identifying one or more objects to which the rule applies. Must be less than or equal to 1024 characters in length. Prefix pulumi.StringPtrInput `pulumi:"prefix"` // is optional (with a default value of `0`) but must be unique between multiple rules Priority pulumi.IntPtrInput `pulumi:"priority"` @@ -3578,12 +3578,12 @@ func (o BucketReplicationConfigurationRuleOutput) Filter() BucketReplicationConf return o.ApplyT(func(v BucketReplicationConfigurationRule) *BucketReplicationConfigurationRuleFilter { return v.Filter }).(BucketReplicationConfigurationRuleFilterPtrOutput) } -// Unique identifier for the rule. +// Unique identifier for the rule. Must be less than or equal to 255 characters in length. func (o BucketReplicationConfigurationRuleOutput) Id() pulumi.StringPtrOutput { return o.ApplyT(func(v BucketReplicationConfigurationRule) *string { return v.Id }).(pulumi.StringPtrOutput) } -// Object keyname prefix identifying one or more objects to which the rule applies. +// Object keyname prefix identifying one or more objects to which the rule applies. Must be less than or equal to 1024 characters in length. func (o BucketReplicationConfigurationRuleOutput) Prefix() pulumi.StringPtrOutput { return o.ApplyT(func(v BucketReplicationConfigurationRule) *string { return v.Prefix }).(pulumi.StringPtrOutput) } @@ -3852,7 +3852,7 @@ func (o BucketReplicationConfigurationRuleDestinationAccessControlTranslationPtr } type BucketReplicationConfigurationRuleFilter struct { - // Object keyname prefix that identifies subset of objects to which the rule applies. + // Object keyname prefix that identifies subset of objects to which the rule applies. Must be less than or equal to 1024 characters in length. Prefix *string `pulumi:"prefix"` // A map of tags that identifies subset of objects to which the rule applies. // The rule applies only to objects having all the tags in its tagset. @@ -3871,7 +3871,7 @@ type BucketReplicationConfigurationRuleFilterInput interface { } type BucketReplicationConfigurationRuleFilterArgs struct { - // Object keyname prefix that identifies subset of objects to which the rule applies. + // Object keyname prefix that identifies subset of objects to which the rule applies. Must be less than or equal to 1024 characters in length. Prefix pulumi.StringPtrInput `pulumi:"prefix"` // A map of tags that identifies subset of objects to which the rule applies. // The rule applies only to objects having all the tags in its tagset. @@ -3955,7 +3955,7 @@ func (o BucketReplicationConfigurationRuleFilterOutput) ToBucketReplicationConfi }).(BucketReplicationConfigurationRuleFilterPtrOutput) } -// Object keyname prefix that identifies subset of objects to which the rule applies. +// Object keyname prefix that identifies subset of objects to which the rule applies. Must be less than or equal to 1024 characters in length. func (o BucketReplicationConfigurationRuleFilterOutput) Prefix() pulumi.StringPtrOutput { return o.ApplyT(func(v BucketReplicationConfigurationRuleFilter) *string { return v.Prefix }).(pulumi.StringPtrOutput) } @@ -3984,7 +3984,7 @@ func (o BucketReplicationConfigurationRuleFilterPtrOutput) Elem() BucketReplicat return o.ApplyT(func(v *BucketReplicationConfigurationRuleFilter) BucketReplicationConfigurationRuleFilter { return *v }).(BucketReplicationConfigurationRuleFilterOutput) } -// Object keyname prefix that identifies subset of objects to which the rule applies. +// Object keyname prefix that identifies subset of objects to which the rule applies. Must be less than or equal to 1024 characters in length. func (o BucketReplicationConfigurationRuleFilterPtrOutput) Prefix() pulumi.StringPtrOutput { return o.ApplyT(func(v *BucketReplicationConfigurationRuleFilter) *string { if v == nil { diff --git a/sdk/go/aws/sagemaker/endpointConfiguration.go b/sdk/go/aws/sagemaker/endpointConfiguration.go index 6b5085c1416..ab79f38e619 100644 --- a/sdk/go/aws/sagemaker/endpointConfiguration.go +++ b/sdk/go/aws/sagemaker/endpointConfiguration.go @@ -51,6 +51,8 @@ type EndpointConfiguration struct { // The Amazon Resource Name (ARN) assigned by AWS to this endpoint configuration. Arn pulumi.StringOutput `pulumi:"arn"` + // Specifies the parameters to capture input/output of Sagemaker models endpoints. Fields are documented below. + DataCaptureConfig EndpointConfigurationDataCaptureConfigPtrOutput `pulumi:"dataCaptureConfig"` // Amazon Resource Name (ARN) of a AWS Key Management Service key that Amazon SageMaker uses to encrypt data on the storage volume attached to the ML compute instance that hosts the endpoint. KmsKeyArn pulumi.StringPtrOutput `pulumi:"kmsKeyArn"` // The name of the endpoint configuration. If omitted, this provider will assign a random, unique name. @@ -94,6 +96,8 @@ func GetEndpointConfiguration(ctx *pulumi.Context, type endpointConfigurationState struct { // The Amazon Resource Name (ARN) assigned by AWS to this endpoint configuration. Arn *string `pulumi:"arn"` + // Specifies the parameters to capture input/output of Sagemaker models endpoints. Fields are documented below. + DataCaptureConfig *EndpointConfigurationDataCaptureConfig `pulumi:"dataCaptureConfig"` // Amazon Resource Name (ARN) of a AWS Key Management Service key that Amazon SageMaker uses to encrypt data on the storage volume attached to the ML compute instance that hosts the endpoint. KmsKeyArn *string `pulumi:"kmsKeyArn"` // The name of the endpoint configuration. If omitted, this provider will assign a random, unique name. @@ -107,6 +111,8 @@ type endpointConfigurationState struct { type EndpointConfigurationState struct { // The Amazon Resource Name (ARN) assigned by AWS to this endpoint configuration. Arn pulumi.StringPtrInput + // Specifies the parameters to capture input/output of Sagemaker models endpoints. Fields are documented below. + DataCaptureConfig EndpointConfigurationDataCaptureConfigPtrInput // Amazon Resource Name (ARN) of a AWS Key Management Service key that Amazon SageMaker uses to encrypt data on the storage volume attached to the ML compute instance that hosts the endpoint. KmsKeyArn pulumi.StringPtrInput // The name of the endpoint configuration. If omitted, this provider will assign a random, unique name. @@ -122,6 +128,8 @@ func (EndpointConfigurationState) ElementType() reflect.Type { } type endpointConfigurationArgs struct { + // Specifies the parameters to capture input/output of Sagemaker models endpoints. Fields are documented below. + DataCaptureConfig *EndpointConfigurationDataCaptureConfig `pulumi:"dataCaptureConfig"` // Amazon Resource Name (ARN) of a AWS Key Management Service key that Amazon SageMaker uses to encrypt data on the storage volume attached to the ML compute instance that hosts the endpoint. KmsKeyArn *string `pulumi:"kmsKeyArn"` // The name of the endpoint configuration. If omitted, this provider will assign a random, unique name. @@ -134,6 +142,8 @@ type endpointConfigurationArgs struct { // The set of arguments for constructing a EndpointConfiguration resource. type EndpointConfigurationArgs struct { + // Specifies the parameters to capture input/output of Sagemaker models endpoints. Fields are documented below. + DataCaptureConfig EndpointConfigurationDataCaptureConfigPtrInput // Amazon Resource Name (ARN) of a AWS Key Management Service key that Amazon SageMaker uses to encrypt data on the storage volume attached to the ML compute instance that hosts the endpoint. KmsKeyArn pulumi.StringPtrInput // The name of the endpoint configuration. If omitted, this provider will assign a random, unique name. diff --git a/sdk/go/aws/sagemaker/getPrebuiltEcrImage.go b/sdk/go/aws/sagemaker/getPrebuiltEcrImage.go new file mode 100644 index 00000000000..208c5e2083b --- /dev/null +++ b/sdk/go/aws/sagemaker/getPrebuiltEcrImage.go @@ -0,0 +1,73 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package sagemaker + +import ( + "github.com/pulumi/pulumi/sdk/v2/go/pulumi" +) + +// Get information about prebuilt Amazon SageMaker Docker images. +// +// > **NOTE:** The AWS provider creates a validly constructed `registryPath` but does not verify that the `registryPath` corresponds to an existing image. For example, using a `registryPath` containing an `imageTag` that does not correspond to a Docker image in the ECR repository, will result in an error. +// +// ## Example Usage +// +// Basic usage: +// +// ```go +// package main +// +// import ( +// "github.com/pulumi/pulumi-aws/sdk/v3/go/aws/sagemaker" +// "github.com/pulumi/pulumi/sdk/v2/go/pulumi" +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// opt0 := "2.2-1.0.11.0" +// _, err := sagemaker.GetPrebuiltEcrImage(ctx, &sagemaker.GetPrebuiltEcrImageArgs{ +// ImageTag: &opt0, +// RepositoryName: "sagemaker-scikit-learn", +// }, nil) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// ``` +func GetPrebuiltEcrImage(ctx *pulumi.Context, args *GetPrebuiltEcrImageArgs, opts ...pulumi.InvokeOption) (*GetPrebuiltEcrImageResult, error) { + var rv GetPrebuiltEcrImageResult + err := ctx.Invoke("aws:sagemaker/getPrebuiltEcrImage:getPrebuiltEcrImage", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +// A collection of arguments for invoking getPrebuiltEcrImage. +type GetPrebuiltEcrImageArgs struct { + // The DNS suffix to use in the registry path. If not specified, the AWS provider sets it to the DNS suffix for the current region. + DnsSuffix *string `pulumi:"dnsSuffix"` + // The image tag for the Docker image. If not specified, the AWS provider sets the value to `1`, which for many repositories indicates the latest version. Some repositories, such as XGBoost, do not support `1` or `latest` and specific version must be used. + ImageTag *string `pulumi:"imageTag"` + // The region to use in the registry path. If not specified, the AWS provider sets it to the current region. + Region *string `pulumi:"region"` + // The name of the repository, which is generally the algorithm or library. Values include `blazingtext`, `factorization-machines`, `forecasting-deepar`, `image-classification`, `ipinsights`, `kmeans`, `knn`, `lda`, `linear-learner`, `mxnet-inference-eia`, `mxnet-inference`, `mxnet-training`, `ntm`, `object-detection`, `object2vec`, `pca`, `pytorch-inference-eia`, `pytorch-inference`, `pytorch-training`, `randomcutforest`, `sagemaker-scikit-learn`, `sagemaker-sparkml-serving`, `sagemaker-xgboost`, `semantic-segmentation`, `seq2seq`, `tensorflow-inference-eia`, `tensorflow-inference`, and `tensorflow-training`. + RepositoryName string `pulumi:"repositoryName"` +} + +// A collection of values returned by getPrebuiltEcrImage. +type GetPrebuiltEcrImageResult struct { + DnsSuffix *string `pulumi:"dnsSuffix"` + // The provider-assigned unique ID for this managed resource. + Id string `pulumi:"id"` + ImageTag *string `pulumi:"imageTag"` + Region *string `pulumi:"region"` + // The account ID containing the image. For example, `469771592824`. + RegistryId string `pulumi:"registryId"` + // The Docker image URL. For example, `341280168497.dkr.ecr.ca-central-1.amazonaws.com/sagemaker-sparkml-serving:2.4`. + RegistryPath string `pulumi:"registryPath"` + RepositoryName string `pulumi:"repositoryName"` +} diff --git a/sdk/go/aws/sagemaker/model.go b/sdk/go/aws/sagemaker/model.go index f1a90ec9331..7a093d1c71c 100644 --- a/sdk/go/aws/sagemaker/model.go +++ b/sdk/go/aws/sagemaker/model.go @@ -27,15 +27,6 @@ import ( // // func main() { // pulumi.Run(func(ctx *pulumi.Context) error { -// _, err := sagemaker.NewModel(ctx, "model", &sagemaker.ModelArgs{ -// ExecutionRoleArn: pulumi.Any(aws_iam_role.Foo.Arn), -// PrimaryContainer: &sagemaker.ModelPrimaryContainerArgs{ -// Image: pulumi.String("174872318107.dkr.ecr.us-west-2.amazonaws.com/kmeans:1"), -// }, -// }) -// if err != nil { -// return err -// } // assumeRole, err := iam.GetPolicyDocument(ctx, &iam.GetPolicyDocumentArgs{ // Statements: []iam.GetPolicyDocumentStatement{ // iam.GetPolicyDocumentStatement{ @@ -56,12 +47,21 @@ import ( // if err != nil { // return err // } -// _, err = iam.NewRole(ctx, "role", &iam.RoleArgs{ +// exampleRole, err := iam.NewRole(ctx, "exampleRole", &iam.RoleArgs{ // AssumeRolePolicy: pulumi.String(assumeRole.Json), // }) // if err != nil { // return err // } +// _, err = sagemaker.NewModel(ctx, "exampleModel", &sagemaker.ModelArgs{ +// ExecutionRoleArn: exampleRole.Arn, +// PrimaryContainer: &sagemaker.ModelPrimaryContainerArgs{ +// Image: pulumi.String("174872318107.dkr.ecr.us-west-2.amazonaws.com/kmeans:1"), +// }, +// }) +// if err != nil { +// return err +// } // return nil // }) // } diff --git a/sdk/go/aws/sagemaker/notebookInstance.go b/sdk/go/aws/sagemaker/notebookInstance.go index c379e981186..caf3e085a8d 100644 --- a/sdk/go/aws/sagemaker/notebookInstance.go +++ b/sdk/go/aws/sagemaker/notebookInstance.go @@ -54,7 +54,7 @@ import ( // example, err := sagemaker.NewCodeRepository(ctx, "example", &sagemaker.CodeRepositoryArgs{ // CodeRepositoryName: pulumi.String("my-notebook-instance-code-repo"), // GitConfig: &sagemaker.CodeRepositoryGitConfigArgs{ -// RepositoryUrl: pulumi.String("https://github.com/terraform-providers/terraform-provider-aws.git"), +// RepositoryUrl: pulumi.String("https://github.com/hashicorp/terraform-provider-aws.git"), // }, // }) // if err != nil { diff --git a/sdk/go/aws/sagemaker/pulumiTypes.go b/sdk/go/aws/sagemaker/pulumiTypes.go index bf6f4dbf30b..ef693180c36 100644 --- a/sdk/go/aws/sagemaker/pulumiTypes.go +++ b/sdk/go/aws/sagemaker/pulumiTypes.go @@ -166,6 +166,489 @@ func (o CodeRepositoryGitConfigPtrOutput) SecretArn() pulumi.StringPtrOutput { }).(pulumi.StringPtrOutput) } +type EndpointConfigurationDataCaptureConfig struct { + // The content type headers to capture. Fields are documented below. + CaptureContentTypeHeader *EndpointConfigurationDataCaptureConfigCaptureContentTypeHeader `pulumi:"captureContentTypeHeader"` + // Specifies what data to capture. Fields are documented below. + CaptureOptions []EndpointConfigurationDataCaptureConfigCaptureOption `pulumi:"captureOptions"` + // The URL for S3 location where the captured data is stored. + DestinationS3Uri string `pulumi:"destinationS3Uri"` + // Flag to enable data capture. Defaults to `false`. + EnableCapture *bool `pulumi:"enableCapture"` + // Portion of data to capture. Should be between 0 and 100. + InitialSamplingPercentage int `pulumi:"initialSamplingPercentage"` + // Amazon Resource Name (ARN) of a AWS Key Management Service key that Amazon SageMaker uses to encrypt the captured data on Amazon S3. + KmsKeyId *string `pulumi:"kmsKeyId"` +} + +// EndpointConfigurationDataCaptureConfigInput is an input type that accepts EndpointConfigurationDataCaptureConfigArgs and EndpointConfigurationDataCaptureConfigOutput values. +// You can construct a concrete instance of `EndpointConfigurationDataCaptureConfigInput` via: +// +// EndpointConfigurationDataCaptureConfigArgs{...} +type EndpointConfigurationDataCaptureConfigInput interface { + pulumi.Input + + ToEndpointConfigurationDataCaptureConfigOutput() EndpointConfigurationDataCaptureConfigOutput + ToEndpointConfigurationDataCaptureConfigOutputWithContext(context.Context) EndpointConfigurationDataCaptureConfigOutput +} + +type EndpointConfigurationDataCaptureConfigArgs struct { + // The content type headers to capture. Fields are documented below. + CaptureContentTypeHeader EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderPtrInput `pulumi:"captureContentTypeHeader"` + // Specifies what data to capture. Fields are documented below. + CaptureOptions EndpointConfigurationDataCaptureConfigCaptureOptionArrayInput `pulumi:"captureOptions"` + // The URL for S3 location where the captured data is stored. + DestinationS3Uri pulumi.StringInput `pulumi:"destinationS3Uri"` + // Flag to enable data capture. Defaults to `false`. + EnableCapture pulumi.BoolPtrInput `pulumi:"enableCapture"` + // Portion of data to capture. Should be between 0 and 100. + InitialSamplingPercentage pulumi.IntInput `pulumi:"initialSamplingPercentage"` + // Amazon Resource Name (ARN) of a AWS Key Management Service key that Amazon SageMaker uses to encrypt the captured data on Amazon S3. + KmsKeyId pulumi.StringPtrInput `pulumi:"kmsKeyId"` +} + +func (EndpointConfigurationDataCaptureConfigArgs) ElementType() reflect.Type { + return reflect.TypeOf((*EndpointConfigurationDataCaptureConfig)(nil)).Elem() +} + +func (i EndpointConfigurationDataCaptureConfigArgs) ToEndpointConfigurationDataCaptureConfigOutput() EndpointConfigurationDataCaptureConfigOutput { + return i.ToEndpointConfigurationDataCaptureConfigOutputWithContext(context.Background()) +} + +func (i EndpointConfigurationDataCaptureConfigArgs) ToEndpointConfigurationDataCaptureConfigOutputWithContext(ctx context.Context) EndpointConfigurationDataCaptureConfigOutput { + return pulumi.ToOutputWithContext(ctx, i).(EndpointConfigurationDataCaptureConfigOutput) +} + +func (i EndpointConfigurationDataCaptureConfigArgs) ToEndpointConfigurationDataCaptureConfigPtrOutput() EndpointConfigurationDataCaptureConfigPtrOutput { + return i.ToEndpointConfigurationDataCaptureConfigPtrOutputWithContext(context.Background()) +} + +func (i EndpointConfigurationDataCaptureConfigArgs) ToEndpointConfigurationDataCaptureConfigPtrOutputWithContext(ctx context.Context) EndpointConfigurationDataCaptureConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(EndpointConfigurationDataCaptureConfigOutput).ToEndpointConfigurationDataCaptureConfigPtrOutputWithContext(ctx) +} + +// EndpointConfigurationDataCaptureConfigPtrInput is an input type that accepts EndpointConfigurationDataCaptureConfigArgs, EndpointConfigurationDataCaptureConfigPtr and EndpointConfigurationDataCaptureConfigPtrOutput values. +// You can construct a concrete instance of `EndpointConfigurationDataCaptureConfigPtrInput` via: +// +// EndpointConfigurationDataCaptureConfigArgs{...} +// +// or: +// +// nil +type EndpointConfigurationDataCaptureConfigPtrInput interface { + pulumi.Input + + ToEndpointConfigurationDataCaptureConfigPtrOutput() EndpointConfigurationDataCaptureConfigPtrOutput + ToEndpointConfigurationDataCaptureConfigPtrOutputWithContext(context.Context) EndpointConfigurationDataCaptureConfigPtrOutput +} + +type endpointConfigurationDataCaptureConfigPtrType EndpointConfigurationDataCaptureConfigArgs + +func EndpointConfigurationDataCaptureConfigPtr(v *EndpointConfigurationDataCaptureConfigArgs) EndpointConfigurationDataCaptureConfigPtrInput { + return (*endpointConfigurationDataCaptureConfigPtrType)(v) +} + +func (*endpointConfigurationDataCaptureConfigPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**EndpointConfigurationDataCaptureConfig)(nil)).Elem() +} + +func (i *endpointConfigurationDataCaptureConfigPtrType) ToEndpointConfigurationDataCaptureConfigPtrOutput() EndpointConfigurationDataCaptureConfigPtrOutput { + return i.ToEndpointConfigurationDataCaptureConfigPtrOutputWithContext(context.Background()) +} + +func (i *endpointConfigurationDataCaptureConfigPtrType) ToEndpointConfigurationDataCaptureConfigPtrOutputWithContext(ctx context.Context) EndpointConfigurationDataCaptureConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(EndpointConfigurationDataCaptureConfigPtrOutput) +} + +type EndpointConfigurationDataCaptureConfigOutput struct{ *pulumi.OutputState } + +func (EndpointConfigurationDataCaptureConfigOutput) ElementType() reflect.Type { + return reflect.TypeOf((*EndpointConfigurationDataCaptureConfig)(nil)).Elem() +} + +func (o EndpointConfigurationDataCaptureConfigOutput) ToEndpointConfigurationDataCaptureConfigOutput() EndpointConfigurationDataCaptureConfigOutput { + return o +} + +func (o EndpointConfigurationDataCaptureConfigOutput) ToEndpointConfigurationDataCaptureConfigOutputWithContext(ctx context.Context) EndpointConfigurationDataCaptureConfigOutput { + return o +} + +func (o EndpointConfigurationDataCaptureConfigOutput) ToEndpointConfigurationDataCaptureConfigPtrOutput() EndpointConfigurationDataCaptureConfigPtrOutput { + return o.ToEndpointConfigurationDataCaptureConfigPtrOutputWithContext(context.Background()) +} + +func (o EndpointConfigurationDataCaptureConfigOutput) ToEndpointConfigurationDataCaptureConfigPtrOutputWithContext(ctx context.Context) EndpointConfigurationDataCaptureConfigPtrOutput { + return o.ApplyT(func(v EndpointConfigurationDataCaptureConfig) *EndpointConfigurationDataCaptureConfig { + return &v + }).(EndpointConfigurationDataCaptureConfigPtrOutput) +} + +// The content type headers to capture. Fields are documented below. +func (o EndpointConfigurationDataCaptureConfigOutput) CaptureContentTypeHeader() EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderPtrOutput { + return o.ApplyT(func(v EndpointConfigurationDataCaptureConfig) *EndpointConfigurationDataCaptureConfigCaptureContentTypeHeader { + return v.CaptureContentTypeHeader + }).(EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderPtrOutput) +} + +// Specifies what data to capture. Fields are documented below. +func (o EndpointConfigurationDataCaptureConfigOutput) CaptureOptions() EndpointConfigurationDataCaptureConfigCaptureOptionArrayOutput { + return o.ApplyT(func(v EndpointConfigurationDataCaptureConfig) []EndpointConfigurationDataCaptureConfigCaptureOption { + return v.CaptureOptions + }).(EndpointConfigurationDataCaptureConfigCaptureOptionArrayOutput) +} + +// The URL for S3 location where the captured data is stored. +func (o EndpointConfigurationDataCaptureConfigOutput) DestinationS3Uri() pulumi.StringOutput { + return o.ApplyT(func(v EndpointConfigurationDataCaptureConfig) string { return v.DestinationS3Uri }).(pulumi.StringOutput) +} + +// Flag to enable data capture. Defaults to `false`. +func (o EndpointConfigurationDataCaptureConfigOutput) EnableCapture() pulumi.BoolPtrOutput { + return o.ApplyT(func(v EndpointConfigurationDataCaptureConfig) *bool { return v.EnableCapture }).(pulumi.BoolPtrOutput) +} + +// Portion of data to capture. Should be between 0 and 100. +func (o EndpointConfigurationDataCaptureConfigOutput) InitialSamplingPercentage() pulumi.IntOutput { + return o.ApplyT(func(v EndpointConfigurationDataCaptureConfig) int { return v.InitialSamplingPercentage }).(pulumi.IntOutput) +} + +// Amazon Resource Name (ARN) of a AWS Key Management Service key that Amazon SageMaker uses to encrypt the captured data on Amazon S3. +func (o EndpointConfigurationDataCaptureConfigOutput) KmsKeyId() pulumi.StringPtrOutput { + return o.ApplyT(func(v EndpointConfigurationDataCaptureConfig) *string { return v.KmsKeyId }).(pulumi.StringPtrOutput) +} + +type EndpointConfigurationDataCaptureConfigPtrOutput struct{ *pulumi.OutputState } + +func (EndpointConfigurationDataCaptureConfigPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**EndpointConfigurationDataCaptureConfig)(nil)).Elem() +} + +func (o EndpointConfigurationDataCaptureConfigPtrOutput) ToEndpointConfigurationDataCaptureConfigPtrOutput() EndpointConfigurationDataCaptureConfigPtrOutput { + return o +} + +func (o EndpointConfigurationDataCaptureConfigPtrOutput) ToEndpointConfigurationDataCaptureConfigPtrOutputWithContext(ctx context.Context) EndpointConfigurationDataCaptureConfigPtrOutput { + return o +} + +func (o EndpointConfigurationDataCaptureConfigPtrOutput) Elem() EndpointConfigurationDataCaptureConfigOutput { + return o.ApplyT(func(v *EndpointConfigurationDataCaptureConfig) EndpointConfigurationDataCaptureConfig { return *v }).(EndpointConfigurationDataCaptureConfigOutput) +} + +// The content type headers to capture. Fields are documented below. +func (o EndpointConfigurationDataCaptureConfigPtrOutput) CaptureContentTypeHeader() EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderPtrOutput { + return o.ApplyT(func(v *EndpointConfigurationDataCaptureConfig) *EndpointConfigurationDataCaptureConfigCaptureContentTypeHeader { + if v == nil { + return nil + } + return v.CaptureContentTypeHeader + }).(EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderPtrOutput) +} + +// Specifies what data to capture. Fields are documented below. +func (o EndpointConfigurationDataCaptureConfigPtrOutput) CaptureOptions() EndpointConfigurationDataCaptureConfigCaptureOptionArrayOutput { + return o.ApplyT(func(v *EndpointConfigurationDataCaptureConfig) []EndpointConfigurationDataCaptureConfigCaptureOption { + if v == nil { + return nil + } + return v.CaptureOptions + }).(EndpointConfigurationDataCaptureConfigCaptureOptionArrayOutput) +} + +// The URL for S3 location where the captured data is stored. +func (o EndpointConfigurationDataCaptureConfigPtrOutput) DestinationS3Uri() pulumi.StringPtrOutput { + return o.ApplyT(func(v *EndpointConfigurationDataCaptureConfig) *string { + if v == nil { + return nil + } + return &v.DestinationS3Uri + }).(pulumi.StringPtrOutput) +} + +// Flag to enable data capture. Defaults to `false`. +func (o EndpointConfigurationDataCaptureConfigPtrOutput) EnableCapture() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *EndpointConfigurationDataCaptureConfig) *bool { + if v == nil { + return nil + } + return v.EnableCapture + }).(pulumi.BoolPtrOutput) +} + +// Portion of data to capture. Should be between 0 and 100. +func (o EndpointConfigurationDataCaptureConfigPtrOutput) InitialSamplingPercentage() pulumi.IntPtrOutput { + return o.ApplyT(func(v *EndpointConfigurationDataCaptureConfig) *int { + if v == nil { + return nil + } + return &v.InitialSamplingPercentage + }).(pulumi.IntPtrOutput) +} + +// Amazon Resource Name (ARN) of a AWS Key Management Service key that Amazon SageMaker uses to encrypt the captured data on Amazon S3. +func (o EndpointConfigurationDataCaptureConfigPtrOutput) KmsKeyId() pulumi.StringPtrOutput { + return o.ApplyT(func(v *EndpointConfigurationDataCaptureConfig) *string { + if v == nil { + return nil + } + return v.KmsKeyId + }).(pulumi.StringPtrOutput) +} + +type EndpointConfigurationDataCaptureConfigCaptureContentTypeHeader struct { + // The CSV content type headers to capture. + CsvContentTypes []string `pulumi:"csvContentTypes"` + // The JSON content type headers to capture. + JsonContentTypes []string `pulumi:"jsonContentTypes"` +} + +// EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderInput is an input type that accepts EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderArgs and EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderOutput values. +// You can construct a concrete instance of `EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderInput` via: +// +// EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderArgs{...} +type EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderInput interface { + pulumi.Input + + ToEndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderOutput() EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderOutput + ToEndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderOutputWithContext(context.Context) EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderOutput +} + +type EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderArgs struct { + // The CSV content type headers to capture. + CsvContentTypes pulumi.StringArrayInput `pulumi:"csvContentTypes"` + // The JSON content type headers to capture. + JsonContentTypes pulumi.StringArrayInput `pulumi:"jsonContentTypes"` +} + +func (EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderArgs) ElementType() reflect.Type { + return reflect.TypeOf((*EndpointConfigurationDataCaptureConfigCaptureContentTypeHeader)(nil)).Elem() +} + +func (i EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderArgs) ToEndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderOutput() EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderOutput { + return i.ToEndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderOutputWithContext(context.Background()) +} + +func (i EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderArgs) ToEndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderOutputWithContext(ctx context.Context) EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderOutput { + return pulumi.ToOutputWithContext(ctx, i).(EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderOutput) +} + +func (i EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderArgs) ToEndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderPtrOutput() EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderPtrOutput { + return i.ToEndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderPtrOutputWithContext(context.Background()) +} + +func (i EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderArgs) ToEndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderPtrOutputWithContext(ctx context.Context) EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderOutput).ToEndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderPtrOutputWithContext(ctx) +} + +// EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderPtrInput is an input type that accepts EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderArgs, EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderPtr and EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderPtrOutput values. +// You can construct a concrete instance of `EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderPtrInput` via: +// +// EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderArgs{...} +// +// or: +// +// nil +type EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderPtrInput interface { + pulumi.Input + + ToEndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderPtrOutput() EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderPtrOutput + ToEndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderPtrOutputWithContext(context.Context) EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderPtrOutput +} + +type endpointConfigurationDataCaptureConfigCaptureContentTypeHeaderPtrType EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderArgs + +func EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderPtr(v *EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderArgs) EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderPtrInput { + return (*endpointConfigurationDataCaptureConfigCaptureContentTypeHeaderPtrType)(v) +} + +func (*endpointConfigurationDataCaptureConfigCaptureContentTypeHeaderPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**EndpointConfigurationDataCaptureConfigCaptureContentTypeHeader)(nil)).Elem() +} + +func (i *endpointConfigurationDataCaptureConfigCaptureContentTypeHeaderPtrType) ToEndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderPtrOutput() EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderPtrOutput { + return i.ToEndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderPtrOutputWithContext(context.Background()) +} + +func (i *endpointConfigurationDataCaptureConfigCaptureContentTypeHeaderPtrType) ToEndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderPtrOutputWithContext(ctx context.Context) EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderPtrOutput) +} + +type EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderOutput struct{ *pulumi.OutputState } + +func (EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderOutput) ElementType() reflect.Type { + return reflect.TypeOf((*EndpointConfigurationDataCaptureConfigCaptureContentTypeHeader)(nil)).Elem() +} + +func (o EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderOutput) ToEndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderOutput() EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderOutput { + return o +} + +func (o EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderOutput) ToEndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderOutputWithContext(ctx context.Context) EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderOutput { + return o +} + +func (o EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderOutput) ToEndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderPtrOutput() EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderPtrOutput { + return o.ToEndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderPtrOutputWithContext(context.Background()) +} + +func (o EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderOutput) ToEndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderPtrOutputWithContext(ctx context.Context) EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderPtrOutput { + return o.ApplyT(func(v EndpointConfigurationDataCaptureConfigCaptureContentTypeHeader) *EndpointConfigurationDataCaptureConfigCaptureContentTypeHeader { + return &v + }).(EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderPtrOutput) +} + +// The CSV content type headers to capture. +func (o EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderOutput) CsvContentTypes() pulumi.StringArrayOutput { + return o.ApplyT(func(v EndpointConfigurationDataCaptureConfigCaptureContentTypeHeader) []string { + return v.CsvContentTypes + }).(pulumi.StringArrayOutput) +} + +// The JSON content type headers to capture. +func (o EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderOutput) JsonContentTypes() pulumi.StringArrayOutput { + return o.ApplyT(func(v EndpointConfigurationDataCaptureConfigCaptureContentTypeHeader) []string { + return v.JsonContentTypes + }).(pulumi.StringArrayOutput) +} + +type EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderPtrOutput struct{ *pulumi.OutputState } + +func (EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**EndpointConfigurationDataCaptureConfigCaptureContentTypeHeader)(nil)).Elem() +} + +func (o EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderPtrOutput) ToEndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderPtrOutput() EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderPtrOutput { + return o +} + +func (o EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderPtrOutput) ToEndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderPtrOutputWithContext(ctx context.Context) EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderPtrOutput { + return o +} + +func (o EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderPtrOutput) Elem() EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderOutput { + return o.ApplyT(func(v *EndpointConfigurationDataCaptureConfigCaptureContentTypeHeader) EndpointConfigurationDataCaptureConfigCaptureContentTypeHeader { + return *v + }).(EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderOutput) +} + +// The CSV content type headers to capture. +func (o EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderPtrOutput) CsvContentTypes() pulumi.StringArrayOutput { + return o.ApplyT(func(v *EndpointConfigurationDataCaptureConfigCaptureContentTypeHeader) []string { + if v == nil { + return nil + } + return v.CsvContentTypes + }).(pulumi.StringArrayOutput) +} + +// The JSON content type headers to capture. +func (o EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderPtrOutput) JsonContentTypes() pulumi.StringArrayOutput { + return o.ApplyT(func(v *EndpointConfigurationDataCaptureConfigCaptureContentTypeHeader) []string { + if v == nil { + return nil + } + return v.JsonContentTypes + }).(pulumi.StringArrayOutput) +} + +type EndpointConfigurationDataCaptureConfigCaptureOption struct { + // Specifies the data to be captured. Should be one of `Input` or `Output`. + CaptureMode string `pulumi:"captureMode"` +} + +// EndpointConfigurationDataCaptureConfigCaptureOptionInput is an input type that accepts EndpointConfigurationDataCaptureConfigCaptureOptionArgs and EndpointConfigurationDataCaptureConfigCaptureOptionOutput values. +// You can construct a concrete instance of `EndpointConfigurationDataCaptureConfigCaptureOptionInput` via: +// +// EndpointConfigurationDataCaptureConfigCaptureOptionArgs{...} +type EndpointConfigurationDataCaptureConfigCaptureOptionInput interface { + pulumi.Input + + ToEndpointConfigurationDataCaptureConfigCaptureOptionOutput() EndpointConfigurationDataCaptureConfigCaptureOptionOutput + ToEndpointConfigurationDataCaptureConfigCaptureOptionOutputWithContext(context.Context) EndpointConfigurationDataCaptureConfigCaptureOptionOutput +} + +type EndpointConfigurationDataCaptureConfigCaptureOptionArgs struct { + // Specifies the data to be captured. Should be one of `Input` or `Output`. + CaptureMode pulumi.StringInput `pulumi:"captureMode"` +} + +func (EndpointConfigurationDataCaptureConfigCaptureOptionArgs) ElementType() reflect.Type { + return reflect.TypeOf((*EndpointConfigurationDataCaptureConfigCaptureOption)(nil)).Elem() +} + +func (i EndpointConfigurationDataCaptureConfigCaptureOptionArgs) ToEndpointConfigurationDataCaptureConfigCaptureOptionOutput() EndpointConfigurationDataCaptureConfigCaptureOptionOutput { + return i.ToEndpointConfigurationDataCaptureConfigCaptureOptionOutputWithContext(context.Background()) +} + +func (i EndpointConfigurationDataCaptureConfigCaptureOptionArgs) ToEndpointConfigurationDataCaptureConfigCaptureOptionOutputWithContext(ctx context.Context) EndpointConfigurationDataCaptureConfigCaptureOptionOutput { + return pulumi.ToOutputWithContext(ctx, i).(EndpointConfigurationDataCaptureConfigCaptureOptionOutput) +} + +// EndpointConfigurationDataCaptureConfigCaptureOptionArrayInput is an input type that accepts EndpointConfigurationDataCaptureConfigCaptureOptionArray and EndpointConfigurationDataCaptureConfigCaptureOptionArrayOutput values. +// You can construct a concrete instance of `EndpointConfigurationDataCaptureConfigCaptureOptionArrayInput` via: +// +// EndpointConfigurationDataCaptureConfigCaptureOptionArray{ EndpointConfigurationDataCaptureConfigCaptureOptionArgs{...} } +type EndpointConfigurationDataCaptureConfigCaptureOptionArrayInput interface { + pulumi.Input + + ToEndpointConfigurationDataCaptureConfigCaptureOptionArrayOutput() EndpointConfigurationDataCaptureConfigCaptureOptionArrayOutput + ToEndpointConfigurationDataCaptureConfigCaptureOptionArrayOutputWithContext(context.Context) EndpointConfigurationDataCaptureConfigCaptureOptionArrayOutput +} + +type EndpointConfigurationDataCaptureConfigCaptureOptionArray []EndpointConfigurationDataCaptureConfigCaptureOptionInput + +func (EndpointConfigurationDataCaptureConfigCaptureOptionArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]EndpointConfigurationDataCaptureConfigCaptureOption)(nil)).Elem() +} + +func (i EndpointConfigurationDataCaptureConfigCaptureOptionArray) ToEndpointConfigurationDataCaptureConfigCaptureOptionArrayOutput() EndpointConfigurationDataCaptureConfigCaptureOptionArrayOutput { + return i.ToEndpointConfigurationDataCaptureConfigCaptureOptionArrayOutputWithContext(context.Background()) +} + +func (i EndpointConfigurationDataCaptureConfigCaptureOptionArray) ToEndpointConfigurationDataCaptureConfigCaptureOptionArrayOutputWithContext(ctx context.Context) EndpointConfigurationDataCaptureConfigCaptureOptionArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(EndpointConfigurationDataCaptureConfigCaptureOptionArrayOutput) +} + +type EndpointConfigurationDataCaptureConfigCaptureOptionOutput struct{ *pulumi.OutputState } + +func (EndpointConfigurationDataCaptureConfigCaptureOptionOutput) ElementType() reflect.Type { + return reflect.TypeOf((*EndpointConfigurationDataCaptureConfigCaptureOption)(nil)).Elem() +} + +func (o EndpointConfigurationDataCaptureConfigCaptureOptionOutput) ToEndpointConfigurationDataCaptureConfigCaptureOptionOutput() EndpointConfigurationDataCaptureConfigCaptureOptionOutput { + return o +} + +func (o EndpointConfigurationDataCaptureConfigCaptureOptionOutput) ToEndpointConfigurationDataCaptureConfigCaptureOptionOutputWithContext(ctx context.Context) EndpointConfigurationDataCaptureConfigCaptureOptionOutput { + return o +} + +// Specifies the data to be captured. Should be one of `Input` or `Output`. +func (o EndpointConfigurationDataCaptureConfigCaptureOptionOutput) CaptureMode() pulumi.StringOutput { + return o.ApplyT(func(v EndpointConfigurationDataCaptureConfigCaptureOption) string { return v.CaptureMode }).(pulumi.StringOutput) +} + +type EndpointConfigurationDataCaptureConfigCaptureOptionArrayOutput struct{ *pulumi.OutputState } + +func (EndpointConfigurationDataCaptureConfigCaptureOptionArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]EndpointConfigurationDataCaptureConfigCaptureOption)(nil)).Elem() +} + +func (o EndpointConfigurationDataCaptureConfigCaptureOptionArrayOutput) ToEndpointConfigurationDataCaptureConfigCaptureOptionArrayOutput() EndpointConfigurationDataCaptureConfigCaptureOptionArrayOutput { + return o +} + +func (o EndpointConfigurationDataCaptureConfigCaptureOptionArrayOutput) ToEndpointConfigurationDataCaptureConfigCaptureOptionArrayOutputWithContext(ctx context.Context) EndpointConfigurationDataCaptureConfigCaptureOptionArrayOutput { + return o +} + +func (o EndpointConfigurationDataCaptureConfigCaptureOptionArrayOutput) Index(i pulumi.IntInput) EndpointConfigurationDataCaptureConfigCaptureOptionOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) EndpointConfigurationDataCaptureConfigCaptureOption { + return vs[0].([]EndpointConfigurationDataCaptureConfigCaptureOption)[vs[1].(int)] + }).(EndpointConfigurationDataCaptureConfigCaptureOptionOutput) +} + type EndpointConfigurationProductionVariant struct { // The size of the Elastic Inference (EI) instance to use for the production variant. AcceleratorType *string `pulumi:"acceleratorType"` @@ -316,6 +799,8 @@ type ModelContainer struct { Environment map[string]string `pulumi:"environment"` // The registry path where the inference code image is stored in Amazon ECR. Image string `pulumi:"image"` + // Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). For more information see [Using a Private Docker Registry for Real-Time Inference Containers](https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms-containers-inference-private.html). see Image Config. + ImageConfig *ModelContainerImageConfig `pulumi:"imageConfig"` // The container hosts value `SingleModel/MultiModel`. The default value is `SingleModel`. Mode *string `pulumi:"mode"` // The URL for the S3 location where model artifacts are stored. @@ -341,6 +826,8 @@ type ModelContainerArgs struct { Environment pulumi.StringMapInput `pulumi:"environment"` // The registry path where the inference code image is stored in Amazon ECR. Image pulumi.StringInput `pulumi:"image"` + // Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). For more information see [Using a Private Docker Registry for Real-Time Inference Containers](https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms-containers-inference-private.html). see Image Config. + ImageConfig ModelContainerImageConfigPtrInput `pulumi:"imageConfig"` // The container hosts value `SingleModel/MultiModel`. The default value is `SingleModel`. Mode pulumi.StringPtrInput `pulumi:"mode"` // The URL for the S3 location where model artifacts are stored. @@ -414,6 +901,11 @@ func (o ModelContainerOutput) Image() pulumi.StringOutput { return o.ApplyT(func(v ModelContainer) string { return v.Image }).(pulumi.StringOutput) } +// Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). For more information see [Using a Private Docker Registry for Real-Time Inference Containers](https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms-containers-inference-private.html). see Image Config. +func (o ModelContainerOutput) ImageConfig() ModelContainerImageConfigPtrOutput { + return o.ApplyT(func(v ModelContainer) *ModelContainerImageConfig { return v.ImageConfig }).(ModelContainerImageConfigPtrOutput) +} + // The container hosts value `SingleModel/MultiModel`. The default value is `SingleModel`. func (o ModelContainerOutput) Mode() pulumi.StringPtrOutput { return o.ApplyT(func(v ModelContainer) *string { return v.Mode }).(pulumi.StringPtrOutput) @@ -444,6 +936,137 @@ func (o ModelContainerArrayOutput) Index(i pulumi.IntInput) ModelContainerOutput }).(ModelContainerOutput) } +type ModelContainerImageConfig struct { + // Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). Allowed values are: `Platform` and `Vpc`. + RepositoryAccessMode string `pulumi:"repositoryAccessMode"` +} + +// ModelContainerImageConfigInput is an input type that accepts ModelContainerImageConfigArgs and ModelContainerImageConfigOutput values. +// You can construct a concrete instance of `ModelContainerImageConfigInput` via: +// +// ModelContainerImageConfigArgs{...} +type ModelContainerImageConfigInput interface { + pulumi.Input + + ToModelContainerImageConfigOutput() ModelContainerImageConfigOutput + ToModelContainerImageConfigOutputWithContext(context.Context) ModelContainerImageConfigOutput +} + +type ModelContainerImageConfigArgs struct { + // Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). Allowed values are: `Platform` and `Vpc`. + RepositoryAccessMode pulumi.StringInput `pulumi:"repositoryAccessMode"` +} + +func (ModelContainerImageConfigArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ModelContainerImageConfig)(nil)).Elem() +} + +func (i ModelContainerImageConfigArgs) ToModelContainerImageConfigOutput() ModelContainerImageConfigOutput { + return i.ToModelContainerImageConfigOutputWithContext(context.Background()) +} + +func (i ModelContainerImageConfigArgs) ToModelContainerImageConfigOutputWithContext(ctx context.Context) ModelContainerImageConfigOutput { + return pulumi.ToOutputWithContext(ctx, i).(ModelContainerImageConfigOutput) +} + +func (i ModelContainerImageConfigArgs) ToModelContainerImageConfigPtrOutput() ModelContainerImageConfigPtrOutput { + return i.ToModelContainerImageConfigPtrOutputWithContext(context.Background()) +} + +func (i ModelContainerImageConfigArgs) ToModelContainerImageConfigPtrOutputWithContext(ctx context.Context) ModelContainerImageConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ModelContainerImageConfigOutput).ToModelContainerImageConfigPtrOutputWithContext(ctx) +} + +// ModelContainerImageConfigPtrInput is an input type that accepts ModelContainerImageConfigArgs, ModelContainerImageConfigPtr and ModelContainerImageConfigPtrOutput values. +// You can construct a concrete instance of `ModelContainerImageConfigPtrInput` via: +// +// ModelContainerImageConfigArgs{...} +// +// or: +// +// nil +type ModelContainerImageConfigPtrInput interface { + pulumi.Input + + ToModelContainerImageConfigPtrOutput() ModelContainerImageConfigPtrOutput + ToModelContainerImageConfigPtrOutputWithContext(context.Context) ModelContainerImageConfigPtrOutput +} + +type modelContainerImageConfigPtrType ModelContainerImageConfigArgs + +func ModelContainerImageConfigPtr(v *ModelContainerImageConfigArgs) ModelContainerImageConfigPtrInput { + return (*modelContainerImageConfigPtrType)(v) +} + +func (*modelContainerImageConfigPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**ModelContainerImageConfig)(nil)).Elem() +} + +func (i *modelContainerImageConfigPtrType) ToModelContainerImageConfigPtrOutput() ModelContainerImageConfigPtrOutput { + return i.ToModelContainerImageConfigPtrOutputWithContext(context.Background()) +} + +func (i *modelContainerImageConfigPtrType) ToModelContainerImageConfigPtrOutputWithContext(ctx context.Context) ModelContainerImageConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ModelContainerImageConfigPtrOutput) +} + +type ModelContainerImageConfigOutput struct{ *pulumi.OutputState } + +func (ModelContainerImageConfigOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ModelContainerImageConfig)(nil)).Elem() +} + +func (o ModelContainerImageConfigOutput) ToModelContainerImageConfigOutput() ModelContainerImageConfigOutput { + return o +} + +func (o ModelContainerImageConfigOutput) ToModelContainerImageConfigOutputWithContext(ctx context.Context) ModelContainerImageConfigOutput { + return o +} + +func (o ModelContainerImageConfigOutput) ToModelContainerImageConfigPtrOutput() ModelContainerImageConfigPtrOutput { + return o.ToModelContainerImageConfigPtrOutputWithContext(context.Background()) +} + +func (o ModelContainerImageConfigOutput) ToModelContainerImageConfigPtrOutputWithContext(ctx context.Context) ModelContainerImageConfigPtrOutput { + return o.ApplyT(func(v ModelContainerImageConfig) *ModelContainerImageConfig { + return &v + }).(ModelContainerImageConfigPtrOutput) +} + +// Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). Allowed values are: `Platform` and `Vpc`. +func (o ModelContainerImageConfigOutput) RepositoryAccessMode() pulumi.StringOutput { + return o.ApplyT(func(v ModelContainerImageConfig) string { return v.RepositoryAccessMode }).(pulumi.StringOutput) +} + +type ModelContainerImageConfigPtrOutput struct{ *pulumi.OutputState } + +func (ModelContainerImageConfigPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ModelContainerImageConfig)(nil)).Elem() +} + +func (o ModelContainerImageConfigPtrOutput) ToModelContainerImageConfigPtrOutput() ModelContainerImageConfigPtrOutput { + return o +} + +func (o ModelContainerImageConfigPtrOutput) ToModelContainerImageConfigPtrOutputWithContext(ctx context.Context) ModelContainerImageConfigPtrOutput { + return o +} + +func (o ModelContainerImageConfigPtrOutput) Elem() ModelContainerImageConfigOutput { + return o.ApplyT(func(v *ModelContainerImageConfig) ModelContainerImageConfig { return *v }).(ModelContainerImageConfigOutput) +} + +// Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). Allowed values are: `Platform` and `Vpc`. +func (o ModelContainerImageConfigPtrOutput) RepositoryAccessMode() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ModelContainerImageConfig) *string { + if v == nil { + return nil + } + return &v.RepositoryAccessMode + }).(pulumi.StringPtrOutput) +} + type ModelPrimaryContainer struct { // The DNS host name for the container. ContainerHostname *string `pulumi:"containerHostname"` @@ -452,6 +1075,8 @@ type ModelPrimaryContainer struct { Environment map[string]string `pulumi:"environment"` // The registry path where the inference code image is stored in Amazon ECR. Image string `pulumi:"image"` + // Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). For more information see [Using a Private Docker Registry for Real-Time Inference Containers](https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms-containers-inference-private.html). see Image Config. + ImageConfig *ModelPrimaryContainerImageConfig `pulumi:"imageConfig"` // The container hosts value `SingleModel/MultiModel`. The default value is `SingleModel`. Mode *string `pulumi:"mode"` // The URL for the S3 location where model artifacts are stored. @@ -477,6 +1102,8 @@ type ModelPrimaryContainerArgs struct { Environment pulumi.StringMapInput `pulumi:"environment"` // The registry path where the inference code image is stored in Amazon ECR. Image pulumi.StringInput `pulumi:"image"` + // Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). For more information see [Using a Private Docker Registry for Real-Time Inference Containers](https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms-containers-inference-private.html). see Image Config. + ImageConfig ModelPrimaryContainerImageConfigPtrInput `pulumi:"imageConfig"` // The container hosts value `SingleModel/MultiModel`. The default value is `SingleModel`. Mode pulumi.StringPtrInput `pulumi:"mode"` // The URL for the S3 location where model artifacts are stored. @@ -576,6 +1203,11 @@ func (o ModelPrimaryContainerOutput) Image() pulumi.StringOutput { return o.ApplyT(func(v ModelPrimaryContainer) string { return v.Image }).(pulumi.StringOutput) } +// Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). For more information see [Using a Private Docker Registry for Real-Time Inference Containers](https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms-containers-inference-private.html). see Image Config. +func (o ModelPrimaryContainerOutput) ImageConfig() ModelPrimaryContainerImageConfigPtrOutput { + return o.ApplyT(func(v ModelPrimaryContainer) *ModelPrimaryContainerImageConfig { return v.ImageConfig }).(ModelPrimaryContainerImageConfigPtrOutput) +} + // The container hosts value `SingleModel/MultiModel`. The default value is `SingleModel`. func (o ModelPrimaryContainerOutput) Mode() pulumi.StringPtrOutput { return o.ApplyT(func(v ModelPrimaryContainer) *string { return v.Mode }).(pulumi.StringPtrOutput) @@ -635,6 +1267,16 @@ func (o ModelPrimaryContainerPtrOutput) Image() pulumi.StringPtrOutput { }).(pulumi.StringPtrOutput) } +// Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). For more information see [Using a Private Docker Registry for Real-Time Inference Containers](https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms-containers-inference-private.html). see Image Config. +func (o ModelPrimaryContainerPtrOutput) ImageConfig() ModelPrimaryContainerImageConfigPtrOutput { + return o.ApplyT(func(v *ModelPrimaryContainer) *ModelPrimaryContainerImageConfig { + if v == nil { + return nil + } + return v.ImageConfig + }).(ModelPrimaryContainerImageConfigPtrOutput) +} + // The container hosts value `SingleModel/MultiModel`. The default value is `SingleModel`. func (o ModelPrimaryContainerPtrOutput) Mode() pulumi.StringPtrOutput { return o.ApplyT(func(v *ModelPrimaryContainer) *string { @@ -655,6 +1297,137 @@ func (o ModelPrimaryContainerPtrOutput) ModelDataUrl() pulumi.StringPtrOutput { }).(pulumi.StringPtrOutput) } +type ModelPrimaryContainerImageConfig struct { + // Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). Allowed values are: `Platform` and `Vpc`. + RepositoryAccessMode string `pulumi:"repositoryAccessMode"` +} + +// ModelPrimaryContainerImageConfigInput is an input type that accepts ModelPrimaryContainerImageConfigArgs and ModelPrimaryContainerImageConfigOutput values. +// You can construct a concrete instance of `ModelPrimaryContainerImageConfigInput` via: +// +// ModelPrimaryContainerImageConfigArgs{...} +type ModelPrimaryContainerImageConfigInput interface { + pulumi.Input + + ToModelPrimaryContainerImageConfigOutput() ModelPrimaryContainerImageConfigOutput + ToModelPrimaryContainerImageConfigOutputWithContext(context.Context) ModelPrimaryContainerImageConfigOutput +} + +type ModelPrimaryContainerImageConfigArgs struct { + // Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). Allowed values are: `Platform` and `Vpc`. + RepositoryAccessMode pulumi.StringInput `pulumi:"repositoryAccessMode"` +} + +func (ModelPrimaryContainerImageConfigArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ModelPrimaryContainerImageConfig)(nil)).Elem() +} + +func (i ModelPrimaryContainerImageConfigArgs) ToModelPrimaryContainerImageConfigOutput() ModelPrimaryContainerImageConfigOutput { + return i.ToModelPrimaryContainerImageConfigOutputWithContext(context.Background()) +} + +func (i ModelPrimaryContainerImageConfigArgs) ToModelPrimaryContainerImageConfigOutputWithContext(ctx context.Context) ModelPrimaryContainerImageConfigOutput { + return pulumi.ToOutputWithContext(ctx, i).(ModelPrimaryContainerImageConfigOutput) +} + +func (i ModelPrimaryContainerImageConfigArgs) ToModelPrimaryContainerImageConfigPtrOutput() ModelPrimaryContainerImageConfigPtrOutput { + return i.ToModelPrimaryContainerImageConfigPtrOutputWithContext(context.Background()) +} + +func (i ModelPrimaryContainerImageConfigArgs) ToModelPrimaryContainerImageConfigPtrOutputWithContext(ctx context.Context) ModelPrimaryContainerImageConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ModelPrimaryContainerImageConfigOutput).ToModelPrimaryContainerImageConfigPtrOutputWithContext(ctx) +} + +// ModelPrimaryContainerImageConfigPtrInput is an input type that accepts ModelPrimaryContainerImageConfigArgs, ModelPrimaryContainerImageConfigPtr and ModelPrimaryContainerImageConfigPtrOutput values. +// You can construct a concrete instance of `ModelPrimaryContainerImageConfigPtrInput` via: +// +// ModelPrimaryContainerImageConfigArgs{...} +// +// or: +// +// nil +type ModelPrimaryContainerImageConfigPtrInput interface { + pulumi.Input + + ToModelPrimaryContainerImageConfigPtrOutput() ModelPrimaryContainerImageConfigPtrOutput + ToModelPrimaryContainerImageConfigPtrOutputWithContext(context.Context) ModelPrimaryContainerImageConfigPtrOutput +} + +type modelPrimaryContainerImageConfigPtrType ModelPrimaryContainerImageConfigArgs + +func ModelPrimaryContainerImageConfigPtr(v *ModelPrimaryContainerImageConfigArgs) ModelPrimaryContainerImageConfigPtrInput { + return (*modelPrimaryContainerImageConfigPtrType)(v) +} + +func (*modelPrimaryContainerImageConfigPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**ModelPrimaryContainerImageConfig)(nil)).Elem() +} + +func (i *modelPrimaryContainerImageConfigPtrType) ToModelPrimaryContainerImageConfigPtrOutput() ModelPrimaryContainerImageConfigPtrOutput { + return i.ToModelPrimaryContainerImageConfigPtrOutputWithContext(context.Background()) +} + +func (i *modelPrimaryContainerImageConfigPtrType) ToModelPrimaryContainerImageConfigPtrOutputWithContext(ctx context.Context) ModelPrimaryContainerImageConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ModelPrimaryContainerImageConfigPtrOutput) +} + +type ModelPrimaryContainerImageConfigOutput struct{ *pulumi.OutputState } + +func (ModelPrimaryContainerImageConfigOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ModelPrimaryContainerImageConfig)(nil)).Elem() +} + +func (o ModelPrimaryContainerImageConfigOutput) ToModelPrimaryContainerImageConfigOutput() ModelPrimaryContainerImageConfigOutput { + return o +} + +func (o ModelPrimaryContainerImageConfigOutput) ToModelPrimaryContainerImageConfigOutputWithContext(ctx context.Context) ModelPrimaryContainerImageConfigOutput { + return o +} + +func (o ModelPrimaryContainerImageConfigOutput) ToModelPrimaryContainerImageConfigPtrOutput() ModelPrimaryContainerImageConfigPtrOutput { + return o.ToModelPrimaryContainerImageConfigPtrOutputWithContext(context.Background()) +} + +func (o ModelPrimaryContainerImageConfigOutput) ToModelPrimaryContainerImageConfigPtrOutputWithContext(ctx context.Context) ModelPrimaryContainerImageConfigPtrOutput { + return o.ApplyT(func(v ModelPrimaryContainerImageConfig) *ModelPrimaryContainerImageConfig { + return &v + }).(ModelPrimaryContainerImageConfigPtrOutput) +} + +// Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). Allowed values are: `Platform` and `Vpc`. +func (o ModelPrimaryContainerImageConfigOutput) RepositoryAccessMode() pulumi.StringOutput { + return o.ApplyT(func(v ModelPrimaryContainerImageConfig) string { return v.RepositoryAccessMode }).(pulumi.StringOutput) +} + +type ModelPrimaryContainerImageConfigPtrOutput struct{ *pulumi.OutputState } + +func (ModelPrimaryContainerImageConfigPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ModelPrimaryContainerImageConfig)(nil)).Elem() +} + +func (o ModelPrimaryContainerImageConfigPtrOutput) ToModelPrimaryContainerImageConfigPtrOutput() ModelPrimaryContainerImageConfigPtrOutput { + return o +} + +func (o ModelPrimaryContainerImageConfigPtrOutput) ToModelPrimaryContainerImageConfigPtrOutputWithContext(ctx context.Context) ModelPrimaryContainerImageConfigPtrOutput { + return o +} + +func (o ModelPrimaryContainerImageConfigPtrOutput) Elem() ModelPrimaryContainerImageConfigOutput { + return o.ApplyT(func(v *ModelPrimaryContainerImageConfig) ModelPrimaryContainerImageConfig { return *v }).(ModelPrimaryContainerImageConfigOutput) +} + +// Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). Allowed values are: `Platform` and `Vpc`. +func (o ModelPrimaryContainerImageConfigPtrOutput) RepositoryAccessMode() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ModelPrimaryContainerImageConfig) *string { + if v == nil { + return nil + } + return &v.RepositoryAccessMode + }).(pulumi.StringPtrOutput) +} + type ModelVpcConfig struct { SecurityGroupIds []string `pulumi:"securityGroupIds"` Subnets []string `pulumi:"subnets"` @@ -799,12 +1572,22 @@ func (o ModelVpcConfigPtrOutput) Subnets() pulumi.StringArrayOutput { func init() { pulumi.RegisterOutputType(CodeRepositoryGitConfigOutput{}) pulumi.RegisterOutputType(CodeRepositoryGitConfigPtrOutput{}) + pulumi.RegisterOutputType(EndpointConfigurationDataCaptureConfigOutput{}) + pulumi.RegisterOutputType(EndpointConfigurationDataCaptureConfigPtrOutput{}) + pulumi.RegisterOutputType(EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderOutput{}) + pulumi.RegisterOutputType(EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderPtrOutput{}) + pulumi.RegisterOutputType(EndpointConfigurationDataCaptureConfigCaptureOptionOutput{}) + pulumi.RegisterOutputType(EndpointConfigurationDataCaptureConfigCaptureOptionArrayOutput{}) pulumi.RegisterOutputType(EndpointConfigurationProductionVariantOutput{}) pulumi.RegisterOutputType(EndpointConfigurationProductionVariantArrayOutput{}) pulumi.RegisterOutputType(ModelContainerOutput{}) pulumi.RegisterOutputType(ModelContainerArrayOutput{}) + pulumi.RegisterOutputType(ModelContainerImageConfigOutput{}) + pulumi.RegisterOutputType(ModelContainerImageConfigPtrOutput{}) pulumi.RegisterOutputType(ModelPrimaryContainerOutput{}) pulumi.RegisterOutputType(ModelPrimaryContainerPtrOutput{}) + pulumi.RegisterOutputType(ModelPrimaryContainerImageConfigOutput{}) + pulumi.RegisterOutputType(ModelPrimaryContainerImageConfigPtrOutput{}) pulumi.RegisterOutputType(ModelVpcConfigOutput{}) pulumi.RegisterOutputType(ModelVpcConfigPtrOutput{}) } diff --git a/sdk/go/aws/secretsmanager/secret.go b/sdk/go/aws/secretsmanager/secret.go index a37baf39d10..b3ed79853dc 100644 --- a/sdk/go/aws/secretsmanager/secret.go +++ b/sdk/go/aws/secretsmanager/secret.go @@ -77,7 +77,7 @@ type Secret struct { // Creates a unique name beginning with the specified prefix. Conflicts with `name`. NamePrefix pulumi.StringOutput `pulumi:"namePrefix"` // A valid JSON document representing a [resource policy](https://docs.aws.amazon.com/secretsmanager/latest/userguide/auth-and-access_resource-based-policies.html). - Policy pulumi.StringPtrOutput `pulumi:"policy"` + Policy pulumi.StringOutput `pulumi:"policy"` // Specifies the number of days that AWS Secrets Manager waits before it can delete the secret. This value can be `0` to force deletion without recovery or range from `7` to `30` days. The default value is `30`. RecoveryWindowInDays pulumi.IntPtrOutput `pulumi:"recoveryWindowInDays"` // Specifies whether automatic rotation is enabled for this secret. diff --git a/sdk/go/aws/secretsmanager/secretPolicy.go b/sdk/go/aws/secretsmanager/secretPolicy.go new file mode 100644 index 00000000000..402d2bb996f --- /dev/null +++ b/sdk/go/aws/secretsmanager/secretPolicy.go @@ -0,0 +1,127 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package secretsmanager + +import ( + "reflect" + + "github.com/pkg/errors" + "github.com/pulumi/pulumi/sdk/v2/go/pulumi" +) + +// Provides a resource to manage AWS Secrets Manager secret policy. +// +// ## Example Usage +// ### Basic +// +// ```go +// package main +// +// import ( +// "fmt" +// +// "github.com/pulumi/pulumi-aws/sdk/v3/go/aws/secretsmanager" +// "github.com/pulumi/pulumi/sdk/v2/go/pulumi" +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// exampleSecret, err := secretsmanager.NewSecret(ctx, "exampleSecret", nil) +// if err != nil { +// return err +// } +// _, err = secretsmanager.NewSecretPolicy(ctx, "exampleSecretPolicy", &secretsmanager.SecretPolicyArgs{ +// SecretArn: exampleSecret.Arn, +// Policy: pulumi.String(fmt.Sprintf("%v%v%v%v%v%v%v%v%v%v%v%v%v%v", "{\n", " \"Version\": \"2012-10-17\",\n", " \"Statement\": [\n", " {\n", " \"Sid\": \"EnableAllPermissions\",\n", " \"Effect\": \"Allow\",\n", " \"Principal\": {\n", " \"AWS\": \"*\"\n", " },\n", " \"Action\": \"secretsmanager:GetSecretValue\",\n", " \"Resource\": \"*\"\n", " }\n", " ]\n", "}\n")), +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// ``` +type SecretPolicy struct { + pulumi.CustomResourceState + + // Makes an optional API call to Zelkova to validate the Resource Policy to prevent broad access to your secret. + BlockPublicPolicy pulumi.BoolPtrOutput `pulumi:"blockPublicPolicy"` + Policy pulumi.StringOutput `pulumi:"policy"` + // Secret ARN. + SecretArn pulumi.StringOutput `pulumi:"secretArn"` +} + +// NewSecretPolicy registers a new resource with the given unique name, arguments, and options. +func NewSecretPolicy(ctx *pulumi.Context, + name string, args *SecretPolicyArgs, opts ...pulumi.ResourceOption) (*SecretPolicy, error) { + if args == nil || args.Policy == nil { + return nil, errors.New("missing required argument 'Policy'") + } + if args == nil || args.SecretArn == nil { + return nil, errors.New("missing required argument 'SecretArn'") + } + if args == nil { + args = &SecretPolicyArgs{} + } + var resource SecretPolicy + err := ctx.RegisterResource("aws:secretsmanager/secretPolicy:SecretPolicy", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetSecretPolicy gets an existing SecretPolicy 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 GetSecretPolicy(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *SecretPolicyState, opts ...pulumi.ResourceOption) (*SecretPolicy, error) { + var resource SecretPolicy + err := ctx.ReadResource("aws:secretsmanager/secretPolicy:SecretPolicy", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering SecretPolicy resources. +type secretPolicyState struct { + // Makes an optional API call to Zelkova to validate the Resource Policy to prevent broad access to your secret. + BlockPublicPolicy *bool `pulumi:"blockPublicPolicy"` + Policy *string `pulumi:"policy"` + // Secret ARN. + SecretArn *string `pulumi:"secretArn"` +} + +type SecretPolicyState struct { + // Makes an optional API call to Zelkova to validate the Resource Policy to prevent broad access to your secret. + BlockPublicPolicy pulumi.BoolPtrInput + Policy pulumi.StringPtrInput + // Secret ARN. + SecretArn pulumi.StringPtrInput +} + +func (SecretPolicyState) ElementType() reflect.Type { + return reflect.TypeOf((*secretPolicyState)(nil)).Elem() +} + +type secretPolicyArgs struct { + // Makes an optional API call to Zelkova to validate the Resource Policy to prevent broad access to your secret. + BlockPublicPolicy *bool `pulumi:"blockPublicPolicy"` + Policy string `pulumi:"policy"` + // Secret ARN. + SecretArn string `pulumi:"secretArn"` +} + +// The set of arguments for constructing a SecretPolicy resource. +type SecretPolicyArgs struct { + // Makes an optional API call to Zelkova to validate the Resource Policy to prevent broad access to your secret. + BlockPublicPolicy pulumi.BoolPtrInput + Policy pulumi.StringInput + // Secret ARN. + SecretArn pulumi.StringInput +} + +func (SecretPolicyArgs) ElementType() reflect.Type { + return reflect.TypeOf((*secretPolicyArgs)(nil)).Elem() +} diff --git a/sdk/go/aws/workspaces/getWorkspace.go b/sdk/go/aws/workspaces/getWorkspace.go new file mode 100644 index 00000000000..186288b0d06 --- /dev/null +++ b/sdk/go/aws/workspaces/getWorkspace.go @@ -0,0 +1,101 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package workspaces + +import ( + "github.com/pulumi/pulumi/sdk/v2/go/pulumi" +) + +// Use this data source to get information about a workspace in [AWS Workspaces](https://docs.aws.amazon.com/workspaces/latest/adminguide/amazon-workspaces.html) Service. +// +// ## Example Usage +// ### Filter By Workspace ID +// +// ```go +// package main +// +// import ( +// "github.com/pulumi/pulumi-aws/sdk/v3/go/aws/workspaces" +// "github.com/pulumi/pulumi/sdk/v2/go/pulumi" +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// opt0 := "ws-cj5xcxsz5" +// _, err := workspaces.LookupWorkspace(ctx, &workspaces.LookupWorkspaceArgs{ +// WorkspaceId: &opt0, +// }, nil) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// ``` +// ### Filter By Directory ID & User Name +// +// ```go +// package main +// +// import ( +// "github.com/pulumi/pulumi-aws/sdk/v3/go/aws/workspaces" +// "github.com/pulumi/pulumi/sdk/v2/go/pulumi" +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// opt0 := "d-9967252f57" +// opt1 := "Example" +// _, err := workspaces.LookupWorkspace(ctx, &workspaces.LookupWorkspaceArgs{ +// DirectoryId: &opt0, +// UserName: &opt1, +// }, nil) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// ``` +func LookupWorkspace(ctx *pulumi.Context, args *LookupWorkspaceArgs, opts ...pulumi.InvokeOption) (*LookupWorkspaceResult, error) { + var rv LookupWorkspaceResult + err := ctx.Invoke("aws:workspaces/getWorkspace:getWorkspace", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +// A collection of arguments for invoking getWorkspace. +type LookupWorkspaceArgs struct { + // The ID of the directory for the WorkSpace. You have to specify `userName` along with `directoryId`. You cannot combine this parameter with `workspaceId`. + DirectoryId *string `pulumi:"directoryId"` + // The tags for the WorkSpace. + Tags map[string]string `pulumi:"tags"` + // The user name of the user for the WorkSpace. This user name must exist in the directory for the WorkSpace. You cannot combine this parameter with `workspaceId`. + UserName *string `pulumi:"userName"` + // The ID of the WorkSpace. You cannot combine this parameter with `directoryId`. + WorkspaceId *string `pulumi:"workspaceId"` +} + +// A collection of values returned by getWorkspace. +type LookupWorkspaceResult struct { + BundleId string `pulumi:"bundleId"` + // The name of the WorkSpace, as seen by the operating system. + ComputerName string `pulumi:"computerName"` + DirectoryId string `pulumi:"directoryId"` + // The provider-assigned unique ID for this managed resource. + Id string `pulumi:"id"` + // The IP address of the WorkSpace. + IpAddress string `pulumi:"ipAddress"` + RootVolumeEncryptionEnabled bool `pulumi:"rootVolumeEncryptionEnabled"` + // The operational state of the WorkSpace. + State string `pulumi:"state"` + Tags map[string]string `pulumi:"tags"` + UserName string `pulumi:"userName"` + UserVolumeEncryptionEnabled bool `pulumi:"userVolumeEncryptionEnabled"` + VolumeEncryptionKey string `pulumi:"volumeEncryptionKey"` + WorkspaceId string `pulumi:"workspaceId"` + WorkspaceProperties []GetWorkspaceWorkspaceProperty `pulumi:"workspaceProperties"` +} diff --git a/sdk/go/aws/workspaces/pulumiTypes.go b/sdk/go/aws/workspaces/pulumiTypes.go index 897517b88dd..817b794f149 100644 --- a/sdk/go/aws/workspaces/pulumiTypes.go +++ b/sdk/go/aws/workspaces/pulumiTypes.go @@ -1249,6 +1249,139 @@ func (o GetDirectoryWorkspaceCreationPropertiesOutput) UserEnabledAsLocalAdminis return o.ApplyT(func(v GetDirectoryWorkspaceCreationProperties) *bool { return v.UserEnabledAsLocalAdministrator }).(pulumi.BoolPtrOutput) } +type GetWorkspaceWorkspaceProperty struct { + // The compute type. For more information, see [Amazon WorkSpaces Bundles](http://aws.amazon.com/workspaces/details/#Amazon_WorkSpaces_Bundles). Valid values are `VALUE`, `STANDARD`, `PERFORMANCE`, `POWER`, `GRAPHICS`, `POWERPRO` and `GRAPHICSPRO`. + ComputeTypeName string `pulumi:"computeTypeName"` + // The size of the root volume. + RootVolumeSizeGib int `pulumi:"rootVolumeSizeGib"` + // The running mode. For more information, see [Manage the WorkSpace Running Mode](https://docs.aws.amazon.com/workspaces/latest/adminguide/running-mode.html). Valid values are `AUTO_STOP` and `ALWAYS_ON`. + RunningMode string `pulumi:"runningMode"` + // The time after a user logs off when WorkSpaces are automatically stopped. Configured in 60-minute intervals. + RunningModeAutoStopTimeoutInMinutes int `pulumi:"runningModeAutoStopTimeoutInMinutes"` + // The size of the user storage. + UserVolumeSizeGib int `pulumi:"userVolumeSizeGib"` +} + +// GetWorkspaceWorkspacePropertyInput is an input type that accepts GetWorkspaceWorkspacePropertyArgs and GetWorkspaceWorkspacePropertyOutput values. +// You can construct a concrete instance of `GetWorkspaceWorkspacePropertyInput` via: +// +// GetWorkspaceWorkspacePropertyArgs{...} +type GetWorkspaceWorkspacePropertyInput interface { + pulumi.Input + + ToGetWorkspaceWorkspacePropertyOutput() GetWorkspaceWorkspacePropertyOutput + ToGetWorkspaceWorkspacePropertyOutputWithContext(context.Context) GetWorkspaceWorkspacePropertyOutput +} + +type GetWorkspaceWorkspacePropertyArgs struct { + // The compute type. For more information, see [Amazon WorkSpaces Bundles](http://aws.amazon.com/workspaces/details/#Amazon_WorkSpaces_Bundles). Valid values are `VALUE`, `STANDARD`, `PERFORMANCE`, `POWER`, `GRAPHICS`, `POWERPRO` and `GRAPHICSPRO`. + ComputeTypeName pulumi.StringInput `pulumi:"computeTypeName"` + // The size of the root volume. + RootVolumeSizeGib pulumi.IntInput `pulumi:"rootVolumeSizeGib"` + // The running mode. For more information, see [Manage the WorkSpace Running Mode](https://docs.aws.amazon.com/workspaces/latest/adminguide/running-mode.html). Valid values are `AUTO_STOP` and `ALWAYS_ON`. + RunningMode pulumi.StringInput `pulumi:"runningMode"` + // The time after a user logs off when WorkSpaces are automatically stopped. Configured in 60-minute intervals. + RunningModeAutoStopTimeoutInMinutes pulumi.IntInput `pulumi:"runningModeAutoStopTimeoutInMinutes"` + // The size of the user storage. + UserVolumeSizeGib pulumi.IntInput `pulumi:"userVolumeSizeGib"` +} + +func (GetWorkspaceWorkspacePropertyArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetWorkspaceWorkspaceProperty)(nil)).Elem() +} + +func (i GetWorkspaceWorkspacePropertyArgs) ToGetWorkspaceWorkspacePropertyOutput() GetWorkspaceWorkspacePropertyOutput { + return i.ToGetWorkspaceWorkspacePropertyOutputWithContext(context.Background()) +} + +func (i GetWorkspaceWorkspacePropertyArgs) ToGetWorkspaceWorkspacePropertyOutputWithContext(ctx context.Context) GetWorkspaceWorkspacePropertyOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetWorkspaceWorkspacePropertyOutput) +} + +// GetWorkspaceWorkspacePropertyArrayInput is an input type that accepts GetWorkspaceWorkspacePropertyArray and GetWorkspaceWorkspacePropertyArrayOutput values. +// You can construct a concrete instance of `GetWorkspaceWorkspacePropertyArrayInput` via: +// +// GetWorkspaceWorkspacePropertyArray{ GetWorkspaceWorkspacePropertyArgs{...} } +type GetWorkspaceWorkspacePropertyArrayInput interface { + pulumi.Input + + ToGetWorkspaceWorkspacePropertyArrayOutput() GetWorkspaceWorkspacePropertyArrayOutput + ToGetWorkspaceWorkspacePropertyArrayOutputWithContext(context.Context) GetWorkspaceWorkspacePropertyArrayOutput +} + +type GetWorkspaceWorkspacePropertyArray []GetWorkspaceWorkspacePropertyInput + +func (GetWorkspaceWorkspacePropertyArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetWorkspaceWorkspaceProperty)(nil)).Elem() +} + +func (i GetWorkspaceWorkspacePropertyArray) ToGetWorkspaceWorkspacePropertyArrayOutput() GetWorkspaceWorkspacePropertyArrayOutput { + return i.ToGetWorkspaceWorkspacePropertyArrayOutputWithContext(context.Background()) +} + +func (i GetWorkspaceWorkspacePropertyArray) ToGetWorkspaceWorkspacePropertyArrayOutputWithContext(ctx context.Context) GetWorkspaceWorkspacePropertyArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetWorkspaceWorkspacePropertyArrayOutput) +} + +type GetWorkspaceWorkspacePropertyOutput struct{ *pulumi.OutputState } + +func (GetWorkspaceWorkspacePropertyOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetWorkspaceWorkspaceProperty)(nil)).Elem() +} + +func (o GetWorkspaceWorkspacePropertyOutput) ToGetWorkspaceWorkspacePropertyOutput() GetWorkspaceWorkspacePropertyOutput { + return o +} + +func (o GetWorkspaceWorkspacePropertyOutput) ToGetWorkspaceWorkspacePropertyOutputWithContext(ctx context.Context) GetWorkspaceWorkspacePropertyOutput { + return o +} + +// The compute type. For more information, see [Amazon WorkSpaces Bundles](http://aws.amazon.com/workspaces/details/#Amazon_WorkSpaces_Bundles). Valid values are `VALUE`, `STANDARD`, `PERFORMANCE`, `POWER`, `GRAPHICS`, `POWERPRO` and `GRAPHICSPRO`. +func (o GetWorkspaceWorkspacePropertyOutput) ComputeTypeName() pulumi.StringOutput { + return o.ApplyT(func(v GetWorkspaceWorkspaceProperty) string { return v.ComputeTypeName }).(pulumi.StringOutput) +} + +// The size of the root volume. +func (o GetWorkspaceWorkspacePropertyOutput) RootVolumeSizeGib() pulumi.IntOutput { + return o.ApplyT(func(v GetWorkspaceWorkspaceProperty) int { return v.RootVolumeSizeGib }).(pulumi.IntOutput) +} + +// The running mode. For more information, see [Manage the WorkSpace Running Mode](https://docs.aws.amazon.com/workspaces/latest/adminguide/running-mode.html). Valid values are `AUTO_STOP` and `ALWAYS_ON`. +func (o GetWorkspaceWorkspacePropertyOutput) RunningMode() pulumi.StringOutput { + return o.ApplyT(func(v GetWorkspaceWorkspaceProperty) string { return v.RunningMode }).(pulumi.StringOutput) +} + +// The time after a user logs off when WorkSpaces are automatically stopped. Configured in 60-minute intervals. +func (o GetWorkspaceWorkspacePropertyOutput) RunningModeAutoStopTimeoutInMinutes() pulumi.IntOutput { + return o.ApplyT(func(v GetWorkspaceWorkspaceProperty) int { return v.RunningModeAutoStopTimeoutInMinutes }).(pulumi.IntOutput) +} + +// The size of the user storage. +func (o GetWorkspaceWorkspacePropertyOutput) UserVolumeSizeGib() pulumi.IntOutput { + return o.ApplyT(func(v GetWorkspaceWorkspaceProperty) int { return v.UserVolumeSizeGib }).(pulumi.IntOutput) +} + +type GetWorkspaceWorkspacePropertyArrayOutput struct{ *pulumi.OutputState } + +func (GetWorkspaceWorkspacePropertyArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetWorkspaceWorkspaceProperty)(nil)).Elem() +} + +func (o GetWorkspaceWorkspacePropertyArrayOutput) ToGetWorkspaceWorkspacePropertyArrayOutput() GetWorkspaceWorkspacePropertyArrayOutput { + return o +} + +func (o GetWorkspaceWorkspacePropertyArrayOutput) ToGetWorkspaceWorkspacePropertyArrayOutputWithContext(ctx context.Context) GetWorkspaceWorkspacePropertyArrayOutput { + return o +} + +func (o GetWorkspaceWorkspacePropertyArrayOutput) Index(i pulumi.IntInput) GetWorkspaceWorkspacePropertyOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) GetWorkspaceWorkspaceProperty { + return vs[0].([]GetWorkspaceWorkspaceProperty)[vs[1].(int)] + }).(GetWorkspaceWorkspacePropertyOutput) +} + func init() { pulumi.RegisterOutputType(DirectorySelfServicePermissionsOutput{}) pulumi.RegisterOutputType(DirectorySelfServicePermissionsPtrOutput{}) @@ -1267,4 +1400,6 @@ func init() { pulumi.RegisterOutputType(GetDirectorySelfServicePermissionOutput{}) pulumi.RegisterOutputType(GetDirectorySelfServicePermissionArrayOutput{}) pulumi.RegisterOutputType(GetDirectoryWorkspaceCreationPropertiesOutput{}) + pulumi.RegisterOutputType(GetWorkspaceWorkspacePropertyOutput{}) + pulumi.RegisterOutputType(GetWorkspaceWorkspacePropertyArrayOutput{}) } diff --git a/sdk/nodejs/apigatewayv2/integration.ts b/sdk/nodejs/apigatewayv2/integration.ts index 0ba598f41e9..ac1a150fdb2 100644 --- a/sdk/nodejs/apigatewayv2/integration.ts +++ b/sdk/nodejs/apigatewayv2/integration.ts @@ -161,10 +161,7 @@ export class Integration extends pulumi.CustomResource { * The [template selection expression](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-template-selection-expressions) for the integration. */ public readonly templateSelectionExpression!: pulumi.Output; - /** - * Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds or 29 seconds. - */ - public readonly timeoutMilliseconds!: pulumi.Output; + public readonly timeoutMilliseconds!: pulumi.Output; /** * The TLS configuration for a private integration. Supported only for HTTP APIs. */ @@ -310,9 +307,6 @@ export interface IntegrationState { * The [template selection expression](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-template-selection-expressions) for the integration. */ readonly templateSelectionExpression?: pulumi.Input; - /** - * Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds or 29 seconds. - */ readonly timeoutMilliseconds?: pulumi.Input; /** * The TLS configuration for a private integration. Supported only for HTTP APIs. @@ -388,9 +382,6 @@ export interface IntegrationArgs { * The [template selection expression](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-template-selection-expressions) for the integration. */ readonly templateSelectionExpression?: pulumi.Input; - /** - * Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds or 29 seconds. - */ readonly timeoutMilliseconds?: pulumi.Input; /** * The TLS configuration for a private integration. Supported only for HTTP APIs. diff --git a/sdk/nodejs/cloudwatch/eventPermission.ts b/sdk/nodejs/cloudwatch/eventPermission.ts index b3d005f912f..17ace599e44 100644 --- a/sdk/nodejs/cloudwatch/eventPermission.ts +++ b/sdk/nodejs/cloudwatch/eventPermission.ts @@ -77,6 +77,10 @@ export class EventPermission extends pulumi.CustomResource { * Configuration block to limit the event bus permissions you are granting to only accounts that fulfill the condition. Specified below. */ public readonly condition!: pulumi.Output; + /** + * The event bus to set the permissions on. If you omit this, the permissions are set on the `default` event bus. + */ + public readonly eventBusName!: pulumi.Output; /** * The 12-digit AWS account ID that you are permitting to put events to your default event bus. Specify `*` to permit any account to put events to your default event bus, optionally limited by `condition`. */ @@ -100,6 +104,7 @@ export class EventPermission extends pulumi.CustomResource { const state = argsOrState as EventPermissionState | undefined; inputs["action"] = state ? state.action : undefined; inputs["condition"] = state ? state.condition : undefined; + inputs["eventBusName"] = state ? state.eventBusName : undefined; inputs["principal"] = state ? state.principal : undefined; inputs["statementId"] = state ? state.statementId : undefined; } else { @@ -112,6 +117,7 @@ export class EventPermission extends pulumi.CustomResource { } inputs["action"] = args ? args.action : undefined; inputs["condition"] = args ? args.condition : undefined; + inputs["eventBusName"] = args ? args.eventBusName : undefined; inputs["principal"] = args ? args.principal : undefined; inputs["statementId"] = args ? args.statementId : undefined; } @@ -138,6 +144,10 @@ export interface EventPermissionState { * Configuration block to limit the event bus permissions you are granting to only accounts that fulfill the condition. Specified below. */ readonly condition?: pulumi.Input; + /** + * The event bus to set the permissions on. If you omit this, the permissions are set on the `default` event bus. + */ + readonly eventBusName?: pulumi.Input; /** * The 12-digit AWS account ID that you are permitting to put events to your default event bus. Specify `*` to permit any account to put events to your default event bus, optionally limited by `condition`. */ @@ -160,6 +170,10 @@ export interface EventPermissionArgs { * Configuration block to limit the event bus permissions you are granting to only accounts that fulfill the condition. Specified below. */ readonly condition?: pulumi.Input; + /** + * The event bus to set the permissions on. If you omit this, the permissions are set on the `default` event bus. + */ + readonly eventBusName?: pulumi.Input; /** * The 12-digit AWS account ID that you are permitting to put events to your default event bus. Specify `*` to permit any account to put events to your default event bus, optionally limited by `condition`. */ diff --git a/sdk/nodejs/cloudwatch/eventTarget.ts b/sdk/nodejs/cloudwatch/eventTarget.ts index a151bef86a4..1b7e0896d06 100644 --- a/sdk/nodejs/cloudwatch/eventTarget.ts +++ b/sdk/nodejs/cloudwatch/eventTarget.ts @@ -142,6 +142,52 @@ import * as utilities from "../utilities"; * }], * }); * ``` + * + * ## Example Input Transformer Usage - JSON Object + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as aws from "@pulumi/aws"; + * + * const exampleEventRule = new aws.cloudwatch.EventRule("exampleEventRule", {}); + * // ... + * const exampleEventTarget = new aws.cloudwatch.EventTarget("exampleEventTarget", { + * arn: aws_lambda_function.example.arn, + * rule: exampleEventRule.id, + * inputTransformer: { + * inputPaths: { + * instance: `$.detail.instance`, + * status: `$.detail.status`, + * }, + * inputTemplate: `{ + * "instance_id": , + * "instance_status": + * } + * `, + * }, + * }); + * ``` + * + * ## Example Input Transformer Usage - Simple String + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as aws from "@pulumi/aws"; + * + * const exampleEventRule = new aws.cloudwatch.EventRule("exampleEventRule", {}); + * // ... + * const exampleEventTarget = new aws.cloudwatch.EventTarget("exampleEventTarget", { + * arn: aws_lambda_function.example.arn, + * rule: exampleEventRule.id, + * inputTransformer: { + * inputPaths: { + * instance: `$.detail.instance`, + * status: `$.detail.status`, + * }, + * inputTemplate: "\" is in state \"", + * }, + * }); + * ``` */ export class EventTarget extends pulumi.CustomResource { /** @@ -184,16 +230,20 @@ export class EventTarget extends pulumi.CustomResource { */ public readonly ecsTarget!: pulumi.Output; /** - * Valid JSON text passed to the target. + * The event bus to associate with the rule. If you omit this, the `default` event bus is used. + */ + public readonly eventBusName!: pulumi.Output; + /** + * Valid JSON text passed to the target. Conflicts with `inputPath` and `inputTransformer`. */ public readonly input!: pulumi.Output; /** * The value of the [JSONPath](http://goessner.net/articles/JsonPath/) - * that is used for extracting part of the matched event when passing it to the target. + * that is used for extracting part of the matched event when passing it to the target. Conflicts with `input` and `inputTransformer`. */ public readonly inputPath!: pulumi.Output; /** - * Parameters used when you are providing a custom input to a target based on certain event data. + * Parameters used when you are providing a custom input to a target based on certain event data. Conflicts with `input` and `inputPath`. */ public readonly inputTransformer!: pulumi.Output; /** @@ -236,6 +286,7 @@ export class EventTarget extends pulumi.CustomResource { inputs["arn"] = state ? state.arn : undefined; inputs["batchTarget"] = state ? state.batchTarget : undefined; inputs["ecsTarget"] = state ? state.ecsTarget : undefined; + inputs["eventBusName"] = state ? state.eventBusName : undefined; inputs["input"] = state ? state.input : undefined; inputs["inputPath"] = state ? state.inputPath : undefined; inputs["inputTransformer"] = state ? state.inputTransformer : undefined; @@ -256,6 +307,7 @@ export class EventTarget extends pulumi.CustomResource { inputs["arn"] = args ? args.arn : undefined; inputs["batchTarget"] = args ? args.batchTarget : undefined; inputs["ecsTarget"] = args ? args.ecsTarget : undefined; + inputs["eventBusName"] = args ? args.eventBusName : undefined; inputs["input"] = args ? args.input : undefined; inputs["inputPath"] = args ? args.inputPath : undefined; inputs["inputTransformer"] = args ? args.inputTransformer : undefined; @@ -294,16 +346,20 @@ export interface EventTargetState { */ readonly ecsTarget?: pulumi.Input; /** - * Valid JSON text passed to the target. + * The event bus to associate with the rule. If you omit this, the `default` event bus is used. + */ + readonly eventBusName?: pulumi.Input; + /** + * Valid JSON text passed to the target. Conflicts with `inputPath` and `inputTransformer`. */ readonly input?: pulumi.Input; /** * The value of the [JSONPath](http://goessner.net/articles/JsonPath/) - * that is used for extracting part of the matched event when passing it to the target. + * that is used for extracting part of the matched event when passing it to the target. Conflicts with `input` and `inputTransformer`. */ readonly inputPath?: pulumi.Input; /** - * Parameters used when you are providing a custom input to a target based on certain event data. + * Parameters used when you are providing a custom input to a target based on certain event data. Conflicts with `input` and `inputPath`. */ readonly inputTransformer?: pulumi.Input; /** @@ -349,16 +405,20 @@ export interface EventTargetArgs { */ readonly ecsTarget?: pulumi.Input; /** - * Valid JSON text passed to the target. + * The event bus to associate with the rule. If you omit this, the `default` event bus is used. + */ + readonly eventBusName?: pulumi.Input; + /** + * Valid JSON text passed to the target. Conflicts with `inputPath` and `inputTransformer`. */ readonly input?: pulumi.Input; /** * The value of the [JSONPath](http://goessner.net/articles/JsonPath/) - * that is used for extracting part of the matched event when passing it to the target. + * that is used for extracting part of the matched event when passing it to the target. Conflicts with `input` and `inputTransformer`. */ readonly inputPath?: pulumi.Input; /** - * Parameters used when you are providing a custom input to a target based on certain event data. + * Parameters used when you are providing a custom input to a target based on certain event data. Conflicts with `input` and `inputPath`. */ readonly inputTransformer?: pulumi.Input; /** diff --git a/sdk/nodejs/codeartifact/domain.ts b/sdk/nodejs/codeartifact/domain.ts index 5bf73dc9a8a..4a189862607 100644 --- a/sdk/nodejs/codeartifact/domain.ts +++ b/sdk/nodejs/codeartifact/domain.ts @@ -76,6 +76,10 @@ export class Domain extends pulumi.CustomResource { * The number of repositories in the domain. */ public /*out*/ readonly repositoryCount!: pulumi.Output; + /** + * Key-value map of resource tags. + */ + public readonly tags!: pulumi.Output<{[key: string]: string} | undefined>; /** * Create a Domain resource with the given unique name, arguments, and options. @@ -96,6 +100,7 @@ export class Domain extends pulumi.CustomResource { inputs["encryptionKey"] = state ? state.encryptionKey : undefined; inputs["owner"] = state ? state.owner : undefined; inputs["repositoryCount"] = state ? state.repositoryCount : undefined; + inputs["tags"] = state ? state.tags : undefined; } else { const args = argsOrState as DomainArgs | undefined; if (!args || args.domain === undefined) { @@ -106,6 +111,7 @@ export class Domain extends pulumi.CustomResource { } inputs["domain"] = args ? args.domain : undefined; inputs["encryptionKey"] = args ? args.encryptionKey : undefined; + inputs["tags"] = args ? args.tags : undefined; inputs["arn"] = undefined /*out*/; inputs["assetSizeBytes"] = undefined /*out*/; inputs["createdTime"] = undefined /*out*/; @@ -155,6 +161,10 @@ export interface DomainState { * The number of repositories in the domain. */ readonly repositoryCount?: pulumi.Input; + /** + * Key-value map of resource tags. + */ + readonly tags?: pulumi.Input<{[key: string]: pulumi.Input}>; } /** @@ -169,4 +179,8 @@ export interface DomainArgs { * The encryption key for the domain. This is used to encrypt content stored in a domain. The KMS Key Amazon Resource Name (ARN). */ readonly encryptionKey: pulumi.Input; + /** + * Key-value map of resource tags. + */ + readonly tags?: pulumi.Input<{[key: string]: pulumi.Input}>; } diff --git a/sdk/nodejs/codeartifact/repository.ts b/sdk/nodejs/codeartifact/repository.ts index 6b8f986a6f4..92efa73489d 100644 --- a/sdk/nodejs/codeartifact/repository.ts +++ b/sdk/nodejs/codeartifact/repository.ts @@ -119,6 +119,10 @@ export class Repository extends pulumi.CustomResource { * The name of the repository to create. */ public readonly repository!: pulumi.Output; + /** + * Key-value map of resource tags. + */ + public readonly tags!: pulumi.Output<{[key: string]: string} | undefined>; /** * A list of upstream repositories to associate with the repository. The order of the upstream repositories in the list determines their priority order when AWS CodeArtifact looks for a requested package version. see Upstream */ @@ -143,6 +147,7 @@ export class Repository extends pulumi.CustomResource { inputs["domainOwner"] = state ? state.domainOwner : undefined; inputs["externalConnections"] = state ? state.externalConnections : undefined; inputs["repository"] = state ? state.repository : undefined; + inputs["tags"] = state ? state.tags : undefined; inputs["upstreams"] = state ? state.upstreams : undefined; } else { const args = argsOrState as RepositoryArgs | undefined; @@ -157,6 +162,7 @@ export class Repository extends pulumi.CustomResource { inputs["domainOwner"] = args ? args.domainOwner : undefined; inputs["externalConnections"] = args ? args.externalConnections : undefined; inputs["repository"] = args ? args.repository : undefined; + inputs["tags"] = args ? args.tags : undefined; inputs["upstreams"] = args ? args.upstreams : undefined; inputs["administratorAccount"] = undefined /*out*/; inputs["arn"] = undefined /*out*/; @@ -204,6 +210,10 @@ export interface RepositoryState { * The name of the repository to create. */ readonly repository?: pulumi.Input; + /** + * Key-value map of resource tags. + */ + readonly tags?: pulumi.Input<{[key: string]: pulumi.Input}>; /** * A list of upstream repositories to associate with the repository. The order of the upstream repositories in the list determines their priority order when AWS CodeArtifact looks for a requested package version. see Upstream */ @@ -234,6 +244,10 @@ export interface RepositoryArgs { * The name of the repository to create. */ readonly repository: pulumi.Input; + /** + * Key-value map of resource tags. + */ + readonly tags?: pulumi.Input<{[key: string]: pulumi.Input}>; /** * A list of upstream repositories to associate with the repository. The order of the upstream repositories in the list determines their priority order when AWS CodeArtifact looks for a requested package version. see Upstream */ diff --git a/sdk/nodejs/directconnect/gatewayAssociation.ts b/sdk/nodejs/directconnect/gatewayAssociation.ts index 3eba0d94892..a18126a6ac6 100644 --- a/sdk/nodejs/directconnect/gatewayAssociation.ts +++ b/sdk/nodejs/directconnect/gatewayAssociation.ts @@ -61,8 +61,6 @@ import * as utilities from "../utilities"; * ], * }); * ``` - * - * A full example of how to create a VPN Gateway in one AWS account, create a Direct Connect Gateway in a second AWS account, and associate the VPN Gateway with the Direct Connect Gateway via the `aws.directconnect.GatewayAssociationProposal` and `aws.directconnect.GatewayAssociation` resources can be found in [the `./examples/dx-gateway-cross-account-vgw-association` directory within the Github Repository](https://github.com/providers/provider-aws/tree/master/examples/dx-gateway-cross-account-vgw-association). */ export class GatewayAssociation extends pulumi.CustomResource { /** diff --git a/sdk/nodejs/directconnect/gatewayAssociationProposal.ts b/sdk/nodejs/directconnect/gatewayAssociationProposal.ts index 8e8461ba4e1..3602fa3844c 100644 --- a/sdk/nodejs/directconnect/gatewayAssociationProposal.ts +++ b/sdk/nodejs/directconnect/gatewayAssociationProposal.ts @@ -19,8 +19,6 @@ import * as utilities from "../utilities"; * associatedGatewayId: aws_vpn_gateway.example.id, * }); * ``` - * - * A full example of how to create a VPN Gateway in one AWS account, create a Direct Connect Gateway in a second AWS account, and associate the VPN Gateway with the Direct Connect Gateway via the `aws.directconnect.GatewayAssociationProposal` and `aws.directconnect.GatewayAssociation` resources can be found in [the `./examples/dx-gateway-cross-account-vgw-association` directory within the Github Repository](https://github.com/providers/provider-aws/tree/master/examples/dx-gateway-cross-account-vgw-association). */ export class GatewayAssociationProposal extends pulumi.CustomResource { /** diff --git a/sdk/nodejs/ec2/eip.ts b/sdk/nodejs/ec2/eip.ts index 39e214ec7a3..0bdfc078730 100644 --- a/sdk/nodejs/ec2/eip.ts +++ b/sdk/nodejs/ec2/eip.ts @@ -147,6 +147,10 @@ export class Eip extends pulumi.CustomResource { * EC2 instance ID. */ public readonly instance!: pulumi.Output; + /** + * The location from which the IP address is advertised. Use this parameter to limit the address to this location. + */ + public readonly networkBorderGroup!: pulumi.Output; /** * Network interface ID to associate with. */ @@ -199,6 +203,7 @@ export class Eip extends pulumi.CustomResource { inputs["customerOwnedIpv4Pool"] = state ? state.customerOwnedIpv4Pool : undefined; inputs["domain"] = state ? state.domain : undefined; inputs["instance"] = state ? state.instance : undefined; + inputs["networkBorderGroup"] = state ? state.networkBorderGroup : undefined; inputs["networkInterface"] = state ? state.networkInterface : undefined; inputs["privateDns"] = state ? state.privateDns : undefined; inputs["privateIp"] = state ? state.privateIp : undefined; @@ -212,6 +217,7 @@ export class Eip extends pulumi.CustomResource { inputs["associateWithPrivateIp"] = args ? args.associateWithPrivateIp : undefined; inputs["customerOwnedIpv4Pool"] = args ? args.customerOwnedIpv4Pool : undefined; inputs["instance"] = args ? args.instance : undefined; + inputs["networkBorderGroup"] = args ? args.networkBorderGroup : undefined; inputs["networkInterface"] = args ? args.networkInterface : undefined; inputs["publicIpv4Pool"] = args ? args.publicIpv4Pool : undefined; inputs["tags"] = args ? args.tags : undefined; @@ -264,6 +270,10 @@ export interface EipState { * EC2 instance ID. */ readonly instance?: pulumi.Input; + /** + * The location from which the IP address is advertised. Use this parameter to limit the address to this location. + */ + readonly networkBorderGroup?: pulumi.Input; /** * Network interface ID to associate with. */ @@ -316,6 +326,10 @@ export interface EipArgs { * EC2 instance ID. */ readonly instance?: pulumi.Input; + /** + * The location from which the IP address is advertised. Use this parameter to limit the address to this location. + */ + readonly networkBorderGroup?: pulumi.Input; /** * Network interface ID to associate with. */ diff --git a/sdk/nodejs/ec2transitgateway/vpcAttachment.ts b/sdk/nodejs/ec2transitgateway/vpcAttachment.ts index 879fa1336bd..96ecece1069 100644 --- a/sdk/nodejs/ec2transitgateway/vpcAttachment.ts +++ b/sdk/nodejs/ec2transitgateway/vpcAttachment.ts @@ -19,8 +19,6 @@ import * as utilities from "../utilities"; * vpcId: aws_vpc.example.id, * }); * ``` - * - * A full example of how to create a Transit Gateway in one AWS account, share it with a second AWS account, and attach a VPC in the second account to the Transit Gateway via the `aws.ec2transitgateway.VpcAttachment` and `aws.ec2transitgateway.VpcAttachmentAccepter` resources can be found in [the `./examples/transit-gateway-cross-account-vpc-attachment` directory within the Github Repository](https://github.com/providers/provider-aws/tree/master/examples/transit-gateway-cross-account-vpc-attachment). */ export class VpcAttachment extends pulumi.CustomResource { /** diff --git a/sdk/nodejs/ec2transitgateway/vpcAttachmentAccepter.ts b/sdk/nodejs/ec2transitgateway/vpcAttachmentAccepter.ts index 4975f930217..e2e64e4d511 100644 --- a/sdk/nodejs/ec2transitgateway/vpcAttachmentAccepter.ts +++ b/sdk/nodejs/ec2transitgateway/vpcAttachmentAccepter.ts @@ -26,8 +26,6 @@ import * as utilities from "../utilities"; * }, * }); * ``` - * - * A full example of how to how to create a Transit Gateway in one AWS account, share it with a second AWS account, and attach a VPC in the second account to the Transit Gateway via the `aws.ec2transitgateway.VpcAttachment` and `aws.ec2transitgateway.VpcAttachmentAccepter` resources can be found in [the `./examples/transit-gateway-cross-account-vpc-attachment` directory within the Github Repository](https://github.com/providers/provider-aws/tree/master/examples/transit-gateway-cross-account-vpc-attachment). */ export class VpcAttachmentAccepter extends pulumi.CustomResource { /** diff --git a/sdk/nodejs/glue/crawler.ts b/sdk/nodejs/glue/crawler.ts index 07e5cba8d2a..c6087ffb344 100644 --- a/sdk/nodejs/glue/crawler.ts +++ b/sdk/nodejs/glue/crawler.ts @@ -79,6 +79,21 @@ import * as utilities from "../utilities"; * `, * }); * ``` + * ### MongoDB Target + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as aws from "@pulumi/aws"; + * + * const example = new aws.glue.Crawler("example", { + * databaseName: aws_glue_catalog_database.example.name, + * role: aws_iam_role.example.arn, + * mongodbTargets: [{ + * connectionName: aws_glue_connection.example.name, + * path: `database-name/%`, + * }], + * }); + * ``` */ export class Crawler extends pulumi.CustomResource { /** @@ -137,6 +152,10 @@ export class Crawler extends pulumi.CustomResource { * List of nested JBDC target arguments. See below. */ public readonly jdbcTargets!: pulumi.Output; + /** + * List nested MongoDB target arguments. See below. + */ + public readonly mongodbTargets!: pulumi.Output; /** * Name of the crawler. */ @@ -190,6 +209,7 @@ export class Crawler extends pulumi.CustomResource { inputs["description"] = state ? state.description : undefined; inputs["dynamodbTargets"] = state ? state.dynamodbTargets : undefined; inputs["jdbcTargets"] = state ? state.jdbcTargets : undefined; + inputs["mongodbTargets"] = state ? state.mongodbTargets : undefined; inputs["name"] = state ? state.name : undefined; inputs["role"] = state ? state.role : undefined; inputs["s3Targets"] = state ? state.s3Targets : undefined; @@ -213,6 +233,7 @@ export class Crawler extends pulumi.CustomResource { inputs["description"] = args ? args.description : undefined; inputs["dynamodbTargets"] = args ? args.dynamodbTargets : undefined; inputs["jdbcTargets"] = args ? args.jdbcTargets : undefined; + inputs["mongodbTargets"] = args ? args.mongodbTargets : undefined; inputs["name"] = args ? args.name : undefined; inputs["role"] = args ? args.role : undefined; inputs["s3Targets"] = args ? args.s3Targets : undefined; @@ -267,6 +288,10 @@ export interface CrawlerState { * List of nested JBDC target arguments. See below. */ readonly jdbcTargets?: pulumi.Input[]>; + /** + * List nested MongoDB target arguments. See below. + */ + readonly mongodbTargets?: pulumi.Input[]>; /** * Name of the crawler. */ @@ -330,6 +355,10 @@ export interface CrawlerArgs { * List of nested JBDC target arguments. See below. */ readonly jdbcTargets?: pulumi.Input[]>; + /** + * List nested MongoDB target arguments. See below. + */ + readonly mongodbTargets?: pulumi.Input[]>; /** * Name of the crawler. */ diff --git a/sdk/nodejs/lex/bot.ts b/sdk/nodejs/lex/bot.ts index 1388cd9e10b..1a77f2f86bb 100644 --- a/sdk/nodejs/lex/bot.ts +++ b/sdk/nodejs/lex/bot.ts @@ -101,7 +101,7 @@ export class Bot extends pulumi.CustomResource { */ public /*out*/ readonly createdDate!: pulumi.Output; /** - * A description of the bot. + * A description of the bot. Must be less than or equal to 200 characters in length. */ public readonly description!: pulumi.Output; /** @@ -117,11 +117,11 @@ export class Bot extends pulumi.CustomResource { */ public /*out*/ readonly failureReason!: pulumi.Output; /** - * The maximum time in seconds that Amazon Lex retains the data gathered in a conversation. Default is `300`. + * The maximum time in seconds that Amazon Lex retains the data gathered in a conversation. Default is `300`. Must be a number between 60 and 86400 (inclusive). */ public readonly idleSessionTtlInSeconds!: pulumi.Output; /** - * A set of Intent objects. Each intent represents a command that a user can express. Attributes are documented under intent. + * A set of Intent objects. Each intent represents a command that a user can express. Attributes are documented under intent. Can have up to 100 Intent objects. */ public readonly intents!: pulumi.Output; /** @@ -133,11 +133,11 @@ export class Bot extends pulumi.CustomResource { */ public readonly locale!: pulumi.Output; /** - * The name of the bot that you want to create, case sensitive. + * The name of the bot that you want to create, case sensitive. Must be between 2 and 50 characters in length. */ public readonly name!: pulumi.Output; /** - * Determines the threshold where Amazon Lex will insert the AMAZON.FallbackIntent, AMAZON.KendraSearchIntent, or both when returning alternative intents in a PostContent or PostText response. AMAZON.FallbackIntent and AMAZON.KendraSearchIntent are only inserted if they are configured for the bot. For more information see [Amazon Lex Bot PutBot API Docs](https://docs.aws.amazon.com/lex/latest/dg/API_PutBot.html#lex-PutBot-request-nluIntentConfidenceThreshold) This value requires `enableModelImprovements` to be set to `true` and the default is `0`. + * Determines the threshold where Amazon Lex will insert the AMAZON.FallbackIntent, AMAZON.KendraSearchIntent, or both when returning alternative intents in a PostContent or PostText response. AMAZON.FallbackIntent and AMAZON.KendraSearchIntent are only inserted if they are configured for the bot. For more information see [Amazon Lex Bot PutBot API Docs](https://docs.aws.amazon.com/lex/latest/dg/API_PutBot.html#lex-PutBot-request-nluIntentConfidenceThreshold) This value requires `enableModelImprovements` to be set to `true` and the default is `0`. Must be a float between 0 and 1. */ public readonly nluIntentConfidenceThreshold!: pulumi.Output; /** @@ -268,7 +268,7 @@ export interface BotState { */ readonly createdDate?: pulumi.Input; /** - * A description of the bot. + * A description of the bot. Must be less than or equal to 200 characters in length. */ readonly description?: pulumi.Input; /** @@ -284,11 +284,11 @@ export interface BotState { */ readonly failureReason?: pulumi.Input; /** - * The maximum time in seconds that Amazon Lex retains the data gathered in a conversation. Default is `300`. + * The maximum time in seconds that Amazon Lex retains the data gathered in a conversation. Default is `300`. Must be a number between 60 and 86400 (inclusive). */ readonly idleSessionTtlInSeconds?: pulumi.Input; /** - * A set of Intent objects. Each intent represents a command that a user can express. Attributes are documented under intent. + * A set of Intent objects. Each intent represents a command that a user can express. Attributes are documented under intent. Can have up to 100 Intent objects. */ readonly intents?: pulumi.Input[]>; /** @@ -300,11 +300,11 @@ export interface BotState { */ readonly locale?: pulumi.Input; /** - * The name of the bot that you want to create, case sensitive. + * The name of the bot that you want to create, case sensitive. Must be between 2 and 50 characters in length. */ readonly name?: pulumi.Input; /** - * Determines the threshold where Amazon Lex will insert the AMAZON.FallbackIntent, AMAZON.KendraSearchIntent, or both when returning alternative intents in a PostContent or PostText response. AMAZON.FallbackIntent and AMAZON.KendraSearchIntent are only inserted if they are configured for the bot. For more information see [Amazon Lex Bot PutBot API Docs](https://docs.aws.amazon.com/lex/latest/dg/API_PutBot.html#lex-PutBot-request-nluIntentConfidenceThreshold) This value requires `enableModelImprovements` to be set to `true` and the default is `0`. + * Determines the threshold where Amazon Lex will insert the AMAZON.FallbackIntent, AMAZON.KendraSearchIntent, or both when returning alternative intents in a PostContent or PostText response. AMAZON.FallbackIntent and AMAZON.KendraSearchIntent are only inserted if they are configured for the bot. For more information see [Amazon Lex Bot PutBot API Docs](https://docs.aws.amazon.com/lex/latest/dg/API_PutBot.html#lex-PutBot-request-nluIntentConfidenceThreshold) This value requires `enableModelImprovements` to be set to `true` and the default is `0`. Must be a float between 0 and 1. */ readonly nluIntentConfidenceThreshold?: pulumi.Input; /** @@ -349,7 +349,7 @@ export interface BotArgs { */ readonly createVersion?: pulumi.Input; /** - * A description of the bot. + * A description of the bot. Must be less than or equal to 200 characters in length. */ readonly description?: pulumi.Input; /** @@ -361,11 +361,11 @@ export interface BotArgs { */ readonly enableModelImprovements?: pulumi.Input; /** - * The maximum time in seconds that Amazon Lex retains the data gathered in a conversation. Default is `300`. + * The maximum time in seconds that Amazon Lex retains the data gathered in a conversation. Default is `300`. Must be a number between 60 and 86400 (inclusive). */ readonly idleSessionTtlInSeconds?: pulumi.Input; /** - * A set of Intent objects. Each intent represents a command that a user can express. Attributes are documented under intent. + * A set of Intent objects. Each intent represents a command that a user can express. Attributes are documented under intent. Can have up to 100 Intent objects. */ readonly intents: pulumi.Input[]>; /** @@ -373,11 +373,11 @@ export interface BotArgs { */ readonly locale?: pulumi.Input; /** - * The name of the bot that you want to create, case sensitive. + * The name of the bot that you want to create, case sensitive. Must be between 2 and 50 characters in length. */ readonly name?: pulumi.Input; /** - * Determines the threshold where Amazon Lex will insert the AMAZON.FallbackIntent, AMAZON.KendraSearchIntent, or both when returning alternative intents in a PostContent or PostText response. AMAZON.FallbackIntent and AMAZON.KendraSearchIntent are only inserted if they are configured for the bot. For more information see [Amazon Lex Bot PutBot API Docs](https://docs.aws.amazon.com/lex/latest/dg/API_PutBot.html#lex-PutBot-request-nluIntentConfidenceThreshold) This value requires `enableModelImprovements` to be set to `true` and the default is `0`. + * Determines the threshold where Amazon Lex will insert the AMAZON.FallbackIntent, AMAZON.KendraSearchIntent, or both when returning alternative intents in a PostContent or PostText response. AMAZON.FallbackIntent and AMAZON.KendraSearchIntent are only inserted if they are configured for the bot. For more information see [Amazon Lex Bot PutBot API Docs](https://docs.aws.amazon.com/lex/latest/dg/API_PutBot.html#lex-PutBot-request-nluIntentConfidenceThreshold) This value requires `enableModelImprovements` to be set to `true` and the default is `0`. Must be a float between 0 and 1. */ readonly nluIntentConfidenceThreshold?: pulumi.Input; /** diff --git a/sdk/nodejs/lex/botAlias.ts b/sdk/nodejs/lex/botAlias.ts index 9a8eee02e7a..550e830c6c1 100644 --- a/sdk/nodejs/lex/botAlias.ts +++ b/sdk/nodejs/lex/botAlias.ts @@ -78,7 +78,7 @@ export class BotAlias extends pulumi.CustomResource { */ public /*out*/ readonly createdDate!: pulumi.Output; /** - * A description of the alias. + * A description of the alias. Must be less than or equal to 200 characters in length. */ public readonly description!: pulumi.Output; /** @@ -86,7 +86,7 @@ export class BotAlias extends pulumi.CustomResource { */ public /*out*/ readonly lastUpdatedDate!: pulumi.Output; /** - * The name of the alias. The name is not case sensitive. + * The name of the alias. The name is not case sensitive. Must be less than or equal to 100 characters in length. */ public readonly name!: pulumi.Output; @@ -169,7 +169,7 @@ export interface BotAliasState { */ readonly createdDate?: pulumi.Input; /** - * A description of the alias. + * A description of the alias. Must be less than or equal to 200 characters in length. */ readonly description?: pulumi.Input; /** @@ -177,7 +177,7 @@ export interface BotAliasState { */ readonly lastUpdatedDate?: pulumi.Input; /** - * The name of the alias. The name is not case sensitive. + * The name of the alias. The name is not case sensitive. Must be less than or equal to 100 characters in length. */ readonly name?: pulumi.Input; } @@ -199,11 +199,11 @@ export interface BotAliasArgs { */ readonly conversationLogs?: pulumi.Input; /** - * A description of the alias. + * A description of the alias. Must be less than or equal to 200 characters in length. */ readonly description?: pulumi.Input; /** - * The name of the alias. The name is not case sensitive. + * The name of the alias. The name is not case sensitive. Must be less than or equal to 100 characters in length. */ readonly name?: pulumi.Input; } diff --git a/sdk/nodejs/lex/intent.ts b/sdk/nodejs/lex/intent.ts index 060edab614f..1f2d29bdcab 100644 --- a/sdk/nodejs/lex/intent.ts +++ b/sdk/nodejs/lex/intent.ts @@ -154,7 +154,7 @@ export class Intent extends pulumi.CustomResource { */ public /*out*/ readonly createdDate!: pulumi.Output; /** - * A description of the bot. + * A description of the bot. Must be less than or equal to 200 characters in length. */ public readonly description!: pulumi.Output; /** @@ -180,7 +180,7 @@ export class Intent extends pulumi.CustomResource { */ public /*out*/ readonly lastUpdatedDate!: pulumi.Output; /** - * The name of the intent slot that you want to create. The name is case sensitive. + * The name of the intent slot that you want to create. The name is case sensitive. Must be less than or equal to 100 characters in length. */ public readonly name!: pulumi.Output; /** @@ -199,7 +199,7 @@ export class Intent extends pulumi.CustomResource { /** * If you know a specific pattern with which users might respond to * an Amazon Lex request for a slot value, you can provide those utterances to improve accuracy. This - * is optional. In most cases, Amazon Lex is capable of understanding user utterances. + * is optional. In most cases, Amazon Lex is capable of understanding user utterances. Must have between 1 and 10 items in the list, and each item must be less than or equal to 200 characters in length. */ public readonly sampleUtterances!: pulumi.Output; /** @@ -312,7 +312,7 @@ export interface IntentState { */ readonly createdDate?: pulumi.Input; /** - * A description of the bot. + * A description of the bot. Must be less than or equal to 200 characters in length. */ readonly description?: pulumi.Input; /** @@ -338,7 +338,7 @@ export interface IntentState { */ readonly lastUpdatedDate?: pulumi.Input; /** - * The name of the intent slot that you want to create. The name is case sensitive. + * The name of the intent slot that you want to create. The name is case sensitive. Must be less than or equal to 100 characters in length. */ readonly name?: pulumi.Input; /** @@ -357,7 +357,7 @@ export interface IntentState { /** * If you know a specific pattern with which users might respond to * an Amazon Lex request for a slot value, you can provide those utterances to improve accuracy. This - * is optional. In most cases, Amazon Lex is capable of understanding user utterances. + * is optional. In most cases, Amazon Lex is capable of understanding user utterances. Must have between 1 and 10 items in the list, and each item must be less than or equal to 200 characters in length. */ readonly sampleUtterances?: pulumi.Input[]>; /** @@ -395,7 +395,7 @@ export interface IntentArgs { */ readonly createVersion?: pulumi.Input; /** - * A description of the bot. + * A description of the bot. Must be less than or equal to 200 characters in length. */ readonly description?: pulumi.Input; /** @@ -417,7 +417,7 @@ export interface IntentArgs { */ readonly fulfillmentActivity: pulumi.Input; /** - * The name of the intent slot that you want to create. The name is case sensitive. + * The name of the intent slot that you want to create. The name is case sensitive. Must be less than or equal to 100 characters in length. */ readonly name?: pulumi.Input; /** @@ -436,7 +436,7 @@ export interface IntentArgs { /** * If you know a specific pattern with which users might respond to * an Amazon Lex request for a slot value, you can provide those utterances to improve accuracy. This - * is optional. In most cases, Amazon Lex is capable of understanding user utterances. + * is optional. In most cases, Amazon Lex is capable of understanding user utterances. Must have between 1 and 10 items in the list, and each item must be less than or equal to 200 characters in length. */ readonly sampleUtterances?: pulumi.Input[]>; /** diff --git a/sdk/nodejs/lex/slotType.ts b/sdk/nodejs/lex/slotType.ts index a0d750987a3..25e9dd4c8cf 100644 --- a/sdk/nodejs/lex/slotType.ts +++ b/sdk/nodejs/lex/slotType.ts @@ -84,7 +84,7 @@ export class SlotType extends pulumi.CustomResource { */ public /*out*/ readonly createdDate!: pulumi.Output; /** - * A description of the slot type. + * A description of the slot type. Must be less than or equal to 200 characters in length. */ public readonly description!: pulumi.Output; /** @@ -99,7 +99,7 @@ export class SlotType extends pulumi.CustomResource { */ public /*out*/ readonly lastUpdatedDate!: pulumi.Output; /** - * The name of the slot type. The name is not case sensitive. + * The name of the slot type. The name is not case sensitive. Must be less than or equal to 100 characters in length. */ public readonly name!: pulumi.Output; /** @@ -180,7 +180,7 @@ export interface SlotTypeState { */ readonly createdDate?: pulumi.Input; /** - * A description of the slot type. + * A description of the slot type. Must be less than or equal to 200 characters in length. */ readonly description?: pulumi.Input; /** @@ -195,7 +195,7 @@ export interface SlotTypeState { */ readonly lastUpdatedDate?: pulumi.Input; /** - * The name of the slot type. The name is not case sensitive. + * The name of the slot type. The name is not case sensitive. Must be less than or equal to 100 characters in length. */ readonly name?: pulumi.Input; /** @@ -221,7 +221,7 @@ export interface SlotTypeArgs { */ readonly createVersion?: pulumi.Input; /** - * A description of the slot type. + * A description of the slot type. Must be less than or equal to 200 characters in length. */ readonly description?: pulumi.Input; /** @@ -232,7 +232,7 @@ export interface SlotTypeArgs { */ readonly enumerationValues: pulumi.Input[]>; /** - * The name of the slot type. The name is not case sensitive. + * The name of the slot type. The name is not case sensitive. Must be less than or equal to 100 characters in length. */ readonly name?: pulumi.Input; /** diff --git a/sdk/nodejs/rds/cluster.ts b/sdk/nodejs/rds/cluster.ts index 4d0e8328e9e..b6398898251 100644 --- a/sdk/nodejs/rds/cluster.ts +++ b/sdk/nodejs/rds/cluster.ts @@ -294,9 +294,9 @@ export class Cluster extends pulumi.CustomResource { */ public readonly sourceRegion!: pulumi.Output; /** - * Specifies whether the DB cluster is encrypted. The default is `false` for `provisioned` `engineMode` and `true` for `serverless` `engineMode`. + * Specifies whether the DB cluster is encrypted */ - public readonly storageEncrypted!: pulumi.Output; + public readonly storageEncrypted!: pulumi.Output; /** * A map of tags to assign to the DB cluster. */ @@ -575,7 +575,7 @@ export interface ClusterState { */ readonly sourceRegion?: pulumi.Input; /** - * Specifies whether the DB cluster is encrypted. The default is `false` for `provisioned` `engineMode` and `true` for `serverless` `engineMode`. + * Specifies whether the DB cluster is encrypted */ readonly storageEncrypted?: pulumi.Input; /** @@ -726,7 +726,7 @@ export interface ClusterArgs { */ readonly sourceRegion?: pulumi.Input; /** - * Specifies whether the DB cluster is encrypted. The default is `false` for `provisioned` `engineMode` and `true` for `serverless` `engineMode`. + * Specifies whether the DB cluster is encrypted */ readonly storageEncrypted?: pulumi.Input; /** diff --git a/sdk/nodejs/route53/getResolverEndpoint.ts b/sdk/nodejs/route53/getResolverEndpoint.ts new file mode 100644 index 00000000000..a511ddf28cb --- /dev/null +++ b/sdk/nodejs/route53/getResolverEndpoint.ts @@ -0,0 +1,85 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as inputs from "../types/input"; +import * as outputs from "../types/output"; +import * as enums from "../types/enums"; +import * as utilities from "../utilities"; + +/** + * `aws.route53.ResolverEndpoint` provides details about a specific Route53 Resolver Endpoint. + * + * This data source allows to find a list of IPaddresses associated with a specific Route53 Resolver Endpoint. + * + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as aws from "@pulumi/aws"; + * + * const example = pulumi.output(aws.route53.getResolverEndpoint({ + * resolverEndpointId: "rslvr-in-1abc2345ef678g91h", + * }, { async: true })); + * ``` + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as aws from "@pulumi/aws"; + * + * const example = pulumi.output(aws.route53.getResolverEndpoint({ + * filters: [{ + * name: "NAME", + * values: ["MyResolverExampleName"], + * }], + * }, { async: true })); + * ``` + */ +export function getResolverEndpoint(args?: GetResolverEndpointArgs, opts?: pulumi.InvokeOptions): Promise { + args = args || {}; + if (!opts) { + opts = {} + } + + if (!opts.version) { + opts.version = utilities.getVersion(); + } + return pulumi.runtime.invoke("aws:route53/getResolverEndpoint:getResolverEndpoint", { + "filters": args.filters, + "resolverEndpointId": args.resolverEndpointId, + }, opts); +} + +/** + * A collection of arguments for invoking getResolverEndpoint. + */ +export interface GetResolverEndpointArgs { + /** + * One or more name/value pairs to use as filters. There are + * several valid keys, for a full reference, check out + * [Route53resolver Filter value in the AWS API reference][1]. + */ + readonly filters?: inputs.route53.GetResolverEndpointFilter[]; + /** + * The ID of the Route53 Resolver Endpoint. + */ + readonly resolverEndpointId?: string; +} + +/** + * A collection of values returned by getResolverEndpoint. + */ +export interface GetResolverEndpointResult { + readonly arn: string; + readonly direction: string; + readonly filters?: outputs.route53.GetResolverEndpointFilter[]; + /** + * The provider-assigned unique ID for this managed resource. + */ + readonly id: string; + readonly ipAddresses: string[]; + readonly name: string; + readonly resolverEndpointId?: string; + readonly status: string; + readonly vpcId: string; +} diff --git a/sdk/nodejs/route53/index.ts b/sdk/nodejs/route53/index.ts index 3e253bd23de..30077de03ef 100644 --- a/sdk/nodejs/route53/index.ts +++ b/sdk/nodejs/route53/index.ts @@ -4,6 +4,7 @@ // Export members: export * from "./delegationSet"; export * from "./getDelegationSet"; +export * from "./getResolverEndpoint"; export * from "./getResolverRule"; export * from "./getResolverRules"; export * from "./getZone"; diff --git a/sdk/nodejs/s3/bucket.ts b/sdk/nodejs/s3/bucket.ts index f4b770bed63..eb01e48421a 100644 --- a/sdk/nodejs/s3/bucket.ts +++ b/sdk/nodejs/s3/bucket.ts @@ -335,7 +335,7 @@ export class Bucket extends pulumi.CustomResource { */ public readonly arn!: pulumi.Output; /** - * The name of the bucket. If omitted, this provider will assign a random, unique name. + * The name of the bucket. If omitted, this provider will assign a random, unique name. Must be less than or equal to 63 characters in length. */ public readonly bucket!: pulumi.Output; /** @@ -343,7 +343,7 @@ export class Bucket extends pulumi.CustomResource { */ public /*out*/ readonly bucketDomainName!: pulumi.Output; /** - * Creates a unique bucket name beginning with the specified prefix. Conflicts with `bucket`. + * Creates a unique bucket name beginning with the specified prefix. Conflicts with `bucket`. Must be less than or equal to 37 characters in length. */ public readonly bucketPrefix!: pulumi.Output; /** @@ -513,7 +513,7 @@ export interface BucketState { */ readonly arn?: pulumi.Input; /** - * The name of the bucket. If omitted, this provider will assign a random, unique name. + * The name of the bucket. If omitted, this provider will assign a random, unique name. Must be less than or equal to 63 characters in length. */ readonly bucket?: pulumi.Input; /** @@ -521,7 +521,7 @@ export interface BucketState { */ readonly bucketDomainName?: pulumi.Input; /** - * Creates a unique bucket name beginning with the specified prefix. Conflicts with `bucket`. + * Creates a unique bucket name beginning with the specified prefix. Conflicts with `bucket`. Must be less than or equal to 37 characters in length. */ readonly bucketPrefix?: pulumi.Input; /** @@ -618,11 +618,11 @@ export interface BucketArgs { */ readonly arn?: pulumi.Input; /** - * The name of the bucket. If omitted, this provider will assign a random, unique name. + * The name of the bucket. If omitted, this provider will assign a random, unique name. Must be less than or equal to 63 characters in length. */ readonly bucket?: pulumi.Input; /** - * Creates a unique bucket name beginning with the specified prefix. Conflicts with `bucket`. + * Creates a unique bucket name beginning with the specified prefix. Conflicts with `bucket`. Must be less than or equal to 37 characters in length. */ readonly bucketPrefix?: pulumi.Input; /** diff --git a/sdk/nodejs/sagemaker/endpointConfiguration.ts b/sdk/nodejs/sagemaker/endpointConfiguration.ts index 39443459ce9..d5077c7b087 100644 --- a/sdk/nodejs/sagemaker/endpointConfiguration.ts +++ b/sdk/nodejs/sagemaker/endpointConfiguration.ts @@ -63,6 +63,10 @@ export class EndpointConfiguration extends pulumi.CustomResource { * The Amazon Resource Name (ARN) assigned by AWS to this endpoint configuration. */ public /*out*/ readonly arn!: pulumi.Output; + /** + * Specifies the parameters to capture input/output of Sagemaker models endpoints. Fields are documented below. + */ + public readonly dataCaptureConfig!: pulumi.Output; /** * Amazon Resource Name (ARN) of a AWS Key Management Service key that Amazon SageMaker uses to encrypt data on the storage volume attached to the ML compute instance that hosts the endpoint. */ @@ -93,6 +97,7 @@ export class EndpointConfiguration extends pulumi.CustomResource { if (opts && opts.id) { const state = argsOrState as EndpointConfigurationState | undefined; inputs["arn"] = state ? state.arn : undefined; + inputs["dataCaptureConfig"] = state ? state.dataCaptureConfig : undefined; inputs["kmsKeyArn"] = state ? state.kmsKeyArn : undefined; inputs["name"] = state ? state.name : undefined; inputs["productionVariants"] = state ? state.productionVariants : undefined; @@ -102,6 +107,7 @@ export class EndpointConfiguration extends pulumi.CustomResource { if (!args || args.productionVariants === undefined) { throw new Error("Missing required property 'productionVariants'"); } + inputs["dataCaptureConfig"] = args ? args.dataCaptureConfig : undefined; inputs["kmsKeyArn"] = args ? args.kmsKeyArn : undefined; inputs["name"] = args ? args.name : undefined; inputs["productionVariants"] = args ? args.productionVariants : undefined; @@ -127,6 +133,10 @@ export interface EndpointConfigurationState { * The Amazon Resource Name (ARN) assigned by AWS to this endpoint configuration. */ readonly arn?: pulumi.Input; + /** + * Specifies the parameters to capture input/output of Sagemaker models endpoints. Fields are documented below. + */ + readonly dataCaptureConfig?: pulumi.Input; /** * Amazon Resource Name (ARN) of a AWS Key Management Service key that Amazon SageMaker uses to encrypt data on the storage volume attached to the ML compute instance that hosts the endpoint. */ @@ -149,6 +159,10 @@ export interface EndpointConfigurationState { * The set of arguments for constructing a EndpointConfiguration resource. */ export interface EndpointConfigurationArgs { + /** + * Specifies the parameters to capture input/output of Sagemaker models endpoints. Fields are documented below. + */ + readonly dataCaptureConfig?: pulumi.Input; /** * Amazon Resource Name (ARN) of a AWS Key Management Service key that Amazon SageMaker uses to encrypt data on the storage volume attached to the ML compute instance that hosts the endpoint. */ diff --git a/sdk/nodejs/sagemaker/getPrebuiltEcrImage.ts b/sdk/nodejs/sagemaker/getPrebuiltEcrImage.ts new file mode 100644 index 00000000000..02e7b012f3b --- /dev/null +++ b/sdk/nodejs/sagemaker/getPrebuiltEcrImage.ts @@ -0,0 +1,87 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** 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"; + +/** + * Get information about prebuilt Amazon SageMaker Docker images. + * + * > **NOTE:** The AWS provider creates a validly constructed `registryPath` but does not verify that the `registryPath` corresponds to an existing image. For example, using a `registryPath` containing an `imageTag` that does not correspond to a Docker image in the ECR repository, will result in an error. + * + * ## Example Usage + * + * Basic usage: + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as aws from "@pulumi/aws"; + * + * const test = pulumi.output(aws.sagemaker.getPrebuiltEcrImage({ + * imageTag: "2.2-1.0.11.0", + * repositoryName: "sagemaker-scikit-learn", + * }, { async: true })); + * ``` + */ +export function getPrebuiltEcrImage(args: GetPrebuiltEcrImageArgs, opts?: pulumi.InvokeOptions): Promise { + if (!opts) { + opts = {} + } + + if (!opts.version) { + opts.version = utilities.getVersion(); + } + return pulumi.runtime.invoke("aws:sagemaker/getPrebuiltEcrImage:getPrebuiltEcrImage", { + "dnsSuffix": args.dnsSuffix, + "imageTag": args.imageTag, + "region": args.region, + "repositoryName": args.repositoryName, + }, opts); +} + +/** + * A collection of arguments for invoking getPrebuiltEcrImage. + */ +export interface GetPrebuiltEcrImageArgs { + /** + * The DNS suffix to use in the registry path. If not specified, the AWS provider sets it to the DNS suffix for the current region. + */ + readonly dnsSuffix?: string; + /** + * The image tag for the Docker image. If not specified, the AWS provider sets the value to `1`, which for many repositories indicates the latest version. Some repositories, such as XGBoost, do not support `1` or `latest` and specific version must be used. + */ + readonly imageTag?: string; + /** + * The region to use in the registry path. If not specified, the AWS provider sets it to the current region. + */ + readonly region?: string; + /** + * The name of the repository, which is generally the algorithm or library. Values include `blazingtext`, `factorization-machines`, `forecasting-deepar`, `image-classification`, `ipinsights`, `kmeans`, `knn`, `lda`, `linear-learner`, `mxnet-inference-eia`, `mxnet-inference`, `mxnet-training`, `ntm`, `object-detection`, `object2vec`, `pca`, `pytorch-inference-eia`, `pytorch-inference`, `pytorch-training`, `randomcutforest`, `sagemaker-scikit-learn`, `sagemaker-sparkml-serving`, `sagemaker-xgboost`, `semantic-segmentation`, `seq2seq`, `tensorflow-inference-eia`, `tensorflow-inference`, and `tensorflow-training`. + */ + readonly repositoryName: string; +} + +/** + * A collection of values returned by getPrebuiltEcrImage. + */ +export interface GetPrebuiltEcrImageResult { + readonly dnsSuffix?: string; + /** + * The provider-assigned unique ID for this managed resource. + */ + readonly id: string; + readonly imageTag?: string; + readonly region?: string; + /** + * The account ID containing the image. For example, `469771592824`. + */ + readonly registryId: string; + /** + * The Docker image URL. For example, `341280168497.dkr.ecr.ca-central-1.amazonaws.com/sagemaker-sparkml-serving:2.4`. + */ + readonly registryPath: string; + readonly repositoryName: string; +} diff --git a/sdk/nodejs/sagemaker/index.ts b/sdk/nodejs/sagemaker/index.ts index ab197a99444..c1910388beb 100644 --- a/sdk/nodejs/sagemaker/index.ts +++ b/sdk/nodejs/sagemaker/index.ts @@ -5,6 +5,7 @@ export * from "./codeRepository"; export * from "./endpoint"; export * from "./endpointConfiguration"; +export * from "./getPrebuiltEcrImage"; export * from "./model"; export * from "./notebookInstance"; export * from "./notebookInstanceLifecycleConfiguration"; diff --git a/sdk/nodejs/sagemaker/model.ts b/sdk/nodejs/sagemaker/model.ts index 570c235add8..0e699350c69 100644 --- a/sdk/nodejs/sagemaker/model.ts +++ b/sdk/nodejs/sagemaker/model.ts @@ -18,12 +18,6 @@ import * as utilities from "../utilities"; * import * as pulumi from "@pulumi/pulumi"; * import * as aws from "@pulumi/aws"; * - * const model = new aws.sagemaker.Model("model", { - * executionRoleArn: aws_iam_role.foo.arn, - * primaryContainer: { - * image: "174872318107.dkr.ecr.us-west-2.amazonaws.com/kmeans:1", - * }, - * }); * const assumeRole = aws.iam.getPolicyDocument({ * statements: [{ * actions: ["sts:AssumeRole"], @@ -33,7 +27,13 @@ import * as utilities from "../utilities"; * }], * }], * }); - * const role = new aws.iam.Role("role", {assumeRolePolicy: assumeRole.then(assumeRole => assumeRole.json)}); + * const exampleRole = new aws.iam.Role("exampleRole", {assumeRolePolicy: assumeRole.then(assumeRole => assumeRole.json)}); + * const exampleModel = new aws.sagemaker.Model("exampleModel", { + * executionRoleArn: exampleRole.arn, + * primaryContainer: { + * image: "174872318107.dkr.ecr.us-west-2.amazonaws.com/kmeans:1", + * }, + * }); * ``` */ export class Model extends pulumi.CustomResource { diff --git a/sdk/nodejs/sagemaker/notebookInstance.ts b/sdk/nodejs/sagemaker/notebookInstance.ts index 419ff883ba4..dca4369e66e 100644 --- a/sdk/nodejs/sagemaker/notebookInstance.ts +++ b/sdk/nodejs/sagemaker/notebookInstance.ts @@ -31,7 +31,7 @@ import * as utilities from "../utilities"; * const example = new aws.sagemaker.CodeRepository("example", { * codeRepositoryName: "my-notebook-instance-code-repo", * gitConfig: { - * repositoryUrl: "https://github.com/terraform-providers/terraform-provider-aws.git", + * repositoryUrl: "https://github.com/hashicorp/terraform-provider-aws.git", * }, * }); * const ni = new aws.sagemaker.NotebookInstance("ni", { diff --git a/sdk/nodejs/secretsmanager/index.ts b/sdk/nodejs/secretsmanager/index.ts index 5ec6ade3f2a..fcf3c15ccee 100644 --- a/sdk/nodejs/secretsmanager/index.ts +++ b/sdk/nodejs/secretsmanager/index.ts @@ -6,5 +6,6 @@ export * from "./getSecret"; export * from "./getSecretRotation"; export * from "./getSecretVersion"; export * from "./secret"; +export * from "./secretPolicy"; export * from "./secretRotation"; export * from "./secretVersion"; diff --git a/sdk/nodejs/secretsmanager/secret.ts b/sdk/nodejs/secretsmanager/secret.ts index 1f1bf514ed8..0c0951ed266 100644 --- a/sdk/nodejs/secretsmanager/secret.ts +++ b/sdk/nodejs/secretsmanager/secret.ts @@ -90,7 +90,7 @@ export class Secret extends pulumi.CustomResource { /** * A valid JSON document representing a [resource policy](https://docs.aws.amazon.com/secretsmanager/latest/userguide/auth-and-access_resource-based-policies.html). */ - public readonly policy!: pulumi.Output; + public readonly policy!: pulumi.Output; /** * Specifies the number of days that AWS Secrets Manager waits before it can delete the secret. This value can be `0` to force deletion without recovery or range from `7` to `30` days. The default value is `30`. */ diff --git a/sdk/nodejs/secretsmanager/secretPolicy.ts b/sdk/nodejs/secretsmanager/secretPolicy.ts new file mode 100644 index 00000000000..92bfa2001d6 --- /dev/null +++ b/sdk/nodejs/secretsmanager/secretPolicy.ts @@ -0,0 +1,142 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as utilities from "../utilities"; + +/** + * Provides a resource to manage AWS Secrets Manager secret policy. + * + * ## Example Usage + * ### Basic + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as aws from "@pulumi/aws"; + * + * const exampleSecret = new aws.secretsmanager.Secret("exampleSecret", {}); + * const exampleSecretPolicy = new aws.secretsmanager.SecretPolicy("exampleSecretPolicy", { + * secretArn: exampleSecret.arn, + * policy: `{ + * "Version": "2012-10-17", + * "Statement": [ + * { + * "Sid": "EnableAllPermissions", + * "Effect": "Allow", + * "Principal": { + * "AWS": "*" + * }, + * "Action": "secretsmanager:GetSecretValue", + * "Resource": "*" + * } + * ] + * } + * `, + * }); + * ``` + */ +export class SecretPolicy extends pulumi.CustomResource { + /** + * Get an existing SecretPolicy 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 state Any extra arguments used during the lookup. + * @param opts Optional settings to control the behavior of the CustomResource. + */ + public static get(name: string, id: pulumi.Input, state?: SecretPolicyState, opts?: pulumi.CustomResourceOptions): SecretPolicy { + return new SecretPolicy(name, state, { ...opts, id: id }); + } + + /** @internal */ + public static readonly __pulumiType = 'aws:secretsmanager/secretPolicy:SecretPolicy'; + + /** + * Returns true if the given object is an instance of SecretPolicy. 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 SecretPolicy { + if (obj === undefined || obj === null) { + return false; + } + return obj['__pulumiType'] === SecretPolicy.__pulumiType; + } + + /** + * Makes an optional API call to Zelkova to validate the Resource Policy to prevent broad access to your secret. + */ + public readonly blockPublicPolicy!: pulumi.Output; + public readonly policy!: pulumi.Output; + /** + * Secret ARN. + */ + public readonly secretArn!: pulumi.Output; + + /** + * Create a SecretPolicy 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: SecretPolicyArgs, opts?: pulumi.CustomResourceOptions) + constructor(name: string, argsOrState?: SecretPolicyArgs | SecretPolicyState, opts?: pulumi.CustomResourceOptions) { + let inputs: pulumi.Inputs = {}; + if (opts && opts.id) { + const state = argsOrState as SecretPolicyState | undefined; + inputs["blockPublicPolicy"] = state ? state.blockPublicPolicy : undefined; + inputs["policy"] = state ? state.policy : undefined; + inputs["secretArn"] = state ? state.secretArn : undefined; + } else { + const args = argsOrState as SecretPolicyArgs | undefined; + if (!args || args.policy === undefined) { + throw new Error("Missing required property 'policy'"); + } + if (!args || args.secretArn === undefined) { + throw new Error("Missing required property 'secretArn'"); + } + inputs["blockPublicPolicy"] = args ? args.blockPublicPolicy : undefined; + inputs["policy"] = args ? args.policy : undefined; + inputs["secretArn"] = args ? args.secretArn : undefined; + } + if (!opts) { + opts = {} + } + + if (!opts.version) { + opts.version = utilities.getVersion(); + } + super(SecretPolicy.__pulumiType, name, inputs, opts); + } +} + +/** + * Input properties used for looking up and filtering SecretPolicy resources. + */ +export interface SecretPolicyState { + /** + * Makes an optional API call to Zelkova to validate the Resource Policy to prevent broad access to your secret. + */ + readonly blockPublicPolicy?: pulumi.Input; + readonly policy?: pulumi.Input; + /** + * Secret ARN. + */ + readonly secretArn?: pulumi.Input; +} + +/** + * The set of arguments for constructing a SecretPolicy resource. + */ +export interface SecretPolicyArgs { + /** + * Makes an optional API call to Zelkova to validate the Resource Policy to prevent broad access to your secret. + */ + readonly blockPublicPolicy?: pulumi.Input; + readonly policy: pulumi.Input; + /** + * Secret ARN. + */ + readonly secretArn: pulumi.Input; +} diff --git a/sdk/nodejs/tsconfig.json b/sdk/nodejs/tsconfig.json index 043d413a22d..650f186b24a 100644 --- a/sdk/nodejs/tsconfig.json +++ b/sdk/nodejs/tsconfig.json @@ -840,6 +840,7 @@ "resourcegroups/index.ts", "route53/delegationSet.ts", "route53/getDelegationSet.ts", + "route53/getResolverEndpoint.ts", "route53/getResolverRule.ts", "route53/getResolverRules.ts", "route53/getZone.ts", @@ -883,6 +884,7 @@ "sagemaker/codeRepository.ts", "sagemaker/endpoint.ts", "sagemaker/endpointConfiguration.ts", + "sagemaker/getPrebuiltEcrImage.ts", "sagemaker/index.ts", "sagemaker/model.ts", "sagemaker/notebookInstance.ts", @@ -892,6 +894,7 @@ "secretsmanager/getSecretVersion.ts", "secretsmanager/index.ts", "secretsmanager/secret.ts", + "secretsmanager/secretPolicy.ts", "secretsmanager/secretRotation.ts", "secretsmanager/secretVersion.ts", "securityhub/account.ts", @@ -1055,6 +1058,7 @@ "workspaces/getBundle.ts", "workspaces/getDirectory.ts", "workspaces/getImage.ts", + "workspaces/getWorkspace.ts", "workspaces/index.ts", "workspaces/ipGroup.ts", "workspaces/workspace.ts", diff --git a/sdk/nodejs/types/input.ts b/sdk/nodejs/types/input.ts index e9ffc33b09e..cf82268ddeb 100644 --- a/sdk/nodejs/types/input.ts +++ b/sdk/nodejs/types/input.ts @@ -123,6 +123,7 @@ export interface ProviderEndpoint { codecommit?: pulumi.Input; codedeploy?: pulumi.Input; codepipeline?: pulumi.Input; + codestarconnections?: pulumi.Input; cognitoidentity?: pulumi.Input; cognitoidp?: pulumi.Input; configservice?: pulumi.Input; @@ -289,55 +290,55 @@ export namespace acmpca { export interface CertificateAuthorityCertificateAuthorityConfigurationSubject { /** - * Fully qualified domain name (FQDN) associated with the certificate subject. + * Fully qualified domain name (FQDN) associated with the certificate subject. Must be less than or equal to 64 characters in length. */ commonName?: pulumi.Input; /** - * Two digit code that specifies the country in which the certificate subject located. + * Two digit code that specifies the country in which the certificate subject located. Must be less than or equal to 2 characters in length. */ country?: pulumi.Input; /** - * Disambiguating information for the certificate subject. + * Disambiguating information for the certificate subject. Must be less than or equal to 64 characters in length. */ distinguishedNameQualifier?: pulumi.Input; /** - * Typically a qualifier appended to the name of an individual. Examples include Jr. for junior, Sr. for senior, and III for third. + * Typically a qualifier appended to the name of an individual. Examples include Jr. for junior, Sr. for senior, and III for third. Must be less than or equal to 3 characters in length. */ generationQualifier?: pulumi.Input; /** - * First name. + * First name. Must be less than or equal to 16 characters in length. */ givenName?: pulumi.Input; /** - * Concatenation that typically contains the first letter of the `givenName`, the first letter of the middle name if one exists, and the first letter of the `surname`. + * Concatenation that typically contains the first letter of the `givenName`, the first letter of the middle name if one exists, and the first letter of the `surname`. Must be less than or equal to 5 characters in length. */ initials?: pulumi.Input; /** - * The locality (such as a city or town) in which the certificate subject is located. + * The locality (such as a city or town) in which the certificate subject is located. Must be less than or equal to 128 characters in length. */ locality?: pulumi.Input; /** - * Legal name of the organization with which the certificate subject is affiliated. + * Legal name of the organization with which the certificate subject is affiliated. Must be less than or equal to 64 characters in length. */ organization?: pulumi.Input; /** - * A subdivision or unit of the organization (such as sales or finance) with which the certificate subject is affiliated. + * A subdivision or unit of the organization (such as sales or finance) with which the certificate subject is affiliated. Must be less than or equal to 64 characters in length. */ organizationalUnit?: pulumi.Input; /** - * Typically a shortened version of a longer `givenName`. For example, Jonathan is often shortened to John. Elizabeth is often shortened to Beth, Liz, or Eliza. + * Typically a shortened version of a longer `givenName`. For example, Jonathan is often shortened to John. Elizabeth is often shortened to Beth, Liz, or Eliza. Must be less than or equal to 128 characters in length. */ pseudonym?: pulumi.Input; /** - * State in which the subject of the certificate is located. + * State in which the subject of the certificate is located. Must be less than or equal to 128 characters in length. */ state?: pulumi.Input; /** - * Family name. In the US and the UK for example, the surname of an individual is ordered last. In Asian cultures the surname is typically ordered first. + * Family name. In the US and the UK for example, the surname of an individual is ordered last. In Asian cultures the surname is typically ordered first. Must be less than or equal to 40 characters in length. */ surname?: pulumi.Input; /** - * A title such as Mr. or Ms. which is pre-pended to the name to refer formally to the certificate subject. + * A title such as Mr. or Ms. which is pre-pended to the name to refer formally to the certificate subject. Must be less than or equal to 64 characters in length. */ title?: pulumi.Input; } @@ -351,7 +352,7 @@ export namespace acmpca { export interface CertificateAuthorityRevocationConfigurationCrlConfiguration { /** - * Name inserted into the certificate CRL Distribution Points extension that enables the use of an alias for the CRL distribution point. Use this value if you don't want the name of your S3 bucket to be public. + * Name inserted into the certificate CRL Distribution Points extension that enables the use of an alias for the CRL distribution point. Use this value if you don't want the name of your S3 bucket to be public. Must be less than or equal to 253 characters in length. */ customCname?: pulumi.Input; /** @@ -363,7 +364,7 @@ export namespace acmpca { */ expirationInDays: pulumi.Input; /** - * Name of the S3 bucket that contains the CRL. If you do not provide a value for the `customCname` argument, the name of your S3 bucket is placed into the CRL Distribution Points extension of the issued certificate. You must specify a bucket policy that allows ACM PCA to write the CRL to your bucket. + * Name of the S3 bucket that contains the CRL. If you do not provide a value for the `customCname` argument, the name of your S3 bucket is placed into the CRL Distribution Points extension of the issued certificate. You must specify a bucket policy that allows ACM PCA to write the CRL to your bucket. Must be less than or equal to 255 characters in length. */ s3BucketName?: pulumi.Input; } @@ -4900,7 +4901,7 @@ export namespace cloudwatch { */ group?: pulumi.Input; /** - * Specifies the launch type on which your task is running. The launch type that you specify here must match one of the launch type (compatibilities) of the target task. Valid values are EC2 or FARGATE. + * Specifies the launch type on which your task is running. The launch type that you specify here must match one of the launch type (compatibilities) of the target task. Valid values are `EC2` or `FARGATE`. */ launchType?: pulumi.Input; /** @@ -4944,9 +4945,6 @@ export namespace cloudwatch { * * The keys can't start with "AWS". */ inputPaths?: pulumi.Input<{[key: string]: pulumi.Input}>; - /** - * Structure containing the template body. - */ inputTemplate: pulumi.Input; } @@ -11510,6 +11508,21 @@ export namespace glue { path: pulumi.Input; } + export interface CrawlerMongodbTarget { + /** + * The name of the connection to use to connect to the Amazon DocumentDB or MongoDB target. + */ + connectionName: pulumi.Input; + /** + * The path of the Amazon DocumentDB or MongoDB target (database/collection). + */ + path: pulumi.Input; + /** + * Indicates whether to scan all the records, or to sample rows from the table. Scanning all the records can take a long time when the table is not a high throughput table. Default value is `true`. + */ + scanAll?: pulumi.Input; + } + export interface CrawlerS3Target { /** * The name of the connection to use to connect to the JDBC target. @@ -11869,12 +11882,27 @@ export namespace glue { * The name of a job to be executed. Conflicts with `crawlerName`. */ jobName?: pulumi.Input; + /** + * Specifies configuration properties of a job run notification. see Notification Property details below. + */ + notificationProperty?: pulumi.Input; + /** + * The name of the Security Configuration structure to be used with this action. + */ + securityConfiguration?: pulumi.Input; /** * The job run timeout in minutes. It overrides the timeout value of the job. */ timeout?: pulumi.Input; } + export interface TriggerActionNotificationProperty { + /** + * After a job run starts, the number of minutes to wait before sending a job run delay notification. + */ + notifyDelayAfter?: pulumi.Input; + } + export interface TriggerPredicate { /** * A list of the conditions that determine when the trigger will fire. Defined below. @@ -12703,7 +12731,7 @@ export namespace kinesis { /** * The Count of streams. */ - count: pulumi.Input; + count?: pulumi.Input; } export interface AnalyticsApplicationInputsProcessingConfiguration { @@ -14940,7 +14968,7 @@ export namespace lex { export interface BotAliasConversationLogs { /** - * The Amazon Resource Name (ARN) of the IAM role used to write your logs to CloudWatch Logs or an S3 bucket. + * The Amazon Resource Name (ARN) of the IAM role used to write your logs to CloudWatch Logs or an S3 bucket. Must be between 20 and 2048 characters in length. */ iamRoleArn: pulumi.Input; /** @@ -14955,7 +14983,7 @@ export namespace lex { */ destination: pulumi.Input; /** - * The Amazon Resource Name (ARN) of the key used to encrypt audio logs in an S3 bucket. This can only be specified when `destination` is set to `S3`. + * The Amazon Resource Name (ARN) of the key used to encrypt audio logs in an S3 bucket. This can only be specified when `destination` is set to `S3`. Must be between 20 and 2048 characters in length. */ kmsKeyArn?: pulumi.Input; /** @@ -14963,7 +14991,7 @@ export namespace lex { */ logType: pulumi.Input; /** - * The Amazon Resource Name (ARN) of the CloudWatch Logs log group or S3 bucket where the logs are delivered. + * The Amazon Resource Name (ARN) of the CloudWatch Logs log group or S3 bucket where the logs are delivered. Must be less than or equal to 2048 characters in length. */ resourceArn: pulumi.Input; /** @@ -15009,11 +15037,11 @@ export namespace lex { export interface BotIntent { /** - * The name of the intent. + * The name of the intent. Must be less than or equal to 100 characters in length. */ intentName: pulumi.Input; /** - * The version of the intent. + * The version of the intent. Must be less than or equal to 64 characters in length. */ intentVersion: pulumi.Input; } @@ -15022,20 +15050,20 @@ export namespace lex { /** * A set of messages, each of which provides a message string and its type. * You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - * Attributes are documented under message. + * Attributes are documented under message. Must contain between 1 and 15 messages. */ messages: pulumi.Input[]>; /** * The response card. Amazon Lex will substitute session attributes and * slot values into the response card. For more information, see - * [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + * [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. */ responseCard?: pulumi.Input; } export interface IntentConclusionStatementMessage { /** - * The text of the message. + * The text of the message. Must be less than or equal to 1000 characters in length. */ content: pulumi.Input; /** @@ -15044,33 +15072,33 @@ export namespace lex { contentType: pulumi.Input; /** * Identifies the message group that the message belongs to. When a group - * is assigned to a message, Amazon Lex returns one message from each group in the response. + * is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). */ groupNumber?: pulumi.Input; } export interface IntentConfirmationPrompt { /** - * The number of times to prompt the user for information. + * The number of times to prompt the user for information. Must be a number between 1 and 5 (inclusive). */ maxAttempts: pulumi.Input; /** * A set of messages, each of which provides a message string and its type. * You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - * Attributes are documented under message. + * Attributes are documented under message. Must contain between 1 and 15 messages. */ messages: pulumi.Input[]>; /** * The response card. Amazon Lex will substitute session attributes and * slot values into the response card. For more information, see - * [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + * [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. */ responseCard?: pulumi.Input; } export interface IntentConfirmationPromptMessage { /** - * The text of the message. + * The text of the message. Must be less than or equal to 1000 characters in length. */ content: pulumi.Input; /** @@ -15079,7 +15107,7 @@ export namespace lex { contentType: pulumi.Input; /** * Identifies the message group that the message belongs to. When a group - * is assigned to a message, Amazon Lex returns one message from each group in the response. + * is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). */ groupNumber?: pulumi.Input; } @@ -15088,7 +15116,7 @@ export namespace lex { /** * The version of the request-response that you want Amazon Lex to use * to invoke your Lambda function. For more information, see - * [Using Lambda Functions](https://docs.aws.amazon.com/lex/latest/dg/using-lambda.html). + * [Using Lambda Functions](https://docs.aws.amazon.com/lex/latest/dg/using-lambda.html). Must be less than or equal to 5 characters in length. */ messageVersion: pulumi.Input; /** @@ -15112,26 +15140,26 @@ export namespace lex { export interface IntentFollowUpPromptPrompt { /** - * The number of times to prompt the user for information. + * The number of times to prompt the user for information. Must be a number between 1 and 5 (inclusive). */ maxAttempts: pulumi.Input; /** * A set of messages, each of which provides a message string and its type. * You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - * Attributes are documented under message. + * Attributes are documented under message. Must contain between 1 and 15 messages. */ messages: pulumi.Input[]>; /** * The response card. Amazon Lex will substitute session attributes and * slot values into the response card. For more information, see - * [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + * [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. */ responseCard?: pulumi.Input; } export interface IntentFollowUpPromptPromptMessage { /** - * The text of the message. + * The text of the message. Must be less than or equal to 1000 characters in length. */ content: pulumi.Input; /** @@ -15140,7 +15168,7 @@ export namespace lex { contentType: pulumi.Input; /** * Identifies the message group that the message belongs to. When a group - * is assigned to a message, Amazon Lex returns one message from each group in the response. + * is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). */ groupNumber?: pulumi.Input; } @@ -15149,20 +15177,20 @@ export namespace lex { /** * A set of messages, each of which provides a message string and its type. * You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - * Attributes are documented under message. + * Attributes are documented under message. Must contain between 1 and 15 messages. */ messages: pulumi.Input[]>; /** * The response card. Amazon Lex will substitute session attributes and * slot values into the response card. For more information, see - * [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + * [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. */ responseCard?: pulumi.Input; } export interface IntentFollowUpPromptRejectionStatementMessage { /** - * The text of the message. + * The text of the message. Must be less than or equal to 1000 characters in length. */ content: pulumi.Input; /** @@ -15171,7 +15199,7 @@ export namespace lex { contentType: pulumi.Input; /** * Identifies the message group that the message belongs to. When a group - * is assigned to a message, Amazon Lex returns one message from each group in the response. + * is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). */ groupNumber?: pulumi.Input; } @@ -15193,7 +15221,7 @@ export namespace lex { /** * The version of the request-response that you want Amazon Lex to use * to invoke your Lambda function. For more information, see - * [Using Lambda Functions](https://docs.aws.amazon.com/lex/latest/dg/using-lambda.html). + * [Using Lambda Functions](https://docs.aws.amazon.com/lex/latest/dg/using-lambda.html). Must be less than or equal to 5 characters in length. */ messageVersion: pulumi.Input; /** @@ -15206,20 +15234,20 @@ export namespace lex { /** * A set of messages, each of which provides a message string and its type. * You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - * Attributes are documented under message. + * Attributes are documented under message. Must contain between 1 and 15 messages. */ messages: pulumi.Input[]>; /** * The response card. Amazon Lex will substitute session attributes and * slot values into the response card. For more information, see - * [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + * [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. */ responseCard?: pulumi.Input; } export interface IntentRejectionStatementMessage { /** - * The text of the message. + * The text of the message. Must be less than or equal to 1000 characters in length. */ content: pulumi.Input; /** @@ -15228,37 +15256,37 @@ export namespace lex { contentType: pulumi.Input; /** * Identifies the message group that the message belongs to. When a group - * is assigned to a message, Amazon Lex returns one message from each group in the response. + * is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). */ groupNumber?: pulumi.Input; } export interface IntentSlot { /** - * A description of the bot. + * A description of the bot. Must be less than or equal to 200 characters in length. */ description?: pulumi.Input; /** - * The name of the intent slot that you want to create. The name is case sensitive. + * The name of the intent slot that you want to create. The name is case sensitive. Must be less than or equal to 100 characters in length. */ name: pulumi.Input; /** * Directs Lex the order in which to elicit this slot value from the user. * For example, if the intent has two slots with priorities 1 and 2, AWS Lex first elicits a value for * the slot with priority 1. If multiple slots share the same priority, the order in which Lex elicits - * values is arbitrary. + * values is arbitrary. Must be between 1 and 100. */ priority?: pulumi.Input; /** * The response card. Amazon Lex will substitute session attributes and * slot values into the response card. For more information, see - * [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + * [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. */ responseCard?: pulumi.Input; /** * If you know a specific pattern with which users might respond to * an Amazon Lex request for a slot value, you can provide those utterances to improve accuracy. This - * is optional. In most cases, Amazon Lex is capable of understanding user utterances. + * is optional. In most cases, Amazon Lex is capable of understanding user utterances. Must have between 1 and 10 items in the list, and each item must be less than or equal to 200 characters in length. */ sampleUtterances?: pulumi.Input[]>; /** @@ -15267,11 +15295,11 @@ export namespace lex { slotConstraint: pulumi.Input; /** * The type of the slot, either a custom slot type that you defined or one of - * the built-in slot types. + * the built-in slot types. Must be less than or equal to 100 characters in length. */ slotType: pulumi.Input; /** - * The version of the slot type. + * The version of the slot type. Must be less than or equal to 64 characters in length. */ slotTypeVersion?: pulumi.Input; /** @@ -15283,26 +15311,26 @@ export namespace lex { export interface IntentSlotValueElicitationPrompt { /** - * The number of times to prompt the user for information. + * The number of times to prompt the user for information. Must be a number between 1 and 5 (inclusive). */ maxAttempts: pulumi.Input; /** * A set of messages, each of which provides a message string and its type. * You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - * Attributes are documented under message. + * Attributes are documented under message. Must contain between 1 and 15 messages. */ messages: pulumi.Input[]>; /** * The response card. Amazon Lex will substitute session attributes and * slot values into the response card. For more information, see - * [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + * [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. */ responseCard?: pulumi.Input; } export interface IntentSlotValueElicitationPromptMessage { /** - * The text of the message. + * The text of the message. Must be less than or equal to 1000 characters in length. */ content: pulumi.Input; /** @@ -15311,18 +15339,18 @@ export namespace lex { contentType: pulumi.Input; /** * Identifies the message group that the message belongs to. When a group - * is assigned to a message, Amazon Lex returns one message from each group in the response. + * is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). */ groupNumber?: pulumi.Input; } export interface SlotTypeEnumerationValue { /** - * Additional values related to the slot type value. + * Additional values related to the slot type value. Each item must be less than or equal to 140 characters in length. */ synonyms?: pulumi.Input[]>; /** - * The value of the slot type. + * The value of the slot type. Must be less than or equal to 140 characters in length. */ value: pulumi.Input; } @@ -16498,6 +16526,11 @@ export namespace resourcegroups { } export namespace route53 { + export interface GetResolverEndpointFilter { + name: string; + values: string[]; + } + export interface RecordAlias { /** * Set to `true` if you want Route 53 to determine whether to respond to DNS queries using this resource record set by checking the health of the resource record set. Some resources have special requirements, see [related part of documentation](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/resource-record-sets-values.html#rrsets-values-alias-evaluate-target-health). @@ -16728,7 +16761,7 @@ export namespace s3 { */ expiration?: pulumi.Input; /** - * Unique identifier for the rule. + * Unique identifier for the rule. Must be less than or equal to 255 characters in length. */ id?: pulumi.Input; /** @@ -16953,11 +16986,11 @@ export namespace s3 { */ filter?: pulumi.Input; /** - * Unique identifier for the rule. + * Unique identifier for the rule. Must be less than or equal to 255 characters in length. */ id?: pulumi.Input; /** - * Object keyname prefix identifying one or more objects to which the rule applies. + * Object keyname prefix identifying one or more objects to which the rule applies. Must be less than or equal to 1024 characters in length. */ prefix?: pulumi.Input; /** @@ -17007,7 +17040,7 @@ export namespace s3 { export interface BucketReplicationConfigurationRuleFilter { /** - * Object keyname prefix that identifies subset of objects to which the rule applies. + * Object keyname prefix that identifies subset of objects to which the rule applies. Must be less than or equal to 1024 characters in length. */ prefix?: pulumi.Input; /** @@ -17228,6 +17261,51 @@ export namespace sagemaker { secretArn?: pulumi.Input; } + export interface EndpointConfigurationDataCaptureConfig { + /** + * The content type headers to capture. Fields are documented below. + */ + captureContentTypeHeader?: pulumi.Input; + /** + * Specifies what data to capture. Fields are documented below. + */ + captureOptions: pulumi.Input[]>; + /** + * The URL for S3 location where the captured data is stored. + */ + destinationS3Uri: pulumi.Input; + /** + * Flag to enable data capture. Defaults to `false`. + */ + enableCapture?: pulumi.Input; + /** + * Portion of data to capture. Should be between 0 and 100. + */ + initialSamplingPercentage: pulumi.Input; + /** + * Amazon Resource Name (ARN) of a AWS Key Management Service key that Amazon SageMaker uses to encrypt the captured data on Amazon S3. + */ + kmsKeyId?: pulumi.Input; + } + + export interface EndpointConfigurationDataCaptureConfigCaptureContentTypeHeader { + /** + * The CSV content type headers to capture. + */ + csvContentTypes?: pulumi.Input[]>; + /** + * The JSON content type headers to capture. + */ + jsonContentTypes?: pulumi.Input[]>; + } + + export interface EndpointConfigurationDataCaptureConfigCaptureOption { + /** + * Specifies the data to be captured. Should be one of `Input` or `Output`. + */ + captureMode: pulumi.Input; + } + export interface EndpointConfigurationProductionVariant { /** * The size of the Elastic Inference (EI) instance to use for the production variant. @@ -17269,6 +17347,10 @@ export namespace sagemaker { * The registry path where the inference code image is stored in Amazon ECR. */ image: pulumi.Input; + /** + * Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). For more information see [Using a Private Docker Registry for Real-Time Inference Containers](https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms-containers-inference-private.html). see Image Config. + */ + imageConfig?: pulumi.Input; /** * The container hosts value `SingleModel/MultiModel`. The default value is `SingleModel`. */ @@ -17279,6 +17361,13 @@ export namespace sagemaker { modelDataUrl?: pulumi.Input; } + export interface ModelContainerImageConfig { + /** + * Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). Allowed values are: `Platform` and `Vpc`. + */ + repositoryAccessMode: pulumi.Input; + } + export interface ModelPrimaryContainer { /** * The DNS host name for the container. @@ -17293,6 +17382,10 @@ export namespace sagemaker { * The registry path where the inference code image is stored in Amazon ECR. */ image: pulumi.Input; + /** + * Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). For more information see [Using a Private Docker Registry for Real-Time Inference Containers](https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms-containers-inference-private.html). see Image Config. + */ + imageConfig?: pulumi.Input; /** * The container hosts value `SingleModel/MultiModel`. The default value is `SingleModel`. */ @@ -17303,6 +17396,13 @@ export namespace sagemaker { modelDataUrl?: pulumi.Input; } + export interface ModelPrimaryContainerImageConfig { + /** + * Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). Allowed values are: `Platform` and `Vpc`. + */ + repositoryAccessMode: pulumi.Input; + } + export interface ModelVpcConfig { securityGroupIds: pulumi.Input[]>; subnets: pulumi.Input[]>; diff --git a/sdk/nodejs/types/output.ts b/sdk/nodejs/types/output.ts index f7eb72d42da..0dd88cfc802 100644 --- a/sdk/nodejs/types/output.ts +++ b/sdk/nodejs/types/output.ts @@ -135,6 +135,7 @@ export interface ProviderEndpoint { codecommit?: string; codedeploy?: string; codepipeline?: string; + codestarconnections?: string; cognitoidentity?: string; cognitoidp?: string; configservice?: string; @@ -301,55 +302,55 @@ export namespace acmpca { export interface CertificateAuthorityCertificateAuthorityConfigurationSubject { /** - * Fully qualified domain name (FQDN) associated with the certificate subject. + * Fully qualified domain name (FQDN) associated with the certificate subject. Must be less than or equal to 64 characters in length. */ commonName?: string; /** - * Two digit code that specifies the country in which the certificate subject located. + * Two digit code that specifies the country in which the certificate subject located. Must be less than or equal to 2 characters in length. */ country?: string; /** - * Disambiguating information for the certificate subject. + * Disambiguating information for the certificate subject. Must be less than or equal to 64 characters in length. */ distinguishedNameQualifier?: string; /** - * Typically a qualifier appended to the name of an individual. Examples include Jr. for junior, Sr. for senior, and III for third. + * Typically a qualifier appended to the name of an individual. Examples include Jr. for junior, Sr. for senior, and III for third. Must be less than or equal to 3 characters in length. */ generationQualifier?: string; /** - * First name. + * First name. Must be less than or equal to 16 characters in length. */ givenName?: string; /** - * Concatenation that typically contains the first letter of the `givenName`, the first letter of the middle name if one exists, and the first letter of the `surname`. + * Concatenation that typically contains the first letter of the `givenName`, the first letter of the middle name if one exists, and the first letter of the `surname`. Must be less than or equal to 5 characters in length. */ initials?: string; /** - * The locality (such as a city or town) in which the certificate subject is located. + * The locality (such as a city or town) in which the certificate subject is located. Must be less than or equal to 128 characters in length. */ locality?: string; /** - * Legal name of the organization with which the certificate subject is affiliated. + * Legal name of the organization with which the certificate subject is affiliated. Must be less than or equal to 64 characters in length. */ organization?: string; /** - * A subdivision or unit of the organization (such as sales or finance) with which the certificate subject is affiliated. + * A subdivision or unit of the organization (such as sales or finance) with which the certificate subject is affiliated. Must be less than or equal to 64 characters in length. */ organizationalUnit?: string; /** - * Typically a shortened version of a longer `givenName`. For example, Jonathan is often shortened to John. Elizabeth is often shortened to Beth, Liz, or Eliza. + * Typically a shortened version of a longer `givenName`. For example, Jonathan is often shortened to John. Elizabeth is often shortened to Beth, Liz, or Eliza. Must be less than or equal to 128 characters in length. */ pseudonym?: string; /** - * State in which the subject of the certificate is located. + * State in which the subject of the certificate is located. Must be less than or equal to 128 characters in length. */ state?: string; /** - * Family name. In the US and the UK for example, the surname of an individual is ordered last. In Asian cultures the surname is typically ordered first. + * Family name. In the US and the UK for example, the surname of an individual is ordered last. In Asian cultures the surname is typically ordered first. Must be less than or equal to 40 characters in length. */ surname?: string; /** - * A title such as Mr. or Ms. which is pre-pended to the name to refer formally to the certificate subject. + * A title such as Mr. or Ms. which is pre-pended to the name to refer formally to the certificate subject. Must be less than or equal to 64 characters in length. */ title?: string; } @@ -363,7 +364,7 @@ export namespace acmpca { export interface CertificateAuthorityRevocationConfigurationCrlConfiguration { /** - * Name inserted into the certificate CRL Distribution Points extension that enables the use of an alias for the CRL distribution point. Use this value if you don't want the name of your S3 bucket to be public. + * Name inserted into the certificate CRL Distribution Points extension that enables the use of an alias for the CRL distribution point. Use this value if you don't want the name of your S3 bucket to be public. Must be less than or equal to 253 characters in length. */ customCname?: string; /** @@ -375,7 +376,7 @@ export namespace acmpca { */ expirationInDays: number; /** - * Name of the S3 bucket that contains the CRL. If you do not provide a value for the `customCname` argument, the name of your S3 bucket is placed into the CRL Distribution Points extension of the issued certificate. You must specify a bucket policy that allows ACM PCA to write the CRL to your bucket. + * Name of the S3 bucket that contains the CRL. If you do not provide a value for the `customCname` argument, the name of your S3 bucket is placed into the CRL Distribution Points extension of the issued certificate. You must specify a bucket policy that allows ACM PCA to write the CRL to your bucket. Must be less than or equal to 255 characters in length. */ s3BucketName?: string; } @@ -5097,7 +5098,7 @@ export namespace cloudwatch { */ group?: string; /** - * Specifies the launch type on which your task is running. The launch type that you specify here must match one of the launch type (compatibilities) of the target task. Valid values are EC2 or FARGATE. + * Specifies the launch type on which your task is running. The launch type that you specify here must match one of the launch type (compatibilities) of the target task. Valid values are `EC2` or `FARGATE`. */ launchType?: string; /** @@ -5141,9 +5142,6 @@ export namespace cloudwatch { * * The keys can't start with "AWS". */ inputPaths?: {[key: string]: string}; - /** - * Structure containing the template body. - */ inputTemplate: string; } @@ -6451,6 +6449,7 @@ export namespace config { codecommit?: string; codedeploy?: string; codepipeline?: string; + codestarconnections?: string; cognitoidentity?: string; cognitoidp?: string; configservice?: string; @@ -12796,6 +12795,21 @@ export namespace glue { path: string; } + export interface CrawlerMongodbTarget { + /** + * The name of the connection to use to connect to the Amazon DocumentDB or MongoDB target. + */ + connectionName: string; + /** + * The path of the Amazon DocumentDB or MongoDB target (database/collection). + */ + path: string; + /** + * Indicates whether to scan all the records, or to sample rows from the table. Scanning all the records can take a long time when the table is not a high throughput table. Default value is `true`. + */ + scanAll?: boolean; + } + export interface CrawlerS3Target { /** * The name of the connection to use to connect to the JDBC target. @@ -13155,12 +13169,27 @@ export namespace glue { * The name of a job to be executed. Conflicts with `crawlerName`. */ jobName?: string; + /** + * Specifies configuration properties of a job run notification. see Notification Property details below. + */ + notificationProperty?: outputs.glue.TriggerActionNotificationProperty; + /** + * The name of the Security Configuration structure to be used with this action. + */ + securityConfiguration?: string; /** * The job run timeout in minutes. It overrides the timeout value of the job. */ timeout?: number; } + export interface TriggerActionNotificationProperty { + /** + * After a job run starts, the number of minutes to wait before sending a job run delay notification. + */ + notifyDelayAfter?: number; + } + export interface TriggerPredicate { /** * A list of the conditions that determine when the trigger will fire. Defined below. @@ -13968,7 +13997,7 @@ export namespace kinesis { * The number of Parallel in-application streams to create. * See Parallelism below for more details. */ - parallelism?: outputs.kinesis.AnalyticsApplicationInputsParallelism; + parallelism: outputs.kinesis.AnalyticsApplicationInputsParallelism; /** * The Processing Configuration to transform records as they are received from the stream. * See Processing Configuration below for more details. @@ -16354,7 +16383,7 @@ export namespace lex { export interface BotAliasConversationLogs { /** - * The Amazon Resource Name (ARN) of the IAM role used to write your logs to CloudWatch Logs or an S3 bucket. + * The Amazon Resource Name (ARN) of the IAM role used to write your logs to CloudWatch Logs or an S3 bucket. Must be between 20 and 2048 characters in length. */ iamRoleArn: string; /** @@ -16369,7 +16398,7 @@ export namespace lex { */ destination: string; /** - * The Amazon Resource Name (ARN) of the key used to encrypt audio logs in an S3 bucket. This can only be specified when `destination` is set to `S3`. + * The Amazon Resource Name (ARN) of the key used to encrypt audio logs in an S3 bucket. This can only be specified when `destination` is set to `S3`. Must be between 20 and 2048 characters in length. */ kmsKeyArn?: string; /** @@ -16377,7 +16406,7 @@ export namespace lex { */ logType: string; /** - * The Amazon Resource Name (ARN) of the CloudWatch Logs log group or S3 bucket where the logs are delivered. + * The Amazon Resource Name (ARN) of the CloudWatch Logs log group or S3 bucket where the logs are delivered. Must be less than or equal to 2048 characters in length. */ resourceArn: string; /** @@ -16423,11 +16452,11 @@ export namespace lex { export interface BotIntent { /** - * The name of the intent. + * The name of the intent. Must be less than or equal to 100 characters in length. */ intentName: string; /** - * The version of the intent. + * The version of the intent. Must be less than or equal to 64 characters in length. */ intentVersion: string; } @@ -16441,20 +16470,20 @@ export namespace lex { /** * A set of messages, each of which provides a message string and its type. * You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - * Attributes are documented under message. + * Attributes are documented under message. Must contain between 1 and 15 messages. */ messages: outputs.lex.IntentConclusionStatementMessage[]; /** * The response card. Amazon Lex will substitute session attributes and * slot values into the response card. For more information, see - * [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + * [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. */ responseCard?: string; } export interface IntentConclusionStatementMessage { /** - * The text of the message. + * The text of the message. Must be less than or equal to 1000 characters in length. */ content: string; /** @@ -16463,33 +16492,33 @@ export namespace lex { contentType: string; /** * Identifies the message group that the message belongs to. When a group - * is assigned to a message, Amazon Lex returns one message from each group in the response. + * is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). */ groupNumber?: number; } export interface IntentConfirmationPrompt { /** - * The number of times to prompt the user for information. + * The number of times to prompt the user for information. Must be a number between 1 and 5 (inclusive). */ maxAttempts: number; /** * A set of messages, each of which provides a message string and its type. * You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - * Attributes are documented under message. + * Attributes are documented under message. Must contain between 1 and 15 messages. */ messages: outputs.lex.IntentConfirmationPromptMessage[]; /** * The response card. Amazon Lex will substitute session attributes and * slot values into the response card. For more information, see - * [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + * [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. */ responseCard?: string; } export interface IntentConfirmationPromptMessage { /** - * The text of the message. + * The text of the message. Must be less than or equal to 1000 characters in length. */ content: string; /** @@ -16498,7 +16527,7 @@ export namespace lex { contentType: string; /** * Identifies the message group that the message belongs to. When a group - * is assigned to a message, Amazon Lex returns one message from each group in the response. + * is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). */ groupNumber?: number; } @@ -16507,7 +16536,7 @@ export namespace lex { /** * The version of the request-response that you want Amazon Lex to use * to invoke your Lambda function. For more information, see - * [Using Lambda Functions](https://docs.aws.amazon.com/lex/latest/dg/using-lambda.html). + * [Using Lambda Functions](https://docs.aws.amazon.com/lex/latest/dg/using-lambda.html). Must be less than or equal to 5 characters in length. */ messageVersion: string; /** @@ -16531,26 +16560,26 @@ export namespace lex { export interface IntentFollowUpPromptPrompt { /** - * The number of times to prompt the user for information. + * The number of times to prompt the user for information. Must be a number between 1 and 5 (inclusive). */ maxAttempts: number; /** * A set of messages, each of which provides a message string and its type. * You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - * Attributes are documented under message. + * Attributes are documented under message. Must contain between 1 and 15 messages. */ messages: outputs.lex.IntentFollowUpPromptPromptMessage[]; /** * The response card. Amazon Lex will substitute session attributes and * slot values into the response card. For more information, see - * [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + * [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. */ responseCard?: string; } export interface IntentFollowUpPromptPromptMessage { /** - * The text of the message. + * The text of the message. Must be less than or equal to 1000 characters in length. */ content: string; /** @@ -16559,7 +16588,7 @@ export namespace lex { contentType: string; /** * Identifies the message group that the message belongs to. When a group - * is assigned to a message, Amazon Lex returns one message from each group in the response. + * is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). */ groupNumber?: number; } @@ -16568,20 +16597,20 @@ export namespace lex { /** * A set of messages, each of which provides a message string and its type. * You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - * Attributes are documented under message. + * Attributes are documented under message. Must contain between 1 and 15 messages. */ messages: outputs.lex.IntentFollowUpPromptRejectionStatementMessage[]; /** * The response card. Amazon Lex will substitute session attributes and * slot values into the response card. For more information, see - * [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + * [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. */ responseCard?: string; } export interface IntentFollowUpPromptRejectionStatementMessage { /** - * The text of the message. + * The text of the message. Must be less than or equal to 1000 characters in length. */ content: string; /** @@ -16590,7 +16619,7 @@ export namespace lex { contentType: string; /** * Identifies the message group that the message belongs to. When a group - * is assigned to a message, Amazon Lex returns one message from each group in the response. + * is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). */ groupNumber?: number; } @@ -16612,7 +16641,7 @@ export namespace lex { /** * The version of the request-response that you want Amazon Lex to use * to invoke your Lambda function. For more information, see - * [Using Lambda Functions](https://docs.aws.amazon.com/lex/latest/dg/using-lambda.html). + * [Using Lambda Functions](https://docs.aws.amazon.com/lex/latest/dg/using-lambda.html). Must be less than or equal to 5 characters in length. */ messageVersion: string; /** @@ -16625,20 +16654,20 @@ export namespace lex { /** * A set of messages, each of which provides a message string and its type. * You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - * Attributes are documented under message. + * Attributes are documented under message. Must contain between 1 and 15 messages. */ messages: outputs.lex.IntentRejectionStatementMessage[]; /** * The response card. Amazon Lex will substitute session attributes and * slot values into the response card. For more information, see - * [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + * [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. */ responseCard?: string; } export interface IntentRejectionStatementMessage { /** - * The text of the message. + * The text of the message. Must be less than or equal to 1000 characters in length. */ content: string; /** @@ -16647,37 +16676,37 @@ export namespace lex { contentType: string; /** * Identifies the message group that the message belongs to. When a group - * is assigned to a message, Amazon Lex returns one message from each group in the response. + * is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). */ groupNumber?: number; } export interface IntentSlot { /** - * A description of the bot. + * A description of the bot. Must be less than or equal to 200 characters in length. */ description?: string; /** - * The name of the intent slot that you want to create. The name is case sensitive. + * The name of the intent slot that you want to create. The name is case sensitive. Must be less than or equal to 100 characters in length. */ name: string; /** * Directs Lex the order in which to elicit this slot value from the user. * For example, if the intent has two slots with priorities 1 and 2, AWS Lex first elicits a value for * the slot with priority 1. If multiple slots share the same priority, the order in which Lex elicits - * values is arbitrary. + * values is arbitrary. Must be between 1 and 100. */ priority?: number; /** * The response card. Amazon Lex will substitute session attributes and * slot values into the response card. For more information, see - * [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + * [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. */ responseCard?: string; /** * If you know a specific pattern with which users might respond to * an Amazon Lex request for a slot value, you can provide those utterances to improve accuracy. This - * is optional. In most cases, Amazon Lex is capable of understanding user utterances. + * is optional. In most cases, Amazon Lex is capable of understanding user utterances. Must have between 1 and 10 items in the list, and each item must be less than or equal to 200 characters in length. */ sampleUtterances?: string[]; /** @@ -16686,11 +16715,11 @@ export namespace lex { slotConstraint: string; /** * The type of the slot, either a custom slot type that you defined or one of - * the built-in slot types. + * the built-in slot types. Must be less than or equal to 100 characters in length. */ slotType: string; /** - * The version of the slot type. + * The version of the slot type. Must be less than or equal to 64 characters in length. */ slotTypeVersion?: string; /** @@ -16702,26 +16731,26 @@ export namespace lex { export interface IntentSlotValueElicitationPrompt { /** - * The number of times to prompt the user for information. + * The number of times to prompt the user for information. Must be a number between 1 and 5 (inclusive). */ maxAttempts: number; /** * A set of messages, each of which provides a message string and its type. * You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - * Attributes are documented under message. + * Attributes are documented under message. Must contain between 1 and 15 messages. */ messages: outputs.lex.IntentSlotValueElicitationPromptMessage[]; /** * The response card. Amazon Lex will substitute session attributes and * slot values into the response card. For more information, see - * [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + * [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. */ responseCard?: string; } export interface IntentSlotValueElicitationPromptMessage { /** - * The text of the message. + * The text of the message. Must be less than or equal to 1000 characters in length. */ content: string; /** @@ -16730,18 +16759,18 @@ export namespace lex { contentType: string; /** * Identifies the message group that the message belongs to. When a group - * is assigned to a message, Amazon Lex returns one message from each group in the response. + * is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). */ groupNumber?: number; } export interface SlotTypeEnumerationValue { /** - * Additional values related to the slot type value. + * Additional values related to the slot type value. Each item must be less than or equal to 140 characters in length. */ synonyms?: string[]; /** - * The value of the slot type. + * The value of the slot type. Must be less than or equal to 140 characters in length. */ value: string; } @@ -18032,6 +18061,11 @@ export namespace resourcegroups { } export namespace route53 { + export interface GetResolverEndpointFilter { + name: string; + values: string[]; + } + export interface RecordAlias { /** * Set to `true` if you want Route 53 to determine whether to respond to DNS queries using this resource record set by checking the health of the resource record set. Some resources have special requirements, see [related part of documentation](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/resource-record-sets-values.html#rrsets-values-alias-evaluate-target-health). @@ -18262,7 +18296,7 @@ export namespace s3 { */ expiration?: outputs.s3.BucketLifecycleRuleExpiration; /** - * Unique identifier for the rule. + * Unique identifier for the rule. Must be less than or equal to 255 characters in length. */ id: string; /** @@ -18487,11 +18521,11 @@ export namespace s3 { */ filter?: outputs.s3.BucketReplicationConfigurationRuleFilter; /** - * Unique identifier for the rule. + * Unique identifier for the rule. Must be less than or equal to 255 characters in length. */ id?: string; /** - * Object keyname prefix identifying one or more objects to which the rule applies. + * Object keyname prefix identifying one or more objects to which the rule applies. Must be less than or equal to 1024 characters in length. */ prefix?: string; /** @@ -18541,7 +18575,7 @@ export namespace s3 { export interface BucketReplicationConfigurationRuleFilter { /** - * Object keyname prefix that identifies subset of objects to which the rule applies. + * Object keyname prefix that identifies subset of objects to which the rule applies. Must be less than or equal to 1024 characters in length. */ prefix?: string; /** @@ -18762,6 +18796,51 @@ export namespace sagemaker { secretArn?: string; } + export interface EndpointConfigurationDataCaptureConfig { + /** + * The content type headers to capture. Fields are documented below. + */ + captureContentTypeHeader?: outputs.sagemaker.EndpointConfigurationDataCaptureConfigCaptureContentTypeHeader; + /** + * Specifies what data to capture. Fields are documented below. + */ + captureOptions: outputs.sagemaker.EndpointConfigurationDataCaptureConfigCaptureOption[]; + /** + * The URL for S3 location where the captured data is stored. + */ + destinationS3Uri: string; + /** + * Flag to enable data capture. Defaults to `false`. + */ + enableCapture?: boolean; + /** + * Portion of data to capture. Should be between 0 and 100. + */ + initialSamplingPercentage: number; + /** + * Amazon Resource Name (ARN) of a AWS Key Management Service key that Amazon SageMaker uses to encrypt the captured data on Amazon S3. + */ + kmsKeyId?: string; + } + + export interface EndpointConfigurationDataCaptureConfigCaptureContentTypeHeader { + /** + * The CSV content type headers to capture. + */ + csvContentTypes?: string[]; + /** + * The JSON content type headers to capture. + */ + jsonContentTypes?: string[]; + } + + export interface EndpointConfigurationDataCaptureConfigCaptureOption { + /** + * Specifies the data to be captured. Should be one of `Input` or `Output`. + */ + captureMode: string; + } + export interface EndpointConfigurationProductionVariant { /** * The size of the Elastic Inference (EI) instance to use for the production variant. @@ -18803,6 +18882,10 @@ export namespace sagemaker { * The registry path where the inference code image is stored in Amazon ECR. */ image: string; + /** + * Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). For more information see [Using a Private Docker Registry for Real-Time Inference Containers](https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms-containers-inference-private.html). see Image Config. + */ + imageConfig?: outputs.sagemaker.ModelContainerImageConfig; /** * The container hosts value `SingleModel/MultiModel`. The default value is `SingleModel`. */ @@ -18813,6 +18896,13 @@ export namespace sagemaker { modelDataUrl?: string; } + export interface ModelContainerImageConfig { + /** + * Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). Allowed values are: `Platform` and `Vpc`. + */ + repositoryAccessMode: string; + } + export interface ModelPrimaryContainer { /** * The DNS host name for the container. @@ -18827,6 +18917,10 @@ export namespace sagemaker { * The registry path where the inference code image is stored in Amazon ECR. */ image: string; + /** + * Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). For more information see [Using a Private Docker Registry for Real-Time Inference Containers](https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms-containers-inference-private.html). see Image Config. + */ + imageConfig?: outputs.sagemaker.ModelPrimaryContainerImageConfig; /** * The container hosts value `SingleModel/MultiModel`. The default value is `SingleModel`. */ @@ -18837,6 +18931,13 @@ export namespace sagemaker { modelDataUrl?: string; } + export interface ModelPrimaryContainerImageConfig { + /** + * Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). Allowed values are: `Platform` and `Vpc`. + */ + repositoryAccessMode: string; + } + export interface ModelVpcConfig { securityGroupIds: string[]; subnets: string[]; @@ -54840,6 +54941,29 @@ export namespace workspaces { userEnabledAsLocalAdministrator?: boolean; } + export interface GetWorkspaceWorkspaceProperty { + /** + * The compute type. For more information, see [Amazon WorkSpaces Bundles](http://aws.amazon.com/workspaces/details/#Amazon_WorkSpaces_Bundles). Valid values are `VALUE`, `STANDARD`, `PERFORMANCE`, `POWER`, `GRAPHICS`, `POWERPRO` and `GRAPHICSPRO`. + */ + computeTypeName: string; + /** + * The size of the root volume. + */ + rootVolumeSizeGib: number; + /** + * The running mode. For more information, see [Manage the WorkSpace Running Mode](https://docs.aws.amazon.com/workspaces/latest/adminguide/running-mode.html). Valid values are `AUTO_STOP` and `ALWAYS_ON`. + */ + runningMode: string; + /** + * The time after a user logs off when WorkSpaces are automatically stopped. Configured in 60-minute intervals. + */ + runningModeAutoStopTimeoutInMinutes: number; + /** + * The size of the user storage. + */ + userVolumeSizeGib: number; + } + export interface IpGroupRule { /** * The description. diff --git a/sdk/nodejs/workspaces/getWorkspace.ts b/sdk/nodejs/workspaces/getWorkspace.ts new file mode 100644 index 00000000000..f5d2b372cc5 --- /dev/null +++ b/sdk/nodejs/workspaces/getWorkspace.ts @@ -0,0 +1,104 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as inputs from "../types/input"; +import * as outputs from "../types/output"; +import * as enums from "../types/enums"; +import * as utilities from "../utilities"; + +/** + * Use this data source to get information about a workspace in [AWS Workspaces](https://docs.aws.amazon.com/workspaces/latest/adminguide/amazon-workspaces.html) Service. + * + * ## Example Usage + * ### Filter By Workspace ID + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as aws from "@pulumi/aws"; + * + * const example = pulumi.output(aws.workspaces.getWorkspace({ + * workspaceId: "ws-cj5xcxsz5", + * }, { async: true })); + * ``` + * ### Filter By Directory ID & User Name + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as aws from "@pulumi/aws"; + * + * const example = pulumi.output(aws.workspaces.getWorkspace({ + * directoryId: "d-9967252f57", + * userName: "Example", + * }, { async: true })); + * ``` + */ +export function getWorkspace(args?: GetWorkspaceArgs, opts?: pulumi.InvokeOptions): Promise { + args = args || {}; + if (!opts) { + opts = {} + } + + if (!opts.version) { + opts.version = utilities.getVersion(); + } + return pulumi.runtime.invoke("aws:workspaces/getWorkspace:getWorkspace", { + "directoryId": args.directoryId, + "tags": args.tags, + "userName": args.userName, + "workspaceId": args.workspaceId, + }, opts); +} + +/** + * A collection of arguments for invoking getWorkspace. + */ +export interface GetWorkspaceArgs { + /** + * The ID of the directory for the WorkSpace. You have to specify `userName` along with `directoryId`. You cannot combine this parameter with `workspaceId`. + */ + readonly directoryId?: string; + /** + * The tags for the WorkSpace. + */ + readonly tags?: {[key: string]: string}; + /** + * The user name of the user for the WorkSpace. This user name must exist in the directory for the WorkSpace. You cannot combine this parameter with `workspaceId`. + */ + readonly userName?: string; + /** + * The ID of the WorkSpace. You cannot combine this parameter with `directoryId`. + */ + readonly workspaceId?: string; +} + +/** + * A collection of values returned by getWorkspace. + */ +export interface GetWorkspaceResult { + readonly bundleId: string; + /** + * The name of the WorkSpace, as seen by the operating system. + */ + readonly computerName: string; + readonly directoryId: string; + /** + * The provider-assigned unique ID for this managed resource. + */ + readonly id: string; + /** + * The IP address of the WorkSpace. + */ + readonly ipAddress: string; + readonly rootVolumeEncryptionEnabled: boolean; + /** + * The operational state of the WorkSpace. + */ + readonly state: string; + readonly tags: {[key: string]: string}; + readonly userName: string; + readonly userVolumeEncryptionEnabled: boolean; + readonly volumeEncryptionKey: string; + readonly workspaceId: string; + readonly workspaceProperties: outputs.workspaces.GetWorkspaceWorkspaceProperty[]; +} diff --git a/sdk/nodejs/workspaces/index.ts b/sdk/nodejs/workspaces/index.ts index 50c57f37486..ffa9367bb47 100644 --- a/sdk/nodejs/workspaces/index.ts +++ b/sdk/nodejs/workspaces/index.ts @@ -6,5 +6,6 @@ export * from "./directory"; export * from "./getBundle"; export * from "./getDirectory"; export * from "./getImage"; +export * from "./getWorkspace"; export * from "./ipGroup"; export * from "./workspace"; diff --git a/sdk/python/pulumi_aws/_inputs.py b/sdk/python/pulumi_aws/_inputs.py index 7e9c6740b4f..e7d93647f94 100644 --- a/sdk/python/pulumi_aws/_inputs.py +++ b/sdk/python/pulumi_aws/_inputs.py @@ -156,6 +156,7 @@ def __init__(__self__, *, codecommit: Optional[pulumi.Input[str]] = None, codedeploy: Optional[pulumi.Input[str]] = None, codepipeline: Optional[pulumi.Input[str]] = None, + codestarconnections: Optional[pulumi.Input[str]] = None, cognitoidentity: Optional[pulumi.Input[str]] = None, cognitoidp: Optional[pulumi.Input[str]] = None, configservice: Optional[pulumi.Input[str]] = None, @@ -330,6 +331,8 @@ def __init__(__self__, *, pulumi.set(__self__, "codedeploy", codedeploy) if codepipeline is not None: pulumi.set(__self__, "codepipeline", codepipeline) + if codestarconnections is not None: + pulumi.set(__self__, "codestarconnections", codestarconnections) if cognitoidentity is not None: pulumi.set(__self__, "cognitoidentity", cognitoidentity) if cognitoidp is not None: @@ -829,6 +832,15 @@ def codepipeline(self) -> Optional[pulumi.Input[str]]: def codepipeline(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "codepipeline", value) + @property + @pulumi.getter + def codestarconnections(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "codestarconnections") + + @codestarconnections.setter + def codestarconnections(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "codestarconnections", value) + @property @pulumi.getter def cognitoidentity(self) -> Optional[pulumi.Input[str]]: diff --git a/sdk/python/pulumi_aws/_tables.py b/sdk/python/pulumi_aws/_tables.py index e73508de310..adb7a6687d8 100644 --- a/sdk/python/pulumi_aws/_tables.py +++ b/sdk/python/pulumi_aws/_tables.py @@ -418,6 +418,7 @@ "dashboard_arn": "dashboardArn", "dashboard_body": "dashboardBody", "dashboard_name": "dashboardName", + "data_capture_config": "dataCaptureConfig", "data_catalog_encryption_settings": "dataCatalogEncryptionSettings", "data_encryption_key_id": "dataEncryptionKeyId", "data_retention_in_hours": "dataRetentionInHours", @@ -1094,6 +1095,7 @@ "mixed_instances_policy": "mixedInstancesPolicy", "model_selection_expression": "modelSelectionExpression", "mongodb_settings": "mongodbSettings", + "mongodb_targets": "mongodbTargets", "monitoring_interval": "monitoringInterval", "monitoring_role_arn": "monitoringRoleArn", "monthly_spend_limit": "monthlySpendLimit", @@ -1113,6 +1115,7 @@ "netbios_name_servers": "netbiosNameServers", "netbios_node_type": "netbiosNodeType", "network_acl_id": "networkAclId", + "network_border_group": "networkBorderGroup", "network_configuration": "networkConfiguration", "network_interface": "networkInterface", "network_interface_id": "networkInterfaceId", @@ -1529,6 +1532,7 @@ "secondary_artifacts": "secondaryArtifacts", "secondary_private_ips": "secondaryPrivateIps", "secondary_sources": "secondarySources", + "secret_arn": "secretArn", "secret_binary": "secretBinary", "secret_id": "secretId", "secret_key": "secretKey", @@ -2340,6 +2344,7 @@ "dashboardArn": "dashboard_arn", "dashboardBody": "dashboard_body", "dashboardName": "dashboard_name", + "dataCaptureConfig": "data_capture_config", "dataCatalogEncryptionSettings": "data_catalog_encryption_settings", "dataEncryptionKeyId": "data_encryption_key_id", "dataRetentionInHours": "data_retention_in_hours", @@ -3016,6 +3021,7 @@ "mixedInstancesPolicy": "mixed_instances_policy", "modelSelectionExpression": "model_selection_expression", "mongodbSettings": "mongodb_settings", + "mongodbTargets": "mongodb_targets", "monitoringInterval": "monitoring_interval", "monitoringRoleArn": "monitoring_role_arn", "monthlySpendLimit": "monthly_spend_limit", @@ -3035,6 +3041,7 @@ "netbiosNameServers": "netbios_name_servers", "netbiosNodeType": "netbios_node_type", "networkAclId": "network_acl_id", + "networkBorderGroup": "network_border_group", "networkConfiguration": "network_configuration", "networkInterface": "network_interface", "networkInterfaceId": "network_interface_id", @@ -3451,6 +3458,7 @@ "secondaryArtifacts": "secondary_artifacts", "secondaryPrivateIps": "secondary_private_ips", "secondarySources": "secondary_sources", + "secretArn": "secret_arn", "secretBinary": "secret_binary", "secretId": "secret_id", "secretKey": "secret_key", diff --git a/sdk/python/pulumi_aws/acmpca/_inputs.py b/sdk/python/pulumi_aws/acmpca/_inputs.py index 0a7f4489698..5fff5339953 100644 --- a/sdk/python/pulumi_aws/acmpca/_inputs.py +++ b/sdk/python/pulumi_aws/acmpca/_inputs.py @@ -86,19 +86,19 @@ def __init__(__self__, *, surname: Optional[pulumi.Input[str]] = None, title: Optional[pulumi.Input[str]] = None): """ - :param pulumi.Input[str] common_name: Fully qualified domain name (FQDN) associated with the certificate subject. - :param pulumi.Input[str] country: Two digit code that specifies the country in which the certificate subject located. - :param pulumi.Input[str] distinguished_name_qualifier: Disambiguating information for the certificate subject. - :param pulumi.Input[str] generation_qualifier: Typically a qualifier appended to the name of an individual. Examples include Jr. for junior, Sr. for senior, and III for third. - :param pulumi.Input[str] given_name: First name. - :param pulumi.Input[str] initials: Concatenation that typically contains the first letter of the `given_name`, the first letter of the middle name if one exists, and the first letter of the `surname`. - :param pulumi.Input[str] locality: The locality (such as a city or town) in which the certificate subject is located. - :param pulumi.Input[str] organization: Legal name of the organization with which the certificate subject is affiliated. - :param pulumi.Input[str] organizational_unit: A subdivision or unit of the organization (such as sales or finance) with which the certificate subject is affiliated. - :param pulumi.Input[str] pseudonym: Typically a shortened version of a longer `given_name`. For example, Jonathan is often shortened to John. Elizabeth is often shortened to Beth, Liz, or Eliza. - :param pulumi.Input[str] state: State in which the subject of the certificate is located. - :param pulumi.Input[str] surname: Family name. In the US and the UK for example, the surname of an individual is ordered last. In Asian cultures the surname is typically ordered first. - :param pulumi.Input[str] title: A title such as Mr. or Ms. which is pre-pended to the name to refer formally to the certificate subject. + :param pulumi.Input[str] common_name: Fully qualified domain name (FQDN) associated with the certificate subject. Must be less than or equal to 64 characters in length. + :param pulumi.Input[str] country: Two digit code that specifies the country in which the certificate subject located. Must be less than or equal to 2 characters in length. + :param pulumi.Input[str] distinguished_name_qualifier: Disambiguating information for the certificate subject. Must be less than or equal to 64 characters in length. + :param pulumi.Input[str] generation_qualifier: Typically a qualifier appended to the name of an individual. Examples include Jr. for junior, Sr. for senior, and III for third. Must be less than or equal to 3 characters in length. + :param pulumi.Input[str] given_name: First name. Must be less than or equal to 16 characters in length. + :param pulumi.Input[str] initials: Concatenation that typically contains the first letter of the `given_name`, the first letter of the middle name if one exists, and the first letter of the `surname`. Must be less than or equal to 5 characters in length. + :param pulumi.Input[str] locality: The locality (such as a city or town) in which the certificate subject is located. Must be less than or equal to 128 characters in length. + :param pulumi.Input[str] organization: Legal name of the organization with which the certificate subject is affiliated. Must be less than or equal to 64 characters in length. + :param pulumi.Input[str] organizational_unit: A subdivision or unit of the organization (such as sales or finance) with which the certificate subject is affiliated. Must be less than or equal to 64 characters in length. + :param pulumi.Input[str] pseudonym: Typically a shortened version of a longer `given_name`. For example, Jonathan is often shortened to John. Elizabeth is often shortened to Beth, Liz, or Eliza. Must be less than or equal to 128 characters in length. + :param pulumi.Input[str] state: State in which the subject of the certificate is located. Must be less than or equal to 128 characters in length. + :param pulumi.Input[str] surname: Family name. In the US and the UK for example, the surname of an individual is ordered last. In Asian cultures the surname is typically ordered first. Must be less than or equal to 40 characters in length. + :param pulumi.Input[str] title: A title such as Mr. or Ms. which is pre-pended to the name to refer formally to the certificate subject. Must be less than or equal to 64 characters in length. """ if common_name is not None: pulumi.set(__self__, "common_name", common_name) @@ -131,7 +131,7 @@ def __init__(__self__, *, @pulumi.getter(name="commonName") def common_name(self) -> Optional[pulumi.Input[str]]: """ - Fully qualified domain name (FQDN) associated with the certificate subject. + Fully qualified domain name (FQDN) associated with the certificate subject. Must be less than or equal to 64 characters in length. """ return pulumi.get(self, "common_name") @@ -143,7 +143,7 @@ def common_name(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def country(self) -> Optional[pulumi.Input[str]]: """ - Two digit code that specifies the country in which the certificate subject located. + Two digit code that specifies the country in which the certificate subject located. Must be less than or equal to 2 characters in length. """ return pulumi.get(self, "country") @@ -155,7 +155,7 @@ def country(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="distinguishedNameQualifier") def distinguished_name_qualifier(self) -> Optional[pulumi.Input[str]]: """ - Disambiguating information for the certificate subject. + Disambiguating information for the certificate subject. Must be less than or equal to 64 characters in length. """ return pulumi.get(self, "distinguished_name_qualifier") @@ -167,7 +167,7 @@ def distinguished_name_qualifier(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="generationQualifier") def generation_qualifier(self) -> Optional[pulumi.Input[str]]: """ - Typically a qualifier appended to the name of an individual. Examples include Jr. for junior, Sr. for senior, and III for third. + Typically a qualifier appended to the name of an individual. Examples include Jr. for junior, Sr. for senior, and III for third. Must be less than or equal to 3 characters in length. """ return pulumi.get(self, "generation_qualifier") @@ -179,7 +179,7 @@ def generation_qualifier(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="givenName") def given_name(self) -> Optional[pulumi.Input[str]]: """ - First name. + First name. Must be less than or equal to 16 characters in length. """ return pulumi.get(self, "given_name") @@ -191,7 +191,7 @@ def given_name(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def initials(self) -> Optional[pulumi.Input[str]]: """ - Concatenation that typically contains the first letter of the `given_name`, the first letter of the middle name if one exists, and the first letter of the `surname`. + Concatenation that typically contains the first letter of the `given_name`, the first letter of the middle name if one exists, and the first letter of the `surname`. Must be less than or equal to 5 characters in length. """ return pulumi.get(self, "initials") @@ -203,7 +203,7 @@ def initials(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def locality(self) -> Optional[pulumi.Input[str]]: """ - The locality (such as a city or town) in which the certificate subject is located. + The locality (such as a city or town) in which the certificate subject is located. Must be less than or equal to 128 characters in length. """ return pulumi.get(self, "locality") @@ -215,7 +215,7 @@ def locality(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def organization(self) -> Optional[pulumi.Input[str]]: """ - Legal name of the organization with which the certificate subject is affiliated. + Legal name of the organization with which the certificate subject is affiliated. Must be less than or equal to 64 characters in length. """ return pulumi.get(self, "organization") @@ -227,7 +227,7 @@ def organization(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="organizationalUnit") def organizational_unit(self) -> Optional[pulumi.Input[str]]: """ - A subdivision or unit of the organization (such as sales or finance) with which the certificate subject is affiliated. + A subdivision or unit of the organization (such as sales or finance) with which the certificate subject is affiliated. Must be less than or equal to 64 characters in length. """ return pulumi.get(self, "organizational_unit") @@ -239,7 +239,7 @@ def organizational_unit(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def pseudonym(self) -> Optional[pulumi.Input[str]]: """ - Typically a shortened version of a longer `given_name`. For example, Jonathan is often shortened to John. Elizabeth is often shortened to Beth, Liz, or Eliza. + Typically a shortened version of a longer `given_name`. For example, Jonathan is often shortened to John. Elizabeth is often shortened to Beth, Liz, or Eliza. Must be less than or equal to 128 characters in length. """ return pulumi.get(self, "pseudonym") @@ -251,7 +251,7 @@ def pseudonym(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def state(self) -> Optional[pulumi.Input[str]]: """ - State in which the subject of the certificate is located. + State in which the subject of the certificate is located. Must be less than or equal to 128 characters in length. """ return pulumi.get(self, "state") @@ -263,7 +263,7 @@ def state(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def surname(self) -> Optional[pulumi.Input[str]]: """ - Family name. In the US and the UK for example, the surname of an individual is ordered last. In Asian cultures the surname is typically ordered first. + Family name. In the US and the UK for example, the surname of an individual is ordered last. In Asian cultures the surname is typically ordered first. Must be less than or equal to 40 characters in length. """ return pulumi.get(self, "surname") @@ -275,7 +275,7 @@ def surname(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def title(self) -> Optional[pulumi.Input[str]]: """ - A title such as Mr. or Ms. which is pre-pended to the name to refer formally to the certificate subject. + A title such as Mr. or Ms. which is pre-pended to the name to refer formally to the certificate subject. Must be less than or equal to 64 characters in length. """ return pulumi.get(self, "title") @@ -316,9 +316,9 @@ def __init__(__self__, *, s3_bucket_name: Optional[pulumi.Input[str]] = None): """ :param pulumi.Input[int] expiration_in_days: Number of days until a certificate expires. Must be between 1 and 5000. - :param pulumi.Input[str] custom_cname: Name inserted into the certificate CRL Distribution Points extension that enables the use of an alias for the CRL distribution point. Use this value if you don't want the name of your S3 bucket to be public. + :param pulumi.Input[str] custom_cname: Name inserted into the certificate CRL Distribution Points extension that enables the use of an alias for the CRL distribution point. Use this value if you don't want the name of your S3 bucket to be public. Must be less than or equal to 253 characters in length. :param pulumi.Input[bool] enabled: Boolean value that specifies whether certificate revocation lists (CRLs) are enabled. Defaults to `false`. - :param pulumi.Input[str] s3_bucket_name: Name of the S3 bucket that contains the CRL. If you do not provide a value for the `custom_cname` argument, the name of your S3 bucket is placed into the CRL Distribution Points extension of the issued certificate. You must specify a bucket policy that allows ACM PCA to write the CRL to your bucket. + :param pulumi.Input[str] s3_bucket_name: Name of the S3 bucket that contains the CRL. If you do not provide a value for the `custom_cname` argument, the name of your S3 bucket is placed into the CRL Distribution Points extension of the issued certificate. You must specify a bucket policy that allows ACM PCA to write the CRL to your bucket. Must be less than or equal to 255 characters in length. """ pulumi.set(__self__, "expiration_in_days", expiration_in_days) if custom_cname is not None: @@ -344,7 +344,7 @@ def expiration_in_days(self, value: pulumi.Input[int]): @pulumi.getter(name="customCname") def custom_cname(self) -> Optional[pulumi.Input[str]]: """ - Name inserted into the certificate CRL Distribution Points extension that enables the use of an alias for the CRL distribution point. Use this value if you don't want the name of your S3 bucket to be public. + Name inserted into the certificate CRL Distribution Points extension that enables the use of an alias for the CRL distribution point. Use this value if you don't want the name of your S3 bucket to be public. Must be less than or equal to 253 characters in length. """ return pulumi.get(self, "custom_cname") @@ -368,7 +368,7 @@ def enabled(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter(name="s3BucketName") def s3_bucket_name(self) -> Optional[pulumi.Input[str]]: """ - Name of the S3 bucket that contains the CRL. If you do not provide a value for the `custom_cname` argument, the name of your S3 bucket is placed into the CRL Distribution Points extension of the issued certificate. You must specify a bucket policy that allows ACM PCA to write the CRL to your bucket. + Name of the S3 bucket that contains the CRL. If you do not provide a value for the `custom_cname` argument, the name of your S3 bucket is placed into the CRL Distribution Points extension of the issued certificate. You must specify a bucket policy that allows ACM PCA to write the CRL to your bucket. Must be less than or equal to 255 characters in length. """ return pulumi.get(self, "s3_bucket_name") diff --git a/sdk/python/pulumi_aws/acmpca/outputs.py b/sdk/python/pulumi_aws/acmpca/outputs.py index 95920e25738..fdfa122bf7a 100644 --- a/sdk/python/pulumi_aws/acmpca/outputs.py +++ b/sdk/python/pulumi_aws/acmpca/outputs.py @@ -78,19 +78,19 @@ def __init__(__self__, *, surname: Optional[str] = None, title: Optional[str] = None): """ - :param str common_name: Fully qualified domain name (FQDN) associated with the certificate subject. - :param str country: Two digit code that specifies the country in which the certificate subject located. - :param str distinguished_name_qualifier: Disambiguating information for the certificate subject. - :param str generation_qualifier: Typically a qualifier appended to the name of an individual. Examples include Jr. for junior, Sr. for senior, and III for third. - :param str given_name: First name. - :param str initials: Concatenation that typically contains the first letter of the `given_name`, the first letter of the middle name if one exists, and the first letter of the `surname`. - :param str locality: The locality (such as a city or town) in which the certificate subject is located. - :param str organization: Legal name of the organization with which the certificate subject is affiliated. - :param str organizational_unit: A subdivision or unit of the organization (such as sales or finance) with which the certificate subject is affiliated. - :param str pseudonym: Typically a shortened version of a longer `given_name`. For example, Jonathan is often shortened to John. Elizabeth is often shortened to Beth, Liz, or Eliza. - :param str state: State in which the subject of the certificate is located. - :param str surname: Family name. In the US and the UK for example, the surname of an individual is ordered last. In Asian cultures the surname is typically ordered first. - :param str title: A title such as Mr. or Ms. which is pre-pended to the name to refer formally to the certificate subject. + :param str common_name: Fully qualified domain name (FQDN) associated with the certificate subject. Must be less than or equal to 64 characters in length. + :param str country: Two digit code that specifies the country in which the certificate subject located. Must be less than or equal to 2 characters in length. + :param str distinguished_name_qualifier: Disambiguating information for the certificate subject. Must be less than or equal to 64 characters in length. + :param str generation_qualifier: Typically a qualifier appended to the name of an individual. Examples include Jr. for junior, Sr. for senior, and III for third. Must be less than or equal to 3 characters in length. + :param str given_name: First name. Must be less than or equal to 16 characters in length. + :param str initials: Concatenation that typically contains the first letter of the `given_name`, the first letter of the middle name if one exists, and the first letter of the `surname`. Must be less than or equal to 5 characters in length. + :param str locality: The locality (such as a city or town) in which the certificate subject is located. Must be less than or equal to 128 characters in length. + :param str organization: Legal name of the organization with which the certificate subject is affiliated. Must be less than or equal to 64 characters in length. + :param str organizational_unit: A subdivision or unit of the organization (such as sales or finance) with which the certificate subject is affiliated. Must be less than or equal to 64 characters in length. + :param str pseudonym: Typically a shortened version of a longer `given_name`. For example, Jonathan is often shortened to John. Elizabeth is often shortened to Beth, Liz, or Eliza. Must be less than or equal to 128 characters in length. + :param str state: State in which the subject of the certificate is located. Must be less than or equal to 128 characters in length. + :param str surname: Family name. In the US and the UK for example, the surname of an individual is ordered last. In Asian cultures the surname is typically ordered first. Must be less than or equal to 40 characters in length. + :param str title: A title such as Mr. or Ms. which is pre-pended to the name to refer formally to the certificate subject. Must be less than or equal to 64 characters in length. """ if common_name is not None: pulumi.set(__self__, "common_name", common_name) @@ -123,7 +123,7 @@ def __init__(__self__, *, @pulumi.getter(name="commonName") def common_name(self) -> Optional[str]: """ - Fully qualified domain name (FQDN) associated with the certificate subject. + Fully qualified domain name (FQDN) associated with the certificate subject. Must be less than or equal to 64 characters in length. """ return pulumi.get(self, "common_name") @@ -131,7 +131,7 @@ def common_name(self) -> Optional[str]: @pulumi.getter def country(self) -> Optional[str]: """ - Two digit code that specifies the country in which the certificate subject located. + Two digit code that specifies the country in which the certificate subject located. Must be less than or equal to 2 characters in length. """ return pulumi.get(self, "country") @@ -139,7 +139,7 @@ def country(self) -> Optional[str]: @pulumi.getter(name="distinguishedNameQualifier") def distinguished_name_qualifier(self) -> Optional[str]: """ - Disambiguating information for the certificate subject. + Disambiguating information for the certificate subject. Must be less than or equal to 64 characters in length. """ return pulumi.get(self, "distinguished_name_qualifier") @@ -147,7 +147,7 @@ def distinguished_name_qualifier(self) -> Optional[str]: @pulumi.getter(name="generationQualifier") def generation_qualifier(self) -> Optional[str]: """ - Typically a qualifier appended to the name of an individual. Examples include Jr. for junior, Sr. for senior, and III for third. + Typically a qualifier appended to the name of an individual. Examples include Jr. for junior, Sr. for senior, and III for third. Must be less than or equal to 3 characters in length. """ return pulumi.get(self, "generation_qualifier") @@ -155,7 +155,7 @@ def generation_qualifier(self) -> Optional[str]: @pulumi.getter(name="givenName") def given_name(self) -> Optional[str]: """ - First name. + First name. Must be less than or equal to 16 characters in length. """ return pulumi.get(self, "given_name") @@ -163,7 +163,7 @@ def given_name(self) -> Optional[str]: @pulumi.getter def initials(self) -> Optional[str]: """ - Concatenation that typically contains the first letter of the `given_name`, the first letter of the middle name if one exists, and the first letter of the `surname`. + Concatenation that typically contains the first letter of the `given_name`, the first letter of the middle name if one exists, and the first letter of the `surname`. Must be less than or equal to 5 characters in length. """ return pulumi.get(self, "initials") @@ -171,7 +171,7 @@ def initials(self) -> Optional[str]: @pulumi.getter def locality(self) -> Optional[str]: """ - The locality (such as a city or town) in which the certificate subject is located. + The locality (such as a city or town) in which the certificate subject is located. Must be less than or equal to 128 characters in length. """ return pulumi.get(self, "locality") @@ -179,7 +179,7 @@ def locality(self) -> Optional[str]: @pulumi.getter def organization(self) -> Optional[str]: """ - Legal name of the organization with which the certificate subject is affiliated. + Legal name of the organization with which the certificate subject is affiliated. Must be less than or equal to 64 characters in length. """ return pulumi.get(self, "organization") @@ -187,7 +187,7 @@ def organization(self) -> Optional[str]: @pulumi.getter(name="organizationalUnit") def organizational_unit(self) -> Optional[str]: """ - A subdivision or unit of the organization (such as sales or finance) with which the certificate subject is affiliated. + A subdivision or unit of the organization (such as sales or finance) with which the certificate subject is affiliated. Must be less than or equal to 64 characters in length. """ return pulumi.get(self, "organizational_unit") @@ -195,7 +195,7 @@ def organizational_unit(self) -> Optional[str]: @pulumi.getter def pseudonym(self) -> Optional[str]: """ - Typically a shortened version of a longer `given_name`. For example, Jonathan is often shortened to John. Elizabeth is often shortened to Beth, Liz, or Eliza. + Typically a shortened version of a longer `given_name`. For example, Jonathan is often shortened to John. Elizabeth is often shortened to Beth, Liz, or Eliza. Must be less than or equal to 128 characters in length. """ return pulumi.get(self, "pseudonym") @@ -203,7 +203,7 @@ def pseudonym(self) -> Optional[str]: @pulumi.getter def state(self) -> Optional[str]: """ - State in which the subject of the certificate is located. + State in which the subject of the certificate is located. Must be less than or equal to 128 characters in length. """ return pulumi.get(self, "state") @@ -211,7 +211,7 @@ def state(self) -> Optional[str]: @pulumi.getter def surname(self) -> Optional[str]: """ - Family name. In the US and the UK for example, the surname of an individual is ordered last. In Asian cultures the surname is typically ordered first. + Family name. In the US and the UK for example, the surname of an individual is ordered last. In Asian cultures the surname is typically ordered first. Must be less than or equal to 40 characters in length. """ return pulumi.get(self, "surname") @@ -219,7 +219,7 @@ def surname(self) -> Optional[str]: @pulumi.getter def title(self) -> Optional[str]: """ - A title such as Mr. or Ms. which is pre-pended to the name to refer formally to the certificate subject. + A title such as Mr. or Ms. which is pre-pended to the name to refer formally to the certificate subject. Must be less than or equal to 64 characters in length. """ return pulumi.get(self, "title") @@ -258,9 +258,9 @@ def __init__(__self__, *, s3_bucket_name: Optional[str] = None): """ :param int expiration_in_days: Number of days until a certificate expires. Must be between 1 and 5000. - :param str custom_cname: Name inserted into the certificate CRL Distribution Points extension that enables the use of an alias for the CRL distribution point. Use this value if you don't want the name of your S3 bucket to be public. + :param str custom_cname: Name inserted into the certificate CRL Distribution Points extension that enables the use of an alias for the CRL distribution point. Use this value if you don't want the name of your S3 bucket to be public. Must be less than or equal to 253 characters in length. :param bool enabled: Boolean value that specifies whether certificate revocation lists (CRLs) are enabled. Defaults to `false`. - :param str s3_bucket_name: Name of the S3 bucket that contains the CRL. If you do not provide a value for the `custom_cname` argument, the name of your S3 bucket is placed into the CRL Distribution Points extension of the issued certificate. You must specify a bucket policy that allows ACM PCA to write the CRL to your bucket. + :param str s3_bucket_name: Name of the S3 bucket that contains the CRL. If you do not provide a value for the `custom_cname` argument, the name of your S3 bucket is placed into the CRL Distribution Points extension of the issued certificate. You must specify a bucket policy that allows ACM PCA to write the CRL to your bucket. Must be less than or equal to 255 characters in length. """ pulumi.set(__self__, "expiration_in_days", expiration_in_days) if custom_cname is not None: @@ -282,7 +282,7 @@ def expiration_in_days(self) -> int: @pulumi.getter(name="customCname") def custom_cname(self) -> Optional[str]: """ - Name inserted into the certificate CRL Distribution Points extension that enables the use of an alias for the CRL distribution point. Use this value if you don't want the name of your S3 bucket to be public. + Name inserted into the certificate CRL Distribution Points extension that enables the use of an alias for the CRL distribution point. Use this value if you don't want the name of your S3 bucket to be public. Must be less than or equal to 253 characters in length. """ return pulumi.get(self, "custom_cname") @@ -298,7 +298,7 @@ def enabled(self) -> Optional[bool]: @pulumi.getter(name="s3BucketName") def s3_bucket_name(self) -> Optional[str]: """ - Name of the S3 bucket that contains the CRL. If you do not provide a value for the `custom_cname` argument, the name of your S3 bucket is placed into the CRL Distribution Points extension of the issued certificate. You must specify a bucket policy that allows ACM PCA to write the CRL to your bucket. + Name of the S3 bucket that contains the CRL. If you do not provide a value for the `custom_cname` argument, the name of your S3 bucket is placed into the CRL Distribution Points extension of the issued certificate. You must specify a bucket policy that allows ACM PCA to write the CRL to your bucket. Must be less than or equal to 255 characters in length. """ return pulumi.get(self, "s3_bucket_name") diff --git a/sdk/python/pulumi_aws/apigatewayv2/integration.py b/sdk/python/pulumi_aws/apigatewayv2/integration.py index 436e36b6081..124462954ae 100644 --- a/sdk/python/pulumi_aws/apigatewayv2/integration.py +++ b/sdk/python/pulumi_aws/apigatewayv2/integration.py @@ -112,7 +112,6 @@ def __init__(__self__, Supported only for WebSocket APIs. :param pulumi.Input[Mapping[str, pulumi.Input[str]]] request_templates: 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. Supported only for WebSocket APIs. :param pulumi.Input[str] template_selection_expression: The [template selection expression](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-template-selection-expressions) for the integration. - :param pulumi.Input[int] timeout_milliseconds: Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds or 29 seconds. :param pulumi.Input[pulumi.InputType['IntegrationTlsConfigArgs']] tls_config: The TLS configuration for a private integration. Supported only for HTTP APIs. """ if __name__ is not None: @@ -209,7 +208,6 @@ def get(resource_name: str, Supported only for WebSocket APIs. :param pulumi.Input[Mapping[str, pulumi.Input[str]]] request_templates: 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. Supported only for WebSocket APIs. :param pulumi.Input[str] template_selection_expression: The [template selection expression](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-template-selection-expressions) for the integration. - :param pulumi.Input[int] timeout_milliseconds: Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds or 29 seconds. :param pulumi.Input[pulumi.InputType['IntegrationTlsConfigArgs']] tls_config: The TLS configuration for a private integration. Supported only for HTTP APIs. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -370,10 +368,7 @@ def template_selection_expression(self) -> pulumi.Output[Optional[str]]: @property @pulumi.getter(name="timeoutMilliseconds") - def timeout_milliseconds(self) -> pulumi.Output[Optional[int]]: - """ - Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds or 29 seconds. - """ + def timeout_milliseconds(self) -> pulumi.Output[int]: return pulumi.get(self, "timeout_milliseconds") @property diff --git a/sdk/python/pulumi_aws/cloudwatch/_inputs.py b/sdk/python/pulumi_aws/cloudwatch/_inputs.py index 2edf1641bd6..1aa59a00388 100644 --- a/sdk/python/pulumi_aws/cloudwatch/_inputs.py +++ b/sdk/python/pulumi_aws/cloudwatch/_inputs.py @@ -155,7 +155,7 @@ def __init__(__self__, *, """ :param pulumi.Input[str] task_definition_arn: The ARN of the task definition to use if the event target is an Amazon ECS cluster. :param pulumi.Input[str] group: Specifies an ECS task group for the task. The maximum length is 255 characters. - :param pulumi.Input[str] launch_type: Specifies the launch type on which your task is running. The launch type that you specify here must match one of the launch type (compatibilities) of the target task. Valid values are EC2 or FARGATE. + :param pulumi.Input[str] launch_type: Specifies the launch type on which your task is running. The launch type that you specify here must match one of the launch type (compatibilities) of the target task. Valid values are `EC2` or `FARGATE`. :param pulumi.Input['EventTargetEcsTargetNetworkConfigurationArgs'] network_configuration: Use this if the ECS task uses the awsvpc network mode. This specifies the VPC subnets and security groups associated with the task, and whether a public IP address is to be used. Required if launch_type is FARGATE because the awsvpc mode is required for Fargate tasks. :param pulumi.Input[str] platform_version: Specifies the platform version for the task. Specify only the numeric portion of the platform version, such as 1.1.0. This is used only if LaunchType is FARGATE. For more information about valid platform versions, see [AWS Fargate Platform Versions](http://docs.aws.amazon.com/AmazonECS/latest/developerguide/platform_versions.html). :param pulumi.Input[int] task_count: The number of tasks to create based on the TaskDefinition. The default is 1. @@ -200,7 +200,7 @@ def group(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="launchType") def launch_type(self) -> Optional[pulumi.Input[str]]: """ - Specifies the launch type on which your task is running. The launch type that you specify here must match one of the launch type (compatibilities) of the target task. Valid values are EC2 or FARGATE. + Specifies the launch type on which your task is running. The launch type that you specify here must match one of the launch type (compatibilities) of the target task. Valid values are `EC2` or `FARGATE`. """ return pulumi.get(self, "launch_type") @@ -305,7 +305,6 @@ def __init__(__self__, *, input_template: pulumi.Input[str], input_paths: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None): """ - :param pulumi.Input[str] input_template: Structure containing the template body. :param pulumi.Input[Mapping[str, pulumi.Input[str]]] input_paths: Key value pairs specified in the form of JSONPath (for example, time = $.time) * You can have as many as 10 key-value pairs. * You must use JSON dot notation, not bracket notation. @@ -318,9 +317,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="inputTemplate") def input_template(self) -> pulumi.Input[str]: - """ - Structure containing the template body. - """ return pulumi.get(self, "input_template") @input_template.setter diff --git a/sdk/python/pulumi_aws/cloudwatch/event_permission.py b/sdk/python/pulumi_aws/cloudwatch/event_permission.py index edf760a5536..b1ded61d390 100644 --- a/sdk/python/pulumi_aws/cloudwatch/event_permission.py +++ b/sdk/python/pulumi_aws/cloudwatch/event_permission.py @@ -19,6 +19,7 @@ def __init__(__self__, opts: Optional[pulumi.ResourceOptions] = None, action: Optional[pulumi.Input[str]] = None, condition: Optional[pulumi.Input[pulumi.InputType['EventPermissionConditionArgs']]] = None, + event_bus_name: Optional[pulumi.Input[str]] = None, principal: Optional[pulumi.Input[str]] = None, statement_id: Optional[pulumi.Input[str]] = None, __props__=None, @@ -60,6 +61,7 @@ def __init__(__self__, :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] action: The action that you are enabling the other account to perform. Defaults to `events:PutEvents`. :param pulumi.Input[pulumi.InputType['EventPermissionConditionArgs']] condition: Configuration block to limit the event bus permissions you are granting to only accounts that fulfill the condition. Specified below. + :param pulumi.Input[str] event_bus_name: The event bus to set the permissions on. If you omit this, the permissions are set on the `default` event bus. :param pulumi.Input[str] principal: The 12-digit AWS account ID that you are permitting to put events to your default event bus. Specify `*` to permit any account to put events to your default event bus, optionally limited by `condition`. :param pulumi.Input[str] statement_id: An identifier string for the external account that you are granting permissions to. """ @@ -82,6 +84,7 @@ def __init__(__self__, __props__['action'] = action __props__['condition'] = condition + __props__['event_bus_name'] = event_bus_name if principal is None: raise TypeError("Missing required property 'principal'") __props__['principal'] = principal @@ -100,6 +103,7 @@ def get(resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, action: Optional[pulumi.Input[str]] = None, condition: Optional[pulumi.Input[pulumi.InputType['EventPermissionConditionArgs']]] = None, + event_bus_name: Optional[pulumi.Input[str]] = None, principal: Optional[pulumi.Input[str]] = None, statement_id: Optional[pulumi.Input[str]] = None) -> 'EventPermission': """ @@ -111,6 +115,7 @@ def get(resource_name: str, :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] action: The action that you are enabling the other account to perform. Defaults to `events:PutEvents`. :param pulumi.Input[pulumi.InputType['EventPermissionConditionArgs']] condition: Configuration block to limit the event bus permissions you are granting to only accounts that fulfill the condition. Specified below. + :param pulumi.Input[str] event_bus_name: The event bus to set the permissions on. If you omit this, the permissions are set on the `default` event bus. :param pulumi.Input[str] principal: The 12-digit AWS account ID that you are permitting to put events to your default event bus. Specify `*` to permit any account to put events to your default event bus, optionally limited by `condition`. :param pulumi.Input[str] statement_id: An identifier string for the external account that you are granting permissions to. """ @@ -120,6 +125,7 @@ def get(resource_name: str, __props__["action"] = action __props__["condition"] = condition + __props__["event_bus_name"] = event_bus_name __props__["principal"] = principal __props__["statement_id"] = statement_id return EventPermission(resource_name, opts=opts, __props__=__props__) @@ -140,6 +146,14 @@ def condition(self) -> pulumi.Output[Optional['outputs.EventPermissionCondition' """ return pulumi.get(self, "condition") + @property + @pulumi.getter(name="eventBusName") + def event_bus_name(self) -> pulumi.Output[Optional[str]]: + """ + The event bus to set the permissions on. If you omit this, the permissions are set on the `default` event bus. + """ + return pulumi.get(self, "event_bus_name") + @property @pulumi.getter def principal(self) -> pulumi.Output[str]: diff --git a/sdk/python/pulumi_aws/cloudwatch/event_target.py b/sdk/python/pulumi_aws/cloudwatch/event_target.py index 2d88906e2e1..575b2f329da 100644 --- a/sdk/python/pulumi_aws/cloudwatch/event_target.py +++ b/sdk/python/pulumi_aws/cloudwatch/event_target.py @@ -20,6 +20,7 @@ def __init__(__self__, arn: Optional[pulumi.Input[str]] = None, batch_target: Optional[pulumi.Input[pulumi.InputType['EventTargetBatchTargetArgs']]] = None, ecs_target: Optional[pulumi.Input[pulumi.InputType['EventTargetEcsTargetArgs']]] = None, + event_bus_name: Optional[pulumi.Input[str]] = None, input: Optional[pulumi.Input[str]] = None, input_path: Optional[pulumi.Input[str]] = None, input_transformer: Optional[pulumi.Input[pulumi.InputType['EventTargetInputTransformerArgs']]] = None, @@ -157,15 +158,60 @@ def __init__(__self__, )]) ``` + ## Example Input Transformer Usage - JSON Object + + ```python + import pulumi + import pulumi_aws as aws + + example_event_rule = aws.cloudwatch.EventRule("exampleEventRule") + # ... + example_event_target = aws.cloudwatch.EventTarget("exampleEventTarget", + arn=aws_lambda_function["example"]["arn"], + rule=example_event_rule.id, + input_transformer=aws.cloudwatch.EventTargetInputTransformerArgs( + input_paths={ + "instance": "$.detail.instance", + "status": "$.detail.status", + }, + input_template=\"\"\"{ + "instance_id": , + "instance_status": + } + \"\"\", + )) + ``` + + ## Example Input Transformer Usage - Simple String + + ```python + import pulumi + import pulumi_aws as aws + + example_event_rule = aws.cloudwatch.EventRule("exampleEventRule") + # ... + example_event_target = aws.cloudwatch.EventTarget("exampleEventTarget", + arn=aws_lambda_function["example"]["arn"], + rule=example_event_rule.id, + input_transformer=aws.cloudwatch.EventTargetInputTransformerArgs( + input_paths={ + "instance": "$.detail.instance", + "status": "$.detail.status", + }, + input_template="\" is in state \"", + )) + ``` + :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] arn: The Amazon Resource Name (ARN) associated of the target. :param pulumi.Input[pulumi.InputType['EventTargetBatchTargetArgs']] batch_target: Parameters used when you are using the rule to invoke an Amazon Batch Job. Documented below. A maximum of 1 are allowed. :param pulumi.Input[pulumi.InputType['EventTargetEcsTargetArgs']] ecs_target: Parameters used when you are using the rule to invoke Amazon ECS Task. Documented below. A maximum of 1 are allowed. - :param pulumi.Input[str] input: Valid JSON text passed to the target. + :param pulumi.Input[str] event_bus_name: The event bus to associate with the rule. If you omit this, the `default` event bus is used. + :param pulumi.Input[str] input: Valid JSON text passed to the target. Conflicts with `input_path` and `input_transformer`. :param pulumi.Input[str] input_path: The value of the [JSONPath](http://goessner.net/articles/JsonPath/) - that is used for extracting part of the matched event when passing it to the target. - :param pulumi.Input[pulumi.InputType['EventTargetInputTransformerArgs']] input_transformer: Parameters used when you are providing a custom input to a target based on certain event data. + that is used for extracting part of the matched event when passing it to the target. Conflicts with `input` and `input_transformer`. + :param pulumi.Input[pulumi.InputType['EventTargetInputTransformerArgs']] input_transformer: Parameters used when you are providing a custom input to a target based on certain event data. Conflicts with `input` and `input_path`. :param pulumi.Input[pulumi.InputType['EventTargetKinesisTargetArgs']] kinesis_target: Parameters used when you are using the rule to invoke an Amazon Kinesis Stream. Documented below. A maximum of 1 are allowed. :param pulumi.Input[str] role_arn: The Amazon Resource Name (ARN) of the IAM role to be used for this target when the rule is triggered. Required if `ecs_target` is used. :param pulumi.Input[str] rule: The name of the rule you want to add targets to. @@ -195,6 +241,7 @@ def __init__(__self__, __props__['arn'] = arn __props__['batch_target'] = batch_target __props__['ecs_target'] = ecs_target + __props__['event_bus_name'] = event_bus_name __props__['input'] = input __props__['input_path'] = input_path __props__['input_transformer'] = input_transformer @@ -219,6 +266,7 @@ def get(resource_name: str, arn: Optional[pulumi.Input[str]] = None, batch_target: Optional[pulumi.Input[pulumi.InputType['EventTargetBatchTargetArgs']]] = None, ecs_target: Optional[pulumi.Input[pulumi.InputType['EventTargetEcsTargetArgs']]] = None, + event_bus_name: Optional[pulumi.Input[str]] = None, input: Optional[pulumi.Input[str]] = None, input_path: Optional[pulumi.Input[str]] = None, input_transformer: Optional[pulumi.Input[pulumi.InputType['EventTargetInputTransformerArgs']]] = None, @@ -238,10 +286,11 @@ def get(resource_name: str, :param pulumi.Input[str] arn: The Amazon Resource Name (ARN) associated of the target. :param pulumi.Input[pulumi.InputType['EventTargetBatchTargetArgs']] batch_target: Parameters used when you are using the rule to invoke an Amazon Batch Job. Documented below. A maximum of 1 are allowed. :param pulumi.Input[pulumi.InputType['EventTargetEcsTargetArgs']] ecs_target: Parameters used when you are using the rule to invoke Amazon ECS Task. Documented below. A maximum of 1 are allowed. - :param pulumi.Input[str] input: Valid JSON text passed to the target. + :param pulumi.Input[str] event_bus_name: The event bus to associate with the rule. If you omit this, the `default` event bus is used. + :param pulumi.Input[str] input: Valid JSON text passed to the target. Conflicts with `input_path` and `input_transformer`. :param pulumi.Input[str] input_path: The value of the [JSONPath](http://goessner.net/articles/JsonPath/) - that is used for extracting part of the matched event when passing it to the target. - :param pulumi.Input[pulumi.InputType['EventTargetInputTransformerArgs']] input_transformer: Parameters used when you are providing a custom input to a target based on certain event data. + that is used for extracting part of the matched event when passing it to the target. Conflicts with `input` and `input_transformer`. + :param pulumi.Input[pulumi.InputType['EventTargetInputTransformerArgs']] input_transformer: Parameters used when you are providing a custom input to a target based on certain event data. Conflicts with `input` and `input_path`. :param pulumi.Input[pulumi.InputType['EventTargetKinesisTargetArgs']] kinesis_target: Parameters used when you are using the rule to invoke an Amazon Kinesis Stream. Documented below. A maximum of 1 are allowed. :param pulumi.Input[str] role_arn: The Amazon Resource Name (ARN) of the IAM role to be used for this target when the rule is triggered. Required if `ecs_target` is used. :param pulumi.Input[str] rule: The name of the rule you want to add targets to. @@ -256,6 +305,7 @@ def get(resource_name: str, __props__["arn"] = arn __props__["batch_target"] = batch_target __props__["ecs_target"] = ecs_target + __props__["event_bus_name"] = event_bus_name __props__["input"] = input __props__["input_path"] = input_path __props__["input_transformer"] = input_transformer @@ -291,11 +341,19 @@ def ecs_target(self) -> pulumi.Output[Optional['outputs.EventTargetEcsTarget']]: """ return pulumi.get(self, "ecs_target") + @property + @pulumi.getter(name="eventBusName") + def event_bus_name(self) -> pulumi.Output[Optional[str]]: + """ + The event bus to associate with the rule. If you omit this, the `default` event bus is used. + """ + return pulumi.get(self, "event_bus_name") + @property @pulumi.getter def input(self) -> pulumi.Output[Optional[str]]: """ - Valid JSON text passed to the target. + Valid JSON text passed to the target. Conflicts with `input_path` and `input_transformer`. """ return pulumi.get(self, "input") @@ -304,7 +362,7 @@ def input(self) -> pulumi.Output[Optional[str]]: def input_path(self) -> pulumi.Output[Optional[str]]: """ The value of the [JSONPath](http://goessner.net/articles/JsonPath/) - that is used for extracting part of the matched event when passing it to the target. + that is used for extracting part of the matched event when passing it to the target. Conflicts with `input` and `input_transformer`. """ return pulumi.get(self, "input_path") @@ -312,7 +370,7 @@ def input_path(self) -> pulumi.Output[Optional[str]]: @pulumi.getter(name="inputTransformer") def input_transformer(self) -> pulumi.Output[Optional['outputs.EventTargetInputTransformer']]: """ - Parameters used when you are providing a custom input to a target based on certain event data. + Parameters used when you are providing a custom input to a target based on certain event data. Conflicts with `input` and `input_path`. """ return pulumi.get(self, "input_transformer") diff --git a/sdk/python/pulumi_aws/cloudwatch/outputs.py b/sdk/python/pulumi_aws/cloudwatch/outputs.py index 2d24cfbb579..06def48196b 100644 --- a/sdk/python/pulumi_aws/cloudwatch/outputs.py +++ b/sdk/python/pulumi_aws/cloudwatch/outputs.py @@ -134,7 +134,7 @@ def __init__(__self__, *, """ :param str task_definition_arn: The ARN of the task definition to use if the event target is an Amazon ECS cluster. :param str group: Specifies an ECS task group for the task. The maximum length is 255 characters. - :param str launch_type: Specifies the launch type on which your task is running. The launch type that you specify here must match one of the launch type (compatibilities) of the target task. Valid values are EC2 or FARGATE. + :param str launch_type: Specifies the launch type on which your task is running. The launch type that you specify here must match one of the launch type (compatibilities) of the target task. Valid values are `EC2` or `FARGATE`. :param 'EventTargetEcsTargetNetworkConfigurationArgs' network_configuration: Use this if the ECS task uses the awsvpc network mode. This specifies the VPC subnets and security groups associated with the task, and whether a public IP address is to be used. Required if launch_type is FARGATE because the awsvpc mode is required for Fargate tasks. :param str platform_version: Specifies the platform version for the task. Specify only the numeric portion of the platform version, such as 1.1.0. This is used only if LaunchType is FARGATE. For more information about valid platform versions, see [AWS Fargate Platform Versions](http://docs.aws.amazon.com/AmazonECS/latest/developerguide/platform_versions.html). :param int task_count: The number of tasks to create based on the TaskDefinition. The default is 1. @@ -171,7 +171,7 @@ def group(self) -> Optional[str]: @pulumi.getter(name="launchType") def launch_type(self) -> Optional[str]: """ - Specifies the launch type on which your task is running. The launch type that you specify here must match one of the launch type (compatibilities) of the target task. Valid values are EC2 or FARGATE. + Specifies the launch type on which your task is running. The launch type that you specify here must match one of the launch type (compatibilities) of the target task. Valid values are `EC2` or `FARGATE`. """ return pulumi.get(self, "launch_type") @@ -254,7 +254,6 @@ def __init__(__self__, *, input_template: str, input_paths: Optional[Mapping[str, str]] = None): """ - :param str input_template: Structure containing the template body. :param Mapping[str, str] input_paths: Key value pairs specified in the form of JSONPath (for example, time = $.time) * You can have as many as 10 key-value pairs. * You must use JSON dot notation, not bracket notation. @@ -267,9 +266,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="inputTemplate") def input_template(self) -> str: - """ - Structure containing the template body. - """ return pulumi.get(self, "input_template") @property diff --git a/sdk/python/pulumi_aws/codeartifact/domain.py b/sdk/python/pulumi_aws/codeartifact/domain.py index 7ba6f0dde41..60cae6b6fcf 100644 --- a/sdk/python/pulumi_aws/codeartifact/domain.py +++ b/sdk/python/pulumi_aws/codeartifact/domain.py @@ -17,6 +17,7 @@ def __init__(__self__, opts: Optional[pulumi.ResourceOptions] = None, domain: Optional[pulumi.Input[str]] = None, encryption_key: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, __props__=None, __name__=None, __opts__=None): @@ -39,6 +40,7 @@ def __init__(__self__, :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] domain: The name of the domain to create. All domain names in an AWS Region that are in the same AWS account must be unique. The domain name is used as the prefix in DNS hostnames. Do not use sensitive information in a domain name because it is publicly discoverable. :param pulumi.Input[str] encryption_key: The encryption key for the domain. This is used to encrypt content stored in a domain. The KMS Key Amazon Resource Name (ARN). + :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: Key-value map of resource tags. """ if __name__ is not None: warnings.warn("explicit use of __name__ is deprecated", DeprecationWarning) @@ -63,6 +65,7 @@ def __init__(__self__, if encryption_key is None: raise TypeError("Missing required property 'encryption_key'") __props__['encryption_key'] = encryption_key + __props__['tags'] = tags __props__['arn'] = None __props__['asset_size_bytes'] = None __props__['created_time'] = None @@ -84,7 +87,8 @@ def get(resource_name: str, domain: Optional[pulumi.Input[str]] = None, encryption_key: Optional[pulumi.Input[str]] = None, owner: Optional[pulumi.Input[str]] = None, - repository_count: Optional[pulumi.Input[int]] = None) -> 'Domain': + repository_count: Optional[pulumi.Input[int]] = None, + tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None) -> 'Domain': """ Get an existing Domain resource's state with the given name, id, and optional extra properties used to qualify the lookup. @@ -99,6 +103,7 @@ def get(resource_name: str, :param pulumi.Input[str] encryption_key: The encryption key for the domain. This is used to encrypt content stored in a domain. The KMS Key Amazon Resource Name (ARN). :param pulumi.Input[str] owner: The AWS account ID that owns the domain. :param pulumi.Input[int] repository_count: The number of repositories in the domain. + :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: Key-value map of resource tags. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -111,6 +116,7 @@ def get(resource_name: str, __props__["encryption_key"] = encryption_key __props__["owner"] = owner __props__["repository_count"] = repository_count + __props__["tags"] = tags return Domain(resource_name, opts=opts, __props__=__props__) @property @@ -169,6 +175,14 @@ def repository_count(self) -> pulumi.Output[int]: """ return pulumi.get(self, "repository_count") + @property + @pulumi.getter + def tags(self) -> pulumi.Output[Optional[Mapping[str, str]]]: + """ + Key-value map of resource tags. + """ + return pulumi.get(self, "tags") + def translate_output_property(self, prop): return _tables.CAMEL_TO_SNAKE_CASE_TABLE.get(prop) or prop diff --git a/sdk/python/pulumi_aws/codeartifact/repository.py b/sdk/python/pulumi_aws/codeartifact/repository.py index dfdccd3981f..f25b3c3ce34 100644 --- a/sdk/python/pulumi_aws/codeartifact/repository.py +++ b/sdk/python/pulumi_aws/codeartifact/repository.py @@ -22,6 +22,7 @@ def __init__(__self__, domain_owner: Optional[pulumi.Input[str]] = None, external_connections: Optional[pulumi.Input[pulumi.InputType['RepositoryExternalConnectionsArgs']]] = None, repository: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, upstreams: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['RepositoryUpstreamArgs']]]]] = None, __props__=None, __name__=None, @@ -83,6 +84,7 @@ def __init__(__self__, :param pulumi.Input[str] domain_owner: The account number of the AWS account that owns the domain. :param pulumi.Input[pulumi.InputType['RepositoryExternalConnectionsArgs']] external_connections: An array of external connections associated with the repository. Only one external connection can be set per repository. see External Connections. :param pulumi.Input[str] repository: The name of the repository to create. + :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: Key-value map of resource tags. :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['RepositoryUpstreamArgs']]]] upstreams: A list of upstream repositories to associate with the repository. The order of the upstream repositories in the list determines their priority order when AWS CodeArtifact looks for a requested package version. see Upstream """ if __name__ is not None: @@ -111,6 +113,7 @@ def __init__(__self__, if repository is None: raise TypeError("Missing required property 'repository'") __props__['repository'] = repository + __props__['tags'] = tags __props__['upstreams'] = upstreams __props__['administrator_account'] = None __props__['arn'] = None @@ -131,6 +134,7 @@ def get(resource_name: str, domain_owner: Optional[pulumi.Input[str]] = None, external_connections: Optional[pulumi.Input[pulumi.InputType['RepositoryExternalConnectionsArgs']]] = None, repository: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, upstreams: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['RepositoryUpstreamArgs']]]]] = None) -> 'Repository': """ Get an existing Repository resource's state with the given name, id, and optional extra @@ -146,6 +150,7 @@ def get(resource_name: str, :param pulumi.Input[str] domain_owner: The account number of the AWS account that owns the domain. :param pulumi.Input[pulumi.InputType['RepositoryExternalConnectionsArgs']] external_connections: An array of external connections associated with the repository. Only one external connection can be set per repository. see External Connections. :param pulumi.Input[str] repository: The name of the repository to create. + :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: Key-value map of resource tags. :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['RepositoryUpstreamArgs']]]] upstreams: A list of upstream repositories to associate with the repository. The order of the upstream repositories in the list determines their priority order when AWS CodeArtifact looks for a requested package version. see Upstream """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -159,6 +164,7 @@ def get(resource_name: str, __props__["domain_owner"] = domain_owner __props__["external_connections"] = external_connections __props__["repository"] = repository + __props__["tags"] = tags __props__["upstreams"] = upstreams return Repository(resource_name, opts=opts, __props__=__props__) @@ -218,6 +224,14 @@ def repository(self) -> pulumi.Output[str]: """ return pulumi.get(self, "repository") + @property + @pulumi.getter + def tags(self) -> pulumi.Output[Optional[Mapping[str, str]]]: + """ + Key-value map of resource tags. + """ + return pulumi.get(self, "tags") + @property @pulumi.getter def upstreams(self) -> pulumi.Output[Optional[Sequence['outputs.RepositoryUpstream']]]: diff --git a/sdk/python/pulumi_aws/config/outputs.py b/sdk/python/pulumi_aws/config/outputs.py index d078deb6041..fe29b5a7e85 100644 --- a/sdk/python/pulumi_aws/config/outputs.py +++ b/sdk/python/pulumi_aws/config/outputs.py @@ -119,6 +119,7 @@ def __init__(__self__, *, codecommit: Optional[str] = None, codedeploy: Optional[str] = None, codepipeline: Optional[str] = None, + codestarconnections: Optional[str] = None, cognitoidentity: Optional[str] = None, cognitoidp: Optional[str] = None, configservice: Optional[str] = None, @@ -293,6 +294,8 @@ def __init__(__self__, *, pulumi.set(__self__, "codedeploy", codedeploy) if codepipeline is not None: pulumi.set(__self__, "codepipeline", codepipeline) + if codestarconnections is not None: + pulumi.set(__self__, "codestarconnections", codestarconnections) if cognitoidentity is not None: pulumi.set(__self__, "cognitoidentity", cognitoidentity) if cognitoidp is not None: @@ -672,6 +675,11 @@ def codedeploy(self) -> Optional[str]: def codepipeline(self) -> Optional[str]: return pulumi.get(self, "codepipeline") + @property + @pulumi.getter + def codestarconnections(self) -> Optional[str]: + return pulumi.get(self, "codestarconnections") + @property @pulumi.getter def cognitoidentity(self) -> Optional[str]: diff --git a/sdk/python/pulumi_aws/directconnect/gateway_association.py b/sdk/python/pulumi_aws/directconnect/gateway_association.py index 805bc1d32ba..08cabc08964 100644 --- a/sdk/python/pulumi_aws/directconnect/gateway_association.py +++ b/sdk/python/pulumi_aws/directconnect/gateway_association.py @@ -78,8 +78,6 @@ def __init__(__self__, ]) ``` - A full example of how to create a VPN Gateway in one AWS account, create a Direct Connect Gateway in a second AWS account, and associate the VPN Gateway with the Direct Connect Gateway via the `directconnect.GatewayAssociationProposal` and `directconnect.GatewayAssociation` resources can be found in [the `./examples/dx-gateway-cross-account-vgw-association` directory within the Github Repository](https://github.com/providers/provider-aws/tree/master/examples/dx-gateway-cross-account-vgw-association). - :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_prefixes: VPC prefixes (CIDRs) to advertise to the Direct Connect gateway. Defaults to the CIDR block of the VPC associated with the Virtual Gateway. To enable drift detection, must be configured. diff --git a/sdk/python/pulumi_aws/directconnect/gateway_association_proposal.py b/sdk/python/pulumi_aws/directconnect/gateway_association_proposal.py index 60248f72899..e1090f2ba33 100644 --- a/sdk/python/pulumi_aws/directconnect/gateway_association_proposal.py +++ b/sdk/python/pulumi_aws/directconnect/gateway_association_proposal.py @@ -37,8 +37,6 @@ def __init__(__self__, associated_gateway_id=aws_vpn_gateway["example"]["id"]) ``` - A full example of how to create a VPN Gateway in one AWS account, create a Direct Connect Gateway in a second AWS account, and associate the VPN Gateway with the Direct Connect Gateway via the `directconnect.GatewayAssociationProposal` and `directconnect.GatewayAssociation` resources can be found in [the `./examples/dx-gateway-cross-account-vgw-association` directory within the Github Repository](https://github.com/providers/provider-aws/tree/master/examples/dx-gateway-cross-account-vgw-association). - :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_prefixes: VPC prefixes (CIDRs) to advertise to the Direct Connect gateway. Defaults to the CIDR block of the VPC associated with the Virtual Gateway. To enable drift detection, must be configured. diff --git a/sdk/python/pulumi_aws/ec2/eip.py b/sdk/python/pulumi_aws/ec2/eip.py index ad992f11357..7a1cf25b2ba 100644 --- a/sdk/python/pulumi_aws/ec2/eip.py +++ b/sdk/python/pulumi_aws/ec2/eip.py @@ -18,6 +18,7 @@ def __init__(__self__, associate_with_private_ip: Optional[pulumi.Input[str]] = None, customer_owned_ipv4_pool: Optional[pulumi.Input[str]] = None, instance: Optional[pulumi.Input[str]] = None, + network_border_group: Optional[pulumi.Input[str]] = None, network_interface: Optional[pulumi.Input[str]] = None, public_ipv4_pool: Optional[pulumi.Input[str]] = None, tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, @@ -112,6 +113,7 @@ def __init__(__self__, the Elastic IP address is associated with the primary private IP address. :param pulumi.Input[str] customer_owned_ipv4_pool: The ID of a customer-owned address pool. For more on customer owned IP addressed check out [Customer-owned IP addresses guide](https://docs.aws.amazon.com/outposts/latest/userguide/outposts-networking-components.html#ip-addressing) :param pulumi.Input[str] instance: EC2 instance ID. + :param pulumi.Input[str] network_border_group: The location from which the IP address is advertised. Use this parameter to limit the address to this location. :param pulumi.Input[str] network_interface: Network interface ID to associate with. :param pulumi.Input[str] public_ipv4_pool: EC2 IPv4 address pool identifier or `amazon`. This option is only available for VPC EIPs. :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: A map of tags to assign to the resource. Tags can only be applied to EIPs in a VPC. @@ -137,6 +139,7 @@ def __init__(__self__, __props__['associate_with_private_ip'] = associate_with_private_ip __props__['customer_owned_ipv4_pool'] = customer_owned_ipv4_pool __props__['instance'] = instance + __props__['network_border_group'] = network_border_group __props__['network_interface'] = network_interface __props__['public_ipv4_pool'] = public_ipv4_pool __props__['tags'] = tags @@ -166,6 +169,7 @@ def get(resource_name: str, customer_owned_ipv4_pool: Optional[pulumi.Input[str]] = None, domain: Optional[pulumi.Input[str]] = None, instance: Optional[pulumi.Input[str]] = None, + network_border_group: Optional[pulumi.Input[str]] = None, network_interface: Optional[pulumi.Input[str]] = None, private_dns: Optional[pulumi.Input[str]] = None, private_ip: Optional[pulumi.Input[str]] = None, @@ -188,6 +192,7 @@ def get(resource_name: str, :param pulumi.Input[str] customer_owned_ipv4_pool: The ID of a customer-owned address pool. For more on customer owned IP addressed check out [Customer-owned IP addresses guide](https://docs.aws.amazon.com/outposts/latest/userguide/outposts-networking-components.html#ip-addressing) :param pulumi.Input[str] domain: Indicates if this EIP is for use in VPC (`vpc`) or EC2 Classic (`standard`). :param pulumi.Input[str] instance: EC2 instance ID. + :param pulumi.Input[str] network_border_group: The location from which the IP address is advertised. Use this parameter to limit the address to this location. :param pulumi.Input[str] network_interface: Network interface ID to associate with. :param pulumi.Input[str] private_dns: The Private DNS associated with the Elastic IP address (if in VPC). :param pulumi.Input[str] private_ip: Contains the private IP address (if in VPC). @@ -208,6 +213,7 @@ def get(resource_name: str, __props__["customer_owned_ipv4_pool"] = customer_owned_ipv4_pool __props__["domain"] = domain __props__["instance"] = instance + __props__["network_border_group"] = network_border_group __props__["network_interface"] = network_interface __props__["private_dns"] = private_dns __props__["private_ip"] = private_ip @@ -270,6 +276,14 @@ def instance(self) -> pulumi.Output[str]: """ return pulumi.get(self, "instance") + @property + @pulumi.getter(name="networkBorderGroup") + def network_border_group(self) -> pulumi.Output[str]: + """ + The location from which the IP address is advertised. Use this parameter to limit the address to this location. + """ + return pulumi.get(self, "network_border_group") + @property @pulumi.getter(name="networkInterface") def network_interface(self) -> pulumi.Output[str]: diff --git a/sdk/python/pulumi_aws/ec2transitgateway/vpc_attachment.py b/sdk/python/pulumi_aws/ec2transitgateway/vpc_attachment.py index c0b1969a53a..3d19ce3ac30 100644 --- a/sdk/python/pulumi_aws/ec2transitgateway/vpc_attachment.py +++ b/sdk/python/pulumi_aws/ec2transitgateway/vpc_attachment.py @@ -41,8 +41,6 @@ def __init__(__self__, vpc_id=aws_vpc["example"]["id"]) ``` - A full example of how to create a Transit Gateway in one AWS account, share it with a second AWS account, and attach a VPC in the second account to the Transit Gateway via the `ec2transitgateway.VpcAttachment` and `ec2transitgateway.VpcAttachmentAccepter` resources can be found in [the `./examples/transit-gateway-cross-account-vpc-attachment` directory within the Github Repository](https://github.com/providers/provider-aws/tree/master/examples/transit-gateway-cross-account-vpc-attachment). - :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] dns_support: Whether DNS support is enabled. Valid values: `disable`, `enable`. Default value: `enable`. diff --git a/sdk/python/pulumi_aws/ec2transitgateway/vpc_attachment_accepter.py b/sdk/python/pulumi_aws/ec2transitgateway/vpc_attachment_accepter.py index 23ec28d588a..86e85819103 100644 --- a/sdk/python/pulumi_aws/ec2transitgateway/vpc_attachment_accepter.py +++ b/sdk/python/pulumi_aws/ec2transitgateway/vpc_attachment_accepter.py @@ -44,8 +44,6 @@ def __init__(__self__, }) ``` - A full example of how to how to create a Transit Gateway in one AWS account, share it with a second AWS account, and attach a VPC in the second account to the Transit Gateway via the `ec2transitgateway.VpcAttachment` and `ec2transitgateway.VpcAttachmentAccepter` resources can be found in [the `./examples/transit-gateway-cross-account-vpc-attachment` directory within the Github Repository](https://github.com/providers/provider-aws/tree/master/examples/transit-gateway-cross-account-vpc-attachment). - :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: Key-value tags for the EC2 Transit Gateway VPC Attachment. diff --git a/sdk/python/pulumi_aws/glue/_inputs.py b/sdk/python/pulumi_aws/glue/_inputs.py index 19bcd79aa21..7d9395ecd3d 100644 --- a/sdk/python/pulumi_aws/glue/_inputs.py +++ b/sdk/python/pulumi_aws/glue/_inputs.py @@ -23,6 +23,7 @@ 'CrawlerCatalogTargetArgs', 'CrawlerDynamodbTargetArgs', 'CrawlerJdbcTargetArgs', + 'CrawlerMongodbTargetArgs', 'CrawlerS3TargetArgs', 'CrawlerSchemaChangePolicyArgs', 'DataCatalogEncryptionSettingsDataCatalogEncryptionSettingsArgs', @@ -45,6 +46,7 @@ 'SecurityConfigurationEncryptionConfigurationJobBookmarksEncryptionArgs', 'SecurityConfigurationEncryptionConfigurationS3EncryptionArgs', 'TriggerActionArgs', + 'TriggerActionNotificationPropertyArgs', 'TriggerPredicateArgs', 'TriggerPredicateConditionArgs', 'UserDefinedFunctionResourceUriArgs', @@ -921,6 +923,59 @@ def exclusions(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]) pulumi.set(self, "exclusions", value) +@pulumi.input_type +class CrawlerMongodbTargetArgs: + def __init__(__self__, *, + connection_name: pulumi.Input[str], + path: pulumi.Input[str], + scan_all: Optional[pulumi.Input[bool]] = None): + """ + :param pulumi.Input[str] connection_name: The name of the connection to use to connect to the Amazon DocumentDB or MongoDB target. + :param pulumi.Input[str] path: The path of the Amazon DocumentDB or MongoDB target (database/collection). + :param pulumi.Input[bool] scan_all: Indicates whether to scan all the records, or to sample rows from the table. Scanning all the records can take a long time when the table is not a high throughput table. Default value is `true`. + """ + pulumi.set(__self__, "connection_name", connection_name) + pulumi.set(__self__, "path", path) + if scan_all is not None: + pulumi.set(__self__, "scan_all", scan_all) + + @property + @pulumi.getter(name="connectionName") + def connection_name(self) -> pulumi.Input[str]: + """ + The name of the connection to use to connect to the Amazon DocumentDB or MongoDB target. + """ + return pulumi.get(self, "connection_name") + + @connection_name.setter + def connection_name(self, value: pulumi.Input[str]): + pulumi.set(self, "connection_name", value) + + @property + @pulumi.getter + def path(self) -> pulumi.Input[str]: + """ + The path of the Amazon DocumentDB or MongoDB target (database/collection). + """ + return pulumi.get(self, "path") + + @path.setter + def path(self, value: pulumi.Input[str]): + pulumi.set(self, "path", value) + + @property + @pulumi.getter(name="scanAll") + def scan_all(self) -> Optional[pulumi.Input[bool]]: + """ + Indicates whether to scan all the records, or to sample rows from the table. Scanning all the records can take a long time when the table is not a high throughput table. Default value is `true`. + """ + return pulumi.get(self, "scan_all") + + @scan_all.setter + def scan_all(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "scan_all", value) + + @pulumi.input_type class CrawlerS3TargetArgs: def __init__(__self__, *, @@ -2010,11 +2065,15 @@ def __init__(__self__, *, arguments: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, crawler_name: Optional[pulumi.Input[str]] = None, job_name: Optional[pulumi.Input[str]] = None, + notification_property: Optional[pulumi.Input['TriggerActionNotificationPropertyArgs']] = None, + security_configuration: Optional[pulumi.Input[str]] = None, timeout: Optional[pulumi.Input[int]] = None): """ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] arguments: Arguments to be passed to the job. You can specify arguments here that your own job-execution script consumes, as well as arguments that AWS Glue itself consumes. :param pulumi.Input[str] crawler_name: The name of the crawler to be executed. Conflicts with `job_name`. :param pulumi.Input[str] job_name: The name of a job to be executed. Conflicts with `crawler_name`. + :param pulumi.Input['TriggerActionNotificationPropertyArgs'] notification_property: Specifies configuration properties of a job run notification. see Notification Property details below. + :param pulumi.Input[str] security_configuration: The name of the Security Configuration structure to be used with this action. :param pulumi.Input[int] timeout: The job run timeout in minutes. It overrides the timeout value of the job. """ if arguments is not None: @@ -2023,6 +2082,10 @@ def __init__(__self__, *, pulumi.set(__self__, "crawler_name", crawler_name) if job_name is not None: pulumi.set(__self__, "job_name", job_name) + if notification_property is not None: + pulumi.set(__self__, "notification_property", notification_property) + if security_configuration is not None: + pulumi.set(__self__, "security_configuration", security_configuration) if timeout is not None: pulumi.set(__self__, "timeout", timeout) @@ -2062,6 +2125,30 @@ def job_name(self) -> Optional[pulumi.Input[str]]: def job_name(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "job_name", value) + @property + @pulumi.getter(name="notificationProperty") + def notification_property(self) -> Optional[pulumi.Input['TriggerActionNotificationPropertyArgs']]: + """ + Specifies configuration properties of a job run notification. see Notification Property details below. + """ + return pulumi.get(self, "notification_property") + + @notification_property.setter + def notification_property(self, value: Optional[pulumi.Input['TriggerActionNotificationPropertyArgs']]): + pulumi.set(self, "notification_property", value) + + @property + @pulumi.getter(name="securityConfiguration") + def security_configuration(self) -> Optional[pulumi.Input[str]]: + """ + The name of the Security Configuration structure to be used with this action. + """ + return pulumi.get(self, "security_configuration") + + @security_configuration.setter + def security_configuration(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "security_configuration", value) + @property @pulumi.getter def timeout(self) -> Optional[pulumi.Input[int]]: @@ -2075,6 +2162,29 @@ def timeout(self, value: Optional[pulumi.Input[int]]): pulumi.set(self, "timeout", value) +@pulumi.input_type +class TriggerActionNotificationPropertyArgs: + def __init__(__self__, *, + notify_delay_after: Optional[pulumi.Input[int]] = None): + """ + :param pulumi.Input[int] notify_delay_after: After a job run starts, the number of minutes to wait before sending a job run delay notification. + """ + if notify_delay_after is not None: + pulumi.set(__self__, "notify_delay_after", notify_delay_after) + + @property + @pulumi.getter(name="notifyDelayAfter") + def notify_delay_after(self) -> Optional[pulumi.Input[int]]: + """ + After a job run starts, the number of minutes to wait before sending a job run delay notification. + """ + return pulumi.get(self, "notify_delay_after") + + @notify_delay_after.setter + def notify_delay_after(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "notify_delay_after", value) + + @pulumi.input_type class TriggerPredicateArgs: def __init__(__self__, *, diff --git a/sdk/python/pulumi_aws/glue/crawler.py b/sdk/python/pulumi_aws/glue/crawler.py index 65a4d3fc955..abb9a30e8fd 100644 --- a/sdk/python/pulumi_aws/glue/crawler.py +++ b/sdk/python/pulumi_aws/glue/crawler.py @@ -24,6 +24,7 @@ def __init__(__self__, description: Optional[pulumi.Input[str]] = None, dynamodb_targets: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['CrawlerDynamodbTargetArgs']]]]] = None, jdbc_targets: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['CrawlerJdbcTargetArgs']]]]] = None, + mongodb_targets: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['CrawlerMongodbTargetArgs']]]]] = None, name: Optional[pulumi.Input[str]] = None, role: Optional[pulumi.Input[str]] = None, s3_targets: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['CrawlerS3TargetArgs']]]]] = None, @@ -103,6 +104,20 @@ def __init__(__self__, } \"\"\") ``` + ### MongoDB Target + + ```python + import pulumi + import pulumi_aws as aws + + example = aws.glue.Crawler("example", + database_name=aws_glue_catalog_database["example"]["name"], + role=aws_iam_role["example"]["arn"], + mongodb_targets=[aws.glue.CrawlerMongodbTargetArgs( + connection_name=aws_glue_connection["example"]["name"], + path="database-name/%", + )]) + ``` :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. @@ -112,6 +127,7 @@ def __init__(__self__, :param pulumi.Input[str] description: Description of the crawler. :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['CrawlerDynamodbTargetArgs']]]] dynamodb_targets: List of nested DynamoDB target arguments. See below. :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['CrawlerJdbcTargetArgs']]]] jdbc_targets: List of nested JBDC target arguments. See below. + :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['CrawlerMongodbTargetArgs']]]] mongodb_targets: List nested MongoDB target arguments. See below. :param pulumi.Input[str] name: Name of the crawler. :param pulumi.Input[str] role: The IAM role friendly name (including path without leading slash), or ARN of an IAM role, used by the crawler to access other resources. :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['CrawlerS3TargetArgs']]]] s3_targets: List nested Amazon S3 target arguments. See below. @@ -147,6 +163,7 @@ def __init__(__self__, __props__['description'] = description __props__['dynamodb_targets'] = dynamodb_targets __props__['jdbc_targets'] = jdbc_targets + __props__['mongodb_targets'] = mongodb_targets __props__['name'] = name if role is None: raise TypeError("Missing required property 'role'") @@ -176,6 +193,7 @@ def get(resource_name: str, description: Optional[pulumi.Input[str]] = None, dynamodb_targets: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['CrawlerDynamodbTargetArgs']]]]] = None, jdbc_targets: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['CrawlerJdbcTargetArgs']]]]] = None, + mongodb_targets: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['CrawlerMongodbTargetArgs']]]]] = None, name: Optional[pulumi.Input[str]] = None, role: Optional[pulumi.Input[str]] = None, s3_targets: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['CrawlerS3TargetArgs']]]]] = None, @@ -198,6 +216,7 @@ def get(resource_name: str, :param pulumi.Input[str] description: Description of the crawler. :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['CrawlerDynamodbTargetArgs']]]] dynamodb_targets: List of nested DynamoDB target arguments. See below. :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['CrawlerJdbcTargetArgs']]]] jdbc_targets: List of nested JBDC target arguments. See below. + :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['CrawlerMongodbTargetArgs']]]] mongodb_targets: List nested MongoDB target arguments. See below. :param pulumi.Input[str] name: Name of the crawler. :param pulumi.Input[str] role: The IAM role friendly name (including path without leading slash), or ARN of an IAM role, used by the crawler to access other resources. :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['CrawlerS3TargetArgs']]]] s3_targets: List nested Amazon S3 target arguments. See below. @@ -219,6 +238,7 @@ def get(resource_name: str, __props__["description"] = description __props__["dynamodb_targets"] = dynamodb_targets __props__["jdbc_targets"] = jdbc_targets + __props__["mongodb_targets"] = mongodb_targets __props__["name"] = name __props__["role"] = role __props__["s3_targets"] = s3_targets @@ -290,6 +310,14 @@ def jdbc_targets(self) -> pulumi.Output[Optional[Sequence['outputs.CrawlerJdbcTa """ return pulumi.get(self, "jdbc_targets") + @property + @pulumi.getter(name="mongodbTargets") + def mongodb_targets(self) -> pulumi.Output[Optional[Sequence['outputs.CrawlerMongodbTarget']]]: + """ + List nested MongoDB target arguments. See below. + """ + return pulumi.get(self, "mongodb_targets") + @property @pulumi.getter def name(self) -> pulumi.Output[str]: diff --git a/sdk/python/pulumi_aws/glue/outputs.py b/sdk/python/pulumi_aws/glue/outputs.py index 5daddf1fbc1..0cf3fea03f9 100644 --- a/sdk/python/pulumi_aws/glue/outputs.py +++ b/sdk/python/pulumi_aws/glue/outputs.py @@ -24,6 +24,7 @@ 'CrawlerCatalogTarget', 'CrawlerDynamodbTarget', 'CrawlerJdbcTarget', + 'CrawlerMongodbTarget', 'CrawlerS3Target', 'CrawlerSchemaChangePolicy', 'DataCatalogEncryptionSettingsDataCatalogEncryptionSettings', @@ -46,6 +47,7 @@ 'SecurityConfigurationEncryptionConfigurationJobBookmarksEncryption', 'SecurityConfigurationEncryptionConfigurationS3Encryption', 'TriggerAction', + 'TriggerActionNotificationProperty', 'TriggerPredicate', 'TriggerPredicateCondition', 'UserDefinedFunctionResourceUri', @@ -768,6 +770,50 @@ def _translate_property(self, prop): return _tables.CAMEL_TO_SNAKE_CASE_TABLE.get(prop) or prop +@pulumi.output_type +class CrawlerMongodbTarget(dict): + def __init__(__self__, *, + connection_name: str, + path: str, + scan_all: Optional[bool] = None): + """ + :param str connection_name: The name of the connection to use to connect to the Amazon DocumentDB or MongoDB target. + :param str path: The path of the Amazon DocumentDB or MongoDB target (database/collection). + :param bool scan_all: Indicates whether to scan all the records, or to sample rows from the table. Scanning all the records can take a long time when the table is not a high throughput table. Default value is `true`. + """ + pulumi.set(__self__, "connection_name", connection_name) + pulumi.set(__self__, "path", path) + if scan_all is not None: + pulumi.set(__self__, "scan_all", scan_all) + + @property + @pulumi.getter(name="connectionName") + def connection_name(self) -> str: + """ + The name of the connection to use to connect to the Amazon DocumentDB or MongoDB target. + """ + return pulumi.get(self, "connection_name") + + @property + @pulumi.getter + def path(self) -> str: + """ + The path of the Amazon DocumentDB or MongoDB target (database/collection). + """ + return pulumi.get(self, "path") + + @property + @pulumi.getter(name="scanAll") + def scan_all(self) -> Optional[bool]: + """ + Indicates whether to scan all the records, or to sample rows from the table. Scanning all the records can take a long time when the table is not a high throughput table. Default value is `true`. + """ + return pulumi.get(self, "scan_all") + + def _translate_property(self, prop): + return _tables.CAMEL_TO_SNAKE_CASE_TABLE.get(prop) or prop + + @pulumi.output_type class CrawlerS3Target(dict): def __init__(__self__, *, @@ -1680,11 +1726,15 @@ def __init__(__self__, *, arguments: Optional[Mapping[str, str]] = None, crawler_name: Optional[str] = None, job_name: Optional[str] = None, + notification_property: Optional['outputs.TriggerActionNotificationProperty'] = None, + security_configuration: Optional[str] = None, timeout: Optional[int] = None): """ :param Mapping[str, str] arguments: Arguments to be passed to the job. You can specify arguments here that your own job-execution script consumes, as well as arguments that AWS Glue itself consumes. :param str crawler_name: The name of the crawler to be executed. Conflicts with `job_name`. :param str job_name: The name of a job to be executed. Conflicts with `crawler_name`. + :param 'TriggerActionNotificationPropertyArgs' notification_property: Specifies configuration properties of a job run notification. see Notification Property details below. + :param str security_configuration: The name of the Security Configuration structure to be used with this action. :param int timeout: The job run timeout in minutes. It overrides the timeout value of the job. """ if arguments is not None: @@ -1693,6 +1743,10 @@ def __init__(__self__, *, pulumi.set(__self__, "crawler_name", crawler_name) if job_name is not None: pulumi.set(__self__, "job_name", job_name) + if notification_property is not None: + pulumi.set(__self__, "notification_property", notification_property) + if security_configuration is not None: + pulumi.set(__self__, "security_configuration", security_configuration) if timeout is not None: pulumi.set(__self__, "timeout", timeout) @@ -1720,6 +1774,22 @@ def job_name(self) -> Optional[str]: """ return pulumi.get(self, "job_name") + @property + @pulumi.getter(name="notificationProperty") + def notification_property(self) -> Optional['outputs.TriggerActionNotificationProperty']: + """ + Specifies configuration properties of a job run notification. see Notification Property details below. + """ + return pulumi.get(self, "notification_property") + + @property + @pulumi.getter(name="securityConfiguration") + def security_configuration(self) -> Optional[str]: + """ + The name of the Security Configuration structure to be used with this action. + """ + return pulumi.get(self, "security_configuration") + @property @pulumi.getter def timeout(self) -> Optional[int]: @@ -1732,6 +1802,28 @@ def _translate_property(self, prop): return _tables.CAMEL_TO_SNAKE_CASE_TABLE.get(prop) or prop +@pulumi.output_type +class TriggerActionNotificationProperty(dict): + def __init__(__self__, *, + notify_delay_after: Optional[int] = None): + """ + :param int notify_delay_after: After a job run starts, the number of minutes to wait before sending a job run delay notification. + """ + if notify_delay_after is not None: + pulumi.set(__self__, "notify_delay_after", notify_delay_after) + + @property + @pulumi.getter(name="notifyDelayAfter") + def notify_delay_after(self) -> Optional[int]: + """ + After a job run starts, the number of minutes to wait before sending a job run delay notification. + """ + return pulumi.get(self, "notify_delay_after") + + def _translate_property(self, prop): + return _tables.CAMEL_TO_SNAKE_CASE_TABLE.get(prop) or prop + + @pulumi.output_type class TriggerPredicate(dict): def __init__(__self__, *, diff --git a/sdk/python/pulumi_aws/kinesis/_inputs.py b/sdk/python/pulumi_aws/kinesis/_inputs.py index f159d9d45c9..6d695cbc0c4 100644 --- a/sdk/python/pulumi_aws/kinesis/_inputs.py +++ b/sdk/python/pulumi_aws/kinesis/_inputs.py @@ -356,22 +356,23 @@ def role_arn(self, value: pulumi.Input[str]): @pulumi.input_type class AnalyticsApplicationInputsParallelismArgs: def __init__(__self__, *, - count: pulumi.Input[int]): + count: Optional[pulumi.Input[int]] = None): """ :param pulumi.Input[int] count: The Count of streams. """ - pulumi.set(__self__, "count", count) + if count is not None: + pulumi.set(__self__, "count", count) @property @pulumi.getter - def count(self) -> pulumi.Input[int]: + def count(self) -> Optional[pulumi.Input[int]]: """ The Count of streams. """ return pulumi.get(self, "count") @count.setter - def count(self, value: pulumi.Input[int]): + def count(self, value: Optional[pulumi.Input[int]]): pulumi.set(self, "count", value) diff --git a/sdk/python/pulumi_aws/kinesis/outputs.py b/sdk/python/pulumi_aws/kinesis/outputs.py index 839c75ef09c..40960548dca 100644 --- a/sdk/python/pulumi_aws/kinesis/outputs.py +++ b/sdk/python/pulumi_aws/kinesis/outputs.py @@ -305,15 +305,16 @@ def _translate_property(self, prop): @pulumi.output_type class AnalyticsApplicationInputsParallelism(dict): def __init__(__self__, *, - count: int): + count: Optional[int] = None): """ :param int count: The Count of streams. """ - pulumi.set(__self__, "count", count) + if count is not None: + pulumi.set(__self__, "count", count) @property @pulumi.getter - def count(self) -> int: + def count(self) -> Optional[int]: """ The Count of streams. """ diff --git a/sdk/python/pulumi_aws/lex/_inputs.py b/sdk/python/pulumi_aws/lex/_inputs.py index 3d810237b55..f37ff5d7ba4 100644 --- a/sdk/python/pulumi_aws/lex/_inputs.py +++ b/sdk/python/pulumi_aws/lex/_inputs.py @@ -143,7 +143,7 @@ def __init__(__self__, *, iam_role_arn: pulumi.Input[str], log_settings: Optional[pulumi.Input[Sequence[pulumi.Input['BotAliasConversationLogsLogSettingArgs']]]] = None): """ - :param pulumi.Input[str] iam_role_arn: The Amazon Resource Name (ARN) of the IAM role used to write your logs to CloudWatch Logs or an S3 bucket. + :param pulumi.Input[str] iam_role_arn: The Amazon Resource Name (ARN) of the IAM role used to write your logs to CloudWatch Logs or an S3 bucket. Must be between 20 and 2048 characters in length. :param pulumi.Input[Sequence[pulumi.Input['BotAliasConversationLogsLogSettingArgs']]] log_settings: The settings for your conversation logs. You can log text, audio, or both. Attributes are documented under log_settings. """ pulumi.set(__self__, "iam_role_arn", iam_role_arn) @@ -154,7 +154,7 @@ def __init__(__self__, *, @pulumi.getter(name="iamRoleArn") def iam_role_arn(self) -> pulumi.Input[str]: """ - The Amazon Resource Name (ARN) of the IAM role used to write your logs to CloudWatch Logs or an S3 bucket. + The Amazon Resource Name (ARN) of the IAM role used to write your logs to CloudWatch Logs or an S3 bucket. Must be between 20 and 2048 characters in length. """ return pulumi.get(self, "iam_role_arn") @@ -186,8 +186,8 @@ def __init__(__self__, *, """ :param pulumi.Input[str] destination: The destination where logs are delivered. Options are `CLOUDWATCH_LOGS` or `S3`. :param pulumi.Input[str] log_type: The type of logging that is enabled. Options are `AUDIO` or `TEXT`. - :param pulumi.Input[str] resource_arn: The Amazon Resource Name (ARN) of the CloudWatch Logs log group or S3 bucket where the logs are delivered. - :param pulumi.Input[str] kms_key_arn: The Amazon Resource Name (ARN) of the key used to encrypt audio logs in an S3 bucket. This can only be specified when `destination` is set to `S3`. + :param pulumi.Input[str] resource_arn: The Amazon Resource Name (ARN) of the CloudWatch Logs log group or S3 bucket where the logs are delivered. Must be less than or equal to 2048 characters in length. + :param pulumi.Input[str] kms_key_arn: The Amazon Resource Name (ARN) of the key used to encrypt audio logs in an S3 bucket. This can only be specified when `destination` is set to `S3`. Must be between 20 and 2048 characters in length. :param pulumi.Input[str] resource_prefix: The prefix of the S3 object key for `AUDIO` logs or the log stream name for `TEXT` logs. """ pulumi.set(__self__, "destination", destination) @@ -226,7 +226,7 @@ def log_type(self, value: pulumi.Input[str]): @pulumi.getter(name="resourceArn") def resource_arn(self) -> pulumi.Input[str]: """ - The Amazon Resource Name (ARN) of the CloudWatch Logs log group or S3 bucket where the logs are delivered. + The Amazon Resource Name (ARN) of the CloudWatch Logs log group or S3 bucket where the logs are delivered. Must be less than or equal to 2048 characters in length. """ return pulumi.get(self, "resource_arn") @@ -238,7 +238,7 @@ def resource_arn(self, value: pulumi.Input[str]): @pulumi.getter(name="kmsKeyArn") def kms_key_arn(self) -> Optional[pulumi.Input[str]]: """ - The Amazon Resource Name (ARN) of the key used to encrypt audio logs in an S3 bucket. This can only be specified when `destination` is set to `S3`. + The Amazon Resource Name (ARN) of the key used to encrypt audio logs in an S3 bucket. This can only be specified when `destination` is set to `S3`. Must be between 20 and 2048 characters in length. """ return pulumi.get(self, "kms_key_arn") @@ -381,8 +381,8 @@ def __init__(__self__, *, intent_name: pulumi.Input[str], intent_version: pulumi.Input[str]): """ - :param pulumi.Input[str] intent_name: The name of the intent. - :param pulumi.Input[str] intent_version: The version of the intent. + :param pulumi.Input[str] intent_name: The name of the intent. Must be less than or equal to 100 characters in length. + :param pulumi.Input[str] intent_version: The version of the intent. Must be less than or equal to 64 characters in length. """ pulumi.set(__self__, "intent_name", intent_name) pulumi.set(__self__, "intent_version", intent_version) @@ -391,7 +391,7 @@ def __init__(__self__, *, @pulumi.getter(name="intentName") def intent_name(self) -> pulumi.Input[str]: """ - The name of the intent. + The name of the intent. Must be less than or equal to 100 characters in length. """ return pulumi.get(self, "intent_name") @@ -403,7 +403,7 @@ def intent_name(self, value: pulumi.Input[str]): @pulumi.getter(name="intentVersion") def intent_version(self) -> pulumi.Input[str]: """ - The version of the intent. + The version of the intent. Must be less than or equal to 64 characters in length. """ return pulumi.get(self, "intent_version") @@ -420,10 +420,10 @@ def __init__(__self__, *, """ :param pulumi.Input[Sequence[pulumi.Input['IntentConclusionStatementMessageArgs']]] messages: A set of messages, each of which provides a message string and its type. You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - Attributes are documented under message. + Attributes are documented under message. Must contain between 1 and 15 messages. :param pulumi.Input[str] response_card: The response card. Amazon Lex will substitute session attributes and slot values into the response card. For more information, see - [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. """ pulumi.set(__self__, "messages", messages) if response_card is not None: @@ -435,7 +435,7 @@ def messages(self) -> pulumi.Input[Sequence[pulumi.Input['IntentConclusionStatem """ A set of messages, each of which provides a message string and its type. You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - Attributes are documented under message. + Attributes are documented under message. Must contain between 1 and 15 messages. """ return pulumi.get(self, "messages") @@ -449,7 +449,7 @@ def response_card(self) -> Optional[pulumi.Input[str]]: """ The response card. Amazon Lex will substitute session attributes and slot values into the response card. For more information, see - [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. """ return pulumi.get(self, "response_card") @@ -465,10 +465,10 @@ def __init__(__self__, *, content_type: pulumi.Input[str], group_number: Optional[pulumi.Input[int]] = None): """ - :param pulumi.Input[str] content: The text of the message. + :param pulumi.Input[str] content: The text of the message. Must be less than or equal to 1000 characters in length. :param pulumi.Input[str] content_type: The content type of the message string. :param pulumi.Input[int] group_number: Identifies the message group that the message belongs to. When a group - is assigned to a message, Amazon Lex returns one message from each group in the response. + is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). """ pulumi.set(__self__, "content", content) pulumi.set(__self__, "content_type", content_type) @@ -479,7 +479,7 @@ def __init__(__self__, *, @pulumi.getter def content(self) -> pulumi.Input[str]: """ - The text of the message. + The text of the message. Must be less than or equal to 1000 characters in length. """ return pulumi.get(self, "content") @@ -504,7 +504,7 @@ def content_type(self, value: pulumi.Input[str]): def group_number(self) -> Optional[pulumi.Input[int]]: """ Identifies the message group that the message belongs to. When a group - is assigned to a message, Amazon Lex returns one message from each group in the response. + is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). """ return pulumi.get(self, "group_number") @@ -520,13 +520,13 @@ def __init__(__self__, *, messages: pulumi.Input[Sequence[pulumi.Input['IntentConfirmationPromptMessageArgs']]], response_card: Optional[pulumi.Input[str]] = None): """ - :param pulumi.Input[int] max_attempts: The number of times to prompt the user for information. + :param pulumi.Input[int] max_attempts: The number of times to prompt the user for information. Must be a number between 1 and 5 (inclusive). :param pulumi.Input[Sequence[pulumi.Input['IntentConfirmationPromptMessageArgs']]] messages: A set of messages, each of which provides a message string and its type. You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - Attributes are documented under message. + Attributes are documented under message. Must contain between 1 and 15 messages. :param pulumi.Input[str] response_card: The response card. Amazon Lex will substitute session attributes and slot values into the response card. For more information, see - [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. """ pulumi.set(__self__, "max_attempts", max_attempts) pulumi.set(__self__, "messages", messages) @@ -537,7 +537,7 @@ def __init__(__self__, *, @pulumi.getter(name="maxAttempts") def max_attempts(self) -> pulumi.Input[int]: """ - The number of times to prompt the user for information. + The number of times to prompt the user for information. Must be a number between 1 and 5 (inclusive). """ return pulumi.get(self, "max_attempts") @@ -551,7 +551,7 @@ def messages(self) -> pulumi.Input[Sequence[pulumi.Input['IntentConfirmationProm """ A set of messages, each of which provides a message string and its type. You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - Attributes are documented under message. + Attributes are documented under message. Must contain between 1 and 15 messages. """ return pulumi.get(self, "messages") @@ -565,7 +565,7 @@ def response_card(self) -> Optional[pulumi.Input[str]]: """ The response card. Amazon Lex will substitute session attributes and slot values into the response card. For more information, see - [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. """ return pulumi.get(self, "response_card") @@ -581,10 +581,10 @@ def __init__(__self__, *, content_type: pulumi.Input[str], group_number: Optional[pulumi.Input[int]] = None): """ - :param pulumi.Input[str] content: The text of the message. + :param pulumi.Input[str] content: The text of the message. Must be less than or equal to 1000 characters in length. :param pulumi.Input[str] content_type: The content type of the message string. :param pulumi.Input[int] group_number: Identifies the message group that the message belongs to. When a group - is assigned to a message, Amazon Lex returns one message from each group in the response. + is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). """ pulumi.set(__self__, "content", content) pulumi.set(__self__, "content_type", content_type) @@ -595,7 +595,7 @@ def __init__(__self__, *, @pulumi.getter def content(self) -> pulumi.Input[str]: """ - The text of the message. + The text of the message. Must be less than or equal to 1000 characters in length. """ return pulumi.get(self, "content") @@ -620,7 +620,7 @@ def content_type(self, value: pulumi.Input[str]): def group_number(self) -> Optional[pulumi.Input[int]]: """ Identifies the message group that the message belongs to. When a group - is assigned to a message, Amazon Lex returns one message from each group in the response. + is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). """ return pulumi.get(self, "group_number") @@ -637,7 +637,7 @@ def __init__(__self__, *, """ :param pulumi.Input[str] message_version: The version of the request-response that you want Amazon Lex to use to invoke your Lambda function. For more information, see - [Using Lambda Functions](https://docs.aws.amazon.com/lex/latest/dg/using-lambda.html). + [Using Lambda Functions](https://docs.aws.amazon.com/lex/latest/dg/using-lambda.html). Must be less than or equal to 5 characters in length. :param pulumi.Input[str] uri: The Amazon Resource Name (ARN) of the Lambda function. """ pulumi.set(__self__, "message_version", message_version) @@ -649,7 +649,7 @@ def message_version(self) -> pulumi.Input[str]: """ The version of the request-response that you want Amazon Lex to use to invoke your Lambda function. For more information, see - [Using Lambda Functions](https://docs.aws.amazon.com/lex/latest/dg/using-lambda.html). + [Using Lambda Functions](https://docs.aws.amazon.com/lex/latest/dg/using-lambda.html). Must be less than or equal to 5 characters in length. """ return pulumi.get(self, "message_version") @@ -718,13 +718,13 @@ def __init__(__self__, *, messages: pulumi.Input[Sequence[pulumi.Input['IntentFollowUpPromptPromptMessageArgs']]], response_card: Optional[pulumi.Input[str]] = None): """ - :param pulumi.Input[int] max_attempts: The number of times to prompt the user for information. + :param pulumi.Input[int] max_attempts: The number of times to prompt the user for information. Must be a number between 1 and 5 (inclusive). :param pulumi.Input[Sequence[pulumi.Input['IntentFollowUpPromptPromptMessageArgs']]] messages: A set of messages, each of which provides a message string and its type. You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - Attributes are documented under message. + Attributes are documented under message. Must contain between 1 and 15 messages. :param pulumi.Input[str] response_card: The response card. Amazon Lex will substitute session attributes and slot values into the response card. For more information, see - [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. """ pulumi.set(__self__, "max_attempts", max_attempts) pulumi.set(__self__, "messages", messages) @@ -735,7 +735,7 @@ def __init__(__self__, *, @pulumi.getter(name="maxAttempts") def max_attempts(self) -> pulumi.Input[int]: """ - The number of times to prompt the user for information. + The number of times to prompt the user for information. Must be a number between 1 and 5 (inclusive). """ return pulumi.get(self, "max_attempts") @@ -749,7 +749,7 @@ def messages(self) -> pulumi.Input[Sequence[pulumi.Input['IntentFollowUpPromptPr """ A set of messages, each of which provides a message string and its type. You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - Attributes are documented under message. + Attributes are documented under message. Must contain between 1 and 15 messages. """ return pulumi.get(self, "messages") @@ -763,7 +763,7 @@ def response_card(self) -> Optional[pulumi.Input[str]]: """ The response card. Amazon Lex will substitute session attributes and slot values into the response card. For more information, see - [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. """ return pulumi.get(self, "response_card") @@ -779,10 +779,10 @@ def __init__(__self__, *, content_type: pulumi.Input[str], group_number: Optional[pulumi.Input[int]] = None): """ - :param pulumi.Input[str] content: The text of the message. + :param pulumi.Input[str] content: The text of the message. Must be less than or equal to 1000 characters in length. :param pulumi.Input[str] content_type: The content type of the message string. :param pulumi.Input[int] group_number: Identifies the message group that the message belongs to. When a group - is assigned to a message, Amazon Lex returns one message from each group in the response. + is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). """ pulumi.set(__self__, "content", content) pulumi.set(__self__, "content_type", content_type) @@ -793,7 +793,7 @@ def __init__(__self__, *, @pulumi.getter def content(self) -> pulumi.Input[str]: """ - The text of the message. + The text of the message. Must be less than or equal to 1000 characters in length. """ return pulumi.get(self, "content") @@ -818,7 +818,7 @@ def content_type(self, value: pulumi.Input[str]): def group_number(self) -> Optional[pulumi.Input[int]]: """ Identifies the message group that the message belongs to. When a group - is assigned to a message, Amazon Lex returns one message from each group in the response. + is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). """ return pulumi.get(self, "group_number") @@ -835,10 +835,10 @@ def __init__(__self__, *, """ :param pulumi.Input[Sequence[pulumi.Input['IntentFollowUpPromptRejectionStatementMessageArgs']]] messages: A set of messages, each of which provides a message string and its type. You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - Attributes are documented under message. + Attributes are documented under message. Must contain between 1 and 15 messages. :param pulumi.Input[str] response_card: The response card. Amazon Lex will substitute session attributes and slot values into the response card. For more information, see - [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. """ pulumi.set(__self__, "messages", messages) if response_card is not None: @@ -850,7 +850,7 @@ def messages(self) -> pulumi.Input[Sequence[pulumi.Input['IntentFollowUpPromptRe """ A set of messages, each of which provides a message string and its type. You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - Attributes are documented under message. + Attributes are documented under message. Must contain between 1 and 15 messages. """ return pulumi.get(self, "messages") @@ -864,7 +864,7 @@ def response_card(self) -> Optional[pulumi.Input[str]]: """ The response card. Amazon Lex will substitute session attributes and slot values into the response card. For more information, see - [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. """ return pulumi.get(self, "response_card") @@ -880,10 +880,10 @@ def __init__(__self__, *, content_type: pulumi.Input[str], group_number: Optional[pulumi.Input[int]] = None): """ - :param pulumi.Input[str] content: The text of the message. + :param pulumi.Input[str] content: The text of the message. Must be less than or equal to 1000 characters in length. :param pulumi.Input[str] content_type: The content type of the message string. :param pulumi.Input[int] group_number: Identifies the message group that the message belongs to. When a group - is assigned to a message, Amazon Lex returns one message from each group in the response. + is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). """ pulumi.set(__self__, "content", content) pulumi.set(__self__, "content_type", content_type) @@ -894,7 +894,7 @@ def __init__(__self__, *, @pulumi.getter def content(self) -> pulumi.Input[str]: """ - The text of the message. + The text of the message. Must be less than or equal to 1000 characters in length. """ return pulumi.get(self, "content") @@ -919,7 +919,7 @@ def content_type(self, value: pulumi.Input[str]): def group_number(self) -> Optional[pulumi.Input[int]]: """ Identifies the message group that the message belongs to. When a group - is assigned to a message, Amazon Lex returns one message from each group in the response. + is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). """ return pulumi.get(self, "group_number") @@ -978,7 +978,7 @@ def __init__(__self__, *, """ :param pulumi.Input[str] message_version: The version of the request-response that you want Amazon Lex to use to invoke your Lambda function. For more information, see - [Using Lambda Functions](https://docs.aws.amazon.com/lex/latest/dg/using-lambda.html). + [Using Lambda Functions](https://docs.aws.amazon.com/lex/latest/dg/using-lambda.html). Must be less than or equal to 5 characters in length. :param pulumi.Input[str] uri: The Amazon Resource Name (ARN) of the Lambda function. """ pulumi.set(__self__, "message_version", message_version) @@ -990,7 +990,7 @@ def message_version(self) -> pulumi.Input[str]: """ The version of the request-response that you want Amazon Lex to use to invoke your Lambda function. For more information, see - [Using Lambda Functions](https://docs.aws.amazon.com/lex/latest/dg/using-lambda.html). + [Using Lambda Functions](https://docs.aws.amazon.com/lex/latest/dg/using-lambda.html). Must be less than or equal to 5 characters in length. """ return pulumi.get(self, "message_version") @@ -1019,10 +1019,10 @@ def __init__(__self__, *, """ :param pulumi.Input[Sequence[pulumi.Input['IntentRejectionStatementMessageArgs']]] messages: A set of messages, each of which provides a message string and its type. You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - Attributes are documented under message. + Attributes are documented under message. Must contain between 1 and 15 messages. :param pulumi.Input[str] response_card: The response card. Amazon Lex will substitute session attributes and slot values into the response card. For more information, see - [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. """ pulumi.set(__self__, "messages", messages) if response_card is not None: @@ -1034,7 +1034,7 @@ def messages(self) -> pulumi.Input[Sequence[pulumi.Input['IntentRejectionStateme """ A set of messages, each of which provides a message string and its type. You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - Attributes are documented under message. + Attributes are documented under message. Must contain between 1 and 15 messages. """ return pulumi.get(self, "messages") @@ -1048,7 +1048,7 @@ def response_card(self) -> Optional[pulumi.Input[str]]: """ The response card. Amazon Lex will substitute session attributes and slot values into the response card. For more information, see - [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. """ return pulumi.get(self, "response_card") @@ -1064,10 +1064,10 @@ def __init__(__self__, *, content_type: pulumi.Input[str], group_number: Optional[pulumi.Input[int]] = None): """ - :param pulumi.Input[str] content: The text of the message. + :param pulumi.Input[str] content: The text of the message. Must be less than or equal to 1000 characters in length. :param pulumi.Input[str] content_type: The content type of the message string. :param pulumi.Input[int] group_number: Identifies the message group that the message belongs to. When a group - is assigned to a message, Amazon Lex returns one message from each group in the response. + is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). """ pulumi.set(__self__, "content", content) pulumi.set(__self__, "content_type", content_type) @@ -1078,7 +1078,7 @@ def __init__(__self__, *, @pulumi.getter def content(self) -> pulumi.Input[str]: """ - The text of the message. + The text of the message. Must be less than or equal to 1000 characters in length. """ return pulumi.get(self, "content") @@ -1103,7 +1103,7 @@ def content_type(self, value: pulumi.Input[str]): def group_number(self) -> Optional[pulumi.Input[int]]: """ Identifies the message group that the message belongs to. When a group - is assigned to a message, Amazon Lex returns one message from each group in the response. + is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). """ return pulumi.get(self, "group_number") @@ -1125,22 +1125,22 @@ def __init__(__self__, *, slot_type_version: Optional[pulumi.Input[str]] = None, value_elicitation_prompt: Optional[pulumi.Input['IntentSlotValueElicitationPromptArgs']] = None): """ - :param pulumi.Input[str] name: The name of the intent slot that you want to create. The name is case sensitive. + :param pulumi.Input[str] name: The name of the intent slot that you want to create. The name is case sensitive. Must be less than or equal to 100 characters in length. :param pulumi.Input[str] slot_constraint: Specifies whether the slot is required or optional. :param pulumi.Input[str] slot_type: The type of the slot, either a custom slot type that you defined or one of - the built-in slot types. - :param pulumi.Input[str] description: A description of the bot. + the built-in slot types. Must be less than or equal to 100 characters in length. + :param pulumi.Input[str] description: A description of the bot. Must be less than or equal to 200 characters in length. :param pulumi.Input[int] priority: Directs Lex the order in which to elicit this slot value from the user. For example, if the intent has two slots with priorities 1 and 2, AWS Lex first elicits a value for the slot with priority 1. If multiple slots share the same priority, the order in which Lex elicits - values is arbitrary. + values is arbitrary. Must be between 1 and 100. :param pulumi.Input[str] response_card: The response card. Amazon Lex will substitute session attributes and slot values into the response card. For more information, see - [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. :param pulumi.Input[Sequence[pulumi.Input[str]]] sample_utterances: If you know a specific pattern with which users might respond to an Amazon Lex request for a slot value, you can provide those utterances to improve accuracy. This - is optional. In most cases, Amazon Lex is capable of understanding user utterances. - :param pulumi.Input[str] slot_type_version: The version of the slot type. + is optional. In most cases, Amazon Lex is capable of understanding user utterances. Must have between 1 and 10 items in the list, and each item must be less than or equal to 200 characters in length. + :param pulumi.Input[str] slot_type_version: The version of the slot type. Must be less than or equal to 64 characters in length. :param pulumi.Input['IntentSlotValueElicitationPromptArgs'] value_elicitation_prompt: The prompt that Amazon Lex uses to elicit the slot value from the user. Attributes are documented under prompt. """ @@ -1164,7 +1164,7 @@ def __init__(__self__, *, @pulumi.getter def name(self) -> pulumi.Input[str]: """ - The name of the intent slot that you want to create. The name is case sensitive. + The name of the intent slot that you want to create. The name is case sensitive. Must be less than or equal to 100 characters in length. """ return pulumi.get(self, "name") @@ -1189,7 +1189,7 @@ def slot_constraint(self, value: pulumi.Input[str]): def slot_type(self) -> pulumi.Input[str]: """ The type of the slot, either a custom slot type that you defined or one of - the built-in slot types. + the built-in slot types. Must be less than or equal to 100 characters in length. """ return pulumi.get(self, "slot_type") @@ -1201,7 +1201,7 @@ def slot_type(self, value: pulumi.Input[str]): @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: """ - A description of the bot. + A description of the bot. Must be less than or equal to 200 characters in length. """ return pulumi.get(self, "description") @@ -1216,7 +1216,7 @@ def priority(self) -> Optional[pulumi.Input[int]]: Directs Lex the order in which to elicit this slot value from the user. For example, if the intent has two slots with priorities 1 and 2, AWS Lex first elicits a value for the slot with priority 1. If multiple slots share the same priority, the order in which Lex elicits - values is arbitrary. + values is arbitrary. Must be between 1 and 100. """ return pulumi.get(self, "priority") @@ -1230,7 +1230,7 @@ def response_card(self) -> Optional[pulumi.Input[str]]: """ The response card. Amazon Lex will substitute session attributes and slot values into the response card. For more information, see - [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. """ return pulumi.get(self, "response_card") @@ -1244,7 +1244,7 @@ def sample_utterances(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]] """ If you know a specific pattern with which users might respond to an Amazon Lex request for a slot value, you can provide those utterances to improve accuracy. This - is optional. In most cases, Amazon Lex is capable of understanding user utterances. + is optional. In most cases, Amazon Lex is capable of understanding user utterances. Must have between 1 and 10 items in the list, and each item must be less than or equal to 200 characters in length. """ return pulumi.get(self, "sample_utterances") @@ -1256,7 +1256,7 @@ def sample_utterances(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[s @pulumi.getter(name="slotTypeVersion") def slot_type_version(self) -> Optional[pulumi.Input[str]]: """ - The version of the slot type. + The version of the slot type. Must be less than or equal to 64 characters in length. """ return pulumi.get(self, "slot_type_version") @@ -1285,13 +1285,13 @@ def __init__(__self__, *, messages: pulumi.Input[Sequence[pulumi.Input['IntentSlotValueElicitationPromptMessageArgs']]], response_card: Optional[pulumi.Input[str]] = None): """ - :param pulumi.Input[int] max_attempts: The number of times to prompt the user for information. + :param pulumi.Input[int] max_attempts: The number of times to prompt the user for information. Must be a number between 1 and 5 (inclusive). :param pulumi.Input[Sequence[pulumi.Input['IntentSlotValueElicitationPromptMessageArgs']]] messages: A set of messages, each of which provides a message string and its type. You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - Attributes are documented under message. + Attributes are documented under message. Must contain between 1 and 15 messages. :param pulumi.Input[str] response_card: The response card. Amazon Lex will substitute session attributes and slot values into the response card. For more information, see - [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. """ pulumi.set(__self__, "max_attempts", max_attempts) pulumi.set(__self__, "messages", messages) @@ -1302,7 +1302,7 @@ def __init__(__self__, *, @pulumi.getter(name="maxAttempts") def max_attempts(self) -> pulumi.Input[int]: """ - The number of times to prompt the user for information. + The number of times to prompt the user for information. Must be a number between 1 and 5 (inclusive). """ return pulumi.get(self, "max_attempts") @@ -1316,7 +1316,7 @@ def messages(self) -> pulumi.Input[Sequence[pulumi.Input['IntentSlotValueElicita """ A set of messages, each of which provides a message string and its type. You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - Attributes are documented under message. + Attributes are documented under message. Must contain between 1 and 15 messages. """ return pulumi.get(self, "messages") @@ -1330,7 +1330,7 @@ def response_card(self) -> Optional[pulumi.Input[str]]: """ The response card. Amazon Lex will substitute session attributes and slot values into the response card. For more information, see - [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. """ return pulumi.get(self, "response_card") @@ -1346,10 +1346,10 @@ def __init__(__self__, *, content_type: pulumi.Input[str], group_number: Optional[pulumi.Input[int]] = None): """ - :param pulumi.Input[str] content: The text of the message. + :param pulumi.Input[str] content: The text of the message. Must be less than or equal to 1000 characters in length. :param pulumi.Input[str] content_type: The content type of the message string. :param pulumi.Input[int] group_number: Identifies the message group that the message belongs to. When a group - is assigned to a message, Amazon Lex returns one message from each group in the response. + is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). """ pulumi.set(__self__, "content", content) pulumi.set(__self__, "content_type", content_type) @@ -1360,7 +1360,7 @@ def __init__(__self__, *, @pulumi.getter def content(self) -> pulumi.Input[str]: """ - The text of the message. + The text of the message. Must be less than or equal to 1000 characters in length. """ return pulumi.get(self, "content") @@ -1385,7 +1385,7 @@ def content_type(self, value: pulumi.Input[str]): def group_number(self) -> Optional[pulumi.Input[int]]: """ Identifies the message group that the message belongs to. When a group - is assigned to a message, Amazon Lex returns one message from each group in the response. + is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). """ return pulumi.get(self, "group_number") @@ -1400,8 +1400,8 @@ def __init__(__self__, *, value: pulumi.Input[str], synonyms: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): """ - :param pulumi.Input[str] value: The value of the slot type. - :param pulumi.Input[Sequence[pulumi.Input[str]]] synonyms: Additional values related to the slot type value. + :param pulumi.Input[str] value: The value of the slot type. Must be less than or equal to 140 characters in length. + :param pulumi.Input[Sequence[pulumi.Input[str]]] synonyms: Additional values related to the slot type value. Each item must be less than or equal to 140 characters in length. """ pulumi.set(__self__, "value", value) if synonyms is not None: @@ -1411,7 +1411,7 @@ def __init__(__self__, *, @pulumi.getter def value(self) -> pulumi.Input[str]: """ - The value of the slot type. + The value of the slot type. Must be less than or equal to 140 characters in length. """ return pulumi.get(self, "value") @@ -1423,7 +1423,7 @@ def value(self, value: pulumi.Input[str]): @pulumi.getter def synonyms(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - Additional values related to the slot type value. + Additional values related to the slot type value. Each item must be less than or equal to 140 characters in length. """ return pulumi.get(self, "synonyms") diff --git a/sdk/python/pulumi_aws/lex/bot.py b/sdk/python/pulumi_aws/lex/bot.py index 59a3f5c9c8c..4ef65e6e42f 100644 --- a/sdk/python/pulumi_aws/lex/bot.py +++ b/sdk/python/pulumi_aws/lex/bot.py @@ -78,14 +78,14 @@ def __init__(__self__, :param pulumi.Input[bool] child_directed: By specifying true, you confirm that your use of Amazon Lex is related to a website, program, or other application that is directed or targeted, in whole or in part, to children under age 13 and subject to COPPA. For more information see the [Amazon Lex FAQ](https://aws.amazon.com/lex/faqs#data-security) and the [Amazon Lex PutBot API Docs](https://docs.aws.amazon.com/lex/latest/dg/API_PutBot.html#lex-PutBot-request-childDirected). :param pulumi.Input[pulumi.InputType['BotClarificationPromptArgs']] clarification_prompt: The message that Amazon Lex uses when it doesn't understand the user's request. Attributes are documented under prompt. :param pulumi.Input[bool] create_version: Determines if a new bot version is created when the initial resource is created and on each update. Defaults to `false`. - :param pulumi.Input[str] description: A description of the bot. + :param pulumi.Input[str] description: A description of the bot. Must be less than or equal to 200 characters in length. :param pulumi.Input[bool] detect_sentiment: When set to true user utterances are sent to Amazon Comprehend for sentiment analysis. If you don't specify detectSentiment, the default is `false`. :param pulumi.Input[bool] enable_model_improvements: Set to `true` to enable access to natural language understanding improvements. When you set the `enable_model_improvements` parameter to true you can use the `nlu_intent_confidence_threshold` parameter to configure confidence scores. For more information, see [Confidence Scores](https://docs.aws.amazon.com/lex/latest/dg/confidence-scores.html). You can only set the `enable_model_improvements` parameter in certain Regions. If you set the parameter to true, your bot has access to accuracy improvements. For more information see the [Amazon Lex Bot PutBot API Docs](https://docs.aws.amazon.com/lex/latest/dg/API_PutBot.html#lex-PutBot-request-enableModelImprovements). - :param pulumi.Input[int] idle_session_ttl_in_seconds: The maximum time in seconds that Amazon Lex retains the data gathered in a conversation. Default is `300`. - :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['BotIntentArgs']]]] intents: A set of Intent objects. Each intent represents a command that a user can express. Attributes are documented under intent. + :param pulumi.Input[int] idle_session_ttl_in_seconds: The maximum time in seconds that Amazon Lex retains the data gathered in a conversation. Default is `300`. Must be a number between 60 and 86400 (inclusive). + :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['BotIntentArgs']]]] intents: A set of Intent objects. Each intent represents a command that a user can express. Attributes are documented under intent. Can have up to 100 Intent objects. :param pulumi.Input[str] locale: Specifies the target locale for the bot. Any intent used in the bot must be compatible with the locale of the bot. For available locales, see [Amazon Lex Bot PutBot API Docs](https://docs.aws.amazon.com/lex/latest/dg/API_PutBot.html#lex-PutBot-request-locale). Default is `en-US`. - :param pulumi.Input[str] name: The name of the bot that you want to create, case sensitive. - :param pulumi.Input[float] nlu_intent_confidence_threshold: Determines the threshold where Amazon Lex will insert the AMAZON.FallbackIntent, AMAZON.KendraSearchIntent, or both when returning alternative intents in a PostContent or PostText response. AMAZON.FallbackIntent and AMAZON.KendraSearchIntent are only inserted if they are configured for the bot. For more information see [Amazon Lex Bot PutBot API Docs](https://docs.aws.amazon.com/lex/latest/dg/API_PutBot.html#lex-PutBot-request-nluIntentConfidenceThreshold) This value requires `enable_model_improvements` to be set to `true` and the default is `0`. + :param pulumi.Input[str] name: The name of the bot that you want to create, case sensitive. Must be between 2 and 50 characters in length. + :param pulumi.Input[float] nlu_intent_confidence_threshold: Determines the threshold where Amazon Lex will insert the AMAZON.FallbackIntent, AMAZON.KendraSearchIntent, or both when returning alternative intents in a PostContent or PostText response. AMAZON.FallbackIntent and AMAZON.KendraSearchIntent are only inserted if they are configured for the bot. For more information see [Amazon Lex Bot PutBot API Docs](https://docs.aws.amazon.com/lex/latest/dg/API_PutBot.html#lex-PutBot-request-nluIntentConfidenceThreshold) This value requires `enable_model_improvements` to be set to `true` and the default is `0`. Must be a float between 0 and 1. :param pulumi.Input[str] process_behavior: If you set the `process_behavior` element to `BUILD`, Amazon Lex builds the bot so that it can be run. If you set the element to `SAVE` Amazon Lex saves the bot, but doesn't build it. Default is `SAVE`. :param pulumi.Input[str] voice_id: The Amazon Polly voice ID that you want Amazon Lex to use for voice interactions with the user. The locale configured for the voice must match the locale of the bot. For more information, see [Available Voices](http://docs.aws.amazon.com/polly/latest/dg/voicelist.html) in the Amazon Polly Developer Guide. """ @@ -178,16 +178,16 @@ def get(resource_name: str, :param pulumi.Input[pulumi.InputType['BotClarificationPromptArgs']] clarification_prompt: The message that Amazon Lex uses when it doesn't understand the user's request. Attributes are documented under prompt. :param pulumi.Input[bool] create_version: Determines if a new bot version is created when the initial resource is created and on each update. Defaults to `false`. :param pulumi.Input[str] created_date: The date when the bot version was created. - :param pulumi.Input[str] description: A description of the bot. + :param pulumi.Input[str] description: A description of the bot. Must be less than or equal to 200 characters in length. :param pulumi.Input[bool] detect_sentiment: When set to true user utterances are sent to Amazon Comprehend for sentiment analysis. If you don't specify detectSentiment, the default is `false`. :param pulumi.Input[bool] enable_model_improvements: Set to `true` to enable access to natural language understanding improvements. When you set the `enable_model_improvements` parameter to true you can use the `nlu_intent_confidence_threshold` parameter to configure confidence scores. For more information, see [Confidence Scores](https://docs.aws.amazon.com/lex/latest/dg/confidence-scores.html). You can only set the `enable_model_improvements` parameter in certain Regions. If you set the parameter to true, your bot has access to accuracy improvements. For more information see the [Amazon Lex Bot PutBot API Docs](https://docs.aws.amazon.com/lex/latest/dg/API_PutBot.html#lex-PutBot-request-enableModelImprovements). :param pulumi.Input[str] failure_reason: If status is FAILED, Amazon Lex provides the reason that it failed to build the bot. - :param pulumi.Input[int] idle_session_ttl_in_seconds: The maximum time in seconds that Amazon Lex retains the data gathered in a conversation. Default is `300`. - :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['BotIntentArgs']]]] intents: A set of Intent objects. Each intent represents a command that a user can express. Attributes are documented under intent. + :param pulumi.Input[int] idle_session_ttl_in_seconds: The maximum time in seconds that Amazon Lex retains the data gathered in a conversation. Default is `300`. Must be a number between 60 and 86400 (inclusive). + :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['BotIntentArgs']]]] intents: A set of Intent objects. Each intent represents a command that a user can express. Attributes are documented under intent. Can have up to 100 Intent objects. :param pulumi.Input[str] last_updated_date: The date when the $LATEST version of this bot was updated. :param pulumi.Input[str] locale: Specifies the target locale for the bot. Any intent used in the bot must be compatible with the locale of the bot. For available locales, see [Amazon Lex Bot PutBot API Docs](https://docs.aws.amazon.com/lex/latest/dg/API_PutBot.html#lex-PutBot-request-locale). Default is `en-US`. - :param pulumi.Input[str] name: The name of the bot that you want to create, case sensitive. - :param pulumi.Input[float] nlu_intent_confidence_threshold: Determines the threshold where Amazon Lex will insert the AMAZON.FallbackIntent, AMAZON.KendraSearchIntent, or both when returning alternative intents in a PostContent or PostText response. AMAZON.FallbackIntent and AMAZON.KendraSearchIntent are only inserted if they are configured for the bot. For more information see [Amazon Lex Bot PutBot API Docs](https://docs.aws.amazon.com/lex/latest/dg/API_PutBot.html#lex-PutBot-request-nluIntentConfidenceThreshold) This value requires `enable_model_improvements` to be set to `true` and the default is `0`. + :param pulumi.Input[str] name: The name of the bot that you want to create, case sensitive. Must be between 2 and 50 characters in length. + :param pulumi.Input[float] nlu_intent_confidence_threshold: Determines the threshold where Amazon Lex will insert the AMAZON.FallbackIntent, AMAZON.KendraSearchIntent, or both when returning alternative intents in a PostContent or PostText response. AMAZON.FallbackIntent and AMAZON.KendraSearchIntent are only inserted if they are configured for the bot. For more information see [Amazon Lex Bot PutBot API Docs](https://docs.aws.amazon.com/lex/latest/dg/API_PutBot.html#lex-PutBot-request-nluIntentConfidenceThreshold) This value requires `enable_model_improvements` to be set to `true` and the default is `0`. Must be a float between 0 and 1. :param pulumi.Input[str] process_behavior: If you set the `process_behavior` element to `BUILD`, Amazon Lex builds the bot so that it can be run. If you set the element to `SAVE` Amazon Lex saves the bot, but doesn't build it. Default is `SAVE`. :param pulumi.Input[str] status: When you send a request to create or update a bot, Amazon Lex sets the status response element to BUILDING. After Amazon Lex builds the bot, it sets status to READY. If Amazon Lex can't @@ -281,7 +281,7 @@ def created_date(self) -> pulumi.Output[str]: @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: """ - A description of the bot. + A description of the bot. Must be less than or equal to 200 characters in length. """ return pulumi.get(self, "description") @@ -313,7 +313,7 @@ def failure_reason(self) -> pulumi.Output[str]: @pulumi.getter(name="idleSessionTtlInSeconds") def idle_session_ttl_in_seconds(self) -> pulumi.Output[Optional[int]]: """ - The maximum time in seconds that Amazon Lex retains the data gathered in a conversation. Default is `300`. + The maximum time in seconds that Amazon Lex retains the data gathered in a conversation. Default is `300`. Must be a number between 60 and 86400 (inclusive). """ return pulumi.get(self, "idle_session_ttl_in_seconds") @@ -321,7 +321,7 @@ def idle_session_ttl_in_seconds(self) -> pulumi.Output[Optional[int]]: @pulumi.getter def intents(self) -> pulumi.Output[Sequence['outputs.BotIntent']]: """ - A set of Intent objects. Each intent represents a command that a user can express. Attributes are documented under intent. + A set of Intent objects. Each intent represents a command that a user can express. Attributes are documented under intent. Can have up to 100 Intent objects. """ return pulumi.get(self, "intents") @@ -345,7 +345,7 @@ def locale(self) -> pulumi.Output[Optional[str]]: @pulumi.getter def name(self) -> pulumi.Output[str]: """ - The name of the bot that you want to create, case sensitive. + The name of the bot that you want to create, case sensitive. Must be between 2 and 50 characters in length. """ return pulumi.get(self, "name") @@ -353,7 +353,7 @@ def name(self) -> pulumi.Output[str]: @pulumi.getter(name="nluIntentConfidenceThreshold") def nlu_intent_confidence_threshold(self) -> pulumi.Output[Optional[float]]: """ - Determines the threshold where Amazon Lex will insert the AMAZON.FallbackIntent, AMAZON.KendraSearchIntent, or both when returning alternative intents in a PostContent or PostText response. AMAZON.FallbackIntent and AMAZON.KendraSearchIntent are only inserted if they are configured for the bot. For more information see [Amazon Lex Bot PutBot API Docs](https://docs.aws.amazon.com/lex/latest/dg/API_PutBot.html#lex-PutBot-request-nluIntentConfidenceThreshold) This value requires `enable_model_improvements` to be set to `true` and the default is `0`. + Determines the threshold where Amazon Lex will insert the AMAZON.FallbackIntent, AMAZON.KendraSearchIntent, or both when returning alternative intents in a PostContent or PostText response. AMAZON.FallbackIntent and AMAZON.KendraSearchIntent are only inserted if they are configured for the bot. For more information see [Amazon Lex Bot PutBot API Docs](https://docs.aws.amazon.com/lex/latest/dg/API_PutBot.html#lex-PutBot-request-nluIntentConfidenceThreshold) This value requires `enable_model_improvements` to be set to `true` and the default is `0`. Must be a float between 0 and 1. """ return pulumi.get(self, "nlu_intent_confidence_threshold") diff --git a/sdk/python/pulumi_aws/lex/bot_alias.py b/sdk/python/pulumi_aws/lex/bot_alias.py index e10d80902f9..4e04a5e8a97 100644 --- a/sdk/python/pulumi_aws/lex/bot_alias.py +++ b/sdk/python/pulumi_aws/lex/bot_alias.py @@ -47,8 +47,8 @@ def __init__(__self__, :param pulumi.Input[str] bot_name: The name of the bot. :param pulumi.Input[str] bot_version: The name of the bot. :param pulumi.Input[pulumi.InputType['BotAliasConversationLogsArgs']] conversation_logs: The settings that determine how Amazon Lex uses conversation logs for the alias. Attributes are documented under conversation_logs. - :param pulumi.Input[str] description: A description of the alias. - :param pulumi.Input[str] name: The name of the alias. The name is not case sensitive. + :param pulumi.Input[str] description: A description of the alias. Must be less than or equal to 200 characters in length. + :param pulumi.Input[str] name: The name of the alias. The name is not case sensitive. Must be less than or equal to 100 characters in length. """ if __name__ is not None: warnings.warn("explicit use of __name__ is deprecated", DeprecationWarning) @@ -112,9 +112,9 @@ def get(resource_name: str, :param pulumi.Input[str] checksum: Checksum of the bot alias. :param pulumi.Input[pulumi.InputType['BotAliasConversationLogsArgs']] conversation_logs: The settings that determine how Amazon Lex uses conversation logs for the alias. Attributes are documented under conversation_logs. :param pulumi.Input[str] created_date: The date that the bot alias was created. - :param pulumi.Input[str] description: A description of the alias. + :param pulumi.Input[str] description: A description of the alias. Must be less than or equal to 200 characters in length. :param pulumi.Input[str] last_updated_date: The date that the bot alias was updated. When you create a resource, the creation date and the last updated date are the same. - :param pulumi.Input[str] name: The name of the alias. The name is not case sensitive. + :param pulumi.Input[str] name: The name of the alias. The name is not case sensitive. Must be less than or equal to 100 characters in length. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -183,7 +183,7 @@ def created_date(self) -> pulumi.Output[str]: @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: """ - A description of the alias. + A description of the alias. Must be less than or equal to 200 characters in length. """ return pulumi.get(self, "description") @@ -199,7 +199,7 @@ def last_updated_date(self) -> pulumi.Output[str]: @pulumi.getter def name(self) -> pulumi.Output[str]: """ - The name of the alias. The name is not case sensitive. + The name of the alias. The name is not case sensitive. Must be less than or equal to 100 characters in length. """ return pulumi.get(self, "name") diff --git a/sdk/python/pulumi_aws/lex/intent.py b/sdk/python/pulumi_aws/lex/intent.py index 80acf2506b0..faa10a75cdb 100644 --- a/sdk/python/pulumi_aws/lex/intent.py +++ b/sdk/python/pulumi_aws/lex/intent.py @@ -129,7 +129,7 @@ def __init__(__self__, or neither. Attributes are documented under prompt. :param pulumi.Input[bool] create_version: Determines if a new slot type version is created when the initial resource is created and on each update. Defaults to `false`. - :param pulumi.Input[str] description: A description of the bot. + :param pulumi.Input[str] description: A description of the bot. Must be less than or equal to 200 characters in length. :param pulumi.Input[pulumi.InputType['IntentDialogCodeHookArgs']] dialog_code_hook: Specifies a Lambda function to invoke for each user input. You can invoke this Lambda function to personalize user interaction. Attributes are documented under code_hook. :param pulumi.Input[pulumi.InputType['IntentFollowUpPromptArgs']] follow_up_prompt: Amazon Lex uses this prompt to solicit additional activity after @@ -139,7 +139,7 @@ def __init__(__self__, :param pulumi.Input[pulumi.InputType['IntentFulfillmentActivityArgs']] fulfillment_activity: Describes how the intent is fulfilled. For example, after a user provides all of the information for a pizza order, `fulfillment_activity` defines how the bot places an order with a local pizza store. Attributes are documented under fulfillment_activity. - :param pulumi.Input[str] name: The name of the intent slot that you want to create. The name is case sensitive. + :param pulumi.Input[str] name: The name of the intent slot that you want to create. The name is case sensitive. Must be less than or equal to 100 characters in length. :param pulumi.Input[str] parent_intent_signature: A unique identifier for the built-in intent to base this intent on. To find the signature for an intent, see [Standard Built-in Intents](https://developer.amazon.com/public/solutions/alexa/alexa-skills-kit/docs/built-in-intent-ref/standard-intents) @@ -149,7 +149,7 @@ def __init__(__self__, documented below under statement. :param pulumi.Input[Sequence[pulumi.Input[str]]] sample_utterances: If you know a specific pattern with which users might respond to an Amazon Lex request for a slot value, you can provide those utterances to improve accuracy. This - is optional. In most cases, Amazon Lex is capable of understanding user utterances. + is optional. In most cases, Amazon Lex is capable of understanding user utterances. Must have between 1 and 10 items in the list, and each item must be less than or equal to 200 characters in length. :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['IntentSlotArgs']]]] slots: An list of intent slots. At runtime, Amazon Lex elicits required slot values from the user using prompts defined in the slots. Attributes are documented under slot. """ @@ -237,7 +237,7 @@ def get(resource_name: str, :param pulumi.Input[bool] create_version: Determines if a new slot type version is created when the initial resource is created and on each update. Defaults to `false`. :param pulumi.Input[str] created_date: The date when the intent version was created. - :param pulumi.Input[str] description: A description of the bot. + :param pulumi.Input[str] description: A description of the bot. Must be less than or equal to 200 characters in length. :param pulumi.Input[pulumi.InputType['IntentDialogCodeHookArgs']] dialog_code_hook: Specifies a Lambda function to invoke for each user input. You can invoke this Lambda function to personalize user interaction. Attributes are documented under code_hook. :param pulumi.Input[pulumi.InputType['IntentFollowUpPromptArgs']] follow_up_prompt: Amazon Lex uses this prompt to solicit additional activity after @@ -248,7 +248,7 @@ def get(resource_name: str, user provides all of the information for a pizza order, `fulfillment_activity` defines how the bot places an order with a local pizza store. Attributes are documented under fulfillment_activity. :param pulumi.Input[str] last_updated_date: The date when the $LATEST version of this intent was updated. - :param pulumi.Input[str] name: The name of the intent slot that you want to create. The name is case sensitive. + :param pulumi.Input[str] name: The name of the intent slot that you want to create. The name is case sensitive. Must be less than or equal to 100 characters in length. :param pulumi.Input[str] parent_intent_signature: A unique identifier for the built-in intent to base this intent on. To find the signature for an intent, see [Standard Built-in Intents](https://developer.amazon.com/public/solutions/alexa/alexa-skills-kit/docs/built-in-intent-ref/standard-intents) @@ -258,7 +258,7 @@ def get(resource_name: str, documented below under statement. :param pulumi.Input[Sequence[pulumi.Input[str]]] sample_utterances: If you know a specific pattern with which users might respond to an Amazon Lex request for a slot value, you can provide those utterances to improve accuracy. This - is optional. In most cases, Amazon Lex is capable of understanding user utterances. + is optional. In most cases, Amazon Lex is capable of understanding user utterances. Must have between 1 and 10 items in the list, and each item must be less than or equal to 200 characters in length. :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['IntentSlotArgs']]]] slots: An list of intent slots. At runtime, Amazon Lex elicits required slot values from the user using prompts defined in the slots. Attributes are documented under slot. :param pulumi.Input[str] version: The version of the bot. @@ -346,7 +346,7 @@ def created_date(self) -> pulumi.Output[str]: @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: """ - A description of the bot. + A description of the bot. Must be less than or equal to 200 characters in length. """ return pulumi.get(self, "description") @@ -392,7 +392,7 @@ def last_updated_date(self) -> pulumi.Output[str]: @pulumi.getter def name(self) -> pulumi.Output[str]: """ - The name of the intent slot that you want to create. The name is case sensitive. + The name of the intent slot that you want to create. The name is case sensitive. Must be less than or equal to 100 characters in length. """ return pulumi.get(self, "name") @@ -423,7 +423,7 @@ def sample_utterances(self) -> pulumi.Output[Optional[Sequence[str]]]: """ If you know a specific pattern with which users might respond to an Amazon Lex request for a slot value, you can provide those utterances to improve accuracy. This - is optional. In most cases, Amazon Lex is capable of understanding user utterances. + is optional. In most cases, Amazon Lex is capable of understanding user utterances. Must have between 1 and 10 items in the list, and each item must be less than or equal to 200 characters in length. """ return pulumi.get(self, "sample_utterances") diff --git a/sdk/python/pulumi_aws/lex/outputs.py b/sdk/python/pulumi_aws/lex/outputs.py index 28c51f9af75..2f0a8b4e234 100644 --- a/sdk/python/pulumi_aws/lex/outputs.py +++ b/sdk/python/pulumi_aws/lex/outputs.py @@ -131,7 +131,7 @@ def __init__(__self__, *, iam_role_arn: str, log_settings: Optional[Sequence['outputs.BotAliasConversationLogsLogSetting']] = None): """ - :param str iam_role_arn: The Amazon Resource Name (ARN) of the IAM role used to write your logs to CloudWatch Logs or an S3 bucket. + :param str iam_role_arn: The Amazon Resource Name (ARN) of the IAM role used to write your logs to CloudWatch Logs or an S3 bucket. Must be between 20 and 2048 characters in length. :param Sequence['BotAliasConversationLogsLogSettingArgs'] log_settings: The settings for your conversation logs. You can log text, audio, or both. Attributes are documented under log_settings. """ pulumi.set(__self__, "iam_role_arn", iam_role_arn) @@ -142,7 +142,7 @@ def __init__(__self__, *, @pulumi.getter(name="iamRoleArn") def iam_role_arn(self) -> str: """ - The Amazon Resource Name (ARN) of the IAM role used to write your logs to CloudWatch Logs or an S3 bucket. + The Amazon Resource Name (ARN) of the IAM role used to write your logs to CloudWatch Logs or an S3 bucket. Must be between 20 and 2048 characters in length. """ return pulumi.get(self, "iam_role_arn") @@ -169,8 +169,8 @@ def __init__(__self__, *, """ :param str destination: The destination where logs are delivered. Options are `CLOUDWATCH_LOGS` or `S3`. :param str log_type: The type of logging that is enabled. Options are `AUDIO` or `TEXT`. - :param str resource_arn: The Amazon Resource Name (ARN) of the CloudWatch Logs log group or S3 bucket where the logs are delivered. - :param str kms_key_arn: The Amazon Resource Name (ARN) of the key used to encrypt audio logs in an S3 bucket. This can only be specified when `destination` is set to `S3`. + :param str resource_arn: The Amazon Resource Name (ARN) of the CloudWatch Logs log group or S3 bucket where the logs are delivered. Must be less than or equal to 2048 characters in length. + :param str kms_key_arn: The Amazon Resource Name (ARN) of the key used to encrypt audio logs in an S3 bucket. This can only be specified when `destination` is set to `S3`. Must be between 20 and 2048 characters in length. :param str resource_prefix: The prefix of the S3 object key for `AUDIO` logs or the log stream name for `TEXT` logs. """ pulumi.set(__self__, "destination", destination) @@ -201,7 +201,7 @@ def log_type(self) -> str: @pulumi.getter(name="resourceArn") def resource_arn(self) -> str: """ - The Amazon Resource Name (ARN) of the CloudWatch Logs log group or S3 bucket where the logs are delivered. + The Amazon Resource Name (ARN) of the CloudWatch Logs log group or S3 bucket where the logs are delivered. Must be less than or equal to 2048 characters in length. """ return pulumi.get(self, "resource_arn") @@ -209,7 +209,7 @@ def resource_arn(self) -> str: @pulumi.getter(name="kmsKeyArn") def kms_key_arn(self) -> Optional[str]: """ - The Amazon Resource Name (ARN) of the key used to encrypt audio logs in an S3 bucket. This can only be specified when `destination` is set to `S3`. + The Amazon Resource Name (ARN) of the key used to encrypt audio logs in an S3 bucket. This can only be specified when `destination` is set to `S3`. Must be between 20 and 2048 characters in length. """ return pulumi.get(self, "kms_key_arn") @@ -329,8 +329,8 @@ def __init__(__self__, *, intent_name: str, intent_version: str): """ - :param str intent_name: The name of the intent. - :param str intent_version: The version of the intent. + :param str intent_name: The name of the intent. Must be less than or equal to 100 characters in length. + :param str intent_version: The version of the intent. Must be less than or equal to 64 characters in length. """ pulumi.set(__self__, "intent_name", intent_name) pulumi.set(__self__, "intent_version", intent_version) @@ -339,7 +339,7 @@ def __init__(__self__, *, @pulumi.getter(name="intentName") def intent_name(self) -> str: """ - The name of the intent. + The name of the intent. Must be less than or equal to 100 characters in length. """ return pulumi.get(self, "intent_name") @@ -347,7 +347,7 @@ def intent_name(self) -> str: @pulumi.getter(name="intentVersion") def intent_version(self) -> str: """ - The version of the intent. + The version of the intent. Must be less than or equal to 64 characters in length. """ return pulumi.get(self, "intent_version") @@ -363,10 +363,10 @@ def __init__(__self__, *, """ :param Sequence['IntentConclusionStatementMessageArgs'] messages: A set of messages, each of which provides a message string and its type. You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - Attributes are documented under message. + Attributes are documented under message. Must contain between 1 and 15 messages. :param str response_card: The response card. Amazon Lex will substitute session attributes and slot values into the response card. For more information, see - [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. """ pulumi.set(__self__, "messages", messages) if response_card is not None: @@ -378,7 +378,7 @@ def messages(self) -> Sequence['outputs.IntentConclusionStatementMessage']: """ A set of messages, each of which provides a message string and its type. You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - Attributes are documented under message. + Attributes are documented under message. Must contain between 1 and 15 messages. """ return pulumi.get(self, "messages") @@ -388,7 +388,7 @@ def response_card(self) -> Optional[str]: """ The response card. Amazon Lex will substitute session attributes and slot values into the response card. For more information, see - [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. """ return pulumi.get(self, "response_card") @@ -403,10 +403,10 @@ def __init__(__self__, *, content_type: str, group_number: Optional[int] = None): """ - :param str content: The text of the message. + :param str content: The text of the message. Must be less than or equal to 1000 characters in length. :param str content_type: The content type of the message string. :param int group_number: Identifies the message group that the message belongs to. When a group - is assigned to a message, Amazon Lex returns one message from each group in the response. + is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). """ pulumi.set(__self__, "content", content) pulumi.set(__self__, "content_type", content_type) @@ -417,7 +417,7 @@ def __init__(__self__, *, @pulumi.getter def content(self) -> str: """ - The text of the message. + The text of the message. Must be less than or equal to 1000 characters in length. """ return pulumi.get(self, "content") @@ -434,7 +434,7 @@ def content_type(self) -> str: def group_number(self) -> Optional[int]: """ Identifies the message group that the message belongs to. When a group - is assigned to a message, Amazon Lex returns one message from each group in the response. + is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). """ return pulumi.get(self, "group_number") @@ -449,13 +449,13 @@ def __init__(__self__, *, messages: Sequence['outputs.IntentConfirmationPromptMessage'], response_card: Optional[str] = None): """ - :param int max_attempts: The number of times to prompt the user for information. + :param int max_attempts: The number of times to prompt the user for information. Must be a number between 1 and 5 (inclusive). :param Sequence['IntentConfirmationPromptMessageArgs'] messages: A set of messages, each of which provides a message string and its type. You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - Attributes are documented under message. + Attributes are documented under message. Must contain between 1 and 15 messages. :param str response_card: The response card. Amazon Lex will substitute session attributes and slot values into the response card. For more information, see - [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. """ pulumi.set(__self__, "max_attempts", max_attempts) pulumi.set(__self__, "messages", messages) @@ -466,7 +466,7 @@ def __init__(__self__, *, @pulumi.getter(name="maxAttempts") def max_attempts(self) -> int: """ - The number of times to prompt the user for information. + The number of times to prompt the user for information. Must be a number between 1 and 5 (inclusive). """ return pulumi.get(self, "max_attempts") @@ -476,7 +476,7 @@ def messages(self) -> Sequence['outputs.IntentConfirmationPromptMessage']: """ A set of messages, each of which provides a message string and its type. You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - Attributes are documented under message. + Attributes are documented under message. Must contain between 1 and 15 messages. """ return pulumi.get(self, "messages") @@ -486,7 +486,7 @@ def response_card(self) -> Optional[str]: """ The response card. Amazon Lex will substitute session attributes and slot values into the response card. For more information, see - [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. """ return pulumi.get(self, "response_card") @@ -501,10 +501,10 @@ def __init__(__self__, *, content_type: str, group_number: Optional[int] = None): """ - :param str content: The text of the message. + :param str content: The text of the message. Must be less than or equal to 1000 characters in length. :param str content_type: The content type of the message string. :param int group_number: Identifies the message group that the message belongs to. When a group - is assigned to a message, Amazon Lex returns one message from each group in the response. + is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). """ pulumi.set(__self__, "content", content) pulumi.set(__self__, "content_type", content_type) @@ -515,7 +515,7 @@ def __init__(__self__, *, @pulumi.getter def content(self) -> str: """ - The text of the message. + The text of the message. Must be less than or equal to 1000 characters in length. """ return pulumi.get(self, "content") @@ -532,7 +532,7 @@ def content_type(self) -> str: def group_number(self) -> Optional[int]: """ Identifies the message group that the message belongs to. When a group - is assigned to a message, Amazon Lex returns one message from each group in the response. + is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). """ return pulumi.get(self, "group_number") @@ -548,7 +548,7 @@ def __init__(__self__, *, """ :param str message_version: The version of the request-response that you want Amazon Lex to use to invoke your Lambda function. For more information, see - [Using Lambda Functions](https://docs.aws.amazon.com/lex/latest/dg/using-lambda.html). + [Using Lambda Functions](https://docs.aws.amazon.com/lex/latest/dg/using-lambda.html). Must be less than or equal to 5 characters in length. :param str uri: The Amazon Resource Name (ARN) of the Lambda function. """ pulumi.set(__self__, "message_version", message_version) @@ -560,7 +560,7 @@ def message_version(self) -> str: """ The version of the request-response that you want Amazon Lex to use to invoke your Lambda function. For more information, see - [Using Lambda Functions](https://docs.aws.amazon.com/lex/latest/dg/using-lambda.html). + [Using Lambda Functions](https://docs.aws.amazon.com/lex/latest/dg/using-lambda.html). Must be less than or equal to 5 characters in length. """ return pulumi.get(self, "message_version") @@ -619,13 +619,13 @@ def __init__(__self__, *, messages: Sequence['outputs.IntentFollowUpPromptPromptMessage'], response_card: Optional[str] = None): """ - :param int max_attempts: The number of times to prompt the user for information. + :param int max_attempts: The number of times to prompt the user for information. Must be a number between 1 and 5 (inclusive). :param Sequence['IntentFollowUpPromptPromptMessageArgs'] messages: A set of messages, each of which provides a message string and its type. You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - Attributes are documented under message. + Attributes are documented under message. Must contain between 1 and 15 messages. :param str response_card: The response card. Amazon Lex will substitute session attributes and slot values into the response card. For more information, see - [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. """ pulumi.set(__self__, "max_attempts", max_attempts) pulumi.set(__self__, "messages", messages) @@ -636,7 +636,7 @@ def __init__(__self__, *, @pulumi.getter(name="maxAttempts") def max_attempts(self) -> int: """ - The number of times to prompt the user for information. + The number of times to prompt the user for information. Must be a number between 1 and 5 (inclusive). """ return pulumi.get(self, "max_attempts") @@ -646,7 +646,7 @@ def messages(self) -> Sequence['outputs.IntentFollowUpPromptPromptMessage']: """ A set of messages, each of which provides a message string and its type. You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - Attributes are documented under message. + Attributes are documented under message. Must contain between 1 and 15 messages. """ return pulumi.get(self, "messages") @@ -656,7 +656,7 @@ def response_card(self) -> Optional[str]: """ The response card. Amazon Lex will substitute session attributes and slot values into the response card. For more information, see - [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. """ return pulumi.get(self, "response_card") @@ -671,10 +671,10 @@ def __init__(__self__, *, content_type: str, group_number: Optional[int] = None): """ - :param str content: The text of the message. + :param str content: The text of the message. Must be less than or equal to 1000 characters in length. :param str content_type: The content type of the message string. :param int group_number: Identifies the message group that the message belongs to. When a group - is assigned to a message, Amazon Lex returns one message from each group in the response. + is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). """ pulumi.set(__self__, "content", content) pulumi.set(__self__, "content_type", content_type) @@ -685,7 +685,7 @@ def __init__(__self__, *, @pulumi.getter def content(self) -> str: """ - The text of the message. + The text of the message. Must be less than or equal to 1000 characters in length. """ return pulumi.get(self, "content") @@ -702,7 +702,7 @@ def content_type(self) -> str: def group_number(self) -> Optional[int]: """ Identifies the message group that the message belongs to. When a group - is assigned to a message, Amazon Lex returns one message from each group in the response. + is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). """ return pulumi.get(self, "group_number") @@ -718,10 +718,10 @@ def __init__(__self__, *, """ :param Sequence['IntentFollowUpPromptRejectionStatementMessageArgs'] messages: A set of messages, each of which provides a message string and its type. You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - Attributes are documented under message. + Attributes are documented under message. Must contain between 1 and 15 messages. :param str response_card: The response card. Amazon Lex will substitute session attributes and slot values into the response card. For more information, see - [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. """ pulumi.set(__self__, "messages", messages) if response_card is not None: @@ -733,7 +733,7 @@ def messages(self) -> Sequence['outputs.IntentFollowUpPromptRejectionStatementMe """ A set of messages, each of which provides a message string and its type. You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - Attributes are documented under message. + Attributes are documented under message. Must contain between 1 and 15 messages. """ return pulumi.get(self, "messages") @@ -743,7 +743,7 @@ def response_card(self) -> Optional[str]: """ The response card. Amazon Lex will substitute session attributes and slot values into the response card. For more information, see - [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. """ return pulumi.get(self, "response_card") @@ -758,10 +758,10 @@ def __init__(__self__, *, content_type: str, group_number: Optional[int] = None): """ - :param str content: The text of the message. + :param str content: The text of the message. Must be less than or equal to 1000 characters in length. :param str content_type: The content type of the message string. :param int group_number: Identifies the message group that the message belongs to. When a group - is assigned to a message, Amazon Lex returns one message from each group in the response. + is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). """ pulumi.set(__self__, "content", content) pulumi.set(__self__, "content_type", content_type) @@ -772,7 +772,7 @@ def __init__(__self__, *, @pulumi.getter def content(self) -> str: """ - The text of the message. + The text of the message. Must be less than or equal to 1000 characters in length. """ return pulumi.get(self, "content") @@ -789,7 +789,7 @@ def content_type(self) -> str: def group_number(self) -> Optional[int]: """ Identifies the message group that the message belongs to. When a group - is assigned to a message, Amazon Lex returns one message from each group in the response. + is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). """ return pulumi.get(self, "group_number") @@ -842,7 +842,7 @@ def __init__(__self__, *, """ :param str message_version: The version of the request-response that you want Amazon Lex to use to invoke your Lambda function. For more information, see - [Using Lambda Functions](https://docs.aws.amazon.com/lex/latest/dg/using-lambda.html). + [Using Lambda Functions](https://docs.aws.amazon.com/lex/latest/dg/using-lambda.html). Must be less than or equal to 5 characters in length. :param str uri: The Amazon Resource Name (ARN) of the Lambda function. """ pulumi.set(__self__, "message_version", message_version) @@ -854,7 +854,7 @@ def message_version(self) -> str: """ The version of the request-response that you want Amazon Lex to use to invoke your Lambda function. For more information, see - [Using Lambda Functions](https://docs.aws.amazon.com/lex/latest/dg/using-lambda.html). + [Using Lambda Functions](https://docs.aws.amazon.com/lex/latest/dg/using-lambda.html). Must be less than or equal to 5 characters in length. """ return pulumi.get(self, "message_version") @@ -878,10 +878,10 @@ def __init__(__self__, *, """ :param Sequence['IntentRejectionStatementMessageArgs'] messages: A set of messages, each of which provides a message string and its type. You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - Attributes are documented under message. + Attributes are documented under message. Must contain between 1 and 15 messages. :param str response_card: The response card. Amazon Lex will substitute session attributes and slot values into the response card. For more information, see - [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. """ pulumi.set(__self__, "messages", messages) if response_card is not None: @@ -893,7 +893,7 @@ def messages(self) -> Sequence['outputs.IntentRejectionStatementMessage']: """ A set of messages, each of which provides a message string and its type. You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - Attributes are documented under message. + Attributes are documented under message. Must contain between 1 and 15 messages. """ return pulumi.get(self, "messages") @@ -903,7 +903,7 @@ def response_card(self) -> Optional[str]: """ The response card. Amazon Lex will substitute session attributes and slot values into the response card. For more information, see - [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. """ return pulumi.get(self, "response_card") @@ -918,10 +918,10 @@ def __init__(__self__, *, content_type: str, group_number: Optional[int] = None): """ - :param str content: The text of the message. + :param str content: The text of the message. Must be less than or equal to 1000 characters in length. :param str content_type: The content type of the message string. :param int group_number: Identifies the message group that the message belongs to. When a group - is assigned to a message, Amazon Lex returns one message from each group in the response. + is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). """ pulumi.set(__self__, "content", content) pulumi.set(__self__, "content_type", content_type) @@ -932,7 +932,7 @@ def __init__(__self__, *, @pulumi.getter def content(self) -> str: """ - The text of the message. + The text of the message. Must be less than or equal to 1000 characters in length. """ return pulumi.get(self, "content") @@ -949,7 +949,7 @@ def content_type(self) -> str: def group_number(self) -> Optional[int]: """ Identifies the message group that the message belongs to. When a group - is assigned to a message, Amazon Lex returns one message from each group in the response. + is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). """ return pulumi.get(self, "group_number") @@ -970,22 +970,22 @@ def __init__(__self__, *, slot_type_version: Optional[str] = None, value_elicitation_prompt: Optional['outputs.IntentSlotValueElicitationPrompt'] = None): """ - :param str name: The name of the intent slot that you want to create. The name is case sensitive. + :param str name: The name of the intent slot that you want to create. The name is case sensitive. Must be less than or equal to 100 characters in length. :param str slot_constraint: Specifies whether the slot is required or optional. :param str slot_type: The type of the slot, either a custom slot type that you defined or one of - the built-in slot types. - :param str description: A description of the bot. + the built-in slot types. Must be less than or equal to 100 characters in length. + :param str description: A description of the bot. Must be less than or equal to 200 characters in length. :param int priority: Directs Lex the order in which to elicit this slot value from the user. For example, if the intent has two slots with priorities 1 and 2, AWS Lex first elicits a value for the slot with priority 1. If multiple slots share the same priority, the order in which Lex elicits - values is arbitrary. + values is arbitrary. Must be between 1 and 100. :param str response_card: The response card. Amazon Lex will substitute session attributes and slot values into the response card. For more information, see - [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. :param Sequence[str] sample_utterances: If you know a specific pattern with which users might respond to an Amazon Lex request for a slot value, you can provide those utterances to improve accuracy. This - is optional. In most cases, Amazon Lex is capable of understanding user utterances. - :param str slot_type_version: The version of the slot type. + is optional. In most cases, Amazon Lex is capable of understanding user utterances. Must have between 1 and 10 items in the list, and each item must be less than or equal to 200 characters in length. + :param str slot_type_version: The version of the slot type. Must be less than or equal to 64 characters in length. :param 'IntentSlotValueElicitationPromptArgs' value_elicitation_prompt: The prompt that Amazon Lex uses to elicit the slot value from the user. Attributes are documented under prompt. """ @@ -1009,7 +1009,7 @@ def __init__(__self__, *, @pulumi.getter def name(self) -> str: """ - The name of the intent slot that you want to create. The name is case sensitive. + The name of the intent slot that you want to create. The name is case sensitive. Must be less than or equal to 100 characters in length. """ return pulumi.get(self, "name") @@ -1026,7 +1026,7 @@ def slot_constraint(self) -> str: def slot_type(self) -> str: """ The type of the slot, either a custom slot type that you defined or one of - the built-in slot types. + the built-in slot types. Must be less than or equal to 100 characters in length. """ return pulumi.get(self, "slot_type") @@ -1034,7 +1034,7 @@ def slot_type(self) -> str: @pulumi.getter def description(self) -> Optional[str]: """ - A description of the bot. + A description of the bot. Must be less than or equal to 200 characters in length. """ return pulumi.get(self, "description") @@ -1045,7 +1045,7 @@ def priority(self) -> Optional[int]: Directs Lex the order in which to elicit this slot value from the user. For example, if the intent has two slots with priorities 1 and 2, AWS Lex first elicits a value for the slot with priority 1. If multiple slots share the same priority, the order in which Lex elicits - values is arbitrary. + values is arbitrary. Must be between 1 and 100. """ return pulumi.get(self, "priority") @@ -1055,7 +1055,7 @@ def response_card(self) -> Optional[str]: """ The response card. Amazon Lex will substitute session attributes and slot values into the response card. For more information, see - [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. """ return pulumi.get(self, "response_card") @@ -1065,7 +1065,7 @@ def sample_utterances(self) -> Optional[Sequence[str]]: """ If you know a specific pattern with which users might respond to an Amazon Lex request for a slot value, you can provide those utterances to improve accuracy. This - is optional. In most cases, Amazon Lex is capable of understanding user utterances. + is optional. In most cases, Amazon Lex is capable of understanding user utterances. Must have between 1 and 10 items in the list, and each item must be less than or equal to 200 characters in length. """ return pulumi.get(self, "sample_utterances") @@ -1073,7 +1073,7 @@ def sample_utterances(self) -> Optional[Sequence[str]]: @pulumi.getter(name="slotTypeVersion") def slot_type_version(self) -> Optional[str]: """ - The version of the slot type. + The version of the slot type. Must be less than or equal to 64 characters in length. """ return pulumi.get(self, "slot_type_version") @@ -1097,13 +1097,13 @@ def __init__(__self__, *, messages: Sequence['outputs.IntentSlotValueElicitationPromptMessage'], response_card: Optional[str] = None): """ - :param int max_attempts: The number of times to prompt the user for information. + :param int max_attempts: The number of times to prompt the user for information. Must be a number between 1 and 5 (inclusive). :param Sequence['IntentSlotValueElicitationPromptMessageArgs'] messages: A set of messages, each of which provides a message string and its type. You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - Attributes are documented under message. + Attributes are documented under message. Must contain between 1 and 15 messages. :param str response_card: The response card. Amazon Lex will substitute session attributes and slot values into the response card. For more information, see - [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. """ pulumi.set(__self__, "max_attempts", max_attempts) pulumi.set(__self__, "messages", messages) @@ -1114,7 +1114,7 @@ def __init__(__self__, *, @pulumi.getter(name="maxAttempts") def max_attempts(self) -> int: """ - The number of times to prompt the user for information. + The number of times to prompt the user for information. Must be a number between 1 and 5 (inclusive). """ return pulumi.get(self, "max_attempts") @@ -1124,7 +1124,7 @@ def messages(self) -> Sequence['outputs.IntentSlotValueElicitationPromptMessage' """ A set of messages, each of which provides a message string and its type. You can specify the message string in plain text or in Speech Synthesis Markup Language (SSML). - Attributes are documented under message. + Attributes are documented under message. Must contain between 1 and 15 messages. """ return pulumi.get(self, "messages") @@ -1134,7 +1134,7 @@ def response_card(self) -> Optional[str]: """ The response card. Amazon Lex will substitute session attributes and slot values into the response card. For more information, see - [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). + [Example: Using a Response Card](https://docs.aws.amazon.com/lex/latest/dg/ex-resp-card.html). Must be less than or equal to 50000 characters in length. """ return pulumi.get(self, "response_card") @@ -1149,10 +1149,10 @@ def __init__(__self__, *, content_type: str, group_number: Optional[int] = None): """ - :param str content: The text of the message. + :param str content: The text of the message. Must be less than or equal to 1000 characters in length. :param str content_type: The content type of the message string. :param int group_number: Identifies the message group that the message belongs to. When a group - is assigned to a message, Amazon Lex returns one message from each group in the response. + is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). """ pulumi.set(__self__, "content", content) pulumi.set(__self__, "content_type", content_type) @@ -1163,7 +1163,7 @@ def __init__(__self__, *, @pulumi.getter def content(self) -> str: """ - The text of the message. + The text of the message. Must be less than or equal to 1000 characters in length. """ return pulumi.get(self, "content") @@ -1180,7 +1180,7 @@ def content_type(self) -> str: def group_number(self) -> Optional[int]: """ Identifies the message group that the message belongs to. When a group - is assigned to a message, Amazon Lex returns one message from each group in the response. + is assigned to a message, Amazon Lex returns one message from each group in the response. Must be a number between 1 and 5 (inclusive). """ return pulumi.get(self, "group_number") @@ -1194,8 +1194,8 @@ def __init__(__self__, *, value: str, synonyms: Optional[Sequence[str]] = None): """ - :param str value: The value of the slot type. - :param Sequence[str] synonyms: Additional values related to the slot type value. + :param str value: The value of the slot type. Must be less than or equal to 140 characters in length. + :param Sequence[str] synonyms: Additional values related to the slot type value. Each item must be less than or equal to 140 characters in length. """ pulumi.set(__self__, "value", value) if synonyms is not None: @@ -1205,7 +1205,7 @@ def __init__(__self__, *, @pulumi.getter def value(self) -> str: """ - The value of the slot type. + The value of the slot type. Must be less than or equal to 140 characters in length. """ return pulumi.get(self, "value") @@ -1213,7 +1213,7 @@ def value(self) -> str: @pulumi.getter def synonyms(self) -> Optional[Sequence[str]]: """ - Additional values related to the slot type value. + Additional values related to the slot type value. Each item must be less than or equal to 140 characters in length. """ return pulumi.get(self, "synonyms") diff --git a/sdk/python/pulumi_aws/lex/slot_type.py b/sdk/python/pulumi_aws/lex/slot_type.py index 05f4f5f2f25..234e2fcfda5 100644 --- a/sdk/python/pulumi_aws/lex/slot_type.py +++ b/sdk/python/pulumi_aws/lex/slot_type.py @@ -62,12 +62,12 @@ def __init__(__self__, :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[bool] create_version: Determines if a new slot type version is created when the initial resource is created and on each update. Defaults to `false`. - :param pulumi.Input[str] description: A description of the slot type. + :param pulumi.Input[str] description: A description of the slot type. Must be less than or equal to 200 characters in length. :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SlotTypeEnumerationValueArgs']]]] enumeration_values: A list of EnumerationValue objects that defines the values that the slot type can take. Each value can have a list of synonyms, which are additional values that help train the machine learning model about the values that it resolves for a slot. Attributes are documented under enumeration_value. - :param pulumi.Input[str] name: The name of the slot type. The name is not case sensitive. + :param pulumi.Input[str] name: The name of the slot type. The name is not case sensitive. Must be less than or equal to 100 characters in length. :param pulumi.Input[str] value_selection_strategy: Determines the slot resolution strategy that Amazon Lex uses to return slot type values. `ORIGINAL_VALUE` returns the value entered by the user if the user value is similar to the slot value. `TOP_RESOLUTION` returns the first value in the resolution list @@ -132,13 +132,13 @@ def get(resource_name: str, :param pulumi.Input[bool] create_version: Determines if a new slot type version is created when the initial resource is created and on each update. Defaults to `false`. :param pulumi.Input[str] created_date: The date when the slot type version was created. - :param pulumi.Input[str] description: A description of the slot type. + :param pulumi.Input[str] description: A description of the slot type. Must be less than or equal to 200 characters in length. :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SlotTypeEnumerationValueArgs']]]] enumeration_values: A list of EnumerationValue objects that defines the values that the slot type can take. Each value can have a list of synonyms, which are additional values that help train the machine learning model about the values that it resolves for a slot. Attributes are documented under enumeration_value. :param pulumi.Input[str] last_updated_date: The date when the `$LATEST` version of this slot type was updated. - :param pulumi.Input[str] name: The name of the slot type. The name is not case sensitive. + :param pulumi.Input[str] name: The name of the slot type. The name is not case sensitive. Must be less than or equal to 100 characters in length. :param pulumi.Input[str] value_selection_strategy: Determines the slot resolution strategy that Amazon Lex uses to return slot type values. `ORIGINAL_VALUE` returns the value entered by the user if the user value is similar to the slot value. `TOP_RESOLUTION` returns the first value in the resolution list @@ -190,7 +190,7 @@ def created_date(self) -> pulumi.Output[str]: @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: """ - A description of the slot type. + A description of the slot type. Must be less than or equal to 200 characters in length. """ return pulumi.get(self, "description") @@ -217,7 +217,7 @@ def last_updated_date(self) -> pulumi.Output[str]: @pulumi.getter def name(self) -> pulumi.Output[str]: """ - The name of the slot type. The name is not case sensitive. + The name of the slot type. The name is not case sensitive. Must be less than or equal to 100 characters in length. """ return pulumi.get(self, "name") diff --git a/sdk/python/pulumi_aws/outputs.py b/sdk/python/pulumi_aws/outputs.py index b9b933a97bd..b4375ceb4bc 100644 --- a/sdk/python/pulumi_aws/outputs.py +++ b/sdk/python/pulumi_aws/outputs.py @@ -129,6 +129,7 @@ def __init__(__self__, *, codecommit: Optional[str] = None, codedeploy: Optional[str] = None, codepipeline: Optional[str] = None, + codestarconnections: Optional[str] = None, cognitoidentity: Optional[str] = None, cognitoidp: Optional[str] = None, configservice: Optional[str] = None, @@ -303,6 +304,8 @@ def __init__(__self__, *, pulumi.set(__self__, "codedeploy", codedeploy) if codepipeline is not None: pulumi.set(__self__, "codepipeline", codepipeline) + if codestarconnections is not None: + pulumi.set(__self__, "codestarconnections", codestarconnections) if cognitoidentity is not None: pulumi.set(__self__, "cognitoidentity", cognitoidentity) if cognitoidp is not None: @@ -682,6 +685,11 @@ def codedeploy(self) -> Optional[str]: def codepipeline(self) -> Optional[str]: return pulumi.get(self, "codepipeline") + @property + @pulumi.getter + def codestarconnections(self) -> Optional[str]: + return pulumi.get(self, "codestarconnections") + @property @pulumi.getter def cognitoidentity(self) -> Optional[str]: diff --git a/sdk/python/pulumi_aws/rds/cluster.py b/sdk/python/pulumi_aws/rds/cluster.py index f7d4eec133c..928ca0c5f6a 100644 --- a/sdk/python/pulumi_aws/rds/cluster.py +++ b/sdk/python/pulumi_aws/rds/cluster.py @@ -190,7 +190,7 @@ def __init__(__self__, :param pulumi.Input[bool] skip_final_snapshot: Determines whether a final DB snapshot is created before the DB cluster is deleted. If true is specified, no DB snapshot is created. If false is specified, a DB snapshot is created before the DB cluster is deleted, using the value from `final_snapshot_identifier`. Default is `false`. :param pulumi.Input[str] snapshot_identifier: Specifies whether or not to create this cluster from a snapshot. You can use either the name or ARN when specifying a DB cluster snapshot, or the ARN when specifying a DB snapshot. :param pulumi.Input[str] source_region: The source region for an encrypted replica DB cluster. - :param pulumi.Input[bool] storage_encrypted: Specifies whether the DB cluster is encrypted. The default is `false` for `provisioned` `engine_mode` and `true` for `serverless` `engine_mode`. + :param pulumi.Input[bool] storage_encrypted: Specifies whether the DB cluster is encrypted :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: A map of tags to assign to the DB cluster. :param pulumi.Input[Sequence[pulumi.Input[str]]] vpc_security_group_ids: List of VPC security groups to associate with the Cluster """ @@ -351,7 +351,7 @@ def get(resource_name: str, :param pulumi.Input[bool] skip_final_snapshot: Determines whether a final DB snapshot is created before the DB cluster is deleted. If true is specified, no DB snapshot is created. If false is specified, a DB snapshot is created before the DB cluster is deleted, using the value from `final_snapshot_identifier`. Default is `false`. :param pulumi.Input[str] snapshot_identifier: Specifies whether or not to create this cluster from a snapshot. You can use either the name or ARN when specifying a DB cluster snapshot, or the ARN when specifying a DB snapshot. :param pulumi.Input[str] source_region: The source region for an encrypted replica DB cluster. - :param pulumi.Input[bool] storage_encrypted: Specifies whether the DB cluster is encrypted. The default is `false` for `provisioned` `engine_mode` and `true` for `serverless` `engine_mode`. + :param pulumi.Input[bool] storage_encrypted: Specifies whether the DB cluster is encrypted :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: A map of tags to assign to the DB cluster. :param pulumi.Input[Sequence[pulumi.Input[str]]] vpc_security_group_ids: List of VPC security groups to associate with the Cluster """ @@ -715,9 +715,9 @@ def source_region(self) -> pulumi.Output[Optional[str]]: @property @pulumi.getter(name="storageEncrypted") - def storage_encrypted(self) -> pulumi.Output[Optional[bool]]: + def storage_encrypted(self) -> pulumi.Output[bool]: """ - Specifies whether the DB cluster is encrypted. The default is `false` for `provisioned` `engine_mode` and `true` for `serverless` `engine_mode`. + Specifies whether the DB cluster is encrypted """ return pulumi.get(self, "storage_encrypted") diff --git a/sdk/python/pulumi_aws/route53/__init__.py b/sdk/python/pulumi_aws/route53/__init__.py index e2e267627f8..c3749144bd1 100644 --- a/sdk/python/pulumi_aws/route53/__init__.py +++ b/sdk/python/pulumi_aws/route53/__init__.py @@ -5,6 +5,7 @@ # Export this package's modules as members: from .delegation_set import * from .get_delegation_set import * +from .get_resolver_endpoint import * from .get_resolver_rule import * from .get_resolver_rules import * from .get_zone import * diff --git a/sdk/python/pulumi_aws/route53/_inputs.py b/sdk/python/pulumi_aws/route53/_inputs.py index cf9426835e6..525d8476178 100644 --- a/sdk/python/pulumi_aws/route53/_inputs.py +++ b/sdk/python/pulumi_aws/route53/_inputs.py @@ -17,6 +17,7 @@ 'ResolverEndpointIpAddressArgs', 'ResolverRuleTargetIpArgs', 'ZoneVpcArgs', + 'GetResolverEndpointFilterArgs', ] @pulumi.input_type @@ -318,3 +319,30 @@ def vpc_region(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "vpc_region", value) +@pulumi.input_type +class GetResolverEndpointFilterArgs: + def __init__(__self__, *, + name: str, + values: Sequence[str]): + pulumi.set(__self__, "name", name) + pulumi.set(__self__, "values", values) + + @property + @pulumi.getter + def name(self) -> str: + return pulumi.get(self, "name") + + @name.setter + def name(self, value: str): + pulumi.set(self, "name", value) + + @property + @pulumi.getter + def values(self) -> Sequence[str]: + return pulumi.get(self, "values") + + @values.setter + def values(self, value: Sequence[str]): + pulumi.set(self, "values", value) + + diff --git a/sdk/python/pulumi_aws/route53/get_resolver_endpoint.py b/sdk/python/pulumi_aws/route53/get_resolver_endpoint.py new file mode 100644 index 00000000000..e5a6a0b3ec1 --- /dev/null +++ b/sdk/python/pulumi_aws/route53/get_resolver_endpoint.py @@ -0,0 +1,170 @@ +# coding=utf-8 +# *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union +from .. import _utilities, _tables +from . import outputs +from ._inputs import * + +__all__ = [ + 'GetResolverEndpointResult', + 'AwaitableGetResolverEndpointResult', + 'get_resolver_endpoint', +] + +@pulumi.output_type +class GetResolverEndpointResult: + """ + A collection of values returned by getResolverEndpoint. + """ + def __init__(__self__, arn=None, direction=None, filters=None, id=None, ip_addresses=None, name=None, resolver_endpoint_id=None, status=None, vpc_id=None): + if arn and not isinstance(arn, str): + raise TypeError("Expected argument 'arn' to be a str") + pulumi.set(__self__, "arn", arn) + if direction and not isinstance(direction, str): + raise TypeError("Expected argument 'direction' to be a str") + pulumi.set(__self__, "direction", direction) + if filters and not isinstance(filters, list): + raise TypeError("Expected argument 'filters' to be a list") + pulumi.set(__self__, "filters", filters) + if id and not isinstance(id, str): + raise TypeError("Expected argument 'id' to be a str") + pulumi.set(__self__, "id", id) + if ip_addresses and not isinstance(ip_addresses, list): + raise TypeError("Expected argument 'ip_addresses' to be a list") + pulumi.set(__self__, "ip_addresses", ip_addresses) + if name and not isinstance(name, str): + raise TypeError("Expected argument 'name' to be a str") + pulumi.set(__self__, "name", name) + if resolver_endpoint_id and not isinstance(resolver_endpoint_id, str): + raise TypeError("Expected argument 'resolver_endpoint_id' to be a str") + pulumi.set(__self__, "resolver_endpoint_id", resolver_endpoint_id) + if status and not isinstance(status, str): + raise TypeError("Expected argument 'status' to be a str") + pulumi.set(__self__, "status", status) + if vpc_id and not isinstance(vpc_id, str): + raise TypeError("Expected argument 'vpc_id' to be a str") + pulumi.set(__self__, "vpc_id", vpc_id) + + @property + @pulumi.getter + def arn(self) -> str: + return pulumi.get(self, "arn") + + @property + @pulumi.getter + def direction(self) -> str: + return pulumi.get(self, "direction") + + @property + @pulumi.getter + def filters(self) -> Optional[Sequence['outputs.GetResolverEndpointFilterResult']]: + return pulumi.get(self, "filters") + + @property + @pulumi.getter + def id(self) -> str: + """ + The provider-assigned unique ID for this managed resource. + """ + return pulumi.get(self, "id") + + @property + @pulumi.getter(name="ipAddresses") + def ip_addresses(self) -> Sequence[str]: + return pulumi.get(self, "ip_addresses") + + @property + @pulumi.getter + def name(self) -> str: + return pulumi.get(self, "name") + + @property + @pulumi.getter(name="resolverEndpointId") + def resolver_endpoint_id(self) -> Optional[str]: + return pulumi.get(self, "resolver_endpoint_id") + + @property + @pulumi.getter + def status(self) -> str: + return pulumi.get(self, "status") + + @property + @pulumi.getter(name="vpcId") + def vpc_id(self) -> str: + return pulumi.get(self, "vpc_id") + + +class AwaitableGetResolverEndpointResult(GetResolverEndpointResult): + # pylint: disable=using-constant-test + def __await__(self): + if False: + yield self + return GetResolverEndpointResult( + arn=self.arn, + direction=self.direction, + filters=self.filters, + id=self.id, + ip_addresses=self.ip_addresses, + name=self.name, + resolver_endpoint_id=self.resolver_endpoint_id, + status=self.status, + vpc_id=self.vpc_id) + + +def get_resolver_endpoint(filters: Optional[Sequence[pulumi.InputType['GetResolverEndpointFilterArgs']]] = None, + resolver_endpoint_id: Optional[str] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetResolverEndpointResult: + """ + `route53.ResolverEndpoint` provides details about a specific Route53 Resolver Endpoint. + + This data source allows to find a list of IPaddresses associated with a specific Route53 Resolver Endpoint. + + ## Example Usage + + ```python + import pulumi + import pulumi_aws as aws + + example = aws.route53.get_resolver_endpoint(resolver_endpoint_id="rslvr-in-1abc2345ef678g91h") + ``` + + ```python + import pulumi + import pulumi_aws as aws + + example = aws.route53.get_resolver_endpoint(filters=[aws.route53.GetResolverEndpointFilterArgs( + name="NAME", + values=["MyResolverExampleName"], + )]) + ``` + + + :param Sequence[pulumi.InputType['GetResolverEndpointFilterArgs']] filters: One or more name/value pairs to use as filters. There are + several valid keys, for a full reference, check out + [Route53resolver Filter value in the AWS API reference][1]. + :param str resolver_endpoint_id: The ID of the Route53 Resolver Endpoint. + """ + __args__ = dict() + __args__['filters'] = filters + __args__['resolverEndpointId'] = resolver_endpoint_id + if opts is None: + opts = pulumi.InvokeOptions() + if opts.version is None: + opts.version = _utilities.get_version() + __ret__ = pulumi.runtime.invoke('aws:route53/getResolverEndpoint:getResolverEndpoint', __args__, opts=opts, typ=GetResolverEndpointResult).value + + return AwaitableGetResolverEndpointResult( + arn=__ret__.arn, + direction=__ret__.direction, + filters=__ret__.filters, + id=__ret__.id, + ip_addresses=__ret__.ip_addresses, + name=__ret__.name, + resolver_endpoint_id=__ret__.resolver_endpoint_id, + status=__ret__.status, + vpc_id=__ret__.vpc_id) diff --git a/sdk/python/pulumi_aws/route53/outputs.py b/sdk/python/pulumi_aws/route53/outputs.py index 8c8387e3618..1bf8befd777 100644 --- a/sdk/python/pulumi_aws/route53/outputs.py +++ b/sdk/python/pulumi_aws/route53/outputs.py @@ -17,6 +17,7 @@ 'ResolverEndpointIpAddress', 'ResolverRuleTargetIp', 'ZoneVpc', + 'GetResolverEndpointFilterResult', ] @pulumi.output_type @@ -278,3 +279,22 @@ def _translate_property(self, prop): return _tables.CAMEL_TO_SNAKE_CASE_TABLE.get(prop) or prop +@pulumi.output_type +class GetResolverEndpointFilterResult(dict): + def __init__(__self__, *, + name: str, + values: Sequence[str]): + pulumi.set(__self__, "name", name) + pulumi.set(__self__, "values", values) + + @property + @pulumi.getter + def name(self) -> str: + return pulumi.get(self, "name") + + @property + @pulumi.getter + def values(self) -> Sequence[str]: + return pulumi.get(self, "values") + + diff --git a/sdk/python/pulumi_aws/s3/_inputs.py b/sdk/python/pulumi_aws/s3/_inputs.py index 22bc35c1ce8..5d2b9a6851a 100644 --- a/sdk/python/pulumi_aws/s3/_inputs.py +++ b/sdk/python/pulumi_aws/s3/_inputs.py @@ -519,7 +519,7 @@ def __init__(__self__, *, :param pulumi.Input[bool] enabled: Specifies lifecycle rule status. :param pulumi.Input[int] abort_incomplete_multipart_upload_days: Specifies the number of days after initiating a multipart upload when the multipart upload must be completed. :param pulumi.Input['BucketLifecycleRuleExpirationArgs'] expiration: Specifies a period in the object's expire (documented below). - :param pulumi.Input[str] id: Unique identifier for the rule. + :param pulumi.Input[str] id: Unique identifier for the rule. Must be less than or equal to 255 characters in length. :param pulumi.Input['BucketLifecycleRuleNoncurrentVersionExpirationArgs'] noncurrent_version_expiration: Specifies when noncurrent object versions expire (documented below). :param pulumi.Input[Sequence[pulumi.Input['BucketLifecycleRuleNoncurrentVersionTransitionArgs']]] noncurrent_version_transitions: Specifies when noncurrent object versions transitions (documented below). :param pulumi.Input[str] prefix: Object key prefix identifying one or more objects to which the rule applies. @@ -584,7 +584,7 @@ def expiration(self, value: Optional[pulumi.Input['BucketLifecycleRuleExpiration @pulumi.getter def id(self) -> Optional[pulumi.Input[str]]: """ - Unique identifier for the rule. + Unique identifier for the rule. Must be less than or equal to 255 characters in length. """ return pulumi.get(self, "id") @@ -1343,8 +1343,8 @@ def __init__(__self__, *, :param pulumi.Input['BucketReplicationConfigurationRuleDestinationArgs'] destination: Specifies the destination for the rule (documented below). :param pulumi.Input[str] status: The status of the rule. Either `Enabled` or `Disabled`. The rule is ignored if status is not Enabled. :param pulumi.Input['BucketReplicationConfigurationRuleFilterArgs'] filter: Filter that identifies subset of objects to which the replication rule applies (documented below). - :param pulumi.Input[str] id: Unique identifier for the rule. - :param pulumi.Input[str] prefix: Object keyname prefix identifying one or more objects to which the rule applies. + :param pulumi.Input[str] id: Unique identifier for the rule. Must be less than or equal to 255 characters in length. + :param pulumi.Input[str] prefix: Object keyname prefix identifying one or more objects to which the rule applies. Must be less than or equal to 1024 characters in length. :param pulumi.Input[int] priority: is optional (with a default value of `0`) but must be unique between multiple rules :param pulumi.Input['BucketReplicationConfigurationRuleSourceSelectionCriteriaArgs'] source_selection_criteria: Specifies special object selection criteria (documented below). """ @@ -1401,7 +1401,7 @@ def filter(self, value: Optional[pulumi.Input['BucketReplicationConfigurationRul @pulumi.getter def id(self) -> Optional[pulumi.Input[str]]: """ - Unique identifier for the rule. + Unique identifier for the rule. Must be less than or equal to 255 characters in length. """ return pulumi.get(self, "id") @@ -1413,7 +1413,7 @@ def id(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def prefix(self) -> Optional[pulumi.Input[str]]: """ - Object keyname prefix identifying one or more objects to which the rule applies. + Object keyname prefix identifying one or more objects to which the rule applies. Must be less than or equal to 1024 characters in length. """ return pulumi.get(self, "prefix") @@ -1562,7 +1562,7 @@ def __init__(__self__, *, prefix: Optional[pulumi.Input[str]] = None, tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None): """ - :param pulumi.Input[str] prefix: Object keyname prefix that identifies subset of objects to which the rule applies. + :param pulumi.Input[str] prefix: Object keyname prefix that identifies subset of objects to which the rule applies. Must be less than or equal to 1024 characters in length. :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: A map of tags that identifies subset of objects to which the rule applies. The rule applies only to objects having all the tags in its tagset. """ @@ -1575,7 +1575,7 @@ def __init__(__self__, *, @pulumi.getter def prefix(self) -> Optional[pulumi.Input[str]]: """ - Object keyname prefix that identifies subset of objects to which the rule applies. + Object keyname prefix that identifies subset of objects to which the rule applies. Must be less than or equal to 1024 characters in length. """ return pulumi.get(self, "prefix") diff --git a/sdk/python/pulumi_aws/s3/bucket.py b/sdk/python/pulumi_aws/s3/bucket.py index e3f57b67bc5..41c7ab777e2 100644 --- a/sdk/python/pulumi_aws/s3/bucket.py +++ b/sdk/python/pulumi_aws/s3/bucket.py @@ -319,8 +319,8 @@ def __init__(__self__, :param pulumi.Input[str] acceleration_status: Sets the accelerate configuration of an existing bucket. Can be `Enabled` or `Suspended`. :param pulumi.Input[str] acl: The [canned ACL](https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#canned-acl) to apply. Defaults to "private". Conflicts with `grant`. :param pulumi.Input[str] arn: The ARN of the bucket. Will be of format `arn:aws:s3:::bucketname`. - :param pulumi.Input[str] bucket: The name of the bucket. If omitted, this provider will assign a random, unique name. - :param pulumi.Input[str] bucket_prefix: Creates a unique bucket name beginning with the specified prefix. Conflicts with `bucket`. + :param pulumi.Input[str] bucket: The name of the bucket. If omitted, this provider will assign a random, unique name. Must be less than or equal to 63 characters in length. + :param pulumi.Input[str] bucket_prefix: Creates a unique bucket name beginning with the specified prefix. Conflicts with `bucket`. Must be less than or equal to 37 characters in length. :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['BucketCorsRuleArgs']]]] cors_rules: A rule of [Cross-Origin Resource Sharing](https://docs.aws.amazon.com/AmazonS3/latest/dev/cors.html) (documented below). :param pulumi.Input[bool] force_destroy: A boolean that indicates all objects (including any [locked objects](https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock-overview.html)) should be deleted from the bucket so that the bucket can be destroyed without error. These objects are *not* recoverable. :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['BucketGrantArgs']]]] grants: An [ACL policy grant](https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#sample-acl) (documented below). Conflicts with `acl`. @@ -426,9 +426,9 @@ def get(resource_name: str, :param pulumi.Input[str] acceleration_status: Sets the accelerate configuration of an existing bucket. Can be `Enabled` or `Suspended`. :param pulumi.Input[str] acl: The [canned ACL](https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#canned-acl) to apply. Defaults to "private". Conflicts with `grant`. :param pulumi.Input[str] arn: The ARN of the bucket. Will be of format `arn:aws:s3:::bucketname`. - :param pulumi.Input[str] bucket: The name of the bucket. If omitted, this provider will assign a random, unique name. + :param pulumi.Input[str] bucket: The name of the bucket. If omitted, this provider will assign a random, unique name. Must be less than or equal to 63 characters in length. :param pulumi.Input[str] bucket_domain_name: The bucket domain name. Will be of format `bucketname.s3.amazonaws.com`. - :param pulumi.Input[str] bucket_prefix: Creates a unique bucket name beginning with the specified prefix. Conflicts with `bucket`. + :param pulumi.Input[str] bucket_prefix: Creates a unique bucket name beginning with the specified prefix. Conflicts with `bucket`. Must be less than or equal to 37 characters in length. :param pulumi.Input[str] bucket_regional_domain_name: The bucket region-specific domain name. The bucket domain name including the region name, please refer [here](https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region) for format. Note: The AWS CloudFront allows specifying S3 region-specific endpoint when creating S3 origin, it will prevent [redirect issues](https://forums.aws.amazon.com/thread.jspa?threadID=216814) from CloudFront to S3 Origin URL. :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['BucketCorsRuleArgs']]]] cors_rules: A rule of [Cross-Origin Resource Sharing](https://docs.aws.amazon.com/AmazonS3/latest/dev/cors.html) (documented below). :param pulumi.Input[bool] force_destroy: A boolean that indicates all objects (including any [locked objects](https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock-overview.html)) should be deleted from the bucket so that the bucket can be destroyed without error. These objects are *not* recoverable. @@ -509,7 +509,7 @@ def arn(self) -> pulumi.Output[str]: @pulumi.getter def bucket(self) -> pulumi.Output[str]: """ - The name of the bucket. If omitted, this provider will assign a random, unique name. + The name of the bucket. If omitted, this provider will assign a random, unique name. Must be less than or equal to 63 characters in length. """ return pulumi.get(self, "bucket") @@ -525,7 +525,7 @@ def bucket_domain_name(self) -> pulumi.Output[str]: @pulumi.getter(name="bucketPrefix") def bucket_prefix(self) -> pulumi.Output[Optional[str]]: """ - Creates a unique bucket name beginning with the specified prefix. Conflicts with `bucket`. + Creates a unique bucket name beginning with the specified prefix. Conflicts with `bucket`. Must be less than or equal to 37 characters in length. """ return pulumi.get(self, "bucket_prefix") diff --git a/sdk/python/pulumi_aws/s3/outputs.py b/sdk/python/pulumi_aws/s3/outputs.py index 8dfad5f6e59..8c299e432a4 100644 --- a/sdk/python/pulumi_aws/s3/outputs.py +++ b/sdk/python/pulumi_aws/s3/outputs.py @@ -451,7 +451,7 @@ def __init__(__self__, *, :param bool enabled: Specifies lifecycle rule status. :param int abort_incomplete_multipart_upload_days: Specifies the number of days after initiating a multipart upload when the multipart upload must be completed. :param 'BucketLifecycleRuleExpirationArgs' expiration: Specifies a period in the object's expire (documented below). - :param str id: Unique identifier for the rule. + :param str id: Unique identifier for the rule. Must be less than or equal to 255 characters in length. :param 'BucketLifecycleRuleNoncurrentVersionExpirationArgs' noncurrent_version_expiration: Specifies when noncurrent object versions expire (documented below). :param Sequence['BucketLifecycleRuleNoncurrentVersionTransitionArgs'] noncurrent_version_transitions: Specifies when noncurrent object versions transitions (documented below). :param str prefix: Object key prefix identifying one or more objects to which the rule applies. @@ -504,7 +504,7 @@ def expiration(self) -> Optional['outputs.BucketLifecycleRuleExpiration']: @pulumi.getter def id(self) -> Optional[str]: """ - Unique identifier for the rule. + Unique identifier for the rule. Must be less than or equal to 255 characters in length. """ return pulumi.get(self, "id") @@ -1136,8 +1136,8 @@ def __init__(__self__, *, :param 'BucketReplicationConfigurationRuleDestinationArgs' destination: Specifies the destination for the rule (documented below). :param str status: The status of the rule. Either `Enabled` or `Disabled`. The rule is ignored if status is not Enabled. :param 'BucketReplicationConfigurationRuleFilterArgs' filter: Filter that identifies subset of objects to which the replication rule applies (documented below). - :param str id: Unique identifier for the rule. - :param str prefix: Object keyname prefix identifying one or more objects to which the rule applies. + :param str id: Unique identifier for the rule. Must be less than or equal to 255 characters in length. + :param str prefix: Object keyname prefix identifying one or more objects to which the rule applies. Must be less than or equal to 1024 characters in length. :param int priority: is optional (with a default value of `0`) but must be unique between multiple rules :param 'BucketReplicationConfigurationRuleSourceSelectionCriteriaArgs' source_selection_criteria: Specifies special object selection criteria (documented below). """ @@ -1182,7 +1182,7 @@ def filter(self) -> Optional['outputs.BucketReplicationConfigurationRuleFilter'] @pulumi.getter def id(self) -> Optional[str]: """ - Unique identifier for the rule. + Unique identifier for the rule. Must be less than or equal to 255 characters in length. """ return pulumi.get(self, "id") @@ -1190,7 +1190,7 @@ def id(self) -> Optional[str]: @pulumi.getter def prefix(self) -> Optional[str]: """ - Object keyname prefix identifying one or more objects to which the rule applies. + Object keyname prefix identifying one or more objects to which the rule applies. Must be less than or equal to 1024 characters in length. """ return pulumi.get(self, "prefix") @@ -1312,7 +1312,7 @@ def __init__(__self__, *, prefix: Optional[str] = None, tags: Optional[Mapping[str, str]] = None): """ - :param str prefix: Object keyname prefix that identifies subset of objects to which the rule applies. + :param str prefix: Object keyname prefix that identifies subset of objects to which the rule applies. Must be less than or equal to 1024 characters in length. :param Mapping[str, str] tags: A map of tags that identifies subset of objects to which the rule applies. The rule applies only to objects having all the tags in its tagset. """ @@ -1325,7 +1325,7 @@ def __init__(__self__, *, @pulumi.getter def prefix(self) -> Optional[str]: """ - Object keyname prefix that identifies subset of objects to which the rule applies. + Object keyname prefix that identifies subset of objects to which the rule applies. Must be less than or equal to 1024 characters in length. """ return pulumi.get(self, "prefix") diff --git a/sdk/python/pulumi_aws/sagemaker/__init__.py b/sdk/python/pulumi_aws/sagemaker/__init__.py index ad2c929d972..5a952a3d87c 100644 --- a/sdk/python/pulumi_aws/sagemaker/__init__.py +++ b/sdk/python/pulumi_aws/sagemaker/__init__.py @@ -6,6 +6,7 @@ from .code_repository import * from .endpoint import * from .endpoint_configuration import * +from .get_prebuilt_ecr_image import * from .model import * from .notebook_instance import * from .notebook_instance_lifecycle_configuration import * diff --git a/sdk/python/pulumi_aws/sagemaker/_inputs.py b/sdk/python/pulumi_aws/sagemaker/_inputs.py index 3c2fa3bef21..dd490707986 100644 --- a/sdk/python/pulumi_aws/sagemaker/_inputs.py +++ b/sdk/python/pulumi_aws/sagemaker/_inputs.py @@ -10,9 +10,14 @@ __all__ = [ 'CodeRepositoryGitConfigArgs', + 'EndpointConfigurationDataCaptureConfigArgs', + 'EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderArgs', + 'EndpointConfigurationDataCaptureConfigCaptureOptionArgs', 'EndpointConfigurationProductionVariantArgs', 'ModelContainerArgs', + 'ModelContainerImageConfigArgs', 'ModelPrimaryContainerArgs', + 'ModelPrimaryContainerImageConfigArgs', 'ModelVpcConfigArgs', ] @@ -56,6 +61,167 @@ def secret_arn(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "secret_arn", value) +@pulumi.input_type +class EndpointConfigurationDataCaptureConfigArgs: + def __init__(__self__, *, + capture_options: pulumi.Input[Sequence[pulumi.Input['EndpointConfigurationDataCaptureConfigCaptureOptionArgs']]], + destination_s3_uri: pulumi.Input[str], + initial_sampling_percentage: pulumi.Input[int], + capture_content_type_header: Optional[pulumi.Input['EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderArgs']] = None, + enable_capture: Optional[pulumi.Input[bool]] = None, + kms_key_id: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[Sequence[pulumi.Input['EndpointConfigurationDataCaptureConfigCaptureOptionArgs']]] capture_options: Specifies what data to capture. Fields are documented below. + :param pulumi.Input[str] destination_s3_uri: The URL for S3 location where the captured data is stored. + :param pulumi.Input[int] initial_sampling_percentage: Portion of data to capture. Should be between 0 and 100. + :param pulumi.Input['EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderArgs'] capture_content_type_header: The content type headers to capture. Fields are documented below. + :param pulumi.Input[bool] enable_capture: Flag to enable data capture. Defaults to `false`. + :param pulumi.Input[str] kms_key_id: Amazon Resource Name (ARN) of a AWS Key Management Service key that Amazon SageMaker uses to encrypt the captured data on Amazon S3. + """ + pulumi.set(__self__, "capture_options", capture_options) + pulumi.set(__self__, "destination_s3_uri", destination_s3_uri) + pulumi.set(__self__, "initial_sampling_percentage", initial_sampling_percentage) + if capture_content_type_header is not None: + pulumi.set(__self__, "capture_content_type_header", capture_content_type_header) + if enable_capture is not None: + pulumi.set(__self__, "enable_capture", enable_capture) + if kms_key_id is not None: + pulumi.set(__self__, "kms_key_id", kms_key_id) + + @property + @pulumi.getter(name="captureOptions") + def capture_options(self) -> pulumi.Input[Sequence[pulumi.Input['EndpointConfigurationDataCaptureConfigCaptureOptionArgs']]]: + """ + Specifies what data to capture. Fields are documented below. + """ + return pulumi.get(self, "capture_options") + + @capture_options.setter + def capture_options(self, value: pulumi.Input[Sequence[pulumi.Input['EndpointConfigurationDataCaptureConfigCaptureOptionArgs']]]): + pulumi.set(self, "capture_options", value) + + @property + @pulumi.getter(name="destinationS3Uri") + def destination_s3_uri(self) -> pulumi.Input[str]: + """ + The URL for S3 location where the captured data is stored. + """ + return pulumi.get(self, "destination_s3_uri") + + @destination_s3_uri.setter + def destination_s3_uri(self, value: pulumi.Input[str]): + pulumi.set(self, "destination_s3_uri", value) + + @property + @pulumi.getter(name="initialSamplingPercentage") + def initial_sampling_percentage(self) -> pulumi.Input[int]: + """ + Portion of data to capture. Should be between 0 and 100. + """ + return pulumi.get(self, "initial_sampling_percentage") + + @initial_sampling_percentage.setter + def initial_sampling_percentage(self, value: pulumi.Input[int]): + pulumi.set(self, "initial_sampling_percentage", value) + + @property + @pulumi.getter(name="captureContentTypeHeader") + def capture_content_type_header(self) -> Optional[pulumi.Input['EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderArgs']]: + """ + The content type headers to capture. Fields are documented below. + """ + return pulumi.get(self, "capture_content_type_header") + + @capture_content_type_header.setter + def capture_content_type_header(self, value: Optional[pulumi.Input['EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderArgs']]): + pulumi.set(self, "capture_content_type_header", value) + + @property + @pulumi.getter(name="enableCapture") + def enable_capture(self) -> Optional[pulumi.Input[bool]]: + """ + Flag to enable data capture. Defaults to `false`. + """ + return pulumi.get(self, "enable_capture") + + @enable_capture.setter + def enable_capture(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "enable_capture", value) + + @property + @pulumi.getter(name="kmsKeyId") + def kms_key_id(self) -> Optional[pulumi.Input[str]]: + """ + Amazon Resource Name (ARN) of a AWS Key Management Service key that Amazon SageMaker uses to encrypt the captured data on Amazon S3. + """ + return pulumi.get(self, "kms_key_id") + + @kms_key_id.setter + def kms_key_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "kms_key_id", value) + + +@pulumi.input_type +class EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderArgs: + def __init__(__self__, *, + csv_content_types: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + json_content_types: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): + """ + :param pulumi.Input[Sequence[pulumi.Input[str]]] csv_content_types: The CSV content type headers to capture. + :param pulumi.Input[Sequence[pulumi.Input[str]]] json_content_types: The JSON content type headers to capture. + """ + if csv_content_types is not None: + pulumi.set(__self__, "csv_content_types", csv_content_types) + if json_content_types is not None: + pulumi.set(__self__, "json_content_types", json_content_types) + + @property + @pulumi.getter(name="csvContentTypes") + def csv_content_types(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + """ + The CSV content type headers to capture. + """ + return pulumi.get(self, "csv_content_types") + + @csv_content_types.setter + def csv_content_types(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "csv_content_types", value) + + @property + @pulumi.getter(name="jsonContentTypes") + def json_content_types(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + """ + The JSON content type headers to capture. + """ + return pulumi.get(self, "json_content_types") + + @json_content_types.setter + def json_content_types(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "json_content_types", value) + + +@pulumi.input_type +class EndpointConfigurationDataCaptureConfigCaptureOptionArgs: + def __init__(__self__, *, + capture_mode: pulumi.Input[str]): + """ + :param pulumi.Input[str] capture_mode: Specifies the data to be captured. Should be one of `Input` or `Output`. + """ + pulumi.set(__self__, "capture_mode", capture_mode) + + @property + @pulumi.getter(name="captureMode") + def capture_mode(self) -> pulumi.Input[str]: + """ + Specifies the data to be captured. Should be one of `Input` or `Output`. + """ + return pulumi.get(self, "capture_mode") + + @capture_mode.setter + def capture_mode(self, value: pulumi.Input[str]): + pulumi.set(self, "capture_mode", value) + + @pulumi.input_type class EndpointConfigurationProductionVariantArgs: def __init__(__self__, *, @@ -162,6 +328,7 @@ def __init__(__self__, *, image: pulumi.Input[str], container_hostname: Optional[pulumi.Input[str]] = None, environment: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, + image_config: Optional[pulumi.Input['ModelContainerImageConfigArgs']] = None, mode: Optional[pulumi.Input[str]] = None, model_data_url: Optional[pulumi.Input[str]] = None): """ @@ -169,6 +336,7 @@ def __init__(__self__, *, :param pulumi.Input[str] container_hostname: The DNS host name for the container. :param pulumi.Input[Mapping[str, pulumi.Input[str]]] environment: Environment variables for the Docker container. A list of key value pairs. + :param pulumi.Input['ModelContainerImageConfigArgs'] image_config: Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). For more information see [Using a Private Docker Registry for Real-Time Inference Containers](https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms-containers-inference-private.html). see Image Config. :param pulumi.Input[str] mode: The container hosts value `SingleModel/MultiModel`. The default value is `SingleModel`. :param pulumi.Input[str] model_data_url: The URL for the S3 location where model artifacts are stored. """ @@ -177,6 +345,8 @@ def __init__(__self__, *, pulumi.set(__self__, "container_hostname", container_hostname) if environment is not None: pulumi.set(__self__, "environment", environment) + if image_config is not None: + pulumi.set(__self__, "image_config", image_config) if mode is not None: pulumi.set(__self__, "mode", mode) if model_data_url is not None: @@ -219,6 +389,18 @@ def environment(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] def environment(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]): pulumi.set(self, "environment", value) + @property + @pulumi.getter(name="imageConfig") + def image_config(self) -> Optional[pulumi.Input['ModelContainerImageConfigArgs']]: + """ + Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). For more information see [Using a Private Docker Registry for Real-Time Inference Containers](https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms-containers-inference-private.html). see Image Config. + """ + return pulumi.get(self, "image_config") + + @image_config.setter + def image_config(self, value: Optional[pulumi.Input['ModelContainerImageConfigArgs']]): + pulumi.set(self, "image_config", value) + @property @pulumi.getter def mode(self) -> Optional[pulumi.Input[str]]: @@ -244,12 +426,35 @@ def model_data_url(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "model_data_url", value) +@pulumi.input_type +class ModelContainerImageConfigArgs: + def __init__(__self__, *, + repository_access_mode: pulumi.Input[str]): + """ + :param pulumi.Input[str] repository_access_mode: Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). Allowed values are: `Platform` and `Vpc`. + """ + pulumi.set(__self__, "repository_access_mode", repository_access_mode) + + @property + @pulumi.getter(name="repositoryAccessMode") + def repository_access_mode(self) -> pulumi.Input[str]: + """ + Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). Allowed values are: `Platform` and `Vpc`. + """ + return pulumi.get(self, "repository_access_mode") + + @repository_access_mode.setter + def repository_access_mode(self, value: pulumi.Input[str]): + pulumi.set(self, "repository_access_mode", value) + + @pulumi.input_type class ModelPrimaryContainerArgs: def __init__(__self__, *, image: pulumi.Input[str], container_hostname: Optional[pulumi.Input[str]] = None, environment: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, + image_config: Optional[pulumi.Input['ModelPrimaryContainerImageConfigArgs']] = None, mode: Optional[pulumi.Input[str]] = None, model_data_url: Optional[pulumi.Input[str]] = None): """ @@ -257,6 +462,7 @@ def __init__(__self__, *, :param pulumi.Input[str] container_hostname: The DNS host name for the container. :param pulumi.Input[Mapping[str, pulumi.Input[str]]] environment: Environment variables for the Docker container. A list of key value pairs. + :param pulumi.Input['ModelPrimaryContainerImageConfigArgs'] image_config: Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). For more information see [Using a Private Docker Registry for Real-Time Inference Containers](https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms-containers-inference-private.html). see Image Config. :param pulumi.Input[str] mode: The container hosts value `SingleModel/MultiModel`. The default value is `SingleModel`. :param pulumi.Input[str] model_data_url: The URL for the S3 location where model artifacts are stored. """ @@ -265,6 +471,8 @@ def __init__(__self__, *, pulumi.set(__self__, "container_hostname", container_hostname) if environment is not None: pulumi.set(__self__, "environment", environment) + if image_config is not None: + pulumi.set(__self__, "image_config", image_config) if mode is not None: pulumi.set(__self__, "mode", mode) if model_data_url is not None: @@ -307,6 +515,18 @@ def environment(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] def environment(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]): pulumi.set(self, "environment", value) + @property + @pulumi.getter(name="imageConfig") + def image_config(self) -> Optional[pulumi.Input['ModelPrimaryContainerImageConfigArgs']]: + """ + Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). For more information see [Using a Private Docker Registry for Real-Time Inference Containers](https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms-containers-inference-private.html). see Image Config. + """ + return pulumi.get(self, "image_config") + + @image_config.setter + def image_config(self, value: Optional[pulumi.Input['ModelPrimaryContainerImageConfigArgs']]): + pulumi.set(self, "image_config", value) + @property @pulumi.getter def mode(self) -> Optional[pulumi.Input[str]]: @@ -332,6 +552,28 @@ def model_data_url(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "model_data_url", value) +@pulumi.input_type +class ModelPrimaryContainerImageConfigArgs: + def __init__(__self__, *, + repository_access_mode: pulumi.Input[str]): + """ + :param pulumi.Input[str] repository_access_mode: Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). Allowed values are: `Platform` and `Vpc`. + """ + pulumi.set(__self__, "repository_access_mode", repository_access_mode) + + @property + @pulumi.getter(name="repositoryAccessMode") + def repository_access_mode(self) -> pulumi.Input[str]: + """ + Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). Allowed values are: `Platform` and `Vpc`. + """ + return pulumi.get(self, "repository_access_mode") + + @repository_access_mode.setter + def repository_access_mode(self, value: pulumi.Input[str]): + pulumi.set(self, "repository_access_mode", value) + + @pulumi.input_type class ModelVpcConfigArgs: def __init__(__self__, *, diff --git a/sdk/python/pulumi_aws/sagemaker/endpoint_configuration.py b/sdk/python/pulumi_aws/sagemaker/endpoint_configuration.py index d6192ec2609..fa7ceb54185 100644 --- a/sdk/python/pulumi_aws/sagemaker/endpoint_configuration.py +++ b/sdk/python/pulumi_aws/sagemaker/endpoint_configuration.py @@ -17,6 +17,7 @@ class EndpointConfiguration(pulumi.CustomResource): def __init__(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, + data_capture_config: Optional[pulumi.Input[pulumi.InputType['EndpointConfigurationDataCaptureConfigArgs']]] = None, kms_key_arn: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, production_variants: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['EndpointConfigurationProductionVariantArgs']]]]] = None, @@ -49,6 +50,7 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[pulumi.InputType['EndpointConfigurationDataCaptureConfigArgs']] data_capture_config: Specifies the parameters to capture input/output of Sagemaker models endpoints. Fields are documented below. :param pulumi.Input[str] kms_key_arn: Amazon Resource Name (ARN) of a AWS Key Management Service key that Amazon SageMaker uses to encrypt data on the storage volume attached to the ML compute instance that hosts the endpoint. :param pulumi.Input[str] name: The name of the endpoint configuration. If omitted, this provider will assign a random, unique name. :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['EndpointConfigurationProductionVariantArgs']]]] production_variants: Fields are documented below. @@ -71,6 +73,7 @@ def __init__(__self__, raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource') __props__ = dict() + __props__['data_capture_config'] = data_capture_config __props__['kms_key_arn'] = kms_key_arn __props__['name'] = name if production_variants is None: @@ -89,6 +92,7 @@ def get(resource_name: str, id: pulumi.Input[str], opts: Optional[pulumi.ResourceOptions] = None, arn: Optional[pulumi.Input[str]] = None, + data_capture_config: Optional[pulumi.Input[pulumi.InputType['EndpointConfigurationDataCaptureConfigArgs']]] = None, kms_key_arn: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, production_variants: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['EndpointConfigurationProductionVariantArgs']]]]] = None, @@ -101,6 +105,7 @@ def get(resource_name: str, :param pulumi.Input[str] id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] arn: The Amazon Resource Name (ARN) assigned by AWS to this endpoint configuration. + :param pulumi.Input[pulumi.InputType['EndpointConfigurationDataCaptureConfigArgs']] data_capture_config: Specifies the parameters to capture input/output of Sagemaker models endpoints. Fields are documented below. :param pulumi.Input[str] kms_key_arn: Amazon Resource Name (ARN) of a AWS Key Management Service key that Amazon SageMaker uses to encrypt data on the storage volume attached to the ML compute instance that hosts the endpoint. :param pulumi.Input[str] name: The name of the endpoint configuration. If omitted, this provider will assign a random, unique name. :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['EndpointConfigurationProductionVariantArgs']]]] production_variants: Fields are documented below. @@ -111,6 +116,7 @@ def get(resource_name: str, __props__ = dict() __props__["arn"] = arn + __props__["data_capture_config"] = data_capture_config __props__["kms_key_arn"] = kms_key_arn __props__["name"] = name __props__["production_variants"] = production_variants @@ -125,6 +131,14 @@ def arn(self) -> pulumi.Output[str]: """ return pulumi.get(self, "arn") + @property + @pulumi.getter(name="dataCaptureConfig") + def data_capture_config(self) -> pulumi.Output[Optional['outputs.EndpointConfigurationDataCaptureConfig']]: + """ + Specifies the parameters to capture input/output of Sagemaker models endpoints. Fields are documented below. + """ + return pulumi.get(self, "data_capture_config") + @property @pulumi.getter(name="kmsKeyArn") def kms_key_arn(self) -> pulumi.Output[Optional[str]]: diff --git a/sdk/python/pulumi_aws/sagemaker/get_prebuilt_ecr_image.py b/sdk/python/pulumi_aws/sagemaker/get_prebuilt_ecr_image.py new file mode 100644 index 00000000000..6eb5fe901c6 --- /dev/null +++ b/sdk/python/pulumi_aws/sagemaker/get_prebuilt_ecr_image.py @@ -0,0 +1,151 @@ +# coding=utf-8 +# *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union +from .. import _utilities, _tables + +__all__ = [ + 'GetPrebuiltEcrImageResult', + 'AwaitableGetPrebuiltEcrImageResult', + 'get_prebuilt_ecr_image', +] + +@pulumi.output_type +class GetPrebuiltEcrImageResult: + """ + A collection of values returned by getPrebuiltEcrImage. + """ + def __init__(__self__, dns_suffix=None, id=None, image_tag=None, region=None, registry_id=None, registry_path=None, repository_name=None): + if dns_suffix and not isinstance(dns_suffix, str): + raise TypeError("Expected argument 'dns_suffix' to be a str") + pulumi.set(__self__, "dns_suffix", dns_suffix) + if id and not isinstance(id, str): + raise TypeError("Expected argument 'id' to be a str") + pulumi.set(__self__, "id", id) + if image_tag and not isinstance(image_tag, str): + raise TypeError("Expected argument 'image_tag' to be a str") + pulumi.set(__self__, "image_tag", image_tag) + if region and not isinstance(region, str): + raise TypeError("Expected argument 'region' to be a str") + pulumi.set(__self__, "region", region) + if registry_id and not isinstance(registry_id, str): + raise TypeError("Expected argument 'registry_id' to be a str") + pulumi.set(__self__, "registry_id", registry_id) + if registry_path and not isinstance(registry_path, str): + raise TypeError("Expected argument 'registry_path' to be a str") + pulumi.set(__self__, "registry_path", registry_path) + if repository_name and not isinstance(repository_name, str): + raise TypeError("Expected argument 'repository_name' to be a str") + pulumi.set(__self__, "repository_name", repository_name) + + @property + @pulumi.getter(name="dnsSuffix") + def dns_suffix(self) -> Optional[str]: + return pulumi.get(self, "dns_suffix") + + @property + @pulumi.getter + def id(self) -> str: + """ + The provider-assigned unique ID for this managed resource. + """ + return pulumi.get(self, "id") + + @property + @pulumi.getter(name="imageTag") + def image_tag(self) -> Optional[str]: + return pulumi.get(self, "image_tag") + + @property + @pulumi.getter + def region(self) -> Optional[str]: + return pulumi.get(self, "region") + + @property + @pulumi.getter(name="registryId") + def registry_id(self) -> str: + """ + The account ID containing the image. For example, `469771592824`. + """ + return pulumi.get(self, "registry_id") + + @property + @pulumi.getter(name="registryPath") + def registry_path(self) -> str: + """ + The Docker image URL. For example, `341280168497.dkr.ecr.ca-central-1.amazonaws.com/sagemaker-sparkml-serving:2.4`. + """ + return pulumi.get(self, "registry_path") + + @property + @pulumi.getter(name="repositoryName") + def repository_name(self) -> str: + return pulumi.get(self, "repository_name") + + +class AwaitableGetPrebuiltEcrImageResult(GetPrebuiltEcrImageResult): + # pylint: disable=using-constant-test + def __await__(self): + if False: + yield self + return GetPrebuiltEcrImageResult( + dns_suffix=self.dns_suffix, + id=self.id, + image_tag=self.image_tag, + region=self.region, + registry_id=self.registry_id, + registry_path=self.registry_path, + repository_name=self.repository_name) + + +def get_prebuilt_ecr_image(dns_suffix: Optional[str] = None, + image_tag: Optional[str] = None, + region: Optional[str] = None, + repository_name: Optional[str] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetPrebuiltEcrImageResult: + """ + Get information about prebuilt Amazon SageMaker Docker images. + + > **NOTE:** The AWS provider creates a validly constructed `registry_path` but does not verify that the `registry_path` corresponds to an existing image. For example, using a `registry_path` containing an `image_tag` that does not correspond to a Docker image in the ECR repository, will result in an error. + + ## Example Usage + + Basic usage: + + ```python + import pulumi + import pulumi_aws as aws + + test = aws.sagemaker.get_prebuilt_ecr_image(image_tag="2.2-1.0.11.0", + repository_name="sagemaker-scikit-learn") + ``` + + + :param str dns_suffix: The DNS suffix to use in the registry path. If not specified, the AWS provider sets it to the DNS suffix for the current region. + :param str image_tag: The image tag for the Docker image. If not specified, the AWS provider sets the value to `1`, which for many repositories indicates the latest version. Some repositories, such as XGBoost, do not support `1` or `latest` and specific version must be used. + :param str region: The region to use in the registry path. If not specified, the AWS provider sets it to the current region. + :param str repository_name: The name of the repository, which is generally the algorithm or library. Values include `blazingtext`, `factorization-machines`, `forecasting-deepar`, `image-classification`, `ipinsights`, `kmeans`, `knn`, `lda`, `linear-learner`, `mxnet-inference-eia`, `mxnet-inference`, `mxnet-training`, `ntm`, `object-detection`, `object2vec`, `pca`, `pytorch-inference-eia`, `pytorch-inference`, `pytorch-training`, `randomcutforest`, `sagemaker-scikit-learn`, `sagemaker-sparkml-serving`, `sagemaker-xgboost`, `semantic-segmentation`, `seq2seq`, `tensorflow-inference-eia`, `tensorflow-inference`, and `tensorflow-training`. + """ + __args__ = dict() + __args__['dnsSuffix'] = dns_suffix + __args__['imageTag'] = image_tag + __args__['region'] = region + __args__['repositoryName'] = repository_name + if opts is None: + opts = pulumi.InvokeOptions() + if opts.version is None: + opts.version = _utilities.get_version() + __ret__ = pulumi.runtime.invoke('aws:sagemaker/getPrebuiltEcrImage:getPrebuiltEcrImage', __args__, opts=opts, typ=GetPrebuiltEcrImageResult).value + + return AwaitableGetPrebuiltEcrImageResult( + dns_suffix=__ret__.dns_suffix, + id=__ret__.id, + image_tag=__ret__.image_tag, + region=__ret__.region, + registry_id=__ret__.registry_id, + registry_path=__ret__.registry_path, + repository_name=__ret__.repository_name) diff --git a/sdk/python/pulumi_aws/sagemaker/model.py b/sdk/python/pulumi_aws/sagemaker/model.py index ad7b521bb96..6711f9a56e8 100644 --- a/sdk/python/pulumi_aws/sagemaker/model.py +++ b/sdk/python/pulumi_aws/sagemaker/model.py @@ -38,11 +38,6 @@ def __init__(__self__, import pulumi import pulumi_aws as aws - model = aws.sagemaker.Model("model", - execution_role_arn=aws_iam_role["foo"]["arn"], - primary_container=aws.sagemaker.ModelPrimaryContainerArgs( - image="174872318107.dkr.ecr.us-west-2.amazonaws.com/kmeans:1", - )) assume_role = aws.iam.get_policy_document(statements=[aws.iam.GetPolicyDocumentStatementArgs( actions=["sts:AssumeRole"], principals=[aws.iam.GetPolicyDocumentStatementPrincipalArgs( @@ -50,7 +45,12 @@ def __init__(__self__, identifiers=["sagemaker.amazonaws.com"], )], )]) - role = aws.iam.Role("role", assume_role_policy=assume_role.json) + example_role = aws.iam.Role("exampleRole", assume_role_policy=assume_role.json) + example_model = aws.sagemaker.Model("exampleModel", + execution_role_arn=example_role.arn, + primary_container=aws.sagemaker.ModelPrimaryContainerArgs( + image="174872318107.dkr.ecr.us-west-2.amazonaws.com/kmeans:1", + )) ``` :param str resource_name: The name of the resource. diff --git a/sdk/python/pulumi_aws/sagemaker/notebook_instance.py b/sdk/python/pulumi_aws/sagemaker/notebook_instance.py index 73734acd1b7..47e09514cbc 100644 --- a/sdk/python/pulumi_aws/sagemaker/notebook_instance.py +++ b/sdk/python/pulumi_aws/sagemaker/notebook_instance.py @@ -57,7 +57,7 @@ def __init__(__self__, example = aws.sagemaker.CodeRepository("example", code_repository_name="my-notebook-instance-code-repo", git_config=aws.sagemaker.CodeRepositoryGitConfigArgs( - repository_url="https://github.com/terraform-providers/terraform-provider-aws.git", + repository_url="https://github.com/hashicorp/terraform-provider-aws.git", )) ni = aws.sagemaker.NotebookInstance("ni", role_arn=aws_iam_role["role"]["arn"], diff --git a/sdk/python/pulumi_aws/sagemaker/outputs.py b/sdk/python/pulumi_aws/sagemaker/outputs.py index 782e4271763..6718dc16052 100644 --- a/sdk/python/pulumi_aws/sagemaker/outputs.py +++ b/sdk/python/pulumi_aws/sagemaker/outputs.py @@ -7,12 +7,18 @@ import pulumi.runtime from typing import Any, Mapping, Optional, Sequence, Union from .. import _utilities, _tables +from . import outputs __all__ = [ 'CodeRepositoryGitConfig', + 'EndpointConfigurationDataCaptureConfig', + 'EndpointConfigurationDataCaptureConfigCaptureContentTypeHeader', + 'EndpointConfigurationDataCaptureConfigCaptureOption', 'EndpointConfigurationProductionVariant', 'ModelContainer', + 'ModelContainerImageConfig', 'ModelPrimaryContainer', + 'ModelPrimaryContainerImageConfig', 'ModelVpcConfig', ] @@ -47,6 +53,140 @@ def _translate_property(self, prop): return _tables.CAMEL_TO_SNAKE_CASE_TABLE.get(prop) or prop +@pulumi.output_type +class EndpointConfigurationDataCaptureConfig(dict): + def __init__(__self__, *, + capture_options: Sequence['outputs.EndpointConfigurationDataCaptureConfigCaptureOption'], + destination_s3_uri: str, + initial_sampling_percentage: int, + capture_content_type_header: Optional['outputs.EndpointConfigurationDataCaptureConfigCaptureContentTypeHeader'] = None, + enable_capture: Optional[bool] = None, + kms_key_id: Optional[str] = None): + """ + :param Sequence['EndpointConfigurationDataCaptureConfigCaptureOptionArgs'] capture_options: Specifies what data to capture. Fields are documented below. + :param str destination_s3_uri: The URL for S3 location where the captured data is stored. + :param int initial_sampling_percentage: Portion of data to capture. Should be between 0 and 100. + :param 'EndpointConfigurationDataCaptureConfigCaptureContentTypeHeaderArgs' capture_content_type_header: The content type headers to capture. Fields are documented below. + :param bool enable_capture: Flag to enable data capture. Defaults to `false`. + :param str kms_key_id: Amazon Resource Name (ARN) of a AWS Key Management Service key that Amazon SageMaker uses to encrypt the captured data on Amazon S3. + """ + pulumi.set(__self__, "capture_options", capture_options) + pulumi.set(__self__, "destination_s3_uri", destination_s3_uri) + pulumi.set(__self__, "initial_sampling_percentage", initial_sampling_percentage) + if capture_content_type_header is not None: + pulumi.set(__self__, "capture_content_type_header", capture_content_type_header) + if enable_capture is not None: + pulumi.set(__self__, "enable_capture", enable_capture) + if kms_key_id is not None: + pulumi.set(__self__, "kms_key_id", kms_key_id) + + @property + @pulumi.getter(name="captureOptions") + def capture_options(self) -> Sequence['outputs.EndpointConfigurationDataCaptureConfigCaptureOption']: + """ + Specifies what data to capture. Fields are documented below. + """ + return pulumi.get(self, "capture_options") + + @property + @pulumi.getter(name="destinationS3Uri") + def destination_s3_uri(self) -> str: + """ + The URL for S3 location where the captured data is stored. + """ + return pulumi.get(self, "destination_s3_uri") + + @property + @pulumi.getter(name="initialSamplingPercentage") + def initial_sampling_percentage(self) -> int: + """ + Portion of data to capture. Should be between 0 and 100. + """ + return pulumi.get(self, "initial_sampling_percentage") + + @property + @pulumi.getter(name="captureContentTypeHeader") + def capture_content_type_header(self) -> Optional['outputs.EndpointConfigurationDataCaptureConfigCaptureContentTypeHeader']: + """ + The content type headers to capture. Fields are documented below. + """ + return pulumi.get(self, "capture_content_type_header") + + @property + @pulumi.getter(name="enableCapture") + def enable_capture(self) -> Optional[bool]: + """ + Flag to enable data capture. Defaults to `false`. + """ + return pulumi.get(self, "enable_capture") + + @property + @pulumi.getter(name="kmsKeyId") + def kms_key_id(self) -> Optional[str]: + """ + Amazon Resource Name (ARN) of a AWS Key Management Service key that Amazon SageMaker uses to encrypt the captured data on Amazon S3. + """ + return pulumi.get(self, "kms_key_id") + + def _translate_property(self, prop): + return _tables.CAMEL_TO_SNAKE_CASE_TABLE.get(prop) or prop + + +@pulumi.output_type +class EndpointConfigurationDataCaptureConfigCaptureContentTypeHeader(dict): + def __init__(__self__, *, + csv_content_types: Optional[Sequence[str]] = None, + json_content_types: Optional[Sequence[str]] = None): + """ + :param Sequence[str] csv_content_types: The CSV content type headers to capture. + :param Sequence[str] json_content_types: The JSON content type headers to capture. + """ + if csv_content_types is not None: + pulumi.set(__self__, "csv_content_types", csv_content_types) + if json_content_types is not None: + pulumi.set(__self__, "json_content_types", json_content_types) + + @property + @pulumi.getter(name="csvContentTypes") + def csv_content_types(self) -> Optional[Sequence[str]]: + """ + The CSV content type headers to capture. + """ + return pulumi.get(self, "csv_content_types") + + @property + @pulumi.getter(name="jsonContentTypes") + def json_content_types(self) -> Optional[Sequence[str]]: + """ + The JSON content type headers to capture. + """ + return pulumi.get(self, "json_content_types") + + def _translate_property(self, prop): + return _tables.CAMEL_TO_SNAKE_CASE_TABLE.get(prop) or prop + + +@pulumi.output_type +class EndpointConfigurationDataCaptureConfigCaptureOption(dict): + def __init__(__self__, *, + capture_mode: str): + """ + :param str capture_mode: Specifies the data to be captured. Should be one of `Input` or `Output`. + """ + pulumi.set(__self__, "capture_mode", capture_mode) + + @property + @pulumi.getter(name="captureMode") + def capture_mode(self) -> str: + """ + Specifies the data to be captured. Should be one of `Input` or `Output`. + """ + return pulumi.get(self, "capture_mode") + + def _translate_property(self, prop): + return _tables.CAMEL_TO_SNAKE_CASE_TABLE.get(prop) or prop + + @pulumi.output_type class EndpointConfigurationProductionVariant(dict): def __init__(__self__, *, @@ -132,6 +272,7 @@ def __init__(__self__, *, image: str, container_hostname: Optional[str] = None, environment: Optional[Mapping[str, str]] = None, + image_config: Optional['outputs.ModelContainerImageConfig'] = None, mode: Optional[str] = None, model_data_url: Optional[str] = None): """ @@ -139,6 +280,7 @@ def __init__(__self__, *, :param str container_hostname: The DNS host name for the container. :param Mapping[str, str] environment: Environment variables for the Docker container. A list of key value pairs. + :param 'ModelContainerImageConfigArgs' image_config: Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). For more information see [Using a Private Docker Registry for Real-Time Inference Containers](https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms-containers-inference-private.html). see Image Config. :param str mode: The container hosts value `SingleModel/MultiModel`. The default value is `SingleModel`. :param str model_data_url: The URL for the S3 location where model artifacts are stored. """ @@ -147,6 +289,8 @@ def __init__(__self__, *, pulumi.set(__self__, "container_hostname", container_hostname) if environment is not None: pulumi.set(__self__, "environment", environment) + if image_config is not None: + pulumi.set(__self__, "image_config", image_config) if mode is not None: pulumi.set(__self__, "mode", mode) if model_data_url is not None: @@ -177,6 +321,14 @@ def environment(self) -> Optional[Mapping[str, str]]: """ return pulumi.get(self, "environment") + @property + @pulumi.getter(name="imageConfig") + def image_config(self) -> Optional['outputs.ModelContainerImageConfig']: + """ + Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). For more information see [Using a Private Docker Registry for Real-Time Inference Containers](https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms-containers-inference-private.html). see Image Config. + """ + return pulumi.get(self, "image_config") + @property @pulumi.getter def mode(self) -> Optional[str]: @@ -197,12 +349,34 @@ def _translate_property(self, prop): return _tables.CAMEL_TO_SNAKE_CASE_TABLE.get(prop) or prop +@pulumi.output_type +class ModelContainerImageConfig(dict): + def __init__(__self__, *, + repository_access_mode: str): + """ + :param str repository_access_mode: Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). Allowed values are: `Platform` and `Vpc`. + """ + pulumi.set(__self__, "repository_access_mode", repository_access_mode) + + @property + @pulumi.getter(name="repositoryAccessMode") + def repository_access_mode(self) -> str: + """ + Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). Allowed values are: `Platform` and `Vpc`. + """ + return pulumi.get(self, "repository_access_mode") + + def _translate_property(self, prop): + return _tables.CAMEL_TO_SNAKE_CASE_TABLE.get(prop) or prop + + @pulumi.output_type class ModelPrimaryContainer(dict): def __init__(__self__, *, image: str, container_hostname: Optional[str] = None, environment: Optional[Mapping[str, str]] = None, + image_config: Optional['outputs.ModelPrimaryContainerImageConfig'] = None, mode: Optional[str] = None, model_data_url: Optional[str] = None): """ @@ -210,6 +384,7 @@ def __init__(__self__, *, :param str container_hostname: The DNS host name for the container. :param Mapping[str, str] environment: Environment variables for the Docker container. A list of key value pairs. + :param 'ModelPrimaryContainerImageConfigArgs' image_config: Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). For more information see [Using a Private Docker Registry for Real-Time Inference Containers](https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms-containers-inference-private.html). see Image Config. :param str mode: The container hosts value `SingleModel/MultiModel`. The default value is `SingleModel`. :param str model_data_url: The URL for the S3 location where model artifacts are stored. """ @@ -218,6 +393,8 @@ def __init__(__self__, *, pulumi.set(__self__, "container_hostname", container_hostname) if environment is not None: pulumi.set(__self__, "environment", environment) + if image_config is not None: + pulumi.set(__self__, "image_config", image_config) if mode is not None: pulumi.set(__self__, "mode", mode) if model_data_url is not None: @@ -248,6 +425,14 @@ def environment(self) -> Optional[Mapping[str, str]]: """ return pulumi.get(self, "environment") + @property + @pulumi.getter(name="imageConfig") + def image_config(self) -> Optional['outputs.ModelPrimaryContainerImageConfig']: + """ + Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). For more information see [Using a Private Docker Registry for Real-Time Inference Containers](https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms-containers-inference-private.html). see Image Config. + """ + return pulumi.get(self, "image_config") + @property @pulumi.getter def mode(self) -> Optional[str]: @@ -268,6 +453,27 @@ def _translate_property(self, prop): return _tables.CAMEL_TO_SNAKE_CASE_TABLE.get(prop) or prop +@pulumi.output_type +class ModelPrimaryContainerImageConfig(dict): + def __init__(__self__, *, + repository_access_mode: str): + """ + :param str repository_access_mode: Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). Allowed values are: `Platform` and `Vpc`. + """ + pulumi.set(__self__, "repository_access_mode", repository_access_mode) + + @property + @pulumi.getter(name="repositoryAccessMode") + def repository_access_mode(self) -> str: + """ + Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). Allowed values are: `Platform` and `Vpc`. + """ + return pulumi.get(self, "repository_access_mode") + + def _translate_property(self, prop): + return _tables.CAMEL_TO_SNAKE_CASE_TABLE.get(prop) or prop + + @pulumi.output_type class ModelVpcConfig(dict): def __init__(__self__, *, diff --git a/sdk/python/pulumi_aws/secretsmanager/__init__.py b/sdk/python/pulumi_aws/secretsmanager/__init__.py index 91354f8ff20..b534ef2e089 100644 --- a/sdk/python/pulumi_aws/secretsmanager/__init__.py +++ b/sdk/python/pulumi_aws/secretsmanager/__init__.py @@ -7,6 +7,7 @@ from .get_secret_rotation import * from .get_secret_version import * from .secret import * +from .secret_policy import * from .secret_rotation import * from .secret_version import * from ._inputs import * diff --git a/sdk/python/pulumi_aws/secretsmanager/secret.py b/sdk/python/pulumi_aws/secretsmanager/secret.py index 429af7b56b5..ea6d47f3900 100644 --- a/sdk/python/pulumi_aws/secretsmanager/secret.py +++ b/sdk/python/pulumi_aws/secretsmanager/secret.py @@ -205,7 +205,7 @@ def name_prefix(self) -> pulumi.Output[str]: @property @pulumi.getter - def policy(self) -> pulumi.Output[Optional[str]]: + def policy(self) -> pulumi.Output[str]: """ A valid JSON document representing a [resource policy](https://docs.aws.amazon.com/secretsmanager/latest/userguide/auth-and-access_resource-based-policies.html). """ diff --git a/sdk/python/pulumi_aws/secretsmanager/secret_policy.py b/sdk/python/pulumi_aws/secretsmanager/secret_policy.py new file mode 100644 index 00000000000..4ad5ec3bec3 --- /dev/null +++ b/sdk/python/pulumi_aws/secretsmanager/secret_policy.py @@ -0,0 +1,141 @@ +# coding=utf-8 +# *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union +from .. import _utilities, _tables + +__all__ = ['SecretPolicy'] + + +class SecretPolicy(pulumi.CustomResource): + def __init__(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + block_public_policy: Optional[pulumi.Input[bool]] = None, + policy: Optional[pulumi.Input[str]] = None, + secret_arn: Optional[pulumi.Input[str]] = None, + __props__=None, + __name__=None, + __opts__=None): + """ + Provides a resource to manage AWS Secrets Manager secret policy. + + ## Example Usage + ### Basic + + ```python + import pulumi + import pulumi_aws as aws + + example_secret = aws.secretsmanager.Secret("exampleSecret") + example_secret_policy = aws.secretsmanager.SecretPolicy("exampleSecretPolicy", + secret_arn=example_secret.arn, + policy=\"\"\"{ + "Version": "2012-10-17", + "Statement": [ + { + "Sid": "EnableAllPermissions", + "Effect": "Allow", + "Principal": { + "AWS": "*" + }, + "Action": "secretsmanager:GetSecretValue", + "Resource": "*" + } + ] + } + \"\"\") + ``` + + :param str resource_name: The name of the resource. + :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[bool] block_public_policy: Makes an optional API call to Zelkova to validate the Resource Policy to prevent broad access to your secret. + :param pulumi.Input[str] secret_arn: Secret ARN. + """ + if __name__ is not None: + warnings.warn("explicit use of __name__ is deprecated", DeprecationWarning) + resource_name = __name__ + if __opts__ is not None: + warnings.warn("explicit use of __opts__ is deprecated, use 'opts' instead", DeprecationWarning) + opts = __opts__ + if opts is None: + opts = pulumi.ResourceOptions() + if not isinstance(opts, pulumi.ResourceOptions): + raise TypeError('Expected resource options to be a ResourceOptions instance') + if opts.version is None: + opts.version = _utilities.get_version() + 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__ = dict() + + __props__['block_public_policy'] = block_public_policy + if policy is None: + raise TypeError("Missing required property 'policy'") + __props__['policy'] = policy + if secret_arn is None: + raise TypeError("Missing required property 'secret_arn'") + __props__['secret_arn'] = secret_arn + super(SecretPolicy, __self__).__init__( + 'aws:secretsmanager/secretPolicy:SecretPolicy', + resource_name, + __props__, + opts) + + @staticmethod + def get(resource_name: str, + id: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions] = None, + block_public_policy: Optional[pulumi.Input[bool]] = None, + policy: Optional[pulumi.Input[str]] = None, + secret_arn: Optional[pulumi.Input[str]] = None) -> 'SecretPolicy': + """ + Get an existing SecretPolicy 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. + :param pulumi.Input[bool] block_public_policy: Makes an optional API call to Zelkova to validate the Resource Policy to prevent broad access to your secret. + :param pulumi.Input[str] secret_arn: Secret ARN. + """ + opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) + + __props__ = dict() + + __props__["block_public_policy"] = block_public_policy + __props__["policy"] = policy + __props__["secret_arn"] = secret_arn + return SecretPolicy(resource_name, opts=opts, __props__=__props__) + + @property + @pulumi.getter(name="blockPublicPolicy") + def block_public_policy(self) -> pulumi.Output[Optional[bool]]: + """ + Makes an optional API call to Zelkova to validate the Resource Policy to prevent broad access to your secret. + """ + return pulumi.get(self, "block_public_policy") + + @property + @pulumi.getter + def policy(self) -> pulumi.Output[str]: + return pulumi.get(self, "policy") + + @property + @pulumi.getter(name="secretArn") + def secret_arn(self) -> pulumi.Output[str]: + """ + Secret ARN. + """ + return pulumi.get(self, "secret_arn") + + def translate_output_property(self, prop): + return _tables.CAMEL_TO_SNAKE_CASE_TABLE.get(prop) or prop + + def translate_input_property(self, prop): + return _tables.SNAKE_TO_CAMEL_CASE_TABLE.get(prop) or prop + diff --git a/sdk/python/pulumi_aws/workspaces/__init__.py b/sdk/python/pulumi_aws/workspaces/__init__.py index 0c03dc24a8b..7687343396d 100644 --- a/sdk/python/pulumi_aws/workspaces/__init__.py +++ b/sdk/python/pulumi_aws/workspaces/__init__.py @@ -7,6 +7,7 @@ from .get_bundle import * from .get_directory import * from .get_image import * +from .get_workspace import * from .ip_group import * from .workspace import * from ._inputs import * diff --git a/sdk/python/pulumi_aws/workspaces/get_workspace.py b/sdk/python/pulumi_aws/workspaces/get_workspace.py new file mode 100644 index 00000000000..729e9b46e72 --- /dev/null +++ b/sdk/python/pulumi_aws/workspaces/get_workspace.py @@ -0,0 +1,220 @@ +# coding=utf-8 +# *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union +from .. import _utilities, _tables +from . import outputs + +__all__ = [ + 'GetWorkspaceResult', + 'AwaitableGetWorkspaceResult', + 'get_workspace', +] + +@pulumi.output_type +class GetWorkspaceResult: + """ + A collection of values returned by getWorkspace. + """ + def __init__(__self__, bundle_id=None, computer_name=None, directory_id=None, id=None, ip_address=None, root_volume_encryption_enabled=None, state=None, tags=None, user_name=None, user_volume_encryption_enabled=None, volume_encryption_key=None, workspace_id=None, workspace_properties=None): + if bundle_id and not isinstance(bundle_id, str): + raise TypeError("Expected argument 'bundle_id' to be a str") + pulumi.set(__self__, "bundle_id", bundle_id) + if computer_name and not isinstance(computer_name, str): + raise TypeError("Expected argument 'computer_name' to be a str") + pulumi.set(__self__, "computer_name", computer_name) + if directory_id and not isinstance(directory_id, str): + raise TypeError("Expected argument 'directory_id' to be a str") + pulumi.set(__self__, "directory_id", directory_id) + if id and not isinstance(id, str): + raise TypeError("Expected argument 'id' to be a str") + pulumi.set(__self__, "id", id) + if ip_address and not isinstance(ip_address, str): + raise TypeError("Expected argument 'ip_address' to be a str") + pulumi.set(__self__, "ip_address", ip_address) + if root_volume_encryption_enabled and not isinstance(root_volume_encryption_enabled, bool): + raise TypeError("Expected argument 'root_volume_encryption_enabled' to be a bool") + pulumi.set(__self__, "root_volume_encryption_enabled", root_volume_encryption_enabled) + if state and not isinstance(state, str): + raise TypeError("Expected argument 'state' to be a str") + pulumi.set(__self__, "state", state) + if tags and not isinstance(tags, dict): + raise TypeError("Expected argument 'tags' to be a dict") + pulumi.set(__self__, "tags", tags) + if user_name and not isinstance(user_name, str): + raise TypeError("Expected argument 'user_name' to be a str") + pulumi.set(__self__, "user_name", user_name) + if user_volume_encryption_enabled and not isinstance(user_volume_encryption_enabled, bool): + raise TypeError("Expected argument 'user_volume_encryption_enabled' to be a bool") + pulumi.set(__self__, "user_volume_encryption_enabled", user_volume_encryption_enabled) + if volume_encryption_key and not isinstance(volume_encryption_key, str): + raise TypeError("Expected argument 'volume_encryption_key' to be a str") + pulumi.set(__self__, "volume_encryption_key", volume_encryption_key) + if workspace_id and not isinstance(workspace_id, str): + raise TypeError("Expected argument 'workspace_id' to be a str") + pulumi.set(__self__, "workspace_id", workspace_id) + if workspace_properties and not isinstance(workspace_properties, list): + raise TypeError("Expected argument 'workspace_properties' to be a list") + pulumi.set(__self__, "workspace_properties", workspace_properties) + + @property + @pulumi.getter(name="bundleId") + def bundle_id(self) -> str: + return pulumi.get(self, "bundle_id") + + @property + @pulumi.getter(name="computerName") + def computer_name(self) -> str: + """ + The name of the WorkSpace, as seen by the operating system. + """ + return pulumi.get(self, "computer_name") + + @property + @pulumi.getter(name="directoryId") + def directory_id(self) -> str: + return pulumi.get(self, "directory_id") + + @property + @pulumi.getter + def id(self) -> str: + """ + The provider-assigned unique ID for this managed resource. + """ + return pulumi.get(self, "id") + + @property + @pulumi.getter(name="ipAddress") + def ip_address(self) -> str: + """ + The IP address of the WorkSpace. + """ + return pulumi.get(self, "ip_address") + + @property + @pulumi.getter(name="rootVolumeEncryptionEnabled") + def root_volume_encryption_enabled(self) -> bool: + return pulumi.get(self, "root_volume_encryption_enabled") + + @property + @pulumi.getter + def state(self) -> str: + """ + The operational state of the WorkSpace. + """ + return pulumi.get(self, "state") + + @property + @pulumi.getter + def tags(self) -> Mapping[str, str]: + return pulumi.get(self, "tags") + + @property + @pulumi.getter(name="userName") + def user_name(self) -> str: + return pulumi.get(self, "user_name") + + @property + @pulumi.getter(name="userVolumeEncryptionEnabled") + def user_volume_encryption_enabled(self) -> bool: + return pulumi.get(self, "user_volume_encryption_enabled") + + @property + @pulumi.getter(name="volumeEncryptionKey") + def volume_encryption_key(self) -> str: + return pulumi.get(self, "volume_encryption_key") + + @property + @pulumi.getter(name="workspaceId") + def workspace_id(self) -> str: + return pulumi.get(self, "workspace_id") + + @property + @pulumi.getter(name="workspaceProperties") + def workspace_properties(self) -> Sequence['outputs.GetWorkspaceWorkspacePropertyResult']: + return pulumi.get(self, "workspace_properties") + + +class AwaitableGetWorkspaceResult(GetWorkspaceResult): + # pylint: disable=using-constant-test + def __await__(self): + if False: + yield self + return GetWorkspaceResult( + bundle_id=self.bundle_id, + computer_name=self.computer_name, + directory_id=self.directory_id, + id=self.id, + ip_address=self.ip_address, + root_volume_encryption_enabled=self.root_volume_encryption_enabled, + state=self.state, + tags=self.tags, + user_name=self.user_name, + user_volume_encryption_enabled=self.user_volume_encryption_enabled, + volume_encryption_key=self.volume_encryption_key, + workspace_id=self.workspace_id, + workspace_properties=self.workspace_properties) + + +def get_workspace(directory_id: Optional[str] = None, + tags: Optional[Mapping[str, str]] = None, + user_name: Optional[str] = None, + workspace_id: Optional[str] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetWorkspaceResult: + """ + Use this data source to get information about a workspace in [AWS Workspaces](https://docs.aws.amazon.com/workspaces/latest/adminguide/amazon-workspaces.html) Service. + + ## Example Usage + ### Filter By Workspace ID + + ```python + import pulumi + import pulumi_aws as aws + + example = aws.workspaces.get_workspace(workspace_id="ws-cj5xcxsz5") + ``` + ### Filter By Directory ID & User Name + + ```python + import pulumi + import pulumi_aws as aws + + example = aws.workspaces.get_workspace(directory_id="d-9967252f57", + user_name="Example") + ``` + + + :param str directory_id: The ID of the directory for the WorkSpace. You have to specify `user_name` along with `directory_id`. You cannot combine this parameter with `workspace_id`. + :param Mapping[str, str] tags: The tags for the WorkSpace. + :param str user_name: The user name of the user for the WorkSpace. This user name must exist in the directory for the WorkSpace. You cannot combine this parameter with `workspace_id`. + :param str workspace_id: The ID of the WorkSpace. You cannot combine this parameter with `directory_id`. + """ + __args__ = dict() + __args__['directoryId'] = directory_id + __args__['tags'] = tags + __args__['userName'] = user_name + __args__['workspaceId'] = workspace_id + if opts is None: + opts = pulumi.InvokeOptions() + if opts.version is None: + opts.version = _utilities.get_version() + __ret__ = pulumi.runtime.invoke('aws:workspaces/getWorkspace:getWorkspace', __args__, opts=opts, typ=GetWorkspaceResult).value + + return AwaitableGetWorkspaceResult( + bundle_id=__ret__.bundle_id, + computer_name=__ret__.computer_name, + directory_id=__ret__.directory_id, + id=__ret__.id, + ip_address=__ret__.ip_address, + root_volume_encryption_enabled=__ret__.root_volume_encryption_enabled, + state=__ret__.state, + tags=__ret__.tags, + user_name=__ret__.user_name, + user_volume_encryption_enabled=__ret__.user_volume_encryption_enabled, + volume_encryption_key=__ret__.volume_encryption_key, + workspace_id=__ret__.workspace_id, + workspace_properties=__ret__.workspace_properties) diff --git a/sdk/python/pulumi_aws/workspaces/outputs.py b/sdk/python/pulumi_aws/workspaces/outputs.py index 63396ee0a8d..bb287766090 100644 --- a/sdk/python/pulumi_aws/workspaces/outputs.py +++ b/sdk/python/pulumi_aws/workspaces/outputs.py @@ -18,6 +18,7 @@ 'GetBundleUserStorageResult', 'GetDirectorySelfServicePermissionResult', 'GetDirectoryWorkspaceCreationPropertiesResult', + 'GetWorkspaceWorkspacePropertyResult', ] @pulumi.output_type @@ -445,3 +446,65 @@ def user_enabled_as_local_administrator(self) -> Optional[bool]: return pulumi.get(self, "user_enabled_as_local_administrator") +@pulumi.output_type +class GetWorkspaceWorkspacePropertyResult(dict): + def __init__(__self__, *, + compute_type_name: str, + root_volume_size_gib: int, + running_mode: str, + running_mode_auto_stop_timeout_in_minutes: int, + user_volume_size_gib: int): + """ + :param str compute_type_name: The compute type. For more information, see [Amazon WorkSpaces Bundles](http://aws.amazon.com/workspaces/details/#Amazon_WorkSpaces_Bundles). Valid values are `VALUE`, `STANDARD`, `PERFORMANCE`, `POWER`, `GRAPHICS`, `POWERPRO` and `GRAPHICSPRO`. + :param int root_volume_size_gib: The size of the root volume. + :param str running_mode: The running mode. For more information, see [Manage the WorkSpace Running Mode](https://docs.aws.amazon.com/workspaces/latest/adminguide/running-mode.html). Valid values are `AUTO_STOP` and `ALWAYS_ON`. + :param int running_mode_auto_stop_timeout_in_minutes: The time after a user logs off when WorkSpaces are automatically stopped. Configured in 60-minute intervals. + :param int user_volume_size_gib: The size of the user storage. + """ + pulumi.set(__self__, "compute_type_name", compute_type_name) + pulumi.set(__self__, "root_volume_size_gib", root_volume_size_gib) + pulumi.set(__self__, "running_mode", running_mode) + pulumi.set(__self__, "running_mode_auto_stop_timeout_in_minutes", running_mode_auto_stop_timeout_in_minutes) + pulumi.set(__self__, "user_volume_size_gib", user_volume_size_gib) + + @property + @pulumi.getter(name="computeTypeName") + def compute_type_name(self) -> str: + """ + The compute type. For more information, see [Amazon WorkSpaces Bundles](http://aws.amazon.com/workspaces/details/#Amazon_WorkSpaces_Bundles). Valid values are `VALUE`, `STANDARD`, `PERFORMANCE`, `POWER`, `GRAPHICS`, `POWERPRO` and `GRAPHICSPRO`. + """ + return pulumi.get(self, "compute_type_name") + + @property + @pulumi.getter(name="rootVolumeSizeGib") + def root_volume_size_gib(self) -> int: + """ + The size of the root volume. + """ + return pulumi.get(self, "root_volume_size_gib") + + @property + @pulumi.getter(name="runningMode") + def running_mode(self) -> str: + """ + The running mode. For more information, see [Manage the WorkSpace Running Mode](https://docs.aws.amazon.com/workspaces/latest/adminguide/running-mode.html). Valid values are `AUTO_STOP` and `ALWAYS_ON`. + """ + return pulumi.get(self, "running_mode") + + @property + @pulumi.getter(name="runningModeAutoStopTimeoutInMinutes") + def running_mode_auto_stop_timeout_in_minutes(self) -> int: + """ + The time after a user logs off when WorkSpaces are automatically stopped. Configured in 60-minute intervals. + """ + return pulumi.get(self, "running_mode_auto_stop_timeout_in_minutes") + + @property + @pulumi.getter(name="userVolumeSizeGib") + def user_volume_size_gib(self) -> int: + """ + The size of the user storage. + """ + return pulumi.get(self, "user_volume_size_gib") + +